From f3d360e022fce829370c7d916abe98083b14818c Mon Sep 17 00:00:00 2001 From: Daniel Weipert Date: Mon, 7 Apr 2025 11:45:05 +0200 Subject: next commit --- ui/login/character_creation.gd | 134 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 ui/login/character_creation.gd (limited to 'ui/login/character_creation.gd') diff --git a/ui/login/character_creation.gd b/ui/login/character_creation.gd new file mode 100644 index 0000000..f3989d1 --- /dev/null +++ b/ui/login/character_creation.gd @@ -0,0 +1,134 @@ +extends HBoxContainer + + +var strength := 5: + set(value): + strength = value + %StatEntryStrength.value = value + %Polygon.polygon[0] = ( + Vector2(100, 100) + + ((Vector2(100, 0) - Vector2(100, 100)) / 9.0) * value + ) + +var vitality := 5: + set(value): + vitality = value + %StatEntryVitality.value = value + %Polygon.polygon[1] = ( + Vector2(100, 100) + + ((Vector2(200, 50) - Vector2(100, 100)) / 9.0) * value + ) + +var luck := 5: + set(value): + luck = value + %StatEntryLuck.value = value + %Polygon.polygon[2] = ( + Vector2(100, 100) + + ((Vector2(200, 150) - Vector2(100, 100)) / 9.0) * value + ) + +var intelligence := 5: + set(value): + intelligence = value + %StatEntryIntelligence.value = value + %Polygon.polygon[3] = ( + Vector2(100, 100) + + ((Vector2(100, 200) - Vector2(100, 100)) / 9.0) * value + ) + +var dexterity := 5: + set(value): + dexterity = value + %StatEntryDexterity.value = value + %Polygon.polygon[4] = ( + Vector2(100, 100) + + ((Vector2(0, 150) - Vector2(100, 100)) / 9.0) * value + ) + +var agility := 5: + set(value): + agility = value + %StatEntryAgility.value = value + %Polygon.polygon[5] = ( + Vector2(100, 100) + + ((Vector2(0, 50) - Vector2(100, 100)) / 9.0) * value + ) + +var head_id := 1: + set(value): + head_id = value + %Head.texture = load( + "%s/%s/000.png" % [ + "res://client_data/data/sprite", + Constants.FilePaths.get_player_head(Constants.Gender.Male, head_id), + ] + ) + +var character_name: String + + +func _on_strength_button_pressed() -> void: + if strength >= 9: + return + + strength += 1 + intelligence -= 1 + + +func _on_vitality_button_pressed() -> void: + if vitality >= 9: + return + + vitality += 1 + dexterity -= 1 + + +func _on_luck_button_pressed() -> void: + if luck >= 9: + return + + luck += 1 + agility -= 1 + + +func _on_intelligence_button_pressed() -> void: + if intelligence >= 9: + return + + intelligence += 1 + strength -= 1 + + +func _on_dexterity_button_pressed() -> void: + if dexterity >= 9: + return + + dexterity += 1 + vitality -= 1 + + +func _on_agility_button_pressed() -> void: + if agility >= 9: + return + + agility += 1 + luck -= 1 + + +func _on_appearance_left_button_pressed() -> void: + head_id = (head_id - 1) % (42 + 1) + # TODO: fix + + +func _on_appearance_right_button_pressed() -> void: + head_id = (head_id + 1) % (42 + 1) + + +func _on_appearance_up_button_pressed() -> void: + # TODO: change hair color + pass # Replace with function body. + + +func _on_name_text_changed(new_text: String) -> void: + character_name = new_text -- cgit v1.2.3