Make the delusion trigger animation skippable#486
Conversation
|
Hello, thanks for the PR Two things :
|
|
Oh also, you correctly skipped the startup section, but the "locking in/zooming in" section should also be skipped (at the end of the trigger) |
|
Happy to help where I can I didn't mean just that the startup portion of the trigger is inverted I meant that on the ps3 and switch the pressing the right trigger makes it spin left and on impacto pressing the right trigger makes it spin right |
Hmm I'm not remembering this but in any case, no there's no reasoning behind our implem being different so it should be fixed |
e942c8f to
1469ef5
Compare
|
I think the startup section is also inversed, i should load up clockwise, then left-right-left, then continue clockwise Right now it does counterclockwise, right-left-right, continues clockwise, so only step 5 is correct |
|
I found the fix for it but now I also found that it's still not quite alligned with the other versions so I am going to tinker with it a bit more |
2e60b9d to
17ffa7f
Compare
|
It should be really close to the original now |
PringlesGang
left a comment
There was a problem hiding this comment.
Thanks for the PR, looks great for the most part!
In addition to the other comment, the skip-exiting of the trigger also does not seem to be as smooth yet as it should be. There's a noticeable delay between the animation being skipped and the new dialogue actually showing up, and if you let go of force-skip halfway through that delay it does not automatically load the next line
If you could fix those remaining issues up, that would be great. Thanks again
| State = Hidden; | ||
| Reset(); | ||
| }; | ||
| if (GetFlag(SF_MESSKIP)) { |
There was a problem hiding this comment.
I think this and the other one should be SF_MESALLSKIP, as you should not be able to skip the intro with the advance button
|
I added the delay because it felt like it had some on the other platforms altough it could just be my eyes playing tricks on me. |
I did some digging for myself and I've figured out how the actual game does it. Bear with me, this may get a little technical When hiding the delusion trigger, in the script ( In the original game, The skipping is handled by the Because we handle the hiding animation in I think the cleanest solution would be to extract case 7:
if (GetFlag(SF_MESALLSKIP) {
inst.SetHidden();
}
break;to Something similar would likely need to be done for skipping the showing animation and case 2 Let me know if anything's unclear, I understand this may be a lot |
|
It's fairly straight forward thank you for the explanation. |
That's right, There isn't really a ScrFlag for differentiating skip mode from force skip, but neither does the engine ever make a difference through the script. Within the engine code that difference would be |
8194643 to
bfac7f6
Compare
|
Is this how you imagined to work? |
PringlesGang
left a comment
There was a problem hiding this comment.
Yeah you got the idea I was going for, but I've still got a small handful of pointers
| void DelusionTrigger::SetHidden() { | ||
| SetFlag(SF_DELUSION_UI_ANIM_WAIT, 0); | ||
| Reset(); | ||
| } | ||
|
|
||
| void DelusionTrigger::SetShown() { | ||
| SetFlag(SF_DELUSION_UI_ANIM_WAIT, 0); | ||
| Load(); | ||
| } |
There was a problem hiding this comment.
Looking at these now, I think you can safely move the SetFlags into Reset() and Load() and just use those everywhere instead, removing SetShown() and SetHidden() altogether
d542843 to
55cd6e5
Compare
Make the delusion trigger animation skippable in C;H LCC #484
On a side note I noticed that the triggers in impacto make it spin the opposite way compared to the PS3 and switch version is this deliberate?