big
This commit is contained in:
@@ -38,6 +38,11 @@ func _add_color_skin(id: String, display_name: String, description: String, tint
|
||||
skin.skin_name = display_name
|
||||
skin.description = description
|
||||
skin.color_tint = tint
|
||||
skin.viewmodel_sleeve_color = tint.darkened(0.18)
|
||||
skin.viewmodel_accent_color = tint.lightened(0.22)
|
||||
skin.viewmodel_glove_color = tint.darkened(0.48)
|
||||
skin.viewmodel_nail_color = tint.lightened(0.34)
|
||||
skin.viewmodel_hand_style = "fingerless"
|
||||
skin.is_unlocked = true
|
||||
skins[id] = skin
|
||||
|
||||
@@ -61,9 +66,34 @@ func _load_skins_json() -> void:
|
||||
skin.description = entry.get("description", "")
|
||||
skin.model_path = entry.get("model", "")
|
||||
skin.is_unlocked = entry.get("unlocked", true)
|
||||
var viewmodel = entry.get("viewmodel", {})
|
||||
if viewmodel is Dictionary:
|
||||
skin.viewmodel_sleeve_color = _json_color(
|
||||
viewmodel.get("sleeve", ""), skin.viewmodel_sleeve_color)
|
||||
skin.viewmodel_accent_color = _json_color(
|
||||
viewmodel.get("accent", ""), skin.viewmodel_accent_color)
|
||||
skin.viewmodel_skin_color = _json_color(
|
||||
viewmodel.get("skin", ""), skin.viewmodel_skin_color)
|
||||
skin.viewmodel_glove_color = _json_color(
|
||||
viewmodel.get("glove", ""), skin.viewmodel_glove_color)
|
||||
skin.viewmodel_nail_color = _json_color(
|
||||
viewmodel.get("nail", ""), skin.viewmodel_nail_color)
|
||||
var hand_style: String = str(viewmodel.get(
|
||||
"hand_style", skin.viewmodel_hand_style))
|
||||
if hand_style in ["bare", "fingerless", "glove", "android"]:
|
||||
skin.viewmodel_hand_style = hand_style
|
||||
skin.viewmodel_sleeve_ratio = clampf(
|
||||
float(viewmodel.get("sleeve_ratio", skin.viewmodel_sleeve_ratio)),
|
||||
0.2, 0.9)
|
||||
skins[entry["id"]] = skin
|
||||
|
||||
|
||||
func _json_color(value: Variant, fallback: Color) -> Color:
|
||||
if value is String and not value.is_empty():
|
||||
return Color.from_string(value, fallback)
|
||||
return fallback
|
||||
|
||||
|
||||
# ── Selection ─────────────────────────────────────────────────────────────────
|
||||
|
||||
func get_skin(skin_id: String) -> PlayerSkin:
|
||||
|
||||
Reference in New Issue
Block a user