ChocolateBird/test_scene.gd

73 lines
2.6 KiB
GDScript3
Raw Permalink Normal View History

extends Control
#warning-ignore-all:return_value_discarded
2023-08-08 00:22:11 +09:30
const palette_mat := preload('res://palette_mat.tres')
2023-07-29 01:53:03 +09:30
var save_slots = []
var save_slot_dicts = []
2023-07-25 14:21:10 +09:30
func _ready():
RomLoader.connect('rom_loaded', self, '_on_rom_loaded')
# RomLoader.load_snes_rom('/home/luke/code/FF/ffv romhacks/Final Fantasy V (Japan).sfc')
RomLoader.load_snes_rom('/home/luke/code/FF/ffv romhacks/Final Fantasy V (Japan) [En by RPGe v1.1].sfc')
func _on_rom_loaded():
party_menu()
# monster_sprites()
# battle_bgs()
# jobs_and_abilities()
func party_menu():
var PartyMenu = preload('res://widgets/PartyMenu.tscn').instance()
# PartyMenu.margin_right = 320.0
PartyMenu.margin_right = 384.0
add_child(PartyMenu)
2023-07-29 01:53:03 +09:30
var save_file := File.new()
#var error := save_file.open('test.srm', File.READ)
var error := save_file.open('/home/luke/.config/Mesen2/Saves/FF5_SCC_WepTweaks_Inus_Dash.srm', File.READ)
2023-07-29 01:53:03 +09:30
if error == OK:
for i in 4:
save_slots.append(SaveLoader.get_save_slot(save_file, i))
save_slot_dicts.append(SaveLoader.load_save_slot(save_slots[i]))
2023-07-29 01:53:03 +09:30
print('Loaded test save file')
2023-07-31 15:18:02 +09:30
save_file.close()
# error = save_file.open('downloaded_saves/psx_world1.gme', File.READ)
# if error == OK:
# var buffer := StreamPeerBuffer.new()
# save_file.seek(0x2FA0)
# buffer.data_array = save_file.get_buffer(0x600)
# save_slot_dicts.append(SaveLoader.get_struct(buffer, 'Save_slot'))
var data = save_slot_dicts[0]
data.characters[2].equipped_abilities[3] = 0x9B
PartyMenu.update_labels(data)
ThemeManager.set_menu_color_555(data.config.menu_color_r, data.config.menu_color_g, data.config.menu_color_b)
2023-08-07 01:18:07 +09:30
func monster_sprites():
2023-08-08 00:22:11 +09:30
var monster_box := GridContainer.new()
monster_box.columns = 8
add_child(monster_box)
for mon in RomLoader.snes_data.monster_battle_sprites:
var t := TextureRect.new()
t.material = palette_mat.duplicate()
t.texture = mon.sprite
t.material.set_shader_param('palette', mon.palette)
monster_box.add_child(t)
func battle_bgs():
2023-08-15 16:20:40 +09:30
var bbg := SpinBox.new()
bbg.max_value = len(SpriteLoader.battle_backgrounds) - 1
bbg.connect('value_changed', $BattleScene, 'set_bg')
bbg.rect_min_size.x = 32
2023-08-16 00:35:59 +09:30
bbg.rect_position.y = 218
2023-08-15 16:20:40 +09:30
bbg.align = LineEdit.ALIGN_RIGHT
add_child(bbg)
func jobs_and_abilities():
var lbl = Label.new()
for i in 22:
lbl.text = lbl.text + '%s - %s\n' % [StringLoader.get_job_name(i), StringLoader.get_job_desc(i)]
for i in 78:
lbl.text = lbl.text + '\n%s - %s' % [StringLoader.get_ability_name(i), StringLoader.get_ability_desc(i)]
for i in range(128, 161):
lbl.text = lbl.text + '\n%s - %s' % [StringLoader.get_ability_name(i), StringLoader.get_ability_desc(i)]
add_child(lbl)