-- キングスナイト(FC) 取得魔法アイテムとステータス表示・連射モード装着・連射モードオンオフスイッチ装着 他 -- 作成者:魂太郎@regamer -- 作成日:2021/01/29 AS = 0 AF = 0 --***************************************************************************** while true do --***************************************************************************** --デモプレイのステータス上書き問題の解決として、デモ画面中までのカウントが1になったら増やす。 -- =デモ画面を稼働させないようにする if (memory.readbyte(0x0010) == 80 and memory.readbyte(0x001D) < 2)then memory.writebyte(0x001D, 20) end if (memory.readbyte(0x00A2) == 0 and memory.readbyte(0x0010) ~= 80 or memory.readbyte(0x00A2) == 5) then--レイジャック if (memory.readbyte(0x068A) ~= 32 and memory.readbyte(0x068B) ~= 32 and memory.readbyte(0x068C) ~= 32) then memory.writebyte(0x05EC, memory.readbyte(0x009D)) memory.writebyte(0x05ED, memory.readbyte(0x009E)) memory.writebyte(0x05EE, memory.readbyte(0x009F)) memory.writebyte(0x05EF, memory.readbyte(0x00A0)) memory.writebyte(0x05F0, memory.readbyte(0x00A1)) end if (AND(memory.readbyte(0x05F0), 1) == 1) then gui.text(20,222,"!") else gui.text(20,222,"-") end if (AND(memory.readbyte(0x05F0), 2) == 2) then gui.text(40,222,"!") else gui.text(40,222,"-") end if (AND(memory.readbyte(0x05F0), 4) == 4) then gui.text(60,222,"!") else gui.text(60,222,"-") end if (AND(memory.readbyte(0x05F0), 8) == 8) then gui.text(80,222,"!") else gui.text(80,222,"-") end gui.text(100,222, "ST:"..memory.readbyte(0x05EC).. "/DF:"..memory.readbyte(0x05ED).. "/AG:"..memory.readbyte(0x05EE).. "/JM:"..memory.readbyte(0x05EF).. "/Lv:"..memory.readbyte(0x05EC) + memory.readbyte(0x05ED) + memory.readbyte(0x05EE) + memory.readbyte(0x05EF)) end if (memory.readbyte(0x00A2) == 1 or memory.readbyte(0x00A2) == 6) then--カリバ if (memory.readbyte(0x068A) ~= 32 and memory.readbyte(0x068B) ~= 32 and memory.readbyte(0x068C) ~= 32) then memory.writebyte(0x05F3, memory.readbyte(0x009D)) memory.writebyte(0x05F4, memory.readbyte(0x009E)) memory.writebyte(0x05F5, memory.readbyte(0x009F)) memory.writebyte(0x05F6, memory.readbyte(0x00A0)) memory.writebyte(0x05F7, memory.readbyte(0x00A1)) end if (AND(memory.readbyte(0x05F7), 1) == 1) then gui.text(20,222,"!") else gui.text(20,222,"-") end if (AND(memory.readbyte(0x05F7), 2) == 2) then gui.text(40,222,"!") else gui.text(40,222,"-") end if (AND(memory.readbyte(0x05F7), 4) == 4) then gui.text(60,222,"!") else gui.text(60,222,"-") end if (AND(memory.readbyte(0x05F7), 8) == 8) then gui.text(80,222,"!") else gui.text(80,222,"-") end gui.text(100,222, "ST:"..memory.readbyte(0x05F3).. "/DF:"..memory.readbyte(0x05F4).. "/AG:"..memory.readbyte(0x05F5).. "/JM:"..memory.readbyte(0x05F6).. "/Lv:"..memory.readbyte(0x05F3) + memory.readbyte(0x05F4) + memory.readbyte(0x05F5) + memory.readbyte(0x05F6)) end if (memory.readbyte(0x00A2) == 2 or memory.readbyte(0x00A2) == 7) then--バルーサ if (memory.readbyte(0x068A) ~= 32 and memory.readbyte(0x068B) ~= 32 and memory.readbyte(0x068C) ~= 32) then memory.writebyte(0x05FA, memory.readbyte(0x009D)) memory.writebyte(0x05FB, memory.readbyte(0x009E)) memory.writebyte(0x05FC, memory.readbyte(0x009F)) memory.writebyte(0x05FD, memory.readbyte(0x00A0)) memory.writebyte(0x05FE, memory.readbyte(0x00A1)) end if (AND(memory.readbyte(0x05FE), 1) == 1) then gui.text(20,222,"!") else gui.text(20,222,"-") end if (AND(memory.readbyte(0x05FE), 2) == 2) then gui.text(40,222,"!") else gui.text(40,222,"-") end if (AND(memory.readbyte(0x05FE), 4) == 4) then gui.text(60,222,"!") else gui.text(60,222,"-") end if (AND(memory.readbyte(0x05FE), 8) == 8) then gui.text(80,222,"!") else gui.text(80,222,"-") end gui.text(100,222, "ST:"..memory.readbyte(0x05FA).. "/DF:"..memory.readbyte(0x05FB).. "/AG:"..memory.readbyte(0x05FC).. "/JM:"..memory.readbyte(0x05FD).. "/Lv:"..memory.readbyte(0x05FA) + memory.readbyte(0x05FB) + memory.readbyte(0x05FC) + memory.readbyte(0x05FD)) end if (memory.readbyte(0x00A2) == 3 or memory.readbyte(0x00A2) == 8) then--トビー if (memory.readbyte(0x068A) ~= 32 and memory.readbyte(0x068B) ~= 32 and memory.readbyte(0x068C) ~= 32) then memory.writebyte(0x0601, memory.readbyte(0x009D)) memory.writebyte(0x0602, memory.readbyte(0x009E)) memory.writebyte(0x0603, memory.readbyte(0x009F)) memory.writebyte(0x0604, memory.readbyte(0x00A0)) memory.writebyte(0x0605, memory.readbyte(0x00A1)) end if (AND(memory.readbyte(0x0605), 1) == 1) then gui.text(20,222,"!") else gui.text(20,222,"-") end if (AND(memory.readbyte(0x0605), 2) == 2) then gui.text(40,222,"!") else gui.text(40,222,"-") end if (AND(memory.readbyte(0x0605), 4) == 4) then gui.text(60,222,"!") else gui.text(60,222,"-") end if (AND(memory.readbyte(0x0605), 8) == 8) then gui.text(80,222,"!") else gui.text(80,222,"-") end gui.text(100,222, "ST:"..memory.readbyte(0x0601).. "/DF:"..memory.readbyte(0x0602).. "/AG:"..memory.readbyte(0x0603).. "/JM:"..memory.readbyte(0x0604).. "/Lv:"..memory.readbyte(0x0601) + memory.readbyte(0x0602) + memory.readbyte(0x0603) + memory.readbyte(0x0604)) end if (memory.readbyte(0x00A2) == 4) then--最終ステージ gui.text(05,222,"GET SWORD:"..memory.readbyte(0x009A).."/3") if (memory.readbyte(0x00B7) == 193 and AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 4) == 4) then gui.text(90,222," B: can use RAYJACK's magic once") end if (memory.readbyte(0x00B7) < 193 and memory.readbyte(0x00B7) > 143) then if (AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 4) == 4) then gui.text(90,222," Change front RAYJACK") end end if (memory.readbyte(0x00B7) == 101 or memory.readbyte(0x00B7) == 102) then if (AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 3) == 3) then gui.text(90,222," B: can use BARUSA's magic once") end end if (memory.readbyte(0x00B7) < 101 and memory.readbyte(0x00B7) > 88 and AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 3) == 3) then gui.text(90,222," Change front BARUSA") end if (memory.readbyte(0x00B7) == 87 or memory.readbyte(0x00B7) == 86) then if (AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 2) == 2) then gui.text(90,222," B: can use TOBY's magic once") end end if (memory.readbyte(0x00B7) < 87 and memory.readbyte(0x00B7) > 41 and AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 2) == 2) then gui.text(90,222," Change front TOBY") end if (memory.readbyte(0x00B7) == 40 or memory.readbyte(0x00B7) == 41) then if (AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 1) == 1) then gui.text(90,222," B: can use KALIVA's magic once") end end if (AND(memory.readbyte(0x0010), 128) == 128) then else if (memory.readbyte(0x00B7) < 40 and AND(memory.readbyte(0x05F0), memory.readbyte(0x05F7), memory.readbyte(0x05FE), memory.readbyte(0x0605), 1) == 1) then gui.text(90,222," Change front KALIVA") end end if (memory.readbyte(0x00B7) == 238) then if (memory.readbyte(0x009A) == 3)then gui.text(90,222,"Damage L:"..memory.readbyte(0x00E9).." C:"..memory.readbyte(0x00EA).." B:"..memory.readbyte(0x00EB).." T:"..memory.readbyte(0x00EC)) else gui.text(90,222,"oh... orz") end end end gui.text(1,1,"!")--消すとなぜが表示が更新されないので消さないこと --自動連射 if (AND(memory.readbyte(0x0027),1) == 1 and AF == 1) then joypad.set(1, {A = true}) FCEU.frameadvance() joypad.set(1, {A = false}) end --自動連射 以下連射スイッチ if (AND(memory.readbyte(0x0027),4) == 4 and AS == 0) then AS = 1 end if (AND(memory.readbyte(0x0027),4) == 0 and AS == 1 and AF == 0) then AF = 1 AS = 0 end if (AND(memory.readbyte(0x0027),4) == 0 and AS == 1 and AF == 1) then AF = 0 AS = 0 end if (memory.readbyte(0x0010) == 80 or memory.readbyte(0x0010) == 32)then AF = 0 else if (AF == 0) then gui.text(1,9,"AutoFire OFF:Push SEL cange") end if (AF == 1) then gui.text(1,9,"AutoFire ON:Push SEL cange") end end --自動連射 以上連射スイッチ if (memory.readbyte(0x00E9) + memory.readbyte(0x00EA) + memory.readbyte(0x00EB) + memory.readbyte(0x00EC) == 1020 and memory.readbyte(0x009A) == 3) then gui.popup("クリアおめでとうございます! スプリクトアシスト終了します", "ok", "warning") break end FCEU.frameadvance() end