diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 4845b49aad..c498aa3abf 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -301,7 +301,6 @@ gBattleScriptsForMoveEffects:: .4byte BattleScript_EffectQuiverDance @ EFFECT_QUIVER_DANCE .4byte BattleScript_EffectCoil @ EFFECT_COIL .4byte BattleScript_EffectElectrify @ EFFECT_ELECTRIFY - .4byte BattleScript_EffectBurnHit @ EFFECT_SCALD .4byte BattleScript_EffectReflectType @ EFFECT_REFLECT_TYPE .4byte BattleScript_EffectSoak @ EFFECT_SOAK .4byte BattleScript_EffectGrowth @ EFFECT_GROWTH diff --git a/include/config/battle.h b/include/config/battle.h index d6099dbc26..9157666470 100644 --- a/include/config/battle.h +++ b/include/config/battle.h @@ -94,6 +94,7 @@ #define B_TELEPORT_BEHAVIOR GEN_LATEST // In Gen7+, starting with Pokémon LGPE, Teleport allows the user to swap out with another party member. #define B_BEAT_UP GEN_LATEST // In Gen5+, Beat Up uses a different formula to calculate its damage, and deals Dark-type damage. Prior to Gen 5, each hit also announces the party member's name. #define B_DARK_VOID_FAIL GEN_LATEST // In Gen7+, only Darkrai can use Dark Void. +#define B_BURN_HIT_THAW GEN_LATEST // In Gen6+, damaging moves with a chance of burn will thaw the target, regardless if they're fire-type moves or not. // Ability settings #define B_EXPANDED_ABILITY_NAMES TRUE // If TRUE, ability names are increased from 12 characters to 16 characters. diff --git a/include/constants/battle_move_effects.h b/include/constants/battle_move_effects.h index 89613f2778..2cf8d2f9c3 100644 --- a/include/constants/battle_move_effects.h +++ b/include/constants/battle_move_effects.h @@ -282,124 +282,122 @@ #define EFFECT_QUIVER_DANCE 276 #define EFFECT_COIL 277 #define EFFECT_ELECTRIFY 278 -#define EFFECT_SCALD 279 -#define EFFECT_REFLECT_TYPE 280 -#define EFFECT_SOAK 281 -#define EFFECT_GROWTH 282 -#define EFFECT_CLOSE_COMBAT 283 -#define EFFECT_LAST_RESORT 284 -#define EFFECT_RECOIL_33_STATUS 285 -#define EFFECT_FLINCH_STATUS 286 -#define EFFECT_RECOIL_50 287 -#define EFFECT_SHELL_SMASH 288 -#define EFFECT_SHIFT_GEAR 289 -#define EFFECT_DEFENSE_UP_3 290 -#define EFFECT_NOBLE_ROAR 291 -#define EFFECT_VENOM_DRENCH 292 -#define EFFECT_TOXIC_THREAD 293 -#define EFFECT_CLEAR_SMOG 294 -#define EFFECT_HIT_SWITCH_TARGET 295 -#define EFFECT_FINAL_GAMBIT 296 -#define EFFECT_CHANGE_TYPE_ON_ITEM 297 -#define EFFECT_AUTOTOMIZE 298 -#define EFFECT_COPYCAT 299 -#define EFFECT_DEFOG 300 -#define EFFECT_HIT_ENEMY_HEAL_ALLY 301 -#define EFFECT_SMACK_DOWN 302 -#define EFFECT_SYNCHRONOISE 303 -#define EFFECT_PSYCHO_SHIFT 304 -#define EFFECT_POWER_TRICK 305 -#define EFFECT_FLAME_BURST 306 -#define EFFECT_AFTER_YOU 307 -#define EFFECT_BESTOW 308 -#define EFFECT_ROTOTILLER 309 -#define EFFECT_FLOWER_SHIELD 310 -#define EFFECT_HIT_PREVENT_ESCAPE 311 -#define EFFECT_SPEED_SWAP 312 -#define EFFECT_DEFENSE_UP2_HIT 313 -#define EFFECT_REVELATION_DANCE 314 -#define EFFECT_AURORA_VEIL 315 -#define EFFECT_THIRD_TYPE 316 -#define EFFECT_FEINT 317 -#define EFFECT_SPARKLING_ARIA 318 -#define EFFECT_ACUPRESSURE 319 -#define EFFECT_AROMATIC_MIST 320 -#define EFFECT_POWDER 321 -#define EFFECT_SP_ATTACK_UP_HIT 322 -#define EFFECT_BELCH 323 -#define EFFECT_PARTING_SHOT 324 -#define EFFECT_SPECTRAL_THIEF 325 -#define EFFECT_V_CREATE 326 -#define EFFECT_MAT_BLOCK 327 -#define EFFECT_STOMPING_TANTRUM 328 -#define EFFECT_CORE_ENFORCER 329 -#define EFFECT_INSTRUCT 330 -#define EFFECT_THROAT_CHOP 331 -#define EFFECT_LASER_FOCUS 332 -#define EFFECT_MAGNETIC_FLUX 333 -#define EFFECT_GEAR_UP 334 -#define EFFECT_INCINERATE 335 -#define EFFECT_BUG_BITE 336 -#define EFFECT_STRENGTH_SAP 337 -#define EFFECT_MIND_BLOWN 338 -#define EFFECT_PURIFY 339 -#define EFFECT_BURN_UP 340 -#define EFFECT_SHORE_UP 341 -#define EFFECT_GEOMANCY 342 -#define EFFECT_FAIRY_LOCK 343 -#define EFFECT_ALLY_SWITCH 344 -#define EFFECT_RELIC_SONG 345 -#define EFFECT_ATTACKER_DEFENSE_DOWN_HIT 346 -#define EFFECT_BODY_PRESS 347 -#define EFFECT_EERIE_SPELL 348 -#define EFFECT_JUNGLE_HEALING 349 -#define EFFECT_COACHING 350 -#define EFFECT_LASH_OUT 351 -#define EFFECT_GRASSY_GLIDE 352 -#define EFFECT_REMOVE_TERRAIN 353 -#define EFFECT_DYNAMAX_DOUBLE_DMG 354 -#define EFFECT_DECORATE 355 -#define EFFECT_SNIPE_SHOT 356 -#define EFFECT_RECOIL_HP_25 357 -#define EFFECT_STUFF_CHEEKS 358 -#define EFFECT_GRAV_APPLE 359 -#define EFFECT_EVASION_UP_HIT 360 -#define EFFECT_GLITZY_GLOW 361 -#define EFFECT_BADDY_BAD 362 -#define EFFECT_SAPPY_SEED 363 -#define EFFECT_FREEZY_FROST 364 -#define EFFECT_SPARKLY_SWIRL 365 -#define EFFECT_PLASMA_FISTS 366 -#define EFFECT_HYPERSPACE_FURY 367 -#define EFFECT_AURA_WHEEL 368 -#define EFFECT_PHOTON_GEYSER 369 -#define EFFECT_SHELL_SIDE_ARM 370 -#define EFFECT_TERRAIN_PULSE 371 -#define EFFECT_JAW_LOCK 372 -#define EFFECT_NO_RETREAT 373 -#define EFFECT_TAR_SHOT 374 -#define EFFECT_POLTERGEIST 375 -#define EFFECT_OCTOLOCK 376 -#define EFFECT_CLANGOROUS_SOUL 377 -#define EFFECT_BOLT_BEAK 378 -#define EFFECT_SKY_DROP 379 -#define EFFECT_EXPANDING_FORCE 380 -#define EFFECT_SCALE_SHOT 381 -#define EFFECT_METEOR_BEAM 382 -#define EFFECT_RISING_VOLTAGE 383 -#define EFFECT_BEAK_BLAST 384 -#define EFFECT_COURT_CHANGE 385 -#define EFFECT_STEEL_BEAM 386 -#define EFFECT_EXTREME_EVOBOOST 387 -#define EFFECT_HIT_SET_REMOVE_TERRAIN 388 -#define EFFECT_DARK_VOID 389 -#define EFFECT_SLEEP_HIT 390 -#define EFFECT_DOUBLE_SHOCK 391 -#define EFFECT_SPECIAL_ATTACK_UP_HIT 392 -#define EFFECT_VICTORY_DANCE 393 -#define EFFECT_TEATIME 394 - -#define NUM_BATTLE_MOVE_EFFECTS 395 +#define EFFECT_REFLECT_TYPE 279 +#define EFFECT_SOAK 280 +#define EFFECT_GROWTH 281 +#define EFFECT_CLOSE_COMBAT 282 +#define EFFECT_LAST_RESORT 283 +#define EFFECT_RECOIL_33_STATUS 284 +#define EFFECT_FLINCH_STATUS 285 +#define EFFECT_RECOIL_50 286 +#define EFFECT_SHELL_SMASH 287 +#define EFFECT_SHIFT_GEAR 288 +#define EFFECT_DEFENSE_UP_3 289 +#define EFFECT_NOBLE_ROAR 290 +#define EFFECT_VENOM_DRENCH 291 +#define EFFECT_TOXIC_THREAD 292 +#define EFFECT_CLEAR_SMOG 293 +#define EFFECT_HIT_SWITCH_TARGET 294 +#define EFFECT_FINAL_GAMBIT 295 +#define EFFECT_CHANGE_TYPE_ON_ITEM 296 +#define EFFECT_AUTOTOMIZE 297 +#define EFFECT_COPYCAT 298 +#define EFFECT_DEFOG 299 +#define EFFECT_HIT_ENEMY_HEAL_ALLY 300 +#define EFFECT_SMACK_DOWN 301 +#define EFFECT_SYNCHRONOISE 302 +#define EFFECT_PSYCHO_SHIFT 303 +#define EFFECT_POWER_TRICK 304 +#define EFFECT_FLAME_BURST 305 +#define EFFECT_AFTER_YOU 306 +#define EFFECT_BESTOW 307 +#define EFFECT_ROTOTILLER 308 +#define EFFECT_FLOWER_SHIELD 309 +#define EFFECT_HIT_PREVENT_ESCAPE 310 +#define EFFECT_SPEED_SWAP 311 +#define EFFECT_DEFENSE_UP2_HIT 312 +#define EFFECT_REVELATION_DANCE 313 +#define EFFECT_AURORA_VEIL 314 +#define EFFECT_THIRD_TYPE 315 +#define EFFECT_FEINT 316 +#define EFFECT_SPARKLING_ARIA 317 +#define EFFECT_ACUPRESSURE 318 +#define EFFECT_AROMATIC_MIST 319 +#define EFFECT_POWDER 320 +#define EFFECT_SP_ATTACK_UP_HIT 321 +#define EFFECT_BELCH 322 +#define EFFECT_PARTING_SHOT 323 +#define EFFECT_SPECTRAL_THIEF 324 +#define EFFECT_V_CREATE 325 +#define EFFECT_MAT_BLOCK 326 +#define EFFECT_STOMPING_TANTRUM 327 +#define EFFECT_CORE_ENFORCER 328 +#define EFFECT_INSTRUCT 329 +#define EFFECT_THROAT_CHOP 330 +#define EFFECT_LASER_FOCUS 331 +#define EFFECT_MAGNETIC_FLUX 332 +#define EFFECT_GEAR_UP 333 +#define EFFECT_INCINERATE 334 +#define EFFECT_BUG_BITE 335 +#define EFFECT_STRENGTH_SAP 336 +#define EFFECT_MIND_BLOWN 337 +#define EFFECT_PURIFY 338 +#define EFFECT_BURN_UP 339 +#define EFFECT_SHORE_UP 340 +#define EFFECT_GEOMANCY 341 +#define EFFECT_FAIRY_LOCK 342 +#define EFFECT_ALLY_SWITCH 343 +#define EFFECT_RELIC_SONG 344 +#define EFFECT_ATTACKER_DEFENSE_DOWN_HIT 345 +#define EFFECT_BODY_PRESS 346 +#define EFFECT_EERIE_SPELL 347 +#define EFFECT_JUNGLE_HEALING 348 +#define EFFECT_COACHING 349 +#define EFFECT_LASH_OUT 350 +#define EFFECT_GRASSY_GLIDE 351 +#define EFFECT_REMOVE_TERRAIN 352 +#define EFFECT_DYNAMAX_DOUBLE_DMG 353 +#define EFFECT_DECORATE 354 +#define EFFECT_SNIPE_SHOT 355 +#define EFFECT_RECOIL_HP_25 356 +#define EFFECT_STUFF_CHEEKS 357 +#define EFFECT_GRAV_APPLE 358 +#define EFFECT_EVASION_UP_HIT 359 +#define EFFECT_GLITZY_GLOW 360 +#define EFFECT_BADDY_BAD 361 +#define EFFECT_SAPPY_SEED 362 +#define EFFECT_FREEZY_FROST 363 +#define EFFECT_SPARKLY_SWIRL 364 +#define EFFECT_PLASMA_FISTS 365 +#define EFFECT_HYPERSPACE_FURY 366 +#define EFFECT_AURA_WHEEL 367 +#define EFFECT_PHOTON_GEYSER 368 +#define EFFECT_SHELL_SIDE_ARM 369 +#define EFFECT_TERRAIN_PULSE 370 +#define EFFECT_JAW_LOCK 371 +#define EFFECT_NO_RETREAT 372 +#define EFFECT_TAR_SHOT 373 +#define EFFECT_POLTERGEIST 374 +#define EFFECT_OCTOLOCK 375 +#define EFFECT_CLANGOROUS_SOUL 376 +#define EFFECT_BOLT_BEAK 377 +#define EFFECT_SKY_DROP 378 +#define EFFECT_EXPANDING_FORCE 379 +#define EFFECT_SCALE_SHOT 380 +#define EFFECT_METEOR_BEAM 381 +#define EFFECT_RISING_VOLTAGE 382 +#define EFFECT_BEAK_BLAST 383 +#define EFFECT_COURT_CHANGE 384 +#define EFFECT_STEEL_BEAM 385 +#define EFFECT_EXTREME_EVOBOOST 386 +#define EFFECT_HIT_SET_REMOVE_TERRAIN 387 // genesis supernova +#define EFFECT_DARK_VOID 388 +#define EFFECT_SLEEP_HIT 389 +#define EFFECT_DOUBLE_SHOCK 390 +#define EFFECT_SPECIAL_ATTACK_UP_HIT 391 +#define EFFECT_VICTORY_DANCE 392 +#define EFFECT_TEATIME 393 +#define NUM_BATTLE_MOVE_EFFECTS 394 #endif // GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e0ba27bec7..e24b0cc1c1 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5256,8 +5256,12 @@ static void Cmd_moveend(void) && gBattleMons[gBattlerTarget].hp != 0 && gBattlerAttacker != gBattlerTarget && gSpecialStatuses[gBattlerTarget].specialDmg - && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) - && (moveType == TYPE_FIRE || gBattleMoves[gCurrentMove].effect == EFFECT_SCALD)) + && (moveType == TYPE_FIRE + #if B_BURN_HIT_THAW >= GEN_6 + || gBattleMoves[gCurrentMove].effect == EFFECT_BURN_HIT + #endif + ) + && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)) { gBattleMons[gBattlerTarget].status1 &= ~STATUS1_FREEZE; gActiveBattler = gBattlerTarget; diff --git a/src/battle_tv.c b/src/battle_tv.c index 33483da061..10c2144ccd 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -367,7 +367,6 @@ static const u16 sPoints_MoveEffect[NUM_BATTLE_MOVE_EFFECTS] = [EFFECT_QUIVER_DANCE] = 0, // TODO: Assign points [EFFECT_COIL] = 0, // TODO: Assign points [EFFECT_ELECTRIFY] = 0, // TODO: Assign points - [EFFECT_SCALD] = 0, // TODO: Assign points [EFFECT_REFLECT_TYPE] = 0, // TODO: Assign points [EFFECT_SOAK] = 0, // TODO: Assign points [EFFECT_GROWTH] = 0, // TODO: Assign points diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h index f5cc351f2b..41779a0c5b 100644 --- a/src/data/battle_moves.h +++ b/src/data/battle_moves.h @@ -9026,11 +9026,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SCALD] = { - #if B_UPDATED_MOVE_DATA >= GEN_6 - .effect = EFFECT_SCALD, - #else - .effect = EFFECT_BURN_HIT, - #endif + .effect = EFFECT_BURN_HIT, .power = 80, .type = TYPE_WATER, .accuracy = 100, @@ -10546,7 +10542,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_STEAM_ERUPTION] = { - .effect = EFFECT_SCALD, + .effect = EFFECT_BURN_HIT, .power = 110, .type = TYPE_WATER, .accuracy = 95, @@ -13075,7 +13071,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SCORCHING_SANDS] = { - .effect = EFFECT_SCALD, + .effect = EFFECT_BURN_HIT, .power = 70, .type = TYPE_GROUND, .accuracy = 100,