added multiplayer connection. TODO: Sync Inventory values. Disable moving of other color tiles

This commit is contained in:
Sch1nken 2024-03-16 02:36:45 +01:00
parent e8cd148bc7
commit 3de181134d
13 changed files with 360 additions and 67 deletions

50
UI/BuildMenu.gd Normal file
View file

@ -0,0 +1,50 @@
extends Control
@onready var local_player_insects = $PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/LocalPlayerInsects
@onready var remote_player_insects = $PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/RemotePlayerInsects
const INSECT_BUTTON = preload("res://UI/insect_button.tscn")
const default_insects = {
#preload("res://Tile/Prefabs/Bee.tres"): 1,
preload("res://Tile/Prefabs/Ant.tres"): 3,
preload("res://Tile/Prefabs/Beetle.tres"): 2,
preload("res://Tile/Prefabs/Grasshopper.tres"): 3,
preload("res://Tile/Prefabs/Spider.tres"): 2,
#preload("res://Tile/Prefabs/Ladybug.tres"): 1,
#preload("res://Tile/Prefabs/Mosquito.tres"): 1,
#preload("res://Tile/Prefabs/Pillbug.tres"): 1
}
@onready var local_bee_button: InsectButton = $PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/LocalPlayerInsects/BeeButton
@onready var remote_bee_button: InsectButton = $PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/RemotePlayerInsects/BeeButton
# Called when the node enters the scene tree for the first time.
func _ready():
#var unique_array = default_insects.duplicate().map()
local_bee_button.update_color(GameData.is_player_black)
remote_bee_button.update_color(!GameData.is_player_black)
for key in default_insects.keys():
#print(default_insects[key])
var btn = INSECT_BUTTON.instantiate()
btn.insect_resource = key
btn.tile_count = default_insects[key]
btn.is_black = GameData.is_player_black
local_player_insects.add_child(btn)
for key in default_insects.keys():
var btn = INSECT_BUTTON.instantiate()
btn.insect_resource = key
btn.tile_count = default_insects[key]
btn.is_black = !GameData.is_player_black
remote_player_insects.add_child(btn)
remote_player_insects.move_child(btn, 0)
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
if Input.is_action_just_pressed("deselect_tile"):
GameEvents.insect_placement_cancelled.emit()
pass
pass