Commit graph

555 commits

Author SHA1 Message Date
ROllerozxa
10e05d687b Add package-creator tool for making package files from JSON data
Rewritten from the PackageCreator Python script to use Principia's own package writing utilities instead
2026-06-02 16:14:56 +02:00
ROllerozxa
6ea828e4d3 Fix up usage instructions for featured-list-creator
Make it more in line with how it is for the other util programs
2026-06-02 00:38:18 +02:00
ROllerozxa
66923575b4 Merge in featured-list-creator into utils/
Originally a C program (previously Python script) at https://github.com/principia-game/featured-list-creator for creating fl.cache files for the community site, merge into the main repository so it is with all the other util programs.
2026-06-02 00:31:44 +02:00
ROllerozxa
f564ba2e3f Fix move_matching_files Windows codepath in migration code
Need to turn strings wide for the UTF-16 Win32 API functions...
2026-05-31 21:49:16 +02:00
ROllerozxa
734fb3f8d7 Add lvlbuf-decompressor tool for decompressing level buffer
Rewritten from the original `level-decompressor` Python script into C++ using Principia's own level reader
2026-05-31 01:14:08 +02:00
ROllerozxa
71be99541b Add compiler flags for dead code removal in util programs 2026-05-31 00:17:48 +02:00
ROllerozxa
0051979187 Add lvl-icon-extractor tool for extracting icon from level files
Rewritten from the original `level-screenshot-converter` Python script into C++ using Principia's own level reader and libpng directly
2026-05-31 00:17:18 +02:00
ROllerozxa
01236f4b31 Move util programs back into main repository
Also includes new Makefiles for building them and a README in the main utils dir
2026-05-30 01:04:34 +02:00
ROllerozxa
f2413ac302 Cleanups in pkgman source file
Code cleanups, convert comments into annotations consumable by Doxygen, etc...
2026-05-30 00:49:13 +02:00
goodusername123
2a5a1e98ff
make Windows installer high DPI aware. (#213)
also flips on `XPStyle` to ensure newer styled UI controls are used.
2026-05-28 14:19:49 +02:00
ROllerozxa
cdb15b688b Fixes in imgui dialog code
Fixes for things that broke in a newer version of dear imgui & other bugfixes
2026-05-17 22:37:24 +02:00
ROllerozxa
b86f959b6f Update Dear Imgui to 93e396f 2026-05-17 22:35:13 +02:00
ROllerozxa
8771027650 Cleanups in entity source file
Code cleanups, convert comments into annotations consumable by Doxygen where applicable, renames and splits up the shape extruder object's class into a separate source files, etc...
2026-05-16 17:31:48 +02:00
ROllerozxa
fac177b9f1 Fix CI 2026-05-11 17:09:19 +02:00
ROllerozxa
1888998337 Comment out archive: false in CI workflows
nightly.link doesn't support bare artifacts yet
2026-05-11 16:55:11 +02:00
ROllerozxa
4eee1846ff Bump GitHub Actions action versions
Also use new `archive: false` for artifact uploading where appropriate to prevent nested zips from happening
2026-04-27 20:36:25 +02:00
ROllerozxa
e7a5b860c3 Flip suction cup model so that sockets are not inverted 2026-04-15 21:54:59 +02:00
ROllerozxa
e9893fc481 Fix Windows build on Clang 22 2026-04-15 21:41:44 +02:00
ROllerozxa
2c99bf67c4 Android: Open links outside of community host in external browser
The community site has links to all sorts of external websites that really does not like the webview, and the user likely wants them to be opened in an external browser in this case rather than be confined to the app's webview.
2026-03-25 00:18:55 +01:00
ROllerozxa
e83b594ef0 Refactor LuaScript code, split out API into separate files 2026-03-15 22:09:36 +01:00
ROllerozxa
b66c183655 Enable Luasocket on Android 2026-03-12 21:41:15 +01:00
ROllerozxa
f387183b5f Hide menu and quickadd buttons when category selector is open
Not a perfect way of doing it but gets them out of the way at least
2026-03-12 21:29:56 +01:00
ROllerozxa
647b1ca7ce Cleanup add_menu_item and related for items
Most of the stuff removed are remnants from when the objects in the sandbox menu was rendered live, so safe to remove. (The current sandbox menu texture creator does not make use of it either)
2026-03-12 21:28:33 +01:00
ROllerozxa
fbef2313e9 Minor fixes to the sandbox menu texture creation pipeline 2026-03-12 21:13:00 +01:00
ROllerozxa
7e54b9a3bc Revert "Remove remnants of unused "menu" pipeline"
This is still used by the sandbox menu texture creator
2026-03-12 17:06:50 +01:00
ROllerozxa
100f2815ab Add button to open external script folder in LuaScript dialog
For convenience...
2026-02-26 00:41:28 +01:00
ROllerozxa
1620ecaf5a Fix the Gearbox crashing when being placed down
Still very buggy and not available in the sandbox menu
2026-02-16 21:23:38 +01:00
ROllerozxa
24de6fb825 Minor preparations for being able to dynamically update UI scale
A lot of things in the game does not adapt to this quite yet
2026-02-16 20:26:42 +01:00
ROllerozxa
ba0c5e183b Try to fix the Principia window resizing during load on Windows
GTK will force DPI awareness so there's no way to do anything else other than enable it before GTK does
2026-02-16 00:16:02 +01:00
ROllerozxa
b46ecd8e05 Refactor out menu scale adjustment code into new function 2026-02-16 00:08:35 +01:00
ROllerozxa
b758f343a7 Make some more static variables in adventure non-static
These would break if xppcm and yppcm become dynamic sometime...
2026-02-16 00:06:23 +01:00
ROllerozxa
9584af22d1 Clean up some superfluous logging messages 2026-02-15 23:32:23 +01:00
ROllerozxa
8a174edb28 Fix font loading crash 2026-02-14 22:33:24 +01:00
ROllerozxa
45fc40fd59 Remove locked visibility check when trying to play a level
No point in these kinds of arbitrary checks in an open source project when it also inconveniences inspecting levels that have been locked
2026-01-15 23:56:51 +01:00
ROllerozxa
142e56b60f Rewrite sticky note text drawing code to not use SDL_ttf
Now uses the same font loading code that the GUI font uses, using the previously implemented extended charset to support extended ASCII (e.g. åäö). The easyspeech font does not support much beyond that so there should not be any difference in supported characters from before.
2026-01-11 20:59:08 +01:00
ROllerozxa
ba66b47246 Implement a special extended charset mode for font loading
Will load 256-CHAR_OFFSET amount of glyphs instead of the regular 128-CHAR_OFFSET (extended ASCII, or whatever you may call it). Regular GUI fonts won't use this for now.
2026-01-11 20:48:04 +01:00
ROllerozxa
9c421ffadc Increase the padding and spacing in imgui dialogs 2026-01-10 19:28:19 +01:00
ROllerozxa
786356968b Switch to imgui_freetype for rendering text in Imgui dialogs 2026-01-10 19:27:52 +01:00
ROllerozxa
3fd68448a0 Don't clear imgui login dialog fields if login failed 2026-01-10 19:15:08 +01:00
ROllerozxa
5ce14da7b5 Minor cleanups in some Imgui dialogs 2026-01-10 19:14:48 +01:00
ROllerozxa
c72b8f6646 Update Imgui to f5384544cb350dd2444c27c153ac563b91cf09da 2026-01-10 19:12:27 +01:00
ROllerozxa
c4e0a1ee01 Cleanup TMS_USE_GLES usage
Now that we use GLAD on both GL and GLES, we can rely on GL-only functions and constants existing when building, while remaining unused for GLES. The end goal would be making switching between GL and GLES a runtime setting on relevant platforms

Also cleanup some commented out GL code and sprinkled glGetError asserts
2026-01-10 16:45:27 +01:00
ROllerozxa
91695dafe7 Split off Imgui dialogs into one source file for each
Also refactor all other dialog backends into their own proper source files
2026-01-10 13:00:03 +01:00
ROllerozxa
820237874e Fix Emscripten build 2026-01-09 21:46:12 +01:00
ROllerozxa
5465fb7aef Use GLAD to retrieve glDiscardFramebufferEXT 2026-01-09 21:46:05 +01:00
ROllerozxa
d1c6804c33 Implement several dialogs in the imgui dialog backend
- DIALOG_ROBOT (#200)
- DIALOG_STICKY (#200)
- DIALOG_TREASURE_CHEST (#201)
- DIALOG_POLYGON (#202)
- Add register button to login dialog (#203)
- DIALOG_RUBBER (#204)
- DIALOG_DECORATION (#205)

Co-authored-by: gbsierra <gbatarseh@student.sierracollege.edu>
2026-01-02 21:22:01 +01:00
ROllerozxa
adf4e8ed23 Emscripten: Fix random lockups 2026-01-01 22:10:16 +01:00
ROllerozxa
3ea46595b8 Emscripten: Try to fill the page with the canvas window 2025-12-28 19:57:10 +01:00
ROllerozxa
296f930566 Emscripten: Build web version in CI 2025-12-28 19:55:32 +01:00
ROllerozxa
8b4b7f43ff Cleanup settings init and default values, adjust the defaults for emscripten 2025-12-28 19:28:19 +01:00