purge summon: continuous light jitter during animation, short sharp shake on unleash
parent
111cc87df1
commit
6f529e3ffd
|
|
@ -2,8 +2,12 @@ extends Node2D
|
|||
|
||||
const ELITE_DAMAGE_PCT := 0.75
|
||||
const FLASH_FADE_DURATION := 0.6
|
||||
const SUMMON_SHAKE := 2.0
|
||||
|
||||
@onready var summon_circle: AnimatedSprite2D = $SummonCircle/AnimatedSprite2D
|
||||
@onready var camera = get_node("/root/Game/Camera2D")
|
||||
|
||||
var is_summoning := true
|
||||
|
||||
func _ready() -> void:
|
||||
summon_circle.sprite_frames = summon_circle.sprite_frames.duplicate()
|
||||
|
|
@ -11,9 +15,18 @@ func _ready() -> void:
|
|||
summon_circle.animation_finished.connect(_unleash)
|
||||
summon_circle.play("default")
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if is_summoning:
|
||||
camera.offset = Vector2(
|
||||
randf_range(-SUMMON_SHAKE, SUMMON_SHAKE),
|
||||
randf_range(-SUMMON_SHAKE, SUMMON_SHAKE)
|
||||
)
|
||||
|
||||
func _unleash() -> void:
|
||||
var camera = get_node("/root/Game/Camera2D")
|
||||
camera.shake(0.5, 1.5)
|
||||
is_summoning = false
|
||||
set_process(false)
|
||||
camera.offset = Vector2.ZERO
|
||||
camera.shake(0.2, 6.0)
|
||||
|
||||
for enemy in get_tree().get_nodes_in_group("enemies"):
|
||||
if not is_instance_valid(enemy):
|
||||
|
|
|
|||
Loading…
Reference in New Issue