using Godot; using System.Diagnostics; using System.Linq; using Array = Godot.Collections.Array; public class Game : Spatial { // ui elements private Label _framesPerSecondLabel; private Label _tileLabel; private Label _tileOffsetLabel; private Label _numTilesLabel; private Label _mouseWorldLabel; private Label _mouseTileLabel; private Label _numCoordsAddedLabel; private Label _numCoordsRemovedLabel; private TextureRect _worldTextureRect; // scene nodes private Spatial _tileHighlight; private Spatial _mouseTileHighlight; private StreamContainer _streamContainer; private Area _streamContainerArea; private Spatial _streamContainerActiveTiles; private Player _player; private Chest _chest; private TileWorld _tileWorld; private Camera _camera; // Resources private PackedScene _tileHighlightScene; // other members private HexGrid _hexGrid; private HexCell _lastTile; private HexCell _currentTile; private Vector2 _currentTileOffset; private Vector3 _cameraOffset; // Called when the node enters the scene tree for the first time. public override void _Ready() { // UI elements _framesPerSecondLabel = GetNode