using Godot; using System; using System.Collections.Generic; using System.Linq; public partial class Main : Node { public GridMap2D _grid; public PlayerController _playerController; public EnemyController _enemyController; public TurnController _turnController; public Random _rng = new(); public override void _Ready() { base._Ready(); _grid = GetNode("GridMap2D"); _playerController = GetNode("PlayerController"); _enemyController = GetNode("EnemyController"); _playerController._grid = _grid; _enemyController._grid = _grid; _playerController.TurnDone += ChangeTurn; _enemyController.TurnDone += ChangeTurn; _enemyController.Initiate(); _playerController.SetUpTowers(); ChangeTurn(); } public override void _Process(double delta) { base._Process(delta); if (Input.IsActionJustPressed("escape")) { GetTree().Quit(); } } public void ChangeTurn() { if (_turnController != _playerController) { _playerController.StartTurn(); } else { _enemyController.StartTurn(); } } }