-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow level changing during Valerian PDA conversations (new game required) #168
base: master
Are you sure you want to change the base?
Conversation
Why wouldn’t it be? The information about previous level is in the save file directly, so an autosave would have the previous location in it, and it does not matter if you travelled directly or closed the game and started a new session. A save file made after an autosave will indeed not have the
I looked into it but couldn’t get it to work — can’t say if it’s me or if the function does not work as advertised. The solution I provided has been tested, however (although on vanilla, not SRP). |
I redacted my original review comment a few minutes after posting it upon realizing I was mistaken. For future reference, there is no need to reply to such comments - the misunderstanding had already been clarified. |
I've pushed a second commit to address the following minor issues:
|
I assumed it was a GitHub issue, my apologies. I prefer inheritance when reusing the same code piece throughout the logic file to make it easier to edit in a single place instead of every section where it is used, but your reasoning is valid — it can introduce new issues with conditions potentially being overwritten if one is unattentive. Inheritance is rarely used in logic in CS (I can only recall alternative Sakharov meet scheme in vanilla inheriting from his regular scheme to enable a different dialogue), but it is common in CoP and imo it makes the logic files easier to read (while agreeably being potentially harder to maintain). I totally forgot about the existence of optional addons in SRP, and yeah, the other changes seem reasonable as well. One minor thing if this is going to get implemented into the main branch — the strings previously used for level changer blockage should get removed from the localization files. |
Unfortunately, Note to self: This PR is not safe to merge without a new game requirement. That's because if someone has a save where e.g. |
If the goal is to stop the rest of the conversation from playing when the player goes to another location and then comes back, I believe a better way to handle it would be to track game loading (through
device().precache_frame
) and whether we're loading from a different level (which is already tracked by bind_stalker.script for emission starting purposes, but not exposed to other scripts), and if both conditions are met, stop the sound and skip the conversation entirely.