shithub: pokered

Download patch

ref: 61aaa15205d7a36a3f00cc16f893aa62a3a5bee9
parent: 1b62ca0555333f82d52d98c630d0af1f2fb0b3df
author: xCrystal <rgr.crystal@gmail.com>
date: Tue Jan 20 15:21:16 EST 2015

rename some labels

--- a/engine/battle/core.asm
+++ b/engine/battle/core.asm
@@ -1,7 +1,7 @@
 BattleCore:
 
 ; These are move effects (second value from the Moves table in bank $E).
-EffectsArray1: ; 3c000 (f:4000)
+ResidualEffects1: ; 3c000 (f:4000)
 	db CONVERSION_EFFECT
 	db HAZE_EFFECT
 	db SWITCH_AND_TELEPORT_EFFECT
@@ -19,13 +19,13 @@
 	db LEECH_SEED_EFFECT
 	db SPLASH_EFFECT
 	db -1
-EffectsArray2: ; 3c011 (f:4011)
+SetDamageEffects: ; 3c011 (f:4011)
 ; moves that do damage but not through normal calculations
 ; e.g., Super Fang, Psywave
 	db SUPER_FANG_EFFECT
 	db SPECIAL_DAMAGE_EFFECT
 	db -1
-EffectsArray3: ; 3c014 (f:4014)
+ResidualEffects2: ; 3c014 (f:4014)
 ; stat-affecting moves, sleep-inflicting moves, and Bide
 ; e.g., Meditate, Bide, Hypnosis
 	db $01
@@ -56,7 +56,7 @@
 	db ACCURACY_DOWN2_EFFECT
 	db EVASION_DOWN2_EFFECT
 	db -1
-EffectsArray4: ; 3c030 (f:4030)
+AlwaysHappenSideEffects: ; 3c030 (f:4030)
 ; Attacks that aren't finished after they faint the opponent.
 	db DRAIN_HP_EFFECT
 	db EXPLODE_EFFECT
@@ -69,7 +69,7 @@
 	db TWINEEDLE_EFFECT
 	db RAGE_EFFECT
 	db -1
-EffectsArray5: ; 3c03b (f:403b)
+SpecialEffects: ; 3c03b (f:403b)
 ; Effects from arrays 2, 4, and 5B, minus Twineedle and Rage.
 ; Includes all effects that do not need to be called at the end of 
 ; ExecutePlayerMove (or ExecuteEnemyMove), because they have already been handled
@@ -88,7 +88,7 @@
 	db JUMP_KICK_EFFECT
 	db RECOIL_EFFECT
 	; fallthrough to Next EffectsArray
-EffectsArray5B: ; 3c049 (f:4049)
+SpecialEffectsCont: ; 3c049 (f:4049)
 ; damaging moves whose effect is executed prior to damage calculation
 	db THRASH_PETAL_DANCE_EFFECT
 	db TRAPPING_EFFECT
@@ -3112,7 +3112,7 @@
 	ld [H_WHOSETURN], a ; set player's turn
 	ld a, [wPlayerSelectedMove]
 	inc a
-	jp z, Func_3d80a ; for selected move = FF, skip most of player's turn
+	jp z, ExecutePlayerMoveDone ; for selected move = FF, skip most of player's turn
 	xor a
 	ld [W_MOVEMISSED], a
 	ld [wcced], a
@@ -3121,9 +3121,9 @@
 	ld [wd05b], a
 	ld a, [wcd6a]
 	and a
-	jp nz, Func_3d80a
+	jp nz, ExecutePlayerMoveDone
 	call PrintGhostText
-	jp z, Func_3d80a
+	jp z, ExecutePlayerMoveDone
 	call CheckPlayerStatusConditions
 	jr nz, .asm_3d68a
 	jp [hl]
@@ -3131,9 +3131,9 @@
 	call GetCurrentMove
 	ld hl, W_PLAYERBATTSTATUS1
 	bit 4, [hl] ; charging up for attack
-	jr nz, asm_3d6a9
+	jr nz, PlayerCanExecuteChargingMove
 	call CheckForDisobedience
-	jp z, Func_3d80a
+	jp z, ExecutePlayerMoveDone
 
 Func_3d69a: ; 3d69a (f:569a)
 	ld a, [W_PLAYERMOVEEFFECT]
@@ -3141,16 +3141,16 @@
 	jp z, JumpMoveEffect
 	cp FLY_EFFECT
 	jp z, JumpMoveEffect
-	jr asm_3d6b0
+	jr PlayerCanExecuteMove
 
 ; in-battle stuff
-asm_3d6a9: ; 3d6a9 (f:56a9)
+PlayerCanExecuteChargingMove: ; 3d6a9 (f:56a9)
 	ld hl,W_PLAYERBATTSTATUS1
 	res 4,[hl] ; reset charging up and invulnerability statuses if mon was charging up for an attack
 			   ; being fully paralyzed or hurting oneself in confusion removes charging up status
 			   ; resulting in the Pokemon being invulnerable for the whole battle
 	res 6,[hl]
-asm_3d6b0: ; 3d6b0 (f:56b0)
+PlayerCanExecuteMove: ; 3d6b0 (f:56b0)
 	call PrintMonName1Text
 	ld hl,DecrementPP
 	ld de,wPlayerSelectedMove ; pointer to the move just used
@@ -3157,22 +3157,22 @@
 	ld b,BANK(DecrementPP)
 	call Bankswitch
 	ld a,[W_PLAYERMOVEEFFECT] ; effect of the move just used
-	ld hl,EffectsArray1
+	ld hl,ResidualEffects1
 	ld de,1
 	call IsInArray
