diff options
| author | metamuffin <metamuffin@disroot.org> | 2024-09-27 23:55:57 +0200 |
|---|---|---|
| committer | metamuffin <metamuffin@disroot.org> | 2024-09-27 23:56:00 +0200 |
| commit | 9469650dd3102336330e574f1c2b38067c733a5e (patch) | |
| tree | 4eb5219c47315ba1dd811ff91e82ff5e7ebd02be /client/player | |
| parent | 1532ae28ba34915aae3f289a6b2f9f86fe5bd144 (diff) | |
| download | hurrycurry-9469650dd3102336330e574f1c2b38067c733a5e.tar hurrycurry-9469650dd3102336330e574f1c2b38067c733a5e.tar.bz2 hurrycurry-9469650dd3102336330e574f1c2b38067c733a5e.tar.zst | |
character "main" color
Diffstat (limited to 'client/player')
| -rw-r--r-- | client/player/character/character.gd | 30 | ||||
| -rw-r--r-- | client/player/character/character.tscn | 8 | ||||
| -rw-r--r-- | client/player/player.gd | 2 |
3 files changed, 26 insertions, 14 deletions
diff --git a/client/player/character/character.gd b/client/player/character/character.gd index b919d27c..d3138c3e 100644 --- a/client/player/character/character.gd +++ b/client/player/character/character.gd @@ -42,11 +42,14 @@ var current_animation := "idle" @onready var tie = $Main/Tie @onready var knife = $Main/HandRight/Knife -@onready var hairstyles := { - "Brown": $Main/HeadDefault/Hair, - "Blond": $Main/HeadDefault/Hair2, - "E. Parsley": $Main/HeadDefault/Hair3 -} +@onready var hairstyles := [$Main/HeadDefault/Hair, $Main/HeadDefault/Hair2, $Main/HeadDefault/Hair3] +var colors = [ + Color(0.204, 0.361, 0.624), + Color(0.568, 0.256, 0.602), + Color(0.575, 0.341, 0.117), + Color(0.3, 0.455, 0.221), + Color(0.101, 0.452, 0.521) +] @onready var head_default: MeshInstance3D = $Main/HeadDefault @onready var head_robot: MeshInstance3D = $Main/HeadRobot @@ -82,17 +85,20 @@ func _process(delta): boosting_particles.emitting = false was_boosting = boosting and walking - -func select_hairstyle(id: int): +func set_style(id: int): if id == 51: return set_robot(true) if id < 0: to_customer() id *= -1 - var hairstyle_count = hairstyles.keys().size() - id = id % hairstyle_count - var target = hairstyles.keys()[id] - for k in hairstyles.keys(): - hairstyles[k].visible = k == target + + var hairstyle = id % hairstyles.size() + @warning_ignore("integer_division") + var color = id / hairstyles.size() % colors.size() + + for h in hairstyles: h.hide() + hairstyles[hairstyle].show() + + $Main.get_active_material(0).albedo_color = colors[color] func to_customer(): main.mesh = CUSTOMER_MAIN_MESH diff --git a/client/player/character/character.tscn b/client/player/character/character.tscn index a7c09c01..aca0658a 100644 --- a/client/player/character/character.tscn +++ b/client/player/character/character.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=27 format=3 uid="uid://b3hhir2fvnunu"] +[gd_scene load_steps=28 format=3 uid="uid://b3hhir2fvnunu"] [ext_resource type="Script" path="res://player/character/character.gd" id="1_12lbh"] [ext_resource type="ArrayMesh" uid="uid://bnmm01yjwultj" path="res://player/character/default/main.res" id="2_uovyg"] @@ -18,6 +18,11 @@ [ext_resource type="AudioStream" uid="uid://1jsqpnk3igj3" path="res://player/sounds/woosh1.ogg" id="14_ikcec"] [ext_resource type="AudioStream" uid="uid://cwme7eatip0jc" path="res://player/sounds/woosh2.ogg" id="15_iv4wu"] +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_7ojaw"] +resource_local_to_scene = true +resource_name = "main" +cull_mode = 2 + [sub_resource type="Animation" id="Animation_tdhvg"] length = 0.001 tracks/0/type = "bezier" @@ -729,6 +734,7 @@ script = ExtResource("1_12lbh") transform = Transform3D(0.33, 0, 0, 0, 0.33, 0, 0, 0, 0.33, 0, 0.33, 0) mesh = ExtResource("2_uovyg") skeleton = NodePath("") +surface_material_override/0 = SubResource("StandardMaterial3D_7ojaw") [node name="HandRight" type="MeshInstance3D" parent="Main"] transform = Transform3D(0.287144, 0.2864, -1.17785e-06, 0.402357, -0.133775, 0.337554, 0.292329, -0.0971941, -0.464603, -1.302, -0.17, 0) diff --git a/client/player/player.gd b/client/player/player.gd index 31a7a337..6ff28e81 100644 --- a/client/player/player.gd +++ b/client/player/player.gd @@ -79,7 +79,7 @@ func _init(_id: int, new_name: String, pos: Vector2, new_character_idx: int, new is_customer = character_idx < 0 func _ready(): - character.select_hairstyle(character_idx) + character.set_style(character_idx) clear_timer.timeout.connect(clear_message) Settings.hook_changed_init("gameplay.usernames", false, update_username_tag) |