Add unit movement slide animation
This commit is contained in:
@@ -7,6 +7,7 @@ signal changed
|
||||
signal log_added(message: String)
|
||||
signal dialogue_requested(lines: Array)
|
||||
signal combat_feedback_requested(unit_id: String, text: String, kind: String)
|
||||
signal unit_motion_requested(unit_id: String, from_cell: Vector2i, to_cell: Vector2i)
|
||||
|
||||
const TEAM_PLAYER := "player"
|
||||
const TEAM_ENEMY := "enemy"
|
||||
@@ -539,8 +540,10 @@ func try_move_selected(cell: Vector2i) -> bool:
|
||||
if not get_unit_at(cell).is_empty():
|
||||
return false
|
||||
|
||||
var from_cell: Vector2i = unit["pos"]
|
||||
unit["pos"] = cell
|
||||
unit["moved"] = true
|
||||
unit_motion_requested.emit(str(unit.get("id", "")), from_cell, cell)
|
||||
_emit_log("%s moved to %s." % [unit["name"], _format_cell(cell)])
|
||||
_run_events("unit_reaches_tile", str(unit.get("team", "")), turn_number, unit)
|
||||
_check_battle_status()
|
||||
@@ -1837,8 +1840,10 @@ func _enemy_take_action(enemy: Dictionary) -> void:
|
||||
best_cell = cell
|
||||
|
||||
if best_cell != enemy["pos"]:
|
||||
var from_cell: Vector2i = enemy["pos"]
|
||||
enemy["pos"] = best_cell
|
||||
enemy["moved"] = true
|
||||
unit_motion_requested.emit(str(enemy.get("id", "")), from_cell, best_cell)
|
||||
_emit_log("%s advances to %s." % [enemy["name"], _format_cell(best_cell)])
|
||||
_run_events("unit_reaches_tile", str(enemy.get("team", "")), turn_number, enemy)
|
||||
if battle_status != STATUS_ACTIVE:
|
||||
|
||||
Reference in New Issue
Block a user