-	jp c,JumpMoveEffect ; EffectsArray1 moves skip damage calculation and accuracy tests 
+	jp c,JumpMoveEffect ; ResidualEffects1 moves skip damage calculation and accuracy tests 
 						; unless executed as part of their exclusive effect functions 
 	ld a,[W_PLAYERMOVEEFFECT]
-	ld hl,EffectsArray5B
+	ld hl,SpecialEffectsCont
 	ld de,1
 	call IsInArray
-	call c,JumpMoveEffect ; execute the effects of EffectsArray5B moves (e.g. Wrap, Thrash) but don't skip anything 
-asm_3d6dc: ; 3d6dc (f:56dc)
+	call c,JumpMoveEffect ; execute the effects of SpecialEffectsCont moves (e.g. Wrap, Thrash) but don't skip anything 
+CalcMoveDamage: ; 3d6dc (f:56dc)
 	ld a,[W_PLAYERMOVEEFFECT]
-	ld hl,EffectsArray2
+	ld hl,SetDamageEffects
 	ld de,1
 	call IsInArray 
-	jp c,.asm_3d702 ; EffectsArray2 moves (e.g. Seismic Toss and Super Fang) skip damage calculation 
+	jp c,.moveHitTest ; SetDamageEffects moves (e.g. Seismic Toss and Super Fang) skip damage calculation 
 	call CriticalHitTest
 	call HandleCounterMove
 	jr z,asm_3d705
@@ -3182,7 +3182,7 @@
 				   ; for these moves, accuracy tests will only occur if they are called as part of the effect itself
 	call AdjustDamageForMoveType
 	call RandomizeDamage
-.asm_3d702
+.moveHitTest
 	call MoveHitTest
 asm_3d705
 	ld a,[W_MOVEMISSED]
@@ -3209,7 +3209,7 @@
 	ld [wcc5b],a
 	ld a,[W_PLAYERMOVENUM]
 	call PlayMoveAnimation
-	call Func_3eed3
+	call HandleExplodingAnimation
 	call DrawPlayerHUDAndHPBar
 	ld a,[W_PLAYERBATTSTATUS2]
 	bit 4,a
@@ -3216,61 +3216,61 @@
 	ld hl,Func_79771
 	ld b,BANK(Func_79771)
 	call nz,Bankswitch
-	jr asm_3d766
+	jr MirrorMoveCheck
 asm_3d74b
 	ld c,$1E
 	call DelayFrames
 	ld a,[W_PLAYERMOVEEFFECT]
 	cp a,FLY_EFFECT
-	jr z,.next5
+	jr z,.playAnim
 	cp a,CHARGE_EFFECT
-	jr z,.next5
-	jr asm_3d766
-.next5
+	jr z,.playAnim
+	jr MirrorMoveCheck
+.playAnim
 	xor a
 	ld [wcc5b],a
 	ld a,STATUS_AFFECTED_ANIM
 	call PlayMoveAnimation
-asm_3d766
+MirrorMoveCheck
 	ld a,[W_PLAYERMOVEEFFECT]
 	cp a,MIRROR_MOVE_EFFECT
-	jr nz,.next6
+	jr nz,.metronomeCheck
 	call MirrorMoveCopyMove
-	jp z,Func_3d80a
+	jp z,ExecutePlayerMoveDone
 	xor a
 	ld [wcced],a
 	jp Func_3d69a ; if Mirror Move was successful go back to damage calculation for copied move
-.next6
+.metronomeCheck
 	cp a,METRONOME_EFFECT
-	jr nz,.next7
+	jr nz,.next
 	call MetronomePickMove
 	jp Func_3d69a ; Go back to damage calculation for the move picked by Metronome
-.next7
+.next
 	ld a,[W_PLAYERMOVEEFFECT]
-	ld hl,EffectsArray3
+	ld hl,ResidualEffects2
 	ld de,1
 	call IsInArray
-	jp c,JumpMoveEffect ; done here after executing effects of EffectsArray3
+	jp c,JumpMoveEffect ; done here after executing effects of ResidualEffects2
 	ld a,[W_MOVEMISSED]
 	and a
-	jr z,.next8
+	jr z,.moveDidNotMiss
 	call PrintMoveFailureText
 	ld a,[W_PLAYERMOVEEFFECT]
 	cp a,EXPLODE_EFFECT ; even if Explosion or Selfdestruct missed, its effect still needs to be activated
-	jr z,.next9
-	jp Func_3d80a ; otherwise, we're done if the move missed 
-.next8
+	jr z,.notDone
+	jp ExecutePlayerMoveDone ; otherwise, we're done if the move missed 
+.moveDidNotMiss
 	call ApplyAttackToEnemyPokemon
 	call PrintCriticalOHKOText
 	callab DisplayEffectiveness
 	ld a,1
 	ld [wccf4],a
-.next9
+.notDone
 	ld a,[W_PLAYERMOVEEFFECT]
-	ld hl,EffectsArray4
+	ld hl,AlwaysHappenSideEffects
 	ld de,1
 	call IsInArray
-	call c,JumpMoveEffect ; not done after executing effects of EffectsArray4
+	call c,JumpMoveEffect ; not done after executing effects of AlwaysHappenSideEffects
 	ld hl,wEnemyMonHP
 	ld a,[hli]
 	ld b,[hl]
@@ -3280,7 +3280,7 @@
 
 	ld hl,W_PLAYERBATTSTATUS1
 	bit 2,[hl]
-	jr z,.next10
+	jr z,.executeOtherEffects
 	ld a,[wPlayerNumAttacksLeft]
 	dec a
 	ld [wPlayerNumAttacksLeft],a
@@ -3291,24 +3291,24 @@
 	call PrintText
 	xor a
 	ld [W_NUMHITS],a 
-.next10
+.executeOtherEffects
 	ld a,[W_PLAYERMOVEEFFECT]
 	and a
