ref: 91726b3a5382dd3bb245989e9b827a731959ec48
parent: 3e953ad7b65f033cc5e29319f34cfd661b24af07
author: yenatch <[email protected]>
date: Tue Jan 1 12:08:26 EST 2013
clean up wram (excess partymon structs)
--- a/wram.asm
+++ b/wram.asm
@@ -934,28 +934,16 @@
; 3 darkness
ds 1
-SECTION "OtherTrainerParty",BSS[$d280]
+SECTION "OTParty",BSS[$d280]
-OTPartyMonHeader: ; d280
-TotalBeltMons: ; d280
- ds 1
+OTPartyCount: ; d280
+ ds 1 ; number of Pokémon in party
+OTPartySpecies: ; d281
+ ds 6 ; species of each Pokémon in party
+; d287
+ ds 1 ; any empty slots including the 7th must be FF
+ ; or the routine will keep going
-OTPartyMonSpecies: ; d281
-OTPartyMon1Species: ; d281
- ds 1
-OTPartyMon2Species: ; d282
- ds 1
-OTPartyMon3Species: ; d283
- ds 1
-OTPartyMon4Species: ; d284
- ds 1
-OTPartyMon5Species: ; d285
- ds 1
-OTPartyMon6Species: ; d286
- ds 1
-OTPartyMonsEnd: ; d287
- ds 1
-
OTPartyMon1:
OTPartyMon1Species2: ; d288
ds 1
@@ -1037,405 +1025,17 @@
ds 2
OTPartyMon2: ; d2b8
-OTPartyMon2Species2: ; d2b8
- ds 1
-OTPartyMon2Item: ; d2b9
- ds 1
-
-OTPartyMon2Moves: ; d2ba
-OTPartyMon2Move1: ; d2ba
- ds 1
-OTPartyMon2Move2: ; d2bb
- ds 1
-OTPartyMon2Move3: ; d2bc
- ds 1
-OTPartyMon2Move4: ; d2bd
- ds 1
-
-OTPartyMon2ID: ; d2be
- ds 2
-OTPartyMon2Exp: ; d2c0
- ds 3
-OTPartyMon2HPExp: ; d2c3
- ds 2
-OTPartyMon2AtkExp: ; d2c5
- ds 2
-OTPartyMon2DefExp: ; d2c7
- ds 2
-OTPartyMon2SpdExp: ; d2c9
- ds 2
-OTPartyMon2SpclExp: ; d2cb
- ds 2
-
-OTPartyMon2DVs: ; d2cd
-OTPartyMon2AtkDefDV: ; d2cd
- ds 1
-OTPartyMon2SpdSpclDV: ; d2ce
- ds 1
-
-OTPartyMon2PP: ; d2cf
-OTPartyMon2PPMove1: ; d2cf
- ds 1
-OTPartyMon2PPMove2: ; d2d0
- ds 1
-OTPartyMon2PPMove3: ; d2d1
- ds 1
-OTPartyMon2PPMove4: ; d2d2
- ds 1
-
-OTPartyMon2Happiness: ; d2d3
- ds 1
-OTPartyMon2PokerusStatus: ; d2d4
- ds 1
-
-OTPartyMon2CaughtData: ; d2d5
-OTPartyMon2CaughtGender: ; d2d5
-OTPartyMon2CaughtLocation: ; d2d5
- ds 1
-OTPartyMon2CaughtTime: ; d2d6
- ds 1
-OTPartyMon2Level: ; d2d7
- ds 1
-
-OTPartyMon2Status: ; d2d8
- ds 1
-OTPartyMon2Unused: ; d2d9
- ds 1
-OTPartyMon2CurHP: ; d2da
- ds 2
-OTPartyMon2MaxHP: ; d2dc
- ds 2
-OTPartyMon2Atk: ; d2de
- ds 2
-OTPartyMon2Def: ; d2e0
- ds 2
-OTPartyMon2Spd: ; d2e2
- ds 2
-OTPartyMon2SpclAtk: ; d2e4
- ds 2
-OTPartyMon2SpclDef: ; d2e6
- ds 2
-
+ ds 48
OTPartyMon3: ; d2e8
-OTPartyMon3Species2: ; d2e8
- ds 1
-OTPartyMon3Item: ; d2e9
- ds 1
-
-OTPartyMon3Moves: ; d2ea
-OTPartyMon3Move1: ; d2ea
- ds 1
-OTPartyMon3Move2: ; d2eb
- ds 1
-OTPartyMon3Move3: ; d2ec
- ds 1
-OTPartyMon3Move4: ; d2ed
- ds 1
-
-OTPartyMon3ID: ; d2ee
- ds 2
-OTPartyMon3Exp: ; d2f0
- ds 3
-OTPartyMon3HPExp: ; d2f3
- ds 2
-OTPartyMon3AtkExp: ; d2f5
- ds 2
-OTPartyMon3DefExp: ; d2f7
- ds 2
-OTPartyMon3SpdExp: ; d2f9
- ds 2
-OTPartyMon3SpclExp: ; d2fb
- ds 2
-
-OTPartyMon3DVs: ; d2fd
-OTPartyMon3AtkDefDV: ; d2fd
- ds 1
-OTPartyMon3SpdSpclDV: ; d2fe
- ds 1
-
-OTPartyMon3PP: ; d2ff
-OTPartyMon3PPMove1: ; d2ff
- ds 1
-OTPartyMon3PPMove2: ; d300
- ds 1
-OTPartyMon3PPMove3: ; d301
- ds 1
-OTPartyMon3PPMove4: ; d302
- ds 1
-
-OTPartyMon3Happiness: ; d303
- ds 1
-OTPartyMon3PokerusStatus: ; d304
- ds 1
-
-OTPartyMon3CaughtData: ; d305
-OTPartyMon3CaughtGender: ; d305
-OTPartyMon3CaughtLocation: ; d305
- ds 1
-OTPartyMon3CaughtTime: ; d306
- ds 1
-OTPartyMon3Level: ; d307
- ds 1
-
-OTPartyMon3Status: ; d308
- ds 1
-OTPartyMon3Unused: ; d309
- ds 1
-OTPartyMon3CurHP: ; d30a
- ds 2
-OTPartyMon3MaxHP: ; d30c
- ds 2
-OTPartyMon3Atk: ; d30e
- ds 2
-OTPartyMon3Def: ; d310
- ds 2
-OTPartyMon3Spd: ; d312
- ds 2
-OTPartyMon3SpclAtk: ; d314
- ds 2
-OTPartyMon3SpclDef: ; d316
- ds 2
-
+ ds 48
OTPartyMon4: ; d318
-OTPartyMon4Species2: ; d318
- ds 1
-OTPartyMon4Item: ; d319
- ds 1
-
-OTPartyMon4Moves: ; d31a
-OTPartyMon4Move1: ; d31a
- ds 1
-OTPartyMon4Move2: ; d31b
- ds 1
-OTPartyMon4Move3: ; d31c
- ds 1
-OTPartyMon4Move4: ; d31d
- ds 1
-
-OTPartyMon4ID: ; d31e
- ds 2
-OTPartyMon4Exp: ; d320
- ds 3
-OTPartyMon4HPExp: ; d323
- ds 2
-OTPartyMon4AtkExp: ; d325
- ds 2
-OTPartyMon4DefExp: ; d327
- ds 2
-OTPartyMon4SpdExp: ; d329
- ds 2
-OTPartyMon4SpclExp: ; d32b
- ds 2
-
-OTPartyMon4DVs: ; d32d
-OTPartyMon4AtkDefDV: ; d32d
- ds 1
-OTPartyMon4SpdSpclDV: ; d32e
- ds 1
-
-OTPartyMon4PP: ; d32f
-OTPartyMon4PPMove1: ; d32f
- ds 1
-OTPartyMon4PPMove2: ; d330
- ds 1
-OTPartyMon4PPMove3: ; d331
- ds 1
-OTPartyMon4PPMove4: ; d332
- ds 1
-
-OTPartyMon4Happiness: ; d333
- ds 1
-OTPartyMon4PokerusStatus: ; d334
- ds 1
-
-OTPartyMon4CaughtData: ; d335
-OTPartyMon4CaughtGender: ; d335
-OTPartyMon4CaughtLocation: ; d335
- ds 1
-OTPartyMon4CaughtTime: ; d336
- ds 1
-OTPartyMon4Level: ; d337
- ds 1
-
-OTPartyMon4Status: ; d338
- ds 1
-OTPartyMon4Unused: ; d339
- ds 1
-OTPartyMon4CurHP: ; d33a
- ds 2
-OTPartyMon4MaxHP: ; d33c
- ds 2
-OTPartyMon4Atk: ; d33e
- ds 2
-OTPartyMon4Def: ; d340
- ds 2
-OTPartyMon4Spd: ; d342
- ds 2
-OTPartyMon4SpclAtk: ; d344
- ds 2
-OTPartyMon4SpclDef: ; d346
- ds 2
-
+ ds 48
OTPartyMon5: ; d348
-OTPartyMon5Species2: ; d348
- ds 1
-OTPartyMon5Item: ; d349
- ds 1
-
-OTPartyMon5Moves: ; d34a
-OTPartyMon5Move1: ; d34a
- ds 1
-OTPartyMon5Move2: ; d34b
- ds 1
-OTPartyMon5Move3: ; d34c
- ds 1
-OTPartyMon5Move4: ; d34d
- ds 1
-
-OTPartyMon5ID: ; d34e
- ds 2
-OTPartyMon5Exp: ; d350
- ds 3
-OTPartyMon5HPExp: ; d353
- ds 2
-OTPartyMon5AtkExp: ; d355
- ds 2
-OTPartyMon5DefExp: ; d357
- ds 2
-OTPartyMon5SpdExp: ; d359
- ds 2
-OTPartyMon5SpclExp: ; d35b
- ds 2
-
-OTPartyMon5DVs: ; d35d
-OTPartyMon5AtkDefDV: ; d35d
- ds 1
-OTPartyMon5SpdSpclDV: ; d35e
- ds 1
-
-OTPartyMon5PP: ; d35f
-OTPartyMon5PPMove1: ; d35f
- ds 1
-OTPartyMon5PPMove2: ; d360
- ds 1
-OTPartyMon5PPMove3: ; d361
- ds 1
-OTPartyMon5PPMove4: ; d362
- ds 1
-
-OTPartyMon5Happiness: ; d363
- ds 1
-OTPartyMon5PokerusStatus: ; d364
- ds 1
-
-OTPartyMon5CaughtData: ; d365
-OTPartyMon5CaughtGender: ; d365
-OTPartyMon5CaughtLocation: ; d365
- ds 1
-OTPartyMon5CaughtTime: ; d366
- ds 1
-OTPartyMon5Level: ; d367
- ds 1
-
-OTPartyMon5Status: ; d368
- ds 1
-OTPartyMon5Unused: ; d369
- ds 1
-OTPartyMon5CurHP: ; d36a
- ds 2
-OTPartyMon5MaxHP: ; d36c
- ds 2
-OTPartyMon5Atk: ; d36e
- ds 2
-OTPartyMon5Def: ; d370
- ds 2
-OTPartyMon5Spd: ; d372
- ds 2
-OTPartyMon5SpclAtk: ; d374
- ds 2
-OTPartyMon5SpclDef: ; d376
- ds 2
-
+ ds 48
OTPartyMon6: ; d378
-OTPartyMon6Species2: ; d378
- ds 1
-OTPartyMon6Item: ; d379
- ds 1
+ ds 48
-OTPartyMon6Moves: ; d37a
-OTPartyMon6Move1: ; d37a
- ds 1
-OTPartyMon6Move2: ; d37b
- ds 1
-OTPartyMon6Move3: ; d37c
- ds 1
-OTPartyMon6Move4: ; d37d
- ds 1
-
-OTPartyMon6ID: ; d37e
- ds 2
-OTPartyMon6Exp: ; d380
- ds 3
-OTPartyMon6HPExp: ; d383
- ds 2
-OTPartyMon6AtkExp: ; d385
- ds 2
-OTPartyMon6DefExp: ; d387
- ds 2
-OTPartyMon6SpdExp: ; d389
- ds 2
-OTPartyMon6SpclExp: ; d38b
- ds 2
-OTPartyMon6DVs: ; d38d
-OTPartyMon6AtkDefDV: ; d38d
- ds 1
-OTPartyMon6SpdSpclDV: ; d38e
- ds 1
-
-OTPartyMon6PP: ; d38f
-OTPartyMon6PPMove1: ; d38f
- ds 1
-OTPartyMon6PPMove2: ; d390
- ds 1
-OTPartyMon6PPMove3: ; d391
- ds 1
-OTPartyMon6PPMove4: ; d392
- ds 1
-
-OTPartyMon6Happiness: ; d393
- ds 1
-OTPartyMon6PokerusStatus: ; d394
- ds 1
-
-OTPartyMon6CaughtData: ; d395
-OTPartyMon6CaughtGender: ; d395
-OTPartyMon6CaughtLocation: ; d395
- ds 1
-OTPartyMon6CaughtTime: ; d396
- ds 1
-OTPartyMon6Level: ; d397
- ds 1
-
-OTPartyMon6Status: ; d398
- ds 1
-OTPartyMon6Unused: ; d399
- ds 1
-OTPartyMon6CurHP: ; d39a
- ds 2
-OTPartyMon6MaxHP: ; d39c
- ds 2
-OTPartyMon6Atk: ; d39e
- ds 2
-OTPartyMon6Def: ; d3a0
- ds 2
-OTPartyMon6Spd: ; d3a2
- ds 2
-OTPartyMon6SpclAtk: ; d3a4
- ds 2
-OTPartyMon6SpclDef: ; d3a6
- ds 2
-
OTPartyMonOT:
OTPartyMon1OT: ; d3a8
ds 11
@@ -1676,6 +1276,7 @@
ds 2
PartyMon1Exp: ; dce7
ds 3
+
PartyMon1HPExp: ; dcea
ds 2
PartyMon1AtkExp: ; dcec
@@ -1686,8 +1287,11 @@
ds 2
PartyMon1SpclExp: ; dcf2
ds 2
+
PartyMon1DVs: ; dcf4
- ds 2 ; Atk/Def/Spd/Spcl, HP is the high bits of these four nybbles
+; hp = %1000 for each dv
+ ds 1 ; atk/def
+ ds 1 ; spd/spc
PartyMon1PP: ; dcf6
ds 4
PartyMon1Happiness: ; dcfa
@@ -1723,337 +1327,18 @@
ds 2
-
PartyMon2: ; dd0f
-PartyMon2Species: ; dd0f
- ds 1
-PartyMon2Item: ; dd10
- ds 1
-PartyMon2Moves: ; dd11
-PartyMon2Move1: ; dd11
- ds 1
-PartyMon2Move2: ; dd12
- ds 1
-PartyMon2Move3: ; dd13
- ds 1
-PartyMon2Move4: ; dd14
- ds 1
-PartyMon2ID: ; dd15
- ds 2
-PartyMon2Exp: ; dd17
- ds 3
-PartyMon2HPExp: ; dd1a
- ds 2
-PartyMon2AtkExp: ; dd1c
- ds 2
-PartyMon2DefExp: ; dd1e
- ds 2
-PartyMon2SpdExp: ; dd20
- ds 2
-PartyMon2SpclExp: ; dd22
- ds 2
-PartyMon2DVs: ; dd24
- ds 2 ; Atk/Def/Spd/Spcl, HP is the high bits of these four nybbles
-PartyMon2PP: ; dd26
- ds 4
-PartyMon2Happiness: ; dd2a
- ds 1
-PartyMon2PokerusStatus: ; dd2b
- ds 1
-PartyMon2CaughtData: ; dd2c
-PartyMon2CaughtTime: ; dd2c
-PartyMon2CaughtLevel ; dd2c
- ds 1
-PartyMon2CaughtGender: ; dd2d
-PartyMon2CaughtLocation: ; dd2d
- ds 1
-PartyMon2Level: ; dd2e
- ds 1
-PartyMon2Status: ; dd2f
- ds 1
-; dd30 unused
- ds 1
-PartyMon2CurHP: ; dd31
- ds 2
-PartyMon2MaxHP: ; dd33
- ds 2
-PartyMon2Atk: ; dd35
- ds 2
-PartyMon2Def: ; dd37
- ds 2
-PartyMon2Spd: ; dd39
- ds 2
-PartyMon2SpclAtk: ; dd3b
- ds 2
-PartyMon2SpclDef: ; dd3d
- ds 2
-
-
-
+ ds 48
PartyMon3: ; dd3f
-PartyMon3Species: ; dd3f
- ds 1
-PartyMon3Item: ; dd40
- ds 1
-PartyMon3Moves: ; dd41
-PartyMon3Move1: ; dd41
- ds 1
-PartyMon3Move2: ; dd42
- ds 1
-PartyMon3Move3: ; dd43
- ds 1
-PartyMon3Move4: ; dd44
- ds 1
-PartyMon3ID: ; dd45
- ds 2
-PartyMon3Exp: ; dd47
- ds 3
-PartyMon3HPExp: ; dd4a
- ds 2
-PartyMon3AtkExp: ; dd4c
- ds 2
-PartyMon3DefExp: ; dd4e
- ds 2
-PartyMon3SpdExp: ; dd50
- ds 2
-PartyMon3SpclExp: ; dd52
- ds 2
-PartyMon3DVs: ; dd54
- ds 2 ; Atk/Def/Spd/Spcl, HP is the high bits of these four nybbles
-PartyMon3PP: ; dd56
- ds 4
-PartyMon3Happiness: ; dd5a
- ds 1
-PartyMon3PokerusStatus: ; dd5b
- ds 1
-PartyMon3CaughtData: ; dd5c
-PartyMon3CaughtTime: ; dd5c
-PartyMon3CaughtLevel ; dd5c
- ds 1
-PartyMon3CaughtGender: ; dd5d
-PartyMon3CaughtLocation: ; dd5d
- ds 1
-PartyMon3Level: ; dd5e
- ds 1
-PartyMon3Status: ; dd5f
- ds 1
-; dd60 unused
- ds 1
-PartyMon3CurHP: ; dd61
- ds 2
-PartyMon3MaxHP: ; dd63
- ds 2
-PartyMon3Atk: ; dd65
- ds 2
-PartyMon3Def: ; dd67
- ds 2
-PartyMon3Spd: ; dd69
- ds 2
-PartyMon3SpclAtk: ; dd6b
- ds 2
-PartyMon3SpclDef: ; dd6d
- ds 2
-
-
-
+ ds 48
PartyMon4: ; dd6f
-PartyMon4Species: ; dd6f
- ds 1
-PartyMon4Item: ; dd70
- ds 1
-PartyMon4Moves: ; dd71
-PartyMon4Move1: ; dd71
- ds 1
-PartyMon4Move2: ; dd72
- ds 1
-PartyMon4Move3: ; dd73
- ds 1
-PartyMon4Move4: ; dd74
- ds 1
-PartyMon4ID: ; dd75
- ds 2
-PartyMon4Exp: ; dd77
- ds 3
-PartyMon4HPExp: ; dd7a
- ds 2
-PartyMon4AtkExp: ; dd7c
- ds 2
-PartyMon4DefExp: ; dd7e
- ds 2
-PartyMon4SpdExp: ; dd80
- ds 2
-PartyMon4SpclExp: ; dd82
- ds 2
-PartyMon4DVs: ; dd84
- ds 2 ; Atk/Def/Spd/Spcl, HP is the high bits of these four nybbles
-PartyMon4PP: ; dd86
- ds 4
-PartyMon4Happiness: ; dd8a
- ds 1
-PartyMon4PokerusStatus: ; dd8b
- ds 1
-PartyMon4CaughtData: ; dd8c
-PartyMon4CaughtTime: ; dd8c
-PartyMon4CaughtLevel ; dd8c
- ds 1
-PartyMon4CaughtGender: ; dd8d
-PartyMon4CaughtLocation: ; dd8d
- ds 1
-PartyMon4Level: ; dd8e
- ds 1
-PartyMon4Status: ; dd8f
- ds 1
-; dd90 unused
- ds 1
-PartyMon4CurHP: ; dd91
- ds 2
-PartyMon4MaxHP: ; dd93
- ds 2
-PartyMon4Atk: ; dd95
- ds 2
-PartyMon4Def: ; dd97
- ds 2
-PartyMon4Spd: ; dd99
- ds 2
-PartyMon4SpclAtk: ; dd9b
- ds 2
-PartyMon4SpclDef: ; dd9d
- ds 2
-
-
-
+ ds 48
PartyMon5: ; dd9f
-PartyMon5Species: ; dd9f
- ds 1
-PartyMon5Item: ; dda0
- ds 1
-PartyMon5Moves: ; dda1
-PartyMon5Move1: ; dda1
- ds 1
-PartyMon5Move2: ; dda2
- ds 1
-PartyMon5Move3: ; dda3
- ds 1
-PartyMon5Move4: ; dda4
- ds 1
-PartyMon5ID: ; dda5
- ds 2
-PartyMon5Exp: ; dda7
- ds 3
-PartyMon5HPExp: ; ddaa
- ds 2
-PartyMon5AtkExp: ; ddac
- ds 2
-PartyMon5DefExp: ; ddae
- ds 2
-PartyMon5SpdExp: ; ddb0
- ds 2
-PartyMon5SpclExp: ; ddb2
- ds 2
-PartyMon5DVs: ; ddb4
- ds 2 ; Atk/Def/Spd/Spcl, HP is the high bits of these four nybbles
-PartyMon5PP: ; ddb6
- ds 4
-PartyMon5Happiness: ; ddba
- ds 1
-PartyMon5PokerusStatus: ; ddbb
- ds 1
-PartyMon5CaughtData: ; ddbc
-PartyMon5CaughtTime: ; ddbc
-PartyMon5CaughtLevel ; ddbc
- ds 1
-PartyMon5CaughtGender: ; ddbd
-PartyMon5CaughtLocation: ; ddbd
- ds 1
-PartyMon5Level: ; ddbe
- ds 1
-PartyMon5Status: ; ddbf
- ds 1
-; ddc0 unused
- ds 1
-PartyMon5CurHP: ; ddc1
- ds 2
-PartyMon5MaxHP: ; ddc3
- ds 2
-PartyMon5Atk: ; ddc5
- ds 2
-PartyMon5Def: ; ddc7
- ds 2
-PartyMon5Spd: ; ddc9
- ds 2
-PartyMon5SpclAtk: ; ddcb
- ds 2
-PartyMon5SpclDef: ; ddcd
- ds 2
-
-
-
+ ds 48
PartyMon6: ; ddcf
-PartyMon6Species: ; ddcf
- ds 1
-PartyMon6Item: ; ddd0
- ds 1
-PartyMon6Moves: ; ddd1
-PartyMon6Move1: ; ddd1
- ds 1
-PartyMon6Move2: ; ddd2
- ds 1
-PartyMon6Move3: ; ddd3
- ds 1
-PartyMon6Move4: ; ddd4
- ds 1
-PartyMon6ID: ; ddd5
- ds 2
-PartyMon6Exp: ; ddd7
- ds 3
-PartyMon6HPExp: ; ddda
- ds 2
-PartyMon6AtkExp: ; dddc
- ds 2
-PartyMon6DefExp: ; ddde
- ds 2
-PartyMon6SpdExp: ; dde0
- ds 2
-PartyMon6SpclExp: ; dde2
- ds 2
-PartyMon6DVs: ; dde4
- ds 2 ; Atk/Def/Spd/Spcl, HP is the high bits of these four nybbles
-PartyMon6PP: ; dde6
- ds 4
-PartyMon6Happiness: ; ddea
- ds 1
-PartyMon6PokerusStatus: ; ddeb
- ds 1
-PartyMon6CaughtData: ; ddec
-PartyMon6CaughtTime: ; ddec
-PartyMon6CaughtLevel ; ddec
- ds 1
-PartyMon6CaughtGender: ; dded
-PartyMon6CaughtLocation: ; dded
- ds 1
-PartyMon6Level: ; ddee
- ds 1
-PartyMon6Status: ; ddef
- ds 1
-; ddf0 unused
- ds 1
-PartyMon6CurHP: ; ddf1
- ds 2
-PartyMon6MaxHP: ; ddf3
- ds 2
-PartyMon6Atk: ; ddf5
- ds 2
-PartyMon6Def: ; ddf7
- ds 2
-PartyMon6Spd: ; ddf9
- ds 2
-PartyMon6SpclAtk: ; ddfb
- ds 2
-PartyMon6SpclDef: ; ddfd
- ds 2
-
+ ds 48
-
+PartyMonOT:
PartyMon1OT: ; ddff
ds 11
PartyMon2OT: ; de0a