Skip to content
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

RPG_RT (RM2000) feature: Sound animation in battles with limited time #1377

Closed
Albeleon opened this Issue Jun 20, 2018 · 2 comments

Comments

Projects
None yet
3 participants
@Albeleon
Copy link
Member

Albeleon commented Jun 20, 2018

Platform: RPG Maker 2000 v1.51 and v1.62

Description:

When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less).

Videos:

Link 1 (Sendvid): http://sendvid.com/7hplebiz
Link 2 (Github, "Save Link As"): https://github.com/Albeleon/hello-world/raw/master/MP4/2018-06-20_16-06-46.mp4

@fdelapena fdelapena added the Battle label Jun 20, 2018

Albeleon added a commit to Albeleon/Player that referenced this issue Jun 23, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

Albeleon added a commit to Albeleon/Player that referenced this issue Jun 24, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

Albeleon added a commit to Albeleon/Player that referenced this issue Jul 1, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

Albeleon added a commit to Albeleon/Player that referenced this issue Jul 2, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

Albeleon added a commit to Albeleon/Player that referenced this issue Jul 4, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

Albeleon added a commit to Albeleon/Player that referenced this issue Jul 12, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

Albeleon added a commit to Albeleon/Player that referenced this issue Jul 16, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Oct 14, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Oct 15, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Oct 15, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Oct 27, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Oct 27, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 4, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 5, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 5, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.
@Ghabry

This comment has been minimized.

Copy link
Member

Ghabry commented Nov 7, 2018

#1479 (after rebase only will have 3 commits) contains the patch for this, we should just retest if the cut-off is really 20 frames.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 8, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 14, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 14, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 14, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 15, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 18, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 18, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 18, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 18, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Nov 21, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

fmatthew5876 added a commit to fmatthew5876/Player that referenced this issue Dec 3, 2018

Objective: Implement the EasyRPG#1377 feature from RPG_RT:
"When a skill (with animation attached) is directed towards an ally target or ally group (enemy skill, or ally skill that heals), instead of playing the graphic animation, it plays only the sound. This is fine, but there is more than that: It only plays the sounds of the 20 first frames of the animation. If a sound is on frame 21 or further, it won't play. Also, the waiting time will always be around 15-20 frames, no matter its actual length (more or less)."

Solution:
 - Include a cutoff frame where, from the on, any Sfx operation (sound, flash or shake) isn't executed. We include this variable as an attribute in battle_animation and as an input argument for the constructor (mostly applied to BattleAnimationBattlers). Then we use then for any subsequent function made to invoke Battle Animations that (in our case) could summon SoundAnimation. Therefore, in Scene_Battle_Rpg2k.cpp, when it invokes that function, it puts 20 as the cutoff point.
 - Also, since the wait time for this animation doesn't matter, what we do is add a "ShouldOnlySound" function available for Scene_Battle_Rpg2k.cpp, so in case it's a sound, it doesn't have to wait until it's finishes, it just waits the normal GetDelayForWindow().
 - In that case, the wait after any animation is finished has been changed from GetDelayForLine() to GetDelayForWindow(), it's more exact.

@fdelapena fdelapena added this to the 0.6.0 (likely) milestone Dec 7, 2018

@fdelapena

This comment has been minimized.

Copy link
Contributor

fdelapena commented Dec 7, 2018

Fixed in #1449.

@fdelapena fdelapena closed this Dec 7, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.