Compare commits

...

127 Commits
main ... gouv-3

Author SHA1 Message Date
Gouvernathor 7a086c17fc rewrite latest 2024-01-08 20:49:24 +01:00
Gouvernathor 68f3eedd4b Merge branch 'dev' into gouv-3 2024-01-08 20:49:09 +01:00
Asriel Senna 7432f8325c Fix typo 2024-01-07 14:44:07 +01:00
Asriel Senna 5980329125 Add the ConstantRandom utility class 2024-01-07 13:49:58 +01:00
Asriel Senna d119e71116 Only reseed the door at the beginning of the day/night
It's weird that people teleport when you open the menu twice in a row
2023-12-17 10:15:14 +01:00
Asriel Senna b439246d6d Better constant and random management in door/summon
Using a local __choice like in map to avoid unnecessary inconstantness
This is same-behavior, but I would be in favor of reseeding only at the beginning of the day/night instead of every time the summon menu is opened (next commit)
2023-12-17 10:13:58 +01:00
Asriel Senna ea138023c7 Simpler random reseeding
Constructing an entire new random object is not necessary, calling seed is enough
2023-12-17 10:13:14 +01:00
Gouvernathor 294cb2c5ee Better variables management in top_bar 2023-11-22 22:20:02 +01:00
Gouvernathor 88b2373832 Rebuild wardrobe (7) fix the outfit manager tab 2023-11-21 22:54:27 +01:00
Gouvernathor 8092c3bbad Rebuild wardrobe (6) show the wardrobe screen under confirm 2023-11-21 22:51:57 +01:00
Gouvernathor 0712f0e251 Reimplement wardrobe's color picker using last (csinc) 2023-11-21 21:24:11 +01:00
Gouvernathor a9bf2a637e Add the call_screen_in_new_context utility function/label 2023-11-21 21:02:49 +01:00
Gouvernathor 82018cfdad Rebuild wardrobe (5) switch to the new call screen system
fix a mistake in 8d297a7 on the way
2023-11-19 23:57:14 +01:00
Gouvernathor 5252c7eae2 Fix 9ee1de9 2023-11-19 21:56:01 +01:00
Gouvernathor aeaeea5d2c Rebuild wardrobe (4) cleanup local variables in local labels 2023-11-19 21:49:20 +01:00
Gouvernathor 97d992f969 Rebuild wardrobe (3) make sure to reblock rollback/skipping
Contrary to renpy.call, renpy.call_in_new_context is a function that does return, so this works
2023-11-19 21:36:27 +01:00
Gouvernathor 5411e13261 Rebuild wardrobe (2) set globals in actions 2023-11-19 20:55:01 +01:00
Gouvernathor 8d297a7bd9 Rebuild wardrobe (1) rewrite ifs as labels and actions 2023-11-19 20:53:48 +01:00
Gouvernathor 9ee1de9fd0 Make the wardrobe variables dynamic 2023-11-19 01:10:50 +01:00
Gouvernathor 902cf9b4d9 Change the spinner box character 2023-11-19 00:58:33 +01:00
Gouvernathor 7a25a13926 Improve threading when predicting the wardrobe
don't use single-underscore names
if available, use the thread-safer invoke_in_main_thread (not required when setting the global variables)
set __lock to True outside of the thread, otherwise if the thread starts late, the while loop is skipped
call get_character_object in the main thread
2023-11-19 00:23:33 +01:00
Gouvernathor b3c16ff0d7 Fix conflicting properties
big work
what was reliable before is now not, in recent versions of renpy, which is why we added that new config (which I put in say.rpy, but it can be moved somewhere else)
Also fixes the game_menu's title position, incidentally

