upgrade mesh merge
This commit is contained in:
@@ -120,6 +120,22 @@ func setup(type: String, wave: int) -> void:
|
||||
kick_tier = enemy_level
|
||||
toughness_tier = enemy_level
|
||||
_update_label()
|
||||
_apply_mesh(enemy_level)
|
||||
|
||||
func _apply_mesh(level: int) -> void:
|
||||
var idx := clampi(level, 1, 3)
|
||||
var mesh_res := load("res://assets/gnome%d.obj" % idx) as Mesh
|
||||
if mesh_res == null:
|
||||
return
|
||||
var new_mat := StandardMaterial3D.new()
|
||||
var tex := load("res://assets/gnome%d.png" % idx) as Texture2D
|
||||
if tex != null:
|
||||
new_mat.albedo_texture = tex
|
||||
new_mat.albedo_color = Color.WHITE
|
||||
mesh_node.mesh = mesh_res
|
||||
mesh_node.material_override = new_mat
|
||||
mat = new_mat
|
||||
COLOR_CHASE = Color.WHITE
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
match state:
|
||||
|
||||
+1
-2
@@ -306,6 +306,7 @@ func _spawn_upgraded_enemy(pos: Vector3, type: String, level: int, w: int) -> Ch
|
||||
enemy.kick_tier = level
|
||||
enemy.toughness_tier = level
|
||||
enemy.call("_update_label")
|
||||
enemy.call("_apply_mesh", level)
|
||||
enemy.global_position = pos
|
||||
enemy.connect("died", _on_enemy_died)
|
||||
enemy.connect("merged", _on_enemy_merged)
|
||||
@@ -318,8 +319,6 @@ func _spawn_upgraded_enemy(pos: Vector3, type: String, level: int, w: int) -> Ch
|
||||
var old_size: Vector3 = s3d.size
|
||||
col_shape.shape = BoxShape3D.new()
|
||||
(col_shape.shape as BoxShape3D).size = old_size * s
|
||||
var color := Color(1.0, 1.0, 0.5) if level > 2 else Color(1.0, 0.9, 0.3)
|
||||
tw.tween_property(enemy.mat, "albedo_color", color, 0.25)
|
||||
if level >= 3 and not first_boss_spawned:
|
||||
first_boss_spawned = true
|
||||
_start_boss_phase()
|
||||
|
||||
Reference in New Issue
Block a user