Mask setup
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 7s
Create tag and build when new code gets to main / Export (push) Successful in 1m8s

This commit is contained in:
2026-01-31 10:18:27 +01:00
parent 9d2322b6c7
commit cd150a4513
11 changed files with 147 additions and 21 deletions

View File

@@ -1,7 +1,21 @@
@tool
extends Node2D
class_name Mask
@export var mask_resource: MaskResource:
set(new_resource):
mask_resource = new_resource
_on_mask_resource_changed()
if mask_resource == null:
return
mask_resource.changed.connect(_on_mask_resource_changed)
@onready var mask_sprite: Sprite2D = $MaskSprite
func _on_mask_resource_changed() -> void:
mask_sprite.texture = mask_resource.mask_sprite
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
@@ -9,4 +23,17 @@ func _ready() -> void:
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
if Engine.is_editor_hint():
_engine_process(delta)
else:
_game_process(delta)
func _game_process(delta: float) -> void:
pass
func _engine_process(delta: float) -> void:
if mask_resource == null:
return

View File

@@ -2,9 +2,11 @@
[ext_resource type="Script" uid="uid://cfo3mk5f2q3ej" path="res://scenes/mask/mask.gd" id="1_61b51"]
[ext_resource type="Texture2D" uid="uid://cftllq6l7xclt" path="res://icon.svg" id="1_jlvus"]
[ext_resource type="Resource" uid="uid://pdiaprcknftw" path="res://resources/masks/mute.tres" id="2_0pm64"]
[node name="Mask" type="Node2D" unique_id=428968220]
script = ExtResource("1_61b51")
mask_resource = ExtResource("2_0pm64")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1997645103]
[node name="MaskSprite" type="Sprite2D" parent="." unique_id=1997645103]
texture = ExtResource("1_jlvus")

View File

@@ -0,0 +1,45 @@
@tool
extends Resource
class_name MaskResource
enum Region {
EYES,
MOUTH,
}
@export_category("General")
@export var mask_sprite: Texture2D:
set(value):
mask_sprite = value
changed.emit()
@export var region: Region:
set(value):
region = value
changed.emit()
@export_category("Stimuli")
@export var stimuli: Trait.Stimuli:
set(value):
stimuli = value
changed.emit()
@export var stimuli_multiplier: float = 1.0:
set(value):
stimuli_multiplier = value
changed.emit()
@export_category("Category")
@export var category: Trait.Category:
set(value):
category = value
changed.emit()
@export var category_multiplier: float = 1.0:
set(value):
category_multiplier = value
changed.emit()
@export_category("Tags")
@export var tags_multipliers: Dictionary[Trait.Tag, CharacterResource.Preference]:
set(value):
tags_multipliers = value
changed.emit()

View File

@@ -0,0 +1 @@
uid://d26mv2xtvmpqt