diff --git a/Rom.py b/Rom.py index 8a5bf3b8..87860b0c 100644 --- a/Rom.py +++ b/Rom.py @@ -38,7 +38,7 @@ from source.dungeon.RoomList import Room0127 JAP10HASH = '03a63945398191337e896e5771f77173' -RANDOMIZERBASEHASH = '155051ece07ef1b60c875a5746189c26' +RANDOMIZERBASEHASH = '109fde24581211c605a1d4836dd8d470' class JsonRom(object): diff --git a/asm/owrando.asm b/asm/owrando.asm index 8818a35e..4730478d 100644 --- a/asm/owrando.asm +++ b/asm/owrando.asm @@ -494,9 +494,7 @@ OWBonkGoodBeeDrop: ; spawn itemget item .spawn_item ; A = item id ; Y = bonk sprite slot ; S = Collected PLX : BEQ + : LDA.b #$00 : STA.w $0DD0,Y : BRA .return - + LDA.l OWBonkPrizeTable[42].mw_player : STA.l !MULTIWORLD_SPRITEITEM_PLAYER_ID - - LDA.b #$01 : STA !REDRAW + + LDA.b #$01 : STA !REDRAW LDA.b #$EB : STA.l $7FFE00 JSL Sprite_SpawnDynamically+15 ; +15 to skip finding a new slot, use existing sprite @@ -618,9 +616,7 @@ OWBonkDrops: ; spawn itemget item .spawn_item ; A = item id ; Y = tree sprite slot ; S = Collected, FlagBitmask, X (row + 2) PLX : BEQ + : LDA.b #$00 : STA.w $0DD0,Y : JMP .return ; S = FlagBitmask, X (row + 2) - + LDA 2,S : TAX : INX : INX - LDA.w OWBonkPrizeData,X : STA.l !MULTIWORLD_SPRITEITEM_PLAYER_ID - DEX + + LDA 2,S : TAX : INX LDA.b #$01 : STA !REDRAW @@ -948,12 +944,11 @@ OWNewDestination: ; crossed OW shuffle and terrain ldx $05 : ldy $08 : jsr OWWorldTerrainUpdate - lda $8a : JSR OWDetermineScreensPaletteSet : STX $04 lda $05 : sta $8a : JSR OWDetermineScreensPaletteSet ;PLA : AND.b #$3F : BEQ .leaving_woods ;LDA $8A : AND.b #$3F : BEQ .entering_woods - CPX $04 : BEQ .skip_palette ; check if next screen's palette is different + CPX.w $0AB3 : BEQ .skip_palette ; check if next screen's palette is different LDA $00 : PHA JSL OverworldLoadScreensPaletteSet_long ; loading correct OW palette PLA : STA $00 diff --git a/data/base2current.bps b/data/base2current.bps index f789ffeb..13b9ab4e 100644 Binary files a/data/base2current.bps and b/data/base2current.bps differ