-	jp z,Func_3d80a
-	ld hl,EffectsArray5
+	jp z,ExecutePlayerMoveDone
+	ld hl,SpecialEffects
 	ld de,1
 	call IsInArray
-	call nc,JumpMoveEffect ; move effects not included in EffectsArray5, which are the effects not covered yet.
+	call nc,JumpMoveEffect ; move effects not included in SpecialEffects, which are the effects not covered yet.
 						   ; the only exception is Rage, whose effect will be executed for a second time (although it's irrelevant)
 						   ; includes some side effects and all non-volatile status effects but sleep.
 						   ; responsible for executing Twineedle's second effect (poison)
-	jp Func_3d80a
+	jp ExecutePlayerMoveDone
 
 MultiHitText: ; 3d805 (f:5805)
 	TX_FAR _MultiHitText
 	db "@"
 
-Func_3d80a: ; 3d80a (f:580a)
+ExecutePlayerMoveDone: ; 3d80a (f:580a)
 	xor a
 	ld [wcd6a],a
 	ld b,1
@@ -3386,8 +3386,8 @@
 .sleepDone
 	xor a
 	ld [wccf1],a
-	ld hl,Func_3d80a ; player can't move this turn
-	jp .CannotUseMove
+	ld hl,ExecutePlayerMoveDone ; player can't move this turn
+	jp .returnToHL
 
 .FrozenCheck
 	bit FRZ,[hl] ; frozen?
@@ -3396,8 +3396,8 @@
 	call PrintText
 	xor a
 	ld [wccf1],a
-	ld hl,Func_3d80a ; player can't move this turn
-	jp .CannotUseMove
+	ld hl,ExecutePlayerMoveDone ; player can't move this turn
+	jp .returnToHL
 
 .HeldInPlaceCheck
 	ld a,[W_ENEMYBATTSTATUS1]
@@ -3405,8 +3405,8 @@
 	jp z,.FlinchedCheck
 	ld hl,CantMoveText
 	call PrintText
-	ld hl,Func_3d80a ; player can't move this turn
-	jp .CannotUseMove
+	ld hl,ExecutePlayerMoveDone ; player can't move this turn
+	jp .returnToHL
 
 .FlinchedCheck
 	ld hl,W_PLAYERBATTSTATUS1
@@ -3415,8 +3415,8 @@
 	res 3,[hl] ; reset player's flinch status
 	ld hl,FlinchedText
 	call PrintText
-	ld hl,Func_3d80a ; player can't move this turn
-	jp .CannotUseMove
+	ld hl,ExecutePlayerMoveDone ; player can't move this turn
+	jp .returnToHL
 
 .HyperBeamCheck
 	ld hl,W_PLAYERBATTSTATUS2
@@ -3425,8 +3425,8 @@
 	res 5,[hl] ; reset player's recharge status
 	ld hl,MustRechargeText
 	call PrintText
-	ld hl,Func_3d80a ; player can't move this turn
-	jp .CannotUseMove
+	ld hl,ExecutePlayerMoveDone ; player can't move this turn
+	jp .returnToHL
 
 .AnyMoveDisabledCheck
 	ld hl,W_PLAYERDISABLEDMOVE
@@ -3479,8 +3479,8 @@
 	cp [hl]
 	jr nz,.ParalysisCheck
 	call PrintMoveIsDisabledText
-	ld hl,Func_3d80a ; if a disabled move was somehow selected, player can't move this turn
-	jp .CannotUseMove
+	ld hl,ExecutePlayerMoveDone ; if a disabled move was somehow selected, player can't move this turn
+	jp .returnToHL
 
 .ParalysisCheck
 	ld hl,wBattleMonStatus
@@ -3495,7 +3495,7 @@
 .MonHurtItselfOrFullyParalysed
 	ld hl,W_PLAYERBATTSTATUS1
 	ld a,[hl]
-	and a,$CC ; clear bide, thrashing, charging up, and multi-turn moves such as warp (redundant, already cleared)
+	and a, %11001100 ; clear bide, thrashing, charging up, and multi-turn moves such as warp (redundant, already cleared)
 	ld [hl],a
 	ld a,[W_PLAYERMOVEEFFECT]
 	cp a,FLY_EFFECT
@@ -3510,8 +3510,8 @@
 	ld a,STATUS_AFFECTED_ANIM
 	call PlayMoveAnimation
 .NotFlyOrChargeEffect
-	ld hl,Func_3d80a
-	jp .CannotUseMove ; if using a two-turn move, we need to recharge the first turn
+	ld hl,ExecutePlayerMoveDone
+	jp .returnToHL ; if using a two-turn move, we need to recharge the first turn
 
 .BideCheck
 	ld hl,W_PLAYERBATTSTATUS1
@@ -3533,8 +3533,8 @@
 	ld hl,wPlayerNumAttacksLeft
 	dec [hl] ; did Bide counter hit 0?
 	jr z,.UnleashEnergy
-	ld hl,Func_3d80a
-	jp .CannotUseMove ; unless mon unleashes energy, can't move this turn
+	ld hl,ExecutePlayerMoveDone
+	jp .returnToHL ; unless mon unleashes energy, can't move this turn
 .UnleashEnergy
 	ld hl,W_PLAYERBATTSTATUS1
 	res 0,[hl] ; not using bide any more
@@ -3561,7 +3561,7 @@
 	ld a,BIDE
 	ld [W_PLAYERMOVENUM],a
 	ld hl,asm_3d705 ; skip damage calculation, DecrementPP and MoveHitTest
-	jp .CannotUseMove
+	jp .returnToHL
 
 .ThrashingAboutCheck
 	bit 1,[hl] ; is mon using thrash or petal dance?
@@ -3572,8 +3572,8 @@
 	call PrintText
 	ld hl,wPlayerNumAttacksLeft
 	dec [hl] ; did Trashing About counter hit 0?
-	ld hl,asm_3d6dc ; skip DecrementPP
-	jp nz,.CannotUseMove 
+	ld hl,CalcMoveDamage ; skip DecrementPP
+	jp nz,.returnToHL 
 	push hl
 	ld hl,W_PLAYERBATTSTATUS1
 	res 1,[hl] ; no longer trashing about
@@ -3584,7 +3584,7 @@
 	inc a ; confused for 2-5 turns
 	ld [wd06b],a
 	pop hl ; skip DecrementPP
-	jp .CannotUseMove
+	jp .returnToHL
 
 .MultiturnMoveCheck
 	bit 5,[hl] ; is mon using multi-turn move?
@@ -3595,8 +3595,8 @@
 	dec a ; did multi-turn move end?
 	ld [wPlayerNumAttacksLeft],a
 	ld hl,asm_3d714 ; if it didn't, skip damage calculation (deal damage equal to last hit), DecrementPP and MoveHitTest
-	jp nz,.CannotUseMove
-	jp .CannotUseMove
+	jp nz,.returnToHL
+	jp .returnToHL
 
 .RageCheck
 	ld a, [W_PLAYERBATTSTATUS2]
@@ -3608,10 +3608,10 @@
 	call CopyStringToCF4B
 	xor a
 	ld [W_PLAYERMOVEEFFECT], a
-	ld hl, asm_3d6b0
-	jp .CannotUseMove
+	ld hl, PlayerCanExecuteMove
+	jp .returnToHL
 
-.CannotUseMove
+.returnToHL
 	xor a
 	ret
 
@@ -3919,10 +3919,10 @@
 	dec hl
 	ld [hli], a
 	or b
-	jr nz, .asm_3dc2a
+	jr nz, .applyRecoil
 	inc a
 	ld [hl], a
-.asm_3dc2a
+.applyRecoil
 	ld hl, KeptGoingAndCrashedText
 	call PrintText
 	ld b, $4
@@ -3929,9 +3929,9 @@
 	predef Func_48125
 	ld a, [H_WHOSETURN]
 	and a
-	jr nz, .asm_3dc3f
+	jr nz, .enemyTurn
 	jp ApplyDamageToPlayerPokemon
-.asm_3dc3f
+.enemyTurn
 	jp ApplyDamageToEnemyPokemon
 
 AttackMissedText: ; 3dc42 (f:5c42)
@@ -4420,7 +4420,7 @@
 	push bc
 	ld a, [W_ISLINKBATTLE]
 	cp $4
-	jr nz, .asm_3df40
+	jr nz, .notLinkBattle
 	ld hl, wEnemyMon1Stats
 	dec c
 	sla c
@@ -4436,7 +4436,7 @@
 	pop bc
 	pop de
 	ret
-.asm_3df40
+.notLinkBattle
 	ld a, [wEnemyMonLevel]
 	ld [W_CURENEMYLVL], a
 	ld a, [wEnemyMonSpecies]
@@ -5226,9 +5226,9 @@
 	ld a,[H_WHOSETURN]
 	and a
 	ld a,[wPlayerMonNumber] ; value for player turn
-	jr z,.next2
+	jr z,.updatePP
 	ld a,[wEnemyMonPartyPos] ; value for enemy turn
-.next2
+.updatePP
 	ld bc,wEnemyMon2 - wEnemyMon1
 	call AddNTimes
 	inc [hl] ; increment PP in the party memory location
@@ -5672,12 +5672,12 @@
 	ld [wcced], a
 	call PrintMonName1Text
 	ld a, [W_ENEMYMOVEEFFECT]
-	ld hl, EffectsArray1
+	ld hl, ResidualEffects1
 	ld de, $1
 	call IsInArray
 	jp c, JumpMoveEffect
 	ld a, [W_ENEMYMOVEEFFECT]
-	ld hl, EffectsArray5B
+	ld hl, SpecialEffectsCont
 	ld de, $1
 	call IsInArray
 	call c, JumpMoveEffect
@@ -5684,7 +5684,7 @@
 asm_3e750: ; 3e750 (f:6750)
 	call SwapPlayerAndEnemyLevels
 	ld a, [W_ENEMYMOVEEFFECT]
-	ld hl, EffectsArray2
+	ld hl, SetDamageEffects
 	ld de, $1
 	call IsInArray
 	jp c, Func_3e77f
@@ -5733,7 +5733,7 @@
 	ld [wcc5b], a
 	ld a, [W_ENEMYMOVENUM]
 	call PlayMoveAnimation
-	call Func_3eed3
+	call HandleExplodingAnimation
 	call DrawEnemyHUDAndHPBar
 	ld a, [W_ENEMYBATTSTATUS2]
 	bit 4, a ; does mon have a substitute?
@@ -5771,7 +5771,7 @@
 	jp Func_3e6fc
 .notMetronomeEffect
 	ld a, [W_ENEMYMOVEEFFECT]
-	ld hl, EffectsArray3
+	ld hl, ResidualEffects2
 	ld de, $1
 	call IsInArray
 	jp c, JumpMoveEffect
@@ -5791,7 +5791,7 @@
 	ld [wccf4], a
 .asm_3e83e
 	ld a, [W_ENEMYMOVEEFFECT]
-	ld hl, EffectsArray4
+	ld hl, AlwaysHappenSideEffects
 	ld de, $1
 	call IsInArray
 	call c, JumpMoveEffect
@@ -5818,7 +5818,7 @@
 	ld a, [W_ENEMYMOVEEFFECT]
 	and a
 	jr z, Func_3e88c
-	ld hl, EffectsArray5
+	ld hl, SpecialEffects
 	ld de, $1
 	call IsInArray
 	call nc, JumpMoveEffect
@@ -6744,14 +6744,14 @@
 	ret
 
 
-Func_3eed3: ; 3eed3 (f:6ed3)
+HandleExplodingAnimation: ; 3eed3 (f:6ed3)
 	ld a, [H_WHOSETURN]
 	and a
-	ld hl, wEnemyMonType1 ; wcfea (aliases: wEnemyMonType)
+	ld hl, wEnemyMonType1 ; wcfea 
 	ld de, W_ENEMYBATTSTATUS1
 	ld a, [W_PLAYERMOVENUM]
 	jr z, .asm_3eeea
-	ld hl, wBattleMonType1 ; wd019 (aliases: wBattleMonType)
+	ld hl, wBattleMonType1 ; wd019 
 	ld de, W_ENEMYBATTSTATUS1
 	ld a, [W_ENEMYMOVENUM]
 .asm_3eeea
@@ -6772,7 +6772,7 @@
 	ld a, [W_MOVEMISSED]
 	and a
 	ret nz
-	ld a, MEGA_PUNCH
+	ld a, 5
 	ld [wcc5b], a
 
 PlayMoveAnimation: ; 3ef07 (f:6f07)
@@ -7176,43 +7176,43 @@
 	ld bc, W_ENEMYBATTSTATUS2
 	ld a, [H_WHOSETURN]
 	and a
-	jp z, .asm_3f20e
+	jp z, .sleepEffect
 	ld de, wBattleMonStatus
 	ld bc, W_PLAYERBATTSTATUS2
 
-.asm_3f20e
+.sleepEffect
 	ld a, [bc]
 	bit 5, a ; does the target need to recharge? (hyper beam)
 	res 5, a ; target no longer needs to recharge
 	ld [bc], a
-	jr nz, .asm_3f231 ; if the target had to recharge, all hit tests will be skipped
+	jr nz, .setSleepCounter ; if the target had to recharge, all hit tests will be skipped
 					  ; including the event where the target already has another status
 	ld a, [de]
 	ld b, a
 	and $7
-	jr z, .asm_3f222 ; can't affect a mon that is already asleep
+	jr z, .notAlreadySleeping ; can't affect a mon that is already asleep
 	ld hl, AlreadyAsleepText
 	jp PrintText
-.asm_3f222
+.notAlreadySleeping
 	ld a, b
 	and a
-	jr nz, .asm_3f242 ; can't affect a mon that is already statused
+	jr nz, .didntAffect ; can't affect a mon that is already statused
 	push de
 	call MoveHitTest ; apply accuracy tests
 	pop de
 	ld a, [W_MOVEMISSED]
 	and a
-	jr nz, .asm_3f242
-.asm_3f231
+	jr nz, .didntAffect
+.setSleepCounter
 ; set target's sleep counter to a random number between 1 and 7
 	call BattleRandom
 	and $7 
-	jr z, .asm_3f231
+	jr z, .setSleepCounter
 	ld [de], a
 	call Func_3fb89
 	ld hl, FellAsleepText
 	jp PrintText
-.asm_3f242
+.didntAffect
 	jp PrintDidntAffectText
 
 FellAsleepText: ; 3f245 (f:7245)
@@ -7228,29 +7228,29 @@
 	ld de, W_PLAYERMOVEEFFECT
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f260
+	jr z, .poisonEffect
 	ld hl, wBattleMonStatus
 	ld de, W_ENEMYMOVEEFFECT
-.asm_3f260
+.poisonEffect
 	call CheckTargetSubstitute
-	jr nz, .asm_3f2d3 ; can't posion a substitute target
+	jr nz, .noEffect ; can't posion a substitute target
 	ld a, [hli]
 	ld b, a
 	and a
-	jr nz, .asm_3f2d3 ; miss if target is already statused
+	jr nz, .noEffect ; miss if target is already statused
 	ld a, [hli]
-	cp $3 ; can't posion a poison-type target
-	jr z, .asm_3f2d3
+	cp POISON ; can't posion a poison-type target
+	jr z, .noEffect
 	ld a, [hld]
-	cp $3 ; can't posion a poison-type target
-	jr z, .asm_3f2d3
+	cp POISON ; can't posion a poison-type target
+	jr z, .noEffect
 	ld a, [de]
 	cp POISON_SIDE_EFFECT1
 	ld b, $34 ; ~20% chance of poisoning
-	jr z, .asm_3f290
+	jr z, .sideEffectTest
 	cp POISON_SIDE_EFFECT2
 	ld b, $67 ; ~40% chance of poisoning
-	jr z, .asm_3f290
+	jr z, .sideEffectTest
 	push hl
 	push de
 	call MoveHitTest ; apply accuracy tests
@@ -7258,13 +7258,13 @@
 	pop hl
 	ld a, [W_MOVEMISSED]
 	and a
-	jr nz, .asm_3f2d7
-	jr .asm_3f295
-.asm_3f290
+	jr nz, .didntAffect
+	jr .inflictPoison
+.sideEffectTest
 	call BattleRandom 
 	cp b ; was side effect successful?
 	ret nc
-.asm_3f295
+.inflictPoison
 	dec hl
 	set 3, [hl] ; mon is now poisoned
 	push de
@@ -7275,19 +7275,19 @@
 	ld hl, W_PLAYERBATTSTATUS3
 	ld a, [de]
 	ld de, W_PLAYERTOXICCOUNTER
-	jr nz, .asm_3f2b0
+	jr nz, .ok
 	ld b, ANIM_A9
 	ld hl, W_ENEMYBATTSTATUS3
 	ld de, W_ENEMYTOXICCOUNTER
-.asm_3f2b0
+.ok
 	cp TOXIC
-	jr nz, .asm_3f2bd ; done if move is not Toxic
+	jr nz, .normalPoison ; done if move is not Toxic
 	set 0, [hl] ; else set Toxic battstatus
 	xor a
 	ld [de], a
 	ld hl, BadlyPoisonedText
 	jr .asm_3f2c0
-.asm_3f2bd
+.normalPoison
 	ld hl, PoisonedText
 .asm_3f2c0
 	pop de
@@ -7300,11 +7300,11 @@
 .asm_3f2cd
 	call Func_3fb89
 	jp PrintText
-.asm_3f2d3
+.noEffect
 	ld a, [de]
 	cp POISON_EFFECT
 	ret nz
-.asm_3f2d7
+.didntAffect
 	ld c, $32
 	call DelayFrames
 	jp PrintDidntAffectText
@@ -7327,10 +7327,10 @@
 	ld de, W_PLAYERBATTSTATUS2
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f302
+	jr z, .faintUser
 	ld hl, wEnemyMonHP
 	ld de, W_ENEMYBATTSTATUS2
-.asm_3f302
+.faintUser
 	xor a
 	ld [hli], a ; set the mon's HP to 0
 	ld [hli], a
@@ -7361,7 +7361,7 @@
 	cp b ; do target type 2 and move type match?
 	ret z  ; return if they match
 	ld a, [W_PLAYERMOVEEFFECT]
-	cp a, 7 ; 10% status effects are 04, 05, 06 so 07 will set carry for those
+	cp a, PARALYZE_SIDE_EFFECT1 + 1 ; 10% status effects are 04, 05, 06 so 07 will set carry for those
 	ld b, $1a ; 0x1A/0x100 or 26/256 = 10.2%~ chance
 	jr c, .next1 ; branch ahead if this is a 10% chance effect..
 	ld b, $4d ; else use 0x4D/0x100 or 77/256 = 30.1%~ chance
@@ -7382,7 +7382,7 @@
 	ld [wEnemyMonStatus], a
 	call QuarterSpeedDueToParalysis ; quarter speed of affected mon
 	ld a, ANIM_A9
-	call Func_3fbb9 ; play animation
+	call PlayAnimation 
 	jp PrintMayNotAttackText ; print paralysis text
 .burn
 	ld a, 1 << BRN
@@ -7389,15 +7389,15 @@
 	ld [wEnemyMonStatus], a
 	call HalveAttackDueToBurn ; halve attack of affected mon
 	ld a, ANIM_A9
-	call Func_3fbb9 ; animation
+	call PlayAnimation 
 	ld hl, BurnedText
 	jp PrintText
 .freeze
-	call Func_3f9cf ; resets hyper beam (recharge) condition from both players
+	call ClearHyperBeam ; resets hyper beam (recharge) condition from both players
 	ld a, 1 << FRZ
 	ld [wEnemyMonStatus], a
 	ld a, ANIM_A9
-	call Func_3fbb9 ; animation
+	call PlayAnimation 
 	ld hl, FrozenText
 	jp PrintText
 opponentAttacker: ; 3f382 (f:7382)
@@ -7498,16 +7498,16 @@
 	ld de, W_PLAYERMOVEEFFECT
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f439
+	jr z, .statModifierUpEffect
 	ld hl, wEnemyMonStatMods
 	ld de, W_ENEMYMOVEEFFECT
-.asm_3f439
+.statModifierUpEffect
 	ld a, [de]
 	sub $a
 	cp $8
-	jr c, .asm_3f442
+	jr c, .incrementStatMod
 	sub $28 ; map +2 effects to equivalent +1 effect
-.asm_3f442
+.incrementStatMod
 	ld c, a
 	ld b, $0
 	add hl, bc
@@ -7518,26 +7518,26 @@
 	jp c, Func_3f522
 	ld a, [de]
 	cp $12 ; is it a +2 effect?
-	jr c, .asm_3f45a
+	jr c, .ok
 	inc b ; if so, increment stat mod again
 	ld a, $d
 	cp b ; unless it's already +6
-	jr nc, .asm_3f45a
+	jr nc, .ok
 	ld b, a
-.asm_3f45a
+.ok
 	ld [hl], b
 	ld a, c
 	cp $4
-	jr nc, asm_3f4ca ; jump if mod affected is evasion/accuracy
+	jr nc, UpdateStatDone ; jump if mod affected is evasion/accuracy
 	push hl
 	ld hl, wBattleMonAttack + 1
 	ld de, wcd12
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f472
+	jr z, .pointToStats
 	ld hl, wEnemyMonAttack + 1
 	ld de, wEnemyMonUnmodifiedAttack
-.asm_3f472
+.pointToStats
 	push bc
 	sla c
 	ld b, $0
@@ -7545,17 +7545,17 @@
 	ld a, c
 	add e
 	ld e, a
-	jr nc, .asm_3f47e
+	jr nc, .checkIf999
 	inc d ; de = unmodified (original) stat
-.asm_3f47e
+.checkIf999
 	pop bc
 	ld a, [hld]
 	sub $e7 ; check if stat is already 999
-	jr nz, .asm_3f48a
+	jr nz, .recalculateStat
 	ld a, [hl]
 	sbc $3
 	jp z, Func_3f520
-.asm_3f48a ; recalculate affected stat
+.recalculateStat ; recalculate affected stat
 		   ; paralysis and burn penalties, as well as badge boosts are ignored
 	push hl
 	push bc
@@ -7586,19 +7586,19 @@
 	sub $e7
 	ld a, [$ff97]
 	sbc $3
-	jp c, Func_3f4c3
+	jp c, UpdateStat
 	ld a, 999 / $100
 	ld [$ff97], a
 	ld a, 999 % $100
 	ld [$ff98], a
 
-Func_3f4c3: ; 3f4c3 (f:74c3)
+UpdateStat: ; 3f4c3 (f:74c3)
 	ld a, [$ff97]
 	ld [hli], a
 	ld a, [$ff98]
 	ld [hl], a
 	pop hl
-asm_3f4ca: ; 3f4ca (f:74ca)
+UpdateStatDone: ; 3f4ca (f:74ca)
 	ld b, c
 	inc b
 	call Func_3f688
@@ -7627,7 +7627,7 @@
 	call Func_3fba8
 	ld a, [de]
 	cp MINIMIZE
-	jr nz, .asm_3f50e
+	jr nz, .applyBadgeBoostsAndStatusPenalties
 	pop bc
 	ld a, $1
 	ld [bc], a
@@ -7635,7 +7635,7 @@
 	ld b, BANK(Func_79771)
 	pop af
 	call nz, Bankswitch
-.asm_3f50e
+.applyBadgeBoostsAndStatusPenalties
 	ld a, [H_WHOSETURN]
 	and a
 	call z, ApplyBadgeStatBoosts ; whenever the player uses a stat-up move, badge boosts get reapplied again to every stat,
@@ -7684,29 +7684,29 @@
 	ld bc, W_ENEMYBATTSTATUS1
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f572
+	jr z, .statModifierDownEffect
 	ld hl, wPlayerMonStatMods
 	ld de, W_ENEMYMOVEEFFECT
 	ld bc, W_PLAYERBATTSTATUS1
 	ld a, [W_ISLINKBATTLE]
 	cp $4
-	jr z, .asm_3f572
+	jr z, .statModifierDownEffect
 	call BattleRandom
 	cp $40 ; 1/4 chance to miss by wildmon
-	jp c, Func_3f65a
-.asm_3f572
+	jp c, MoveMissed
+.statModifierDownEffect
 	call CheckTargetSubstitute ; can't hit through substitute
-	jp nz, Func_3f65a
+	jp nz, MoveMissed
 	ld a, [de]
 	cp ATTACK_DOWN_SIDE_EFFECT
-	jr c, .asm_3f58a
+	jr c, .nonSideEffect
 	call BattleRandom
 	cp $55 ; 85/256 chance for side effects
-	jp nc, Func_3f650
+	jp nc, CantLowerAnymore
 	ld a, [de]
 	sub ATTACK_DOWN_SIDE_EFFECT ; map each stat to 0-3
-	jr .asm_3f5a9
-.asm_3f58a ; non-side effects only
+	jr .decrementStatMod
+.nonSideEffect ; non-side effects only
 	push hl
 	push de
 	push bc
@@ -7716,35 +7716,35 @@
 	pop hl
 	ld a, [W_MOVEMISSED]
 	and a
-	jp nz, Func_3f65a
+	jp nz, MoveMissed
 	ld a, [bc]
 	bit 6, a ; fly/dig
-	jp nz, Func_3f65a
+	jp nz, MoveMissed
 	ld a, [de]
 	sub $12
 	cp $8
-	jr c, .asm_3f5a9
+	jr c, .decrementStatMod
 	sub $28 ; map +2 effects to corresponding +1 effect
-.asm_3f5a9
+.decrementStatMod
 	ld c, a
 	ld b, $0
 	add hl, bc
 	ld b, [hl]
 	dec b ; dec corresponding stat mod
-	jp z, Func_3f650 ; if stat mod is 1 (-6), can't lower anymore
+	jp z, CantLowerAnymore ; if stat mod is 1 (-6), can't lower anymore
 	ld a, [de]
 	cp $24
-	jr c, .asm_3f5bf
+	jr c, .ok
 	cp $44
-	jr nc, .asm_3f5bf
+	jr nc, .ok
 	dec b ; stat down 2 effects only (dec mod again)
-	jr nz, .asm_3f5bf
+	jr nz, .ok
 	inc b ; increment mod to 1 (-6) if it would become 0 (-7)
-.asm_3f5bf
+.ok
 	ld [hl], b ; save modified mod 
 	ld a, c
 	cp $4 
-	jr nc, asm_3f62c ; jump for evasion/accuracy
+	jr nc, UpdateStatDone ; jump for evasion/accuracy
 	push hl
 	push de
 	ld hl, wEnemyMonAttack + 1
@@ -7751,10 +7751,10 @@
 	ld de, wEnemyMonUnmodifiedAttack
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f5d8
+	jr z, .pointToStat
 	ld hl, wBattleMonAttack + 1
 	ld de, wcd12
-.asm_3f5d8
+.pointToStat
 	push bc
 	sla c
 	ld b, $0
@@ -7768,11 +7768,11 @@
 	pop bc
 	ld a, [hld]
 	sub $1 ; can't lower stat below 1 (-6)
-	jr nz, .asm_3f5ef
+	jr nz, .recalculateStat
 	ld a, [hl]
 	and a
 	jp z, Func_3f64d
-.asm_3f5ef
+.recalculateStat
 ; recalculate affected stat
 ; paralysis and burn penalties, as well as badge boosts are ignored
 	push hl
@@ -7803,12 +7803,12 @@
 	ld b, a
 	ld a, [$ff97]
 	or b
-	jp nz, Func_3f624
+	jp nz, UpdateStat
 	ld [$ff97], a
 	ld a, $1
 	ld [$ff98], a
 
-Func_3f624: ; 3f624 (f:7624)
+UpdateStat: ; 3f624 (f:7624)
 	ld a, [$ff97]
 	ld [hli], a
 	ld a, [$ff98]
@@ -7815,7 +7815,7 @@
 	ld [hl], a
 	pop de
 	pop hl
-asm_3f62c: ; 3f62c (f:762c)
+UpdateStatDone: ; 3f62c (f:762c)
 	ld b, c
 	inc b
 	push de
@@ -7823,9 +7823,9 @@
 	pop de
 	ld a, [de]
 	cp $44
-	jr nc, .asm_3f63b
+	jr nc, .ApplyBadgeBoostsAndStatusPenalties
 	call Func_3fb89
-.asm_3f63b
+.ApplyBadgeBoostsAndStatusPenalties
 	ld a, [H_WHOSETURN]
 	and a
 	call nz, ApplyBadgeStatBoosts ; whenever the player uses a stat-down move, badge boosts get reapplied again to every stat,
@@ -7844,7 +7844,7 @@
 	pop hl
 	inc [hl]
 
-Func_3f650: ; 3f650 (f:7650)
+CantLowerAnymore: ; 3f650 (f:7650)
 	ld a, [de]
 	cp ATTACK_DOWN_SIDE_EFFECT
 	ret nc
@@ -7851,7 +7851,7 @@
 	ld hl, NothingHappenedText
 	jp PrintText
 
-Func_3f65a: ; 3f65a (f:765a)
+MoveMissed: ; 3f65a (f:765a)
 	ld a, [de]
 	cp $44
 	ret nc
@@ -7928,11 +7928,11 @@
 	ld bc, wPlayerNumAttacksLeft
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f6fc
+	jr z, .bideEffect
 	ld hl, W_ENEMYBATTSTATUS1
 	ld de, wcd05
 	ld bc, wEnemyNumAttacksLeft
-.asm_3f6fc
+.bideEffect
 	set 0, [hl] ; mon is now using bide
 	xor a
 	ld [de], a
@@ -7954,10 +7954,10 @@
 	ld de, wPlayerNumAttacksLeft
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f728
+	jr z, .thrashPetalDanceEffect
 	ld hl, W_ENEMYBATTSTATUS1
 	ld de, wEnemyNumAttacksLeft
-.asm_3f728
+.thrashPetalDanceEffect
 	set 1, [hl] ; mon is now using thrash/petal dance
 	call BattleRandom
 	and $1 
@@ -8057,7 +8057,7 @@
 	jp Func_3fb4e
 .asm_3f7e4
 	push af
-	call Func_3fbb9
+	call PlayAnimation
 	ld c, $14
 	call DelayFrames
 	pop af
@@ -8089,11 +8089,11 @@
 	ld bc, W_NUMHITS
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f828
+	jr z, .twoToFiveAttacksEffect
 	ld hl, W_ENEMYBATTSTATUS1
 	ld de, wEnemyNumAttacksLeft
 	ld bc, wcd05
-.asm_3f828
+.twoToFiveAttacksEffect
 	bit 2, [hl] ; is mon attacking multiple times?
 	ret nz
 	set 2, [hl] ; mon is now attacking multiple times
@@ -8100,32 +8100,33 @@
 	ld hl, W_PLAYERMOVEEFFECT
 	ld a, [H_WHOSETURN]
 	and a
-	jr z, .asm_3f838
+	jr z, .setNumberOfHits
 	ld hl, W_ENEMYMOVEEFFECT
-.asm_3f838
+.setNumberOfHits
 	ld a, [hl]
 	cp TWINEEDLE_EFFECT
-	jr z, .asm_3f856
+	jr z, .twineedle
 	cp ATTACK_TWICE_EFFECT
-	ld a, $2
-	jr z, .asm_3f853
+	ld a, $2 ; number of hits it's always 2 for ATTACK_TWICE_EFFECT
+	jr z, .saveNumberOfHits
+; for TWO_TO_FIVE_ATTACKS_EFFECT 3/8 chance for 2 and 3 hits, and 1/8 chance for 4 and 5 hits	
 	call BattleRandom
-	and $3
-	cp $2
-	jr c, .asm_3f851
+	and $3 
+	cp $2 
+	jr c, .asm_3f851 
 	call BattleRandom
 	and $3
-.asm_3f851
+.asm_3f851 
 	inc a
 	inc a
-.asm_3f853
+.saveNumberOfHits
 	ld [de], a
 	ld [bc], a
 	ret
-.asm_3f856
-	ld a, $2
-	ld [hl], a
-	jr .asm_3f853
+.twineedle
+	ld a, POISON_SIDE_EFFECT1
+	ld [hl], a ; set Twineedle's effect to poison effect
+	jr .saveNumberOfHits
 
 FlichSideEffect: ; 3f85b (f:785b)
 	call CheckTargetSubstitute
@@ -8148,7 +8149,7 @@
 	cp b
 	ret nc
 	set 3, [hl] ; set mon's status to flinching
-	call Func_3f9cf
+	call ClearHyperBeam
 	ret
 
 OneHitKOEffect: ; 3f884 (f:7884)
@@ -8184,7 +8185,7 @@
 	xor a
 	ld [wcc5b], a
 	ld a, b
-	call Func_3fbb9
+	call PlayAnimation
 	ld a, [de]
 	ld [wWhichTrade], a
 	ld hl, ChargeMoveEffectText
@@ -8249,7 +8250,7 @@
 .asm_3f928
 	bit 5, [hl]
 	ret nz
-	call Func_3f9cf
+	call ClearHyperBeam
 	set 5, [hl]
 	call BattleRandom
 	and $3
@@ -8348,7 +8349,7 @@
 	set 5, [hl] ; mon now needs to recharge
 	ret
 
-Func_3f9cf: ; 3f9cf (f:79cf)
+ClearHyperBeam: ; 3f9cf (f:79cf)
 	push hl
 	ld hl, W_ENEMYBATTSTATUS2
 	ld a, [H_WHOSETURN]
@@ -8659,7 +8660,7 @@
 	and a
 	ret z
 
-Func_3fbb9: ; 3fbb9 (f:7bb9)
+PlayAnimation: ; 3fbb9 (f:7bb9)
 	ld [W_ANIMATIONID], a
 
 Func_3fbbc: ; 3fbbc (f:7bbc)