diff options
Diffstat (limited to 'wram.asm')
-rw-r--r-- | wram.asm | 273 |
1 files changed, 235 insertions, 38 deletions
@@ -476,12 +476,33 @@ BattleMonSpclAtk: ; c646 BattleMonSpclDef: ; c648 ds 2 - ds 25 +BattleMonType1: ; c64a + ds 1 +BattleMonType2: ; c64b + ds 1 + + ds 23 CurOTMon: ; c663 ds 1 - ds 4 + ds 1 + +TypeModifier: ; c665 +; >10: super-effective +; 10: normal +; <10: not very effective + +; bit 7: stab + ds 1 + +CriticalHit: ; c666 +; nonzero for a critical hit + ds 1 + +AttackMissed: ; c667 +; nonzero for a miss + ds 1 PlayerSubStatus1: ; c668 ; bit @@ -495,15 +516,23 @@ PlayerSubStatus1: ; c668 ; 0 nightmare ds 1 PlayerSubStatus2: ; c669 -; unknown +; bit +; 7 +; 6 +; 5 +; 4 +; 3 +; 2 +; 1 +; 0 curled ds 1 PlayerSubStatus3: ; c66a ; bit ; 7 confusion -; 6 -; 5 +; 6 flying +; 5 underground ; 4 charged -; 3 +; 3 flinch ; 2 ; 1 rollout ; 0 bide @@ -511,22 +540,30 @@ PlayerSubStatus3: ; c66a PlayerSubStatus4: ; c66b ; bit ; 7 leech seed -; 6 +; 6 rage ; 5 recharge ; 4 substitute ; 3 -; 2 +; 2 focus energy ; 1 -; 0 +; 0 bide: unleashed energy ds 1 PlayerSubStatus5: ; c66c -; unknown +; bit +; 7 +; 6 destiny bond +; 5 lock-on +; 4 +; 3 +; 2 +; 1 +; 0 ds 1 EnemySubStatus1: ; c66d ; see PlayerSubStatus1 ds 1 -EnemySubstatus2: ; c66e +EnemySubStatus2: ; c66e ; see PlayerSubStatus2 ds 1 EnemySubStatus3: ; c66f @@ -539,28 +576,42 @@ EnemySubStatus5: ; c671 ; see PlayerSubStatus5 ds 1 - ds 4 - +PlayerRolloutCount: ; c672 + ds 1 +PlayerConfuseCount: ; c673 + ds 1 + ds 1 +PlayerDisableCount: ; c675 + ds 1 PlayerEncoreCount: ; c676 ds 1 PlayerPerishCount: ; c677 ds 1 - - ds 5 - -EnemyEncoreCount: ; c67e +PlayerFuryCutterCount: ; c678 ds 1 -EnemyPerishCount: ; c67f ds 1 - ds 2 +EnemyRolloutCount: ; c67a + ds 1 +EnemyConfuseCount: ; c67b + ds 1 + ds 1 +EnemyEncoreCount: ; c67d + ds 1 +EnemyPerishCount: ; c67e + ds 1 + ds 1 +EnemyFuryCutterCount: ; c680 + ds 1 -PlayerDamageTaken: ; c682 +PlayerDamageTaken: ; c681 ds 2 -EnemyDamageTaken: ; c684 +EnemyDamageTaken: ; c683 ds 2 ds 4 + + ds 1 BattleScriptBuffer: ; c68a ds 40 @@ -568,14 +619,46 @@ BattleScriptBuffer: ; c68a BattleScriptBufferLoc: ; c6b2 ds 2 - ds 25 + ds 24 PlayerStatLevels: ; c6cc ; 07 neutral - ds 8 +PlayerAtkLevel: ; c6cc + ds 1 +PlayerDefLevel: ; c6cd + ds 1 +PlayerSpdLevel: ; c6ce + ds 1 +PlayerSAtkLevel: ; c6cf + ds 1 +PlayerSDefLevel: ; c6d0 + ds 1 +PlayerAccLevel: ; c6d1 + ds 1 +PlayerEvaLevel: ; c6d2 + ds 1 +; c6d3 + ds 1 +PlayerStatLevelsEnd: + EnemyStatLevels: ; c6d4 ; 07 neutral - ds 8 +EnemyAtkLevel: ; c6d4 + ds 1 +EnemyDefLevel: ; c6d5 + ds 1 +EnemySpdLevel: ; c6d6 + ds 1 +EnemySAtkLevel: ; c6d7 + ds 1 +EnemySDefLevel: ; c6d8 + ds 1 +EnemyAccLevel: ; c6d9 + ds 1 +EnemyEvaLevel: ; c6da + ds 1 +; c6db + ds 1 EnemyTurnsTaken: ; c6dc ds 1 @@ -593,12 +676,21 @@ LinkBattleRNCount: ; c6e5 ; how far through the prng stream ds 1 - ds 15 + ds 3 -DisabledMove: ; c6f5 +CurEnemyMoveNum: ; c6e9 ds 1 - ds 2 + ds 10 + +AlreadyDisobeyed: ; c6f4 + ds 1 + +DisabledMove: ; c6f5 + ds 1 +EnemyEncoredMove: ; c6f6 + ds 1 + ds 1 ; exists so you can't counter on switch LastEnemyCounterMove: ; c6f8 @@ -606,14 +698,38 @@ LastEnemyCounterMove: ; c6f8 LastPlayerCounterMove: ; c6f9 ds 1 - ds 8 + ds 1 + +AlreadyFailed: ; c6fb + ds 1 + + ds 3 + +PlayerScreens: ; c6ff +; bit 4: reflect +; bit 3: light screen + ds 1 + +EnemyScreens: ; c700 +; bit 4: reflect +; bit 3: light screen + ds 1 + + ds 1 PlayerLightScreenCount: ; c702 ds 1 PlayerReflectCount: ; c703 ds 1 - ds 6 + ds 2 + +EnemyLightScreenCount: ; c706 + ds 1 +EnemyReflectCount: ; c707 + ds 1 + + ds 2 Weather: ; c70a ; 00 normal @@ -647,7 +763,7 @@ LastEnemyMove: ; c71c SECTION "overworldmap",BSS[$c800] OverworldMap: ; c800 ds 1300 -OverworldMapEnd +OverworldMapEnd: ds 12 @@ -813,7 +929,76 @@ CurPartyMon: ; d109 ; 0-5 ds 1 - ds 55 + ds 4 + +TempMon: +TempMonSpecies: ; d10e + ds 1 +TempMonItem: ; d10f + ds 1 +TempMonMoves: ; d110 +TempMonMove1: ; d110 + ds 1 +TempMonMove2: ; d111 + ds 1 +TempMonMove3: ; d112 + ds 1 +TempMonMove4: ; d113 + ds 1 +TempMonID: ; d114 + ds 2 +TempMonExp: ; d116 + ds 3 +TempMonHPExp: ; d119 + ds 2 +TempMonAtkExp: ; d11b + ds 2 +TempMonDefExp: ; d11d + ds 2 +TempMonSpdExp: ; d11f + ds 2 +TempMonSpclExp: ; d121 + ds 2 +TempMonDVs: ; d123 +; hp = %1000 for each dv + ds 1 ; atk/def + ds 1 ; spd/spc +TempMonPP: ; d125 + ds 4 +TempMonHappiness: ; d129 + ds 1 +TempMonPokerusStatus: ; d12a + ds 1 +TempMonCaughtData: ; d12b +TempMonCaughtTime: ; d12b +TempMonCaughtLevel: ; d12b + ds 1 +TempMonCaughtGender: ; d12c +TempMonCaughtLocation: ; d12c + ds 1 +TempMonLevel: ; d12d + ds 1 +TempMonStatus: ; d12e + ds 1 +; d12f + ds 1 +TempMonCurHP: ; d130 + ds 2 +TempMonMaxHP: ; d132 + ds 2 +TempMonAtk: ; d134 + ds 2 +TempMonDef: ; d136 + ds 2 +TempMonSpd: ; d138 + ds 2 +TempMonSpclAtk: ; d13a + ds 2 +TempMonSpclDef: ; d13c + ds 2 +TempMonEnd: ; d13e + + ds 3 PartyMenuActionText ; d141 ds 1 @@ -847,7 +1032,10 @@ TileSetPalettes: ; d1e6 ; bank 3f ds 2 - ds 2 +EvolvableFlags: ; d1e8 + ds 1 + + ds 1 Buffer1: MagikarpLength: ; d1ea @@ -928,6 +1116,12 @@ EnemyMonSpclAtk: ; d220 EnemyMonSpclDef: ; d222 ds 2 +EnemyMonType1: ; d224 + ds 1 +EnemyMonType2: ; d225 + ds 1 + + SECTION "Battle",BSS[$d22d] IsInBattle: ; d22d @@ -974,6 +1168,9 @@ UnownLetter: ; d234 CurBaseStats: ; d236 ds 32 +CurDamage: ; d256 + ds 2 + SECTION "TimeOfDay",BSS[$d269] TimeOfDay: ; d269 @@ -994,7 +1191,7 @@ OTPartySpecies: ; d281 ; or the routine will keep going OTPartyMon1: -OTPartyMon1Species2: ; d288 +OTPartyMon1Species: ; d288 ds 1 OTPartyMon1Item: ; d289 ds 1 @@ -1131,6 +1328,7 @@ PlayerID: ; d47b ds 2 PlayerName: ; d47d ds 11 +PlayerNameEnd: ; d478 ds 46 @@ -1322,9 +1520,8 @@ PartyCount: ; dcd7 ds 1 ; number of Pokémon in party PartySpecies: ; dcd8 ds 6 ; species of each Pokémon in party -; dcde - ds 1 ; any empty slots including the 7th must be FF - ; or the routine will keep going +PartyEnd: ; dcde + ds 1 ; legacy functions don't check PartyCount PartyMons: PartyMon1: @@ -1371,7 +1568,7 @@ PartyMon1PokerusStatus: ; dcfb ds 1 PartyMon1CaughtData: ; dcfc PartyMon1CaughtTime: ; dcfc -PartyMon1CaughtLevel ; dcfc +PartyMon1CaughtLevel: ; dcfc ds 1 PartyMon1CaughtGender: ; dcfd PartyMon1CaughtLocation: ; dcfd @@ -1482,7 +1679,7 @@ BreedMon2Nick: ; df2f BreedMon2OT: ; df3a ds 11 BreedMon2Stats: -BreedMon1Species: ; df45 +BreedMon2Species: ; df45 ds 1 ds 31 |