58 lines
1.3 KiB
C#
58 lines
1.3 KiB
C#
using Godot;
|
|
|
|
namespace Ecosystem.scenes.main;
|
|
|
|
public partial class Main : Node
|
|
{
|
|
public Vector2 screenSize;
|
|
public Node spawner;
|
|
public Camera2D camera;
|
|
|
|
public override void _Ready()
|
|
{
|
|
screenSize = GetViewport().GetVisibleRect().Size;
|
|
camera = GetNode<Camera2D>("GlobalCamera");
|
|
spawner = GetNode("World/Spawner");
|
|
Node2D grid = GetNode<Node2D>("World/Grid");
|
|
|
|
camera.Position = new Vector2(screenSize.X / 2, screenSize.Y / 2);
|
|
|
|
var flyPosition = camera.Position;
|
|
spawner.Call("spawn_fly", flyPosition);
|
|
|
|
Node2D fly = (Node2D)spawner.GetChild(0);
|
|
GD.Print(grid.Call("worldToGrid", fly.Position));
|
|
|
|
GetNode<MarginContainer>("HUD").Call("buildInfoPanel", (Node)fly);
|
|
GetNode<MarginContainer>("HUD").Call("ShowInfoPanel");
|
|
}
|
|
}
|
|
|
|
|
|
/* main.gd
|
|
extends Node
|
|
|
|
var screenSize: Vector2
|
|
var spawner
|
|
var camera
|
|
|
|
func _ready() -> void:
|
|
screenSize = get_viewport().get_visible_rect().size
|
|
spawner = $World/Spawner
|
|
camera = $Camera2D
|
|
|
|
camera.position = Vector2(screenSize.x / 2, screenSize.x / 2)
|
|
|
|
var flyPosition = camera.position
|
|
spawner.spawn_fly(flyPosition)
|
|
spawner.spawn_bee(flyPosition)
|
|
|
|
|
|
|
|
func spawn_fly():
|
|
spawner.spawn_fly(camera.position)
|
|
|
|
|
|
func open_entity_panel(entity):
|
|
const information_container: MarginContainer = $HUD/InformationMarginContainer
|
|
*/ |