fixed terrain effects

This commit is contained in:
AgustinGDLV 2023-03-25 20:02:48 -07:00
parent e1c819a863
commit aac4ef4d2a
4 changed files with 25 additions and 25 deletions

View file

@ -907,8 +907,8 @@ gBattleAnims_Moves::
.4byte Move_MAX_GEYSER
.4byte Move_MAX_OVERGROWTH
.4byte Move_MAX_LIGHTNING
.4byte Move_MAX_HAILSTORM
.4byte Move_MAX_MINDSTORM
.4byte Move_MAX_HAILSTORM
.4byte Move_MAX_WYRMWIND
.4byte Move_MAX_DARKNESS
.4byte Move_MAX_STARFALL

View file

@ -10434,7 +10434,7 @@ BattleScript_RaiseSideStatsIncrement:
setallytonexttarget BattleScript_RaiseSideStatsLoop
BattleScript_RaiseSideStatsEnd:
restoretarget
goto BattleScript_MoveEnd
return
BattleScript_EffectLowerStatFoes::
savetarget
@ -10453,27 +10453,27 @@ BattleScript_LowerSideStatsIncrement:
setallytonexttarget BattleScript_LowerSideStatsLoop
BattleScript_LowerSideStatsEnd:
restoretarget
goto BattleScript_MoveEnd
return
BattleScript_EffectSetWeather::
playanimation 0, B_ANIM_MAX_SET_WEATHER
printfromtable gMoveWeatherChangeStringIds
waitmessage B_WAIT_TIME_LONG
call BattleScript_WeatherFormChanges
goto BattleScript_MoveEnd
return
BattleScript_EffectSetTerrain::
printfromtable gTerrainStringIds
waitmessage B_WAIT_TIME_LONG
playanimation BS_SCRIPTING, B_ANIM_RESTORE_BG
playanimation BS_ATTACKER, B_ANIM_RESTORE_BG
call BattleScript_ActivateTerrainAbilities
call BattleScript_TerrainSeedLoop
jumpifabilitypresent ABILITY_MIMICRY, BattleScript_MimicryActivates_End3
goto BattleScript_MoveEnd
return
BattleScript_DamageNonTypesStarts::
printfromtable gDamageNonTypesStartStringIds
waitmessage B_WAIT_TIME_LONG
goto BattleScript_MoveEnd
return
BattleScript_DamageNonTypesContinues::
setbyte gBattleCommunication, 0
@ -10496,13 +10496,13 @@ BattleScript_DamageNonTypesLoopIncrement::
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamageNonTypesLoop
BattleScript_DamageNonTypesContinuesEnd::
bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
end
return
BattleScript_EffectTryReducePP::
tryspiteppreduce BattleScript_MoveEnd
printstring STRINGID_PKMNREDUCEDPP
waitmessage B_WAIT_TIME_LONG
goto BattleScript_MoveEnd
return
BattleScript_EffectStatus1Foes::
savetarget
@ -10521,7 +10521,7 @@ BattleScript_Status1FoesIncrement:
setallytonexttarget BattleScript_Status1FoesLoop
BattleScript_Status1FoesEnd:
restoretarget
goto BattleScript_MoveEnd
return
BattleScript_EffectStatus2Foes::
savetarget
@ -10540,7 +10540,7 @@ BattleScript_Status2FoesIncrement:
BattleScript_Status2FoesEnd:
restoretarget
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 1, BattleScript_PrintCoinsScattered @ Gold Rush
goto BattleScript_MoveEnd
return
BattleScript_DoConfuseAnim:
status2animation BS_EFFECT_BATTLER, STATUS2_CONFUSION
@ -10577,7 +10577,7 @@ BattleScript_RaiseCritAlliesIncrement:
setallytonexttarget BattleScript_RaiseCritAlliesLoop
BattleScript_RaiseCritAlliesEnd:
restoretarget
goto BattleScript_MoveEnd
return
BattleScript_EffectHealOneSixthAllies::
jumpifteamhealthy BS_ATTACKER, BattleScript_MoveEnd
@ -10596,7 +10596,7 @@ BattleScript_HealOneSixthAlliesIncrement:
setallytonexttarget BattleScript_HealOneSixthAlliesLoop
BattleScript_HealOneSixthAlliesEnd:
restoretarget
goto BattleScript_MoveEnd
return
BattleScript_EffectCureStatusAllies::
jumpifteamhealthy BS_ATTACKER, BattleScript_MoveEnd
@ -10610,7 +10610,7 @@ BattleScript_CureStatusAlliesIncrement:
setallytonexttarget BattleScript_CureStatusAlliesLoop
BattleScript_CureStatusAlliesEnd:
restoretarget
goto BattleScript_MoveEnd
return
BattleScript_CureStatusActivate:
curestatus BS_TARGET
@ -10636,7 +10636,7 @@ BattleScript_RecycleBerriesAlliesIncrement:
setallytonexttarget BattleScript_RecycleBerriesAlliesLoop
BattleScript_RecycleBerriesAlliesEnd:
restoretarget
goto BattleScript_MoveEnd
return
@@@ END MAX MOVES @@@

