small bugfixes
This commit is contained in:
parent
0fe6f08e88
commit
e545f620e1
|
|
@ -12,22 +12,7 @@ var max_lines: float = 0
|
|||
@export var story_array: PackedStringArray = []:
|
||||
set(str_array):
|
||||
story_array = str_array
|
||||
if is_node_ready():
|
||||
substring_sizes = []
|
||||
var p: int = 0
|
||||
label.text = "[p]"
|
||||
for i in range(str_array.size()):
|
||||
label.text += TranslationServer.translate(str_array[i]).strip_edges() + " "
|
||||
substring_sizes.append(TranslationServer.translate(str_array[i]).strip_edges().length() + 1)
|
||||
if not paragraph_lengths[-1] == story_array.size()-1:
|
||||
paragraph_lengths.append(story_array.size()-1)
|
||||
push_warning("Paragraph lenghts of scene %s are misconfigured!" % name)
|
||||
if paragraph_lengths[p] == i:
|
||||
p += 1
|
||||
label.text += "[/p][p][font_size=8] [/font_size][/p][p]"
|
||||
substring_sizes[-1] = substring_sizes[-1] + 1
|
||||
label.text += "[/p]"
|
||||
max_lines = float(label.get_line_count())
|
||||
_rebuild()
|
||||
|
||||
@export var paragraph_lengths: PackedInt32Array = [1]
|
||||
|
||||
|
|
@ -91,7 +76,25 @@ func _ready() -> void:
|
|||
play_scene()
|
||||
story_array = story_array
|
||||
progress = progress
|
||||
|
||||
|
||||
func _rebuild():
|
||||
if is_node_ready():
|
||||
substring_sizes = []
|
||||
var p: int = 0
|
||||
label.text = "[p]"
|
||||
for i in range(story_array.size()):
|
||||
label.text += TranslationServer.translate(story_array[i]).strip_edges() + " "
|
||||
substring_sizes.append(TranslationServer.translate(story_array[i]).strip_edges().length() + 1)
|
||||
if not paragraph_lengths[-1] == story_array.size()-1:
|
||||
paragraph_lengths.append(story_array.size()-1)
|
||||
push_warning("Paragraph lenghts of scene %s are misconfigured!" % name)
|
||||
if paragraph_lengths[p] == i:
|
||||
p += 1
|
||||
label.text += "[/p][p][font_size=8] [/font_size][/p][p]"
|
||||
substring_sizes[-1] = substring_sizes[-1] + 1
|
||||
label.text += "[/p]"
|
||||
max_lines = float(label.get_line_count())
|
||||
|
||||
func try_scroll():
|
||||
var forward_target: int
|
||||
|
||||
|
|
@ -124,7 +127,11 @@ func play_scene():
|
|||
animation_player.queue("de")
|
||||
_:
|
||||
animation_player.queue("en")
|
||||
|
||||
|
||||
if name == "draven":
|
||||
await get_tree().process_frame
|
||||
await get_tree().process_frame
|
||||
$AnimationPlayer/Music.play()
|
||||
|
||||
await text_finished
|
||||
|
||||
|
|
|
|||
|
|
@ -21,10 +21,18 @@ var _is_initialised: bool = false
|
|||
set(value):
|
||||
mementos_complete = value
|
||||
if _is_initialised: changed.emit()
|
||||
@export_flags_2d_physics var sequences_enabled: int = 63:
|
||||
set(value):
|
||||
sequences_enabled = value
|
||||
if _is_initialised: changed.emit()
|
||||
@export var board_state: Dictionary = {"cards": {}, "stickies": {}, "randoms": []}:
|
||||
set(value):
|
||||
board_state = value
|
||||
if _is_initialised: changed.emit()
|
||||
@export var childhood_mementos: Dictionary = {"cards": {}, "stickies": {}, "randoms": []}:
|
||||
set(value):
|
||||
childhood_mementos = value
|
||||
if _is_initialised: changed.emit()
|
||||
@export var is_childhood_board_complete: bool = false
|
||||
@export var thumbnail: Texture = preload("res://import/interface-elements/empty_save_slot.png"):
|
||||
set(value):
|
||||
|
|
@ -69,7 +77,6 @@ func _init(initial_filepath = "") -> void:
|
|||
DirAccess.make_dir_absolute(filepath.get_base_dir())
|
||||
|
||||
func read_save_file():
|
||||
print("Opening Savegame: %s" % filepath)
|
||||
if filepath == "DEBUG":
|
||||
if OS.has_feature("debug") or OS.has_feature("demo"):
|
||||
push_warning("Created DEBUG savegame. Progress will not be stored!")
|
||||
|
|
@ -80,6 +87,7 @@ func read_save_file():
|
|||
return
|
||||
|
||||
if FileAccess.file_exists(filepath):
|
||||
print("Opening existing Savegame: %s" % filepath)
|
||||
var file = FileAccess.open(filepath, FileAccess.READ)
|
||||
var raw_json = FileAccess.get_file_as_string(filepath)
|
||||
file.close()
|
||||
|
|
@ -96,15 +104,15 @@ func read_save_file():
|
|||
parsed["mementos_complete"] is float and
|
||||
parsed["board_state"] is Dictionary and
|
||||
parsed["is_childhood_board_complete"] is bool and
|
||||
parsed["last_saved"] is float and
|
||||
parsed["demo"] is bool and last_saved != 0
|
||||
parsed["last_saved"] is float# and FIXME
|
||||
#parsed["demo"] is bool and last_saved != 0
|
||||
)
|
||||
|
||||
if are_types_valid:
|
||||
for key in parsed.keys():
|
||||
set(key, parsed[key])
|
||||
|
||||
for dict:Dictionary in board_state.values():
|
||||
for dict:Dictionary in [board_state["cards"], board_state["stickies"]]:
|
||||
for key in dict.keys():
|
||||
if dict[key] is String:
|
||||
if dict[key].begins_with("("):
|
||||
|
|
@ -119,7 +127,7 @@ func read_save_file():
|
|||
for sticky_name:String in board_state["stickies"]:
|
||||
stickies[StringName(sticky_name)] = board_state["stickies"][sticky_name]
|
||||
for random_name:StringName in board_state["randoms"]:
|
||||
randoms.append( board_state["randoms"][random_name] )
|
||||
randoms.append( random_name )
|
||||
|
||||
board_state = {
|
||||
"cards": cards,
|
||||
|
|
@ -139,6 +147,7 @@ func read_save_file():
|
|||
thumbnail = ImageTexture.create_from_image(tmp_img)
|
||||
is_empty = false
|
||||
else:
|
||||
print("Creating empty Savegame: %s" % filepath)
|
||||
is_valid = true
|
||||
|
||||
func _get_save_dict() -> Dictionary:
|
||||
|
|
@ -159,6 +168,10 @@ func save_to_file(current_screen: Texture):
|
|||
push_warning("Saving DEBUG save skipped. This is intentional.")
|
||||
return
|
||||
|
||||
if current_room == State.rooms.NULL:
|
||||
print("Not saving empty savegame.")
|
||||
return
|
||||
|
||||
last_saved = Time.get_unix_time_from_system()
|
||||
var thumbnail_image: Image = current_screen.get_image()
|
||||
thumbnail_image.convert(Image.Format.FORMAT_RGB8)
|
||||
|
|
|
|||
|
|
@ -644,7 +644,7 @@ func rebuild_from_savedict(board_state:Dictionary):
|
|||
card.transform.origin = cards[card.name]# Replacing position reference with card reference! Needed in next loop.
|
||||
cards[card.name] = card
|
||||
text_recovery[card.name] = card.text
|
||||
card.picked_random == randoms.has( card.card_id )
|
||||
card.picked_random = randoms.has( card.card_id )
|
||||
for sticky:StickyNote in card_pile["sticky_notes"]:
|
||||
text_recovery[sticky.name] = sticky.text
|
||||
if stickies[sticky.name] == -1:
|
||||
|
|
@ -654,7 +654,7 @@ func rebuild_from_savedict(board_state:Dictionary):
|
|||
else:
|
||||
insert_area(dropzone, sticky)
|
||||
sticky.transform.origin = stickies[sticky.name]
|
||||
sticky.picked_random == randoms.has( sticky.card_id )
|
||||
sticky.picked_random = randoms.has( sticky.sticky_id )
|
||||
|
||||
func validate_board():
|
||||
return
|
||||
|
|
|
|||
Loading…
Reference in New Issue