resized textures, first draft of moving. TODO: Use cubecoordinates EVERYWHERE. Find out a way to check if moving would break a hive

This commit is contained in:
Sch1nken 2024-03-06 04:00:54 +01:00
parent aa4343309c
commit b9df0b4361
68 changed files with 1509 additions and 17 deletions

View file

@ -1,13 +1,18 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://b70uxn2ofij8y"]
[gd_resource type="Resource" script_class="TileResource" load_steps=7 format=3 uid="uid://b70uxn2ofij8y"]
[ext_resource type="Material" uid="uid://b5rer8wc62ck3" path="res://InsectTiles/Materials/Bee_Black.tres" id="1_0fgqy"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="1_o55be"]
[ext_resource type="Material" uid="uid://d4hyq81yydmpr" path="res://InsectTiles/Materials/Bee_White.tres" id="2_qr48e"]
[ext_resource type="Script" path="res://MovementBehaviour/Prefabs/MovementBehaviourBee.gd" id="3_eudvd"]
[ext_resource type="Texture2D" uid="uid://dkfybq7qex2og" path="res://InsectTiles/Assets/UI/bee.png" id="4_1he20"]
[sub_resource type="Resource" id="Resource_puwjs"]
script = ExtResource("3_eudvd")
[resource]
script = ExtResource("1_o55be")
tile_name = "Bee"
movement_behaviour = SubResource("Resource_puwjs")
material_black = ExtResource("1_0fgqy")
material_white = ExtResource("2_qr48e")
ui_texture = ExtResource("4_1he20")

View file

@ -1,13 +1,38 @@
extends Node
extends Area3D
class_name InsectTile
@export var coordinates: Vector4i
@export var coordinates: Vector2i
@export var is_black: bool = false
@export var resource: TileResource
@onready var hexagon_small = $HexagonSmall
func _ready() -> void:
var hovered: bool = false
var hover_shader: ShaderMaterial = preload("res://InsectTiles/HoverShader.tres")
var mat: StandardMaterial3D
func _ready() -> void:
if is_black:
hexagon_small.set_surface_override_material(0, resource.material_black)
hexagon_small.set_surface_override_material(0, resource.material_black.duplicate())
else:
hexagon_small.set_surface_override_material(0, resource.material_white)
hexagon_small.set_surface_override_material(0, resource.material_white.duplicate())
mat = hexagon_small.get_surface_override_material(0)
func _process(delta):
if Input.is_action_just_pressed("place_tile"):
if hovered:
GameEvents.insect_tile_selected.emit(self)
func _on_mouse_entered():
if GameData.is_player_black == is_black:
mat.next_pass = hover_shader
hovered = true
func _on_mouse_exited():
hovered = false
mat.next_pass = null