View file

@ -6,7 +6,7 @@
// still has them in the ROM. This is because the developers forgot
// to define NDEBUG before release, however this has been changed as
// Ruby's actual debug build does not use the AGBPrint features.
#define NDEBUG
// #define NDEBUG
// To enable printf debugging, comment out "#define NDEBUG". This allows
// the various AGBPrint functions to be used. (See include/gba/isagbprint.h).

View file

@ -115,7 +115,7 @@ bool32 CanDynamax(u16 battlerId)
#if B_FLAG_DYNAMAX_BATTLE != 0
if (!FlagGet(B_FLAG_DYNAMAX_BATTLE))
#endif
//return FALSE;
return FALSE;
// Check if Player has a Dynamax Band.
@ -630,23 +630,22 @@ u16 SetMaxMoveEffect(u16 move)
case MAX_EFFECT_PSYCHIC_TERRAIN:
{
u32 statusFlag = 0;
u8 *timer = NULL;
switch (gBattleMoves[gCurrentMove].argument)
{
case MAX_EFFECT_MISTY_TERRAIN:
statusFlag = STATUS_FIELD_MISTY_TERRAIN, timer = &gFieldTimers.terrainTimer;
statusFlag = STATUS_FIELD_MISTY_TERRAIN;
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
break;
case MAX_EFFECT_GRASSY_TERRAIN:
statusFlag = STATUS_FIELD_GRASSY_TERRAIN, timer = &gFieldTimers.terrainTimer;
statusFlag = STATUS_FIELD_GRASSY_TERRAIN;
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
break;
case MAX_EFFECT_ELECTRIC_TERRAIN:
statusFlag = STATUS_FIELD_ELECTRIC_TERRAIN, timer = &gFieldTimers.terrainTimer;
statusFlag = STATUS_FIELD_ELECTRIC_TERRAIN;
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
break;
case MAX_EFFECT_PSYCHIC_TERRAIN:
statusFlag = STATUS_FIELD_PSYCHIC_TERRAIN, timer = &gFieldTimers.terrainTimer;
statusFlag = STATUS_FIELD_PSYCHIC_TERRAIN;
gBattleCommunication[MULTISTRING_CHOOSER] = 3;
break;
}
@ -655,11 +654,12 @@ u16 SetMaxMoveEffect(u16 move)
gFieldStatuses &= ~STATUS_FIELD_TERRAIN_ANY;
gFieldStatuses |= statusFlag;
if (GetBattlerHoldEffect(gBattlerAttacker, TRUE) == HOLD_EFFECT_TERRAIN_EXTENDER)
*timer = 8;
gFieldTimers.terrainTimer = 8;
else
*timer = 5;
gFieldTimers.terrainTimer = 5;
BattleScriptPush(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_EffectSetTerrain;
effect++;
}
break;
}