Hi. Here's code that loads monster data (type, x y pos, etc.).
and sample spawndata:
The thing is that I don't know how to make it read from anything else than spawn_test0. I don't want to copy and paste that subroutine as many times as there are rooms in my game of course. I want it to be something like this:
I want to be able to set what CurrentSpawn means before calling LoadEnemies subroutine.
CurrentSpawn = spawn_test0
JSR LoadEnemies
CurrentSpawn = spawn_test1
JSR LoadEnemies
etc.
Code:
LoadEnemies:
LDA MobLoadingStatus
BEQ +
RTS
+
LDY #$08
LDX #$00
LoadEnemiesLoop:
LDA spawn_test0 - 1, y
STA Mob8Id - 1, y
LDA spawn_test0 + 7, y
STA Mob8Hp - 1, y
LDA spawn_test0 + 15, y
STA EnemyRam + 3, x
LDA spawn_test0 + 23, y
STA EnemyRam, x
LDA spawn_test0 + 31, y
STA Mob8Direction - 1, y
TXA
CLC
ADC #$10
TAX
DEY
BNE LoadEnemiesLoop
INC MobLoadingStatus
RTS
LDA MobLoadingStatus
BEQ +
RTS
+
LDY #$08
LDX #$00
LoadEnemiesLoop:
LDA spawn_test0 - 1, y
STA Mob8Id - 1, y
LDA spawn_test0 + 7, y
STA Mob8Hp - 1, y
LDA spawn_test0 + 15, y
STA EnemyRam + 3, x
LDA spawn_test0 + 23, y
STA EnemyRam, x
LDA spawn_test0 + 31, y
STA Mob8Direction - 1, y
TXA
CLC
ADC #$10
TAX
DEY
BNE LoadEnemiesLoop
INC MobLoadingStatus
RTS
and sample spawndata:
Code:
spawn_test0:
;mob ids
.db #oak, #oak, #oak, #oak, #oak, #oak, #oak, #oak
;hp
.db $05, $05, $05, $05, $05, $05, $05, $05
;x pos
.db $20, $20, $20, $20, $90, $85, $50, $C0
;y pos
.db $20, $40, $60, $80, $40, $30, $60, $90
;direction
.db #Mob_Dir_West, #Mob_Dir_South, #Mob_Dir_North, #Mob_Dir_West, #Mob_Dir_East, #Mob_Dir_South, #Mob_Dir_North, #Mob_Dir_West
;mob ids
.db #oak, #oak, #oak, #oak, #oak, #oak, #oak, #oak
;hp
.db $05, $05, $05, $05, $05, $05, $05, $05
;x pos
.db $20, $20, $20, $20, $90, $85, $50, $C0
;y pos
.db $20, $40, $60, $80, $40, $30, $60, $90
;direction
.db #Mob_Dir_West, #Mob_Dir_South, #Mob_Dir_North, #Mob_Dir_West, #Mob_Dir_East, #Mob_Dir_South, #Mob_Dir_North, #Mob_Dir_West
The thing is that I don't know how to make it read from anything else than spawn_test0. I don't want to copy and paste that subroutine as many times as there are rooms in my game of course. I want it to be something like this:
Code:
LoadEnemies:
LDA MobLoadingStatus
BEQ +
RTS
+
LDY #$08
LDX #$00
LoadEnemiesLoop:
LDA CurrentSpawn - 1, y
STA Mob8Id - 1, y
LDA CurrentSpawn + 7, y
STA Mob8Hp - 1, y
LDA CurrentSpawn + 15, y
STA EnemyRam + 3, x
LDA CurrentSpawn + 23, y
STA EnemyRam, x
LDA CurrentSpawn + 31, y
STA Mob8Direction - 1, y
TXA
CLC
ADC #$10
TAX
DEY
BNE LoadEnemiesLoop
INC MobLoadingStatus
RTS
LDA MobLoadingStatus
BEQ +
RTS
+
LDY #$08
LDX #$00
LoadEnemiesLoop:
LDA CurrentSpawn - 1, y
STA Mob8Id - 1, y
LDA CurrentSpawn + 7, y
STA Mob8Hp - 1, y
LDA CurrentSpawn + 15, y
STA EnemyRam + 3, x
LDA CurrentSpawn + 23, y
STA EnemyRam, x
LDA CurrentSpawn + 31, y
STA Mob8Direction - 1, y
TXA
CLC
ADC #$10
TAX
DEY
BNE LoadEnemiesLoop
INC MobLoadingStatus
RTS
I want to be able to set what CurrentSpawn means before calling LoadEnemies subroutine.
CurrentSpawn = spawn_test0
JSR LoadEnemies
CurrentSpawn = spawn_test1
JSR LoadEnemies
etc.