[~April 10] glitchy de/select with anon functions

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
Post Reply
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

[~April 10] glitchy de/select with anon functions

Post by Matt »

If you set 2 weapons with a 0-length frame in the select and deselect states with an anonymous function with multiple A_Raise/Lower calls, and try to switch between them, some frames get skipped.
Last edited by Matt on Sat Apr 16, 2016 7:47 pm, edited 1 time in total.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49234
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [~April 10] glitchy de/select with anon functions

Post by Graf Zahl »

Example! Example!!!
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Re: [~April 10] glitchy de/select with anon functions

Post by Matt »

Sorry, got distracted and wanted a placeholder before I forgot.
Spoiler:
IDFA. Hit 5 repeatedly.

Expected: choppy raise and lower for both. This still happens with 6.

Actual: if you hit 5 just as a weapon is about to raise again, it will immediately disappear no matter how far up it is and the other weapon will start coming up.

This does not happen if only one A_Raise/Lower is called in the anonymous function, or at least I haven't been able to replicate it that way.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49234
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [~April 10] glitchy de/select with anon functions

Post by Graf Zahl »

This cannot be changed.

A_Lower and A_Raise call P_SetPsprite (that's the function that changes weapon states and calls their action functions) when they are done with their job. With a multi-state setup this cleanly aborts the sequence. With a 3x call in the same state it cannot detect this and executes some more calls than are really needed, and those whack your example.
Post Reply

Return to “Closed Bugs [GZDoom]”