some changes are incompatible with my diary and achievement branches, respectively, they will need to be merged with a bit of manual care
2023-11-18 20:30:51 +01:00
Gouvernathor c77f2ca46e Optimize choice screen constants and variables 2023-11-18 19:47:40 +01:00
Asriel Senna 42c3804b66 Improve weather in different ways
make the move subpixel
remove the old unused cloud_move
separate the three clouds' moves, both the yoffset, the x speed and the x start time (with a time offset)
2023-11-18 17:06:40 +01:00
Asriel Senna 166184a362 Fix and improve big_bang
the "on show" wasn't working for some reason and wasn't necessary anyway
easeout was probaly mixed up with easein, in any case easein renders much better
using easein_cubic for a sharper explosion
2023-11-18 16:30:05 +01:00
Asriel Senna d124579be4 Fix weather storm and create the weather image tag 2023-11-18 15:41:23 +01:00
Asriel Senna da6b7d11ae Clarify and simplify weather
remove two blank images (useless and slower than Null())
clarify in weather.rpy which are images directly shown on the screen and not just ingredients for the others
simplify the screen code
2023-11-18 15:23:15 +01:00
Gouvernathor d7a5aa8d66 Fix inventory layout 2023-11-18 03:58:59 +01:00
Gouvernathor f8251f921b Avoid using an actual image reference instead of direct null 2023-11-18 02:01:37 +01:00
Gouvernathor a88706142f Don't use mutables in signatures 2023-11-17 04:37:45 +01:00
Gouvernathor 8d3eede436 Tweaks 2023-11-17 04:35:53 +01:00
Gouvernathor d40af370a8 Upgrade brewing menu
the usual : make variables dynamic, use call screen instead of show screen...
2023-11-17 04:31:20 +01:00
Gouvernathor 9479859edd Simplify menu position 2023-11-17 04:07:53 +01:00
Gouvernathor e84d5cbdf0 Sort inplace and skip unused variable 2023-11-17 04:05:49 +01:00
Gouvernathor f6c0054be0 Fix variable name and move defaults 2023-11-17 04:04:15 +01:00
Gouvernathor a29b7ec28b Merge labels into menus 2023-11-17 04:03:52 +01:00
Gouvernathor 15b15b9085 Remove mutable in signature and pop todo 2023-11-17 03:52:56 +01:00
Gouvernathor 3fef941366 Remove dependency 2023-11-17 03:52:39 +01:00
Gouvernathor 6b2766e668 Better pass kwargs
this is not py2 anymore
2023-11-17 03:46:34 +01:00
Gouvernathor 2f2a9b985b Don't use protected variable name 2023-11-17 03:46:18 +01:00
Gouvernathor d132436843 Use scene statement instead of equivalent 2023-11-17 03:41:56 +01:00
Gouvernathor 110847e9e6 Simplify and quicken summon list iteration 2023-11-17 03:38:06 +01:00
Gouvernathor 1918def870 Make variables dynamic
or constant, in one case
2023-11-17 03:31:07 +01:00
Gouvernathor d34a96284c Internal tweaks 2023-11-17 03:29:45 +01:00
Gouvernathor acfb09516c Improve and fix last 2023-11-17 03:16:28 +01:00
Gouvernathor 1672b2381a Replace show screen with call screen 2023-11-17 03:13:17 +01:00
Gouvernathor e242c0e43a Factorize pos 2023-11-17 03:08:51 +01:00
Gouvernathor d7c8e39b08 Factorize pos 2023-11-17 03:07:16 +01:00
Gouvernathor 313849696c Avoid single-use function 2023-11-17 03:05:12 +01:00
Gouvernathor 9a7a1d4686 Fix 32cf1de
the call is useless anyway, always has been
2023-11-17 02:59:23 +01:00
Gouvernathor 2e80d3a8d8 nitpicks 2023-11-17 02:53:09 +01:00
Gouvernathor 38787bdc4c Add safe return
otherwise the implicit return is at the end of the file, which means if we add another label down the file, it will be executed after give_gift
2023-11-17 02:49:44 +01:00
Gouvernathor aefa88e4d2 Add data privacy when computing house points
the dynamic variables are needed for the show screen call
2023-11-17 02:47:17 +01:00
Gouvernathor ebcfa4b78d Use hide instead of single-use function 2023-11-17 02:39:35 +01:00
Gouvernathor b2196d3ca5 Fix abe5d55 2023-11-17 02:34:05 +01:00
Gouvernathor a7ad9fafc7 Simplify position and parameters 2023-11-17 02:31:46 +01:00
Gouvernathor 6216b62ef9 Turn two actions into functions
technically not as correct, but works all the same and is relatively faster (but it will be replaced with better actions in the future anyway)
the pickle lock, if any, for removing them in the future, becomes easier to solve
2023-11-17 02:15:31 +01:00
Gouvernathor abe5d551fc Roll most local actions out 2023-11-17 02:12:26 +01:00
Gouvernathor 87a77163de Probable typo 2023-11-17 02:07:57 +01:00
Gouvernathor 38a94e774b Some big work on the inventory system
turn the show into a call screen
replace all return actions with specific local actions (WIP, more changes to come)
make the global variables at least dynamic
make the mode parameter a parameter of the label (so, a dynamic variable too, as a result)
replace the bigger actions with local labels
tweak text entries, comparisons, iterations... details
2023-11-17 01:48:07 +01:00
Gouvernathor 25f375c88b Better and faster iteration, using foreach 2023-11-17 01:48:05 +01:00
Gouvernathor c1ab7f7b85 Use a grid for the inventory 2023-11-17 01:48:03 +01:00
Gouvernathor 837d6b378e Use the correct operator(s) for None 2023-11-17 01:48:01 +01:00
Gouvernathor 14607f2eb1 Better text interpolation in screens 2023-11-17 01:47:59 +01:00
Gouvernathor def10a09ac Simplify crop_image_zoom calls 2023-11-17 01:47:57 +01:00
Gouvernathor 3278b1f4af Remove get_zoom and use builtin fit feature
using renpy.render, wtf
2023-11-17 01:47:55 +01:00
Gouvernathor ed2a817c84 Fix 070d14a 2023-11-17 01:47:28 +01:00
Gouvernathor 87ce17df8b Use inplace sort and generator expressions 2023-11-16 02:17:25 +01:00
Gouvernathor eae844ef0b Re-enable some menu yaligns and reimplement menu sets
these menu yaligns had been disabled for a long time (the menu_y variable was never read)
2023-11-16 02:12:22 +01:00
Gouvernathor 070d14a685 Remove unused xalign 2023-11-16 01:55:20 +01:00
Gouvernathor a36c0ba222 Separate xalign and yalign 2023-11-16 01:54:22 +01:00
Gouvernathor fbe8035c43 Refactor states.menu_pos and remove reset_menu_position 2023-11-16 01:51:18 +01:00
Gouvernathor c3f753a460 Use statement instead of equivalent 2023-11-16 01:43:47 +01:00
Gouvernathor db30cd66d3 Avoid circular reference 2023-11-16 01:38:39 +01:00
Gouvernathor 4b8371e292 Make the rotate animation subpixel 2023-11-16 01:36:36 +01:00
Gouvernathor 48c4c4ecad Fix and simplify the map
in addition to benigh simplification, this actually fixes a bug : setting pos and align in the same line is a bug, it's always been unspecified, you should have been setting *anchor* instead. xycenter does that now.
2023-11-16 01:34:38 +01:00
Gouvernathor b222860bec Remove unnecessary screen variable 2023-11-16 01:11:38 +01:00
Gouvernathor c64635aace Save calling update_character_map_locations several times 2023-11-16 00:49:14 +01:00
Gouvernathor ef62f74eed replace equivalent with statement 2023-11-16 00:14:04 +01:00
Gouvernathor 9a3fe1df65 Reform random map locations
the locations of the different characters aren't independant, but they weren't in the first place
2023-11-16 00:13:42 +01:00
Gouvernathor 77e40301c9 Use statements instead of equivalents 2023-11-15 23:47:24 +01:00
Gouvernathor 42f690f966 Avoid circular reference
it clogs pickling and garbage-collecting
2023-11-15 23:46:46 +01:00
Gouvernathor 884c264f04 No it doesn't 2023-11-15 23:41:29 +01:00
Gouvernathor 23a264c8f4 Better text in screens 2023-11-15 23:24:55 +01:00
Gouvernathor 32cf1de3a0 Auto-cleanup public variables
I chose not to add them directly in the screen, to keep it readable
but even though they're still global variables, now they are dynamic and cleaned as soon as we exit the menu
2023-11-15 23:06:04 +01:00
Gouvernathor c493a4b9aa Clean most stats variables from the global store 2023-11-15 22:51:38 +01:00
Gouvernathor 1618fc378f Fix genie reform 2023-11-15 22:51:10 +01:00
Gouvernathor bbc1df1ea6 Use define for constants 2023-11-15 21:34:14 +01:00
Gouvernathor ca64492beb Further clean junk variable 2023-11-15 21:26:57 +01:00
Gouvernathor 3d62c8b818 Add style, clean junk variables 2023-11-15 21:25:10 +01:00
Gouvernathor bb2edc9a7b Simplify function 2023-11-15 21:24:47 +01:00
Gouvernathor 2ccece1a3d Use repr instead of manually added single quotes 2023-11-15 20:54:03 +01:00
Gouvernathor 8b6627f588 Improve ATL syntax
use the dedicated xycenter property
avoid setting the previous end-interpolation values before starting the new one, to avoid a jump if the player advances too quickly (also shortens the code)
add subpixel True, even though it doesn't seem very effective
prepare improvement in next renpy version
2023-11-15 20:44:48 +01:00
Gouvernathor 40ddb29185 Simplify generic CG code 2023-11-15 20:44:46 +01:00
Gouvernathor aa95f701dc Better animation 2023-11-15 20:44:44 +01:00
Gouvernathor 641893217e Simplify some code 2023-11-15 20:44:42 +01:00
Gouvernathor 3a429070fc Reform genie layeredimage 2023-11-15 20:44:39 +01:00
Gouvernathor 15e3e240fc Repr instead of adding quotes 2023-11-15 20:44:36 +01:00
Gouvernathor 9c274bee6f Simplify hide/show expression 2023-11-15 20:44:35 +01:00
Gouvernathor eeb68cb6c6 Fix test call
it raised an exception in my case, and I'm fairly sure this is how it's supposed to work
also adds a complimentary hidden reset at the end
2023-11-15 20:44:33 +01:00
Gouvernathor 5460ec2572 Remove now-unused reset_variables relying on implem details
It is used in a txt draft which I didn't change, it can be done if deemed necessary
I think this function should be kept off, as it is both more dangerous and slower than the workarounds
2023-11-15 20:44:30 +01:00
Gouvernathor 2e17dd2582 Avoid using reset_variables 2023-11-15 20:43:34 +01:00
Gouvernathor 78230893a8 Avoid using lists 2023-11-15 20:43:32 +01:00
Gouvernathor 3b6dd38e19 Use childful transforms as displayable
that's not *explicitly* documented, but it won't change any time soon
also deletes a placeholder image
2023-11-15 20:43:30 +01:00
Gouvernathor a9dc195379 Upgrade other uses of image manipulators 2023-11-15 20:43:28 +01:00
Gouvernathor 985a0a79ed Modernize use of matrixcolor 2023-11-15 20:43:25 +01:00
Gouvernathor 9d52bd9c92 Hasten ConditionSwitch-es 2023-11-15 20:43:23 +01:00
Gouvernathor 542db72609 Use expression instead of image
the only documented lingua
this is AST-equivalent
2023-11-15 20:43:20 +01:00
Gouvernathor 6dc1a04810 Factorize jumps in the elif 2023-11-15 20:43:18 +01:00
Gouvernathor 9b419fcbc3 Hasten elif chain
avoid reevaluating the choice equality
2023-11-15 20:43:15 +01:00
Gouvernathor 976455bfc9 Use renpy statement instead of python equivalent 2023-11-15 20:43:13 +01:00
Gouvernathor 4c52d1638f Use dynamic variable and condense menu-label syntax
The label is jumped to and not called, but the variable will still clean itself up eventually
2023-11-15 20:43:11 +01:00
Gouvernathor 4ec94d28f5 Convert ball_hint to a screen variable
no leak
2023-11-15 20:43:10 +01:00
Gouvernathor f51f3a30a1 Use the call screen statement in this case
this particular syntax is very precisely documented in the screens page
2023-11-15 20:43:08 +01:00
Gouvernathor 8d4216a476 Better None syntax 2023-11-15 20:43:05 +01:00
Gouvernathor da636e93ab Simpler inline conditional 2023-11-15 20:43:04 +01:00
Gouvernathor 6a4b56a182 Avoid extraneous bool call 2023-11-15 20:43:01 +01:00
Gouvernathor 36d3a5d1a7 Sort in-place to save time 2023-11-15 20:42:59 +01:00
Gouvernathor a606fc9ca2 Use python hide instead of a single-use function 2023-11-15 20:42:57 +01:00
Gouvernathor 925cf611c1 Fix indent 2023-11-15 20:42:55 +01:00
Gouvernathor 15c998cd5a Weird variable setting 2023-11-15 20:42:52 +01:00
Gouvernathor 3e86094b0b Fix misuse of variable
- don't use a reserved name (starting with an underscore)
- use a file-local mangled name (starting with two underscores
- use renpy.dynamx to cleanup the variable automatically
2023-11-15 20:42:50 +01:00
Gouvernathor e80bd9e6e6 Repr instead of adding simple quotes manually
it's a tad slower but it's a better general practice and we're in an error handling branch anyway
2023-11-15 20:42:48 +01:00
Gouvernathor 21cb97b2e2 Sirt in-place to save time
not the first time, so that we can still pass it iterators
2023-11-15 20:42:45 +01:00
Gouvernathor b21e179df0 Simplify that call 2023-11-15 20:42:43 +01:00
Gouvernathor 94a6f9302b skip unnecessary lambda 2023-11-15 20:42:41 +01:00
LoafyLemon f93f50e9ac Update README 2023-11-15 20:42:40 +01:00
120 changed files with 2096 additions and 2149 deletions

120
README.md

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -88,11 +88,11 @@ image ch_ast wand_imperio:
random_blink("characters/astoria/chibis/wand_imperio/ag_head_02.webp", "characters/astoria/chibis/wand_imperio/ag_head_01.webp")
contains:
"blank"
Null()
pause.12
"characters/astoria/chibis/wand_imperio/ag_head_03.webp"
pause 1
"blank"
Null()
contains:
xpos 78
@ -113,7 +113,7 @@ image ch_ast wand_imperio:
alpha 1.0
"characters/astoria/chibis/wand_imperio/smoke.webp"
linear 1.0 xzoom 1.0 xpos -34 ypos 37
"blank"
Null()
contains:
xpos -34

View File

@ -1,8 +1,6 @@
image object:
Null()
transform OBJbutterfly(hue=random.randint(0, 359)):
zoom random.uniform(0.4, 0.85)
matrixcolor HueMatrix(hue)
choice:
pause random.randint(1, 7)
@ -22,13 +20,13 @@ transform OBJbutterfly(hue=random.randint(0, 359)):
ease_circ 1.0 rotate 15
repeat
parallel:
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/0.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/0.webp" with d3
pause .3
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/1.webp" with d3
pause .3
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/2.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/2.webp" with d3
pause .3
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/1.webp" with d3
pause .3
repeat
choice:
@ -49,13 +47,13 @@ transform OBJbutterfly(hue=random.randint(0, 359)):
ease_circ 1.0 rotate -15
repeat
parallel:
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/0.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/0.webp" with d3
pause .3
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/1.webp" with d3
pause .3
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/2.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/2.webp" with d3
pause .3
im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3
"images/rooms/quidditch_pitch/butterfly/1.webp" with d3
pause .3
repeat
repeat

Some files were not shown because too many files have changed in this diff Show More