add bone size variation to aphids
This commit is contained in:
@@ -5,6 +5,8 @@ enum State {
|
||||
WANDERING,
|
||||
}
|
||||
|
||||
const BONE_SCALE_VARIATION: float = 0.25
|
||||
|
||||
const HONEYDEW_INTERVAL_MIN: float = 5
|
||||
const HONEYDEW_INTERVAL_MAX: float = 60
|
||||
const HONEYDEW_SPAWN_SPREAD: float = 0.5
|
||||
@@ -16,10 +18,29 @@ var spawned_honeydews: Dictionary = {}
|
||||
|
||||
var honeydew_scene := preload("res://scenes/items/honeydew.tscn")
|
||||
|
||||
var _bones_to_scale: PackedStringArray = [
|
||||
"Root",
|
||||
"Antenna_root_L",
|
||||
"Eye_L",
|
||||
"Antenna_root_R",
|
||||
"Eye_R",
|
||||
]
|
||||
|
||||
@onready var skeleton: Skeleton3D = $AphidModel/Armature/Skeleton3D
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
assert(skeleton != null, "skeleton missing!")
|
||||
super._ready()
|
||||
_set_spawn_timer()
|
||||
for bone_name in _bones_to_scale:
|
||||
var bone := skeleton.find_bone(bone_name)
|
||||
var bone_transform := skeleton.get_bone_pose(bone)
|
||||
bone_transform.basis *= 1 + randf_range(
|
||||
-BONE_SCALE_VARIATION,
|
||||
BONE_SCALE_VARIATION,
|
||||
)
|
||||
skeleton.set_bone_pose_scale(bone, Vector3.ZERO)
|
||||
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
|
||||
Reference in New Issue
Block a user