basic tile placement, TODO: check valid placement with color, turn based placement

This commit is contained in:
Sch1nken 2024-03-05 15:47:11 +01:00
parent 2a8bd73d07
commit cabc35394f
97 changed files with 1348 additions and 948 deletions

46
BuildMenu.gd Normal file
View file

@ -0,0 +1,46 @@
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
}
# Called when the node enters the scene tree for the first time.
func _ready():
#var unique_array = default_insects.duplicate().map()
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 = false
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 = true
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
func _on_bee_button_pressed():
print("bsss")
pass # Replace with function body.

8
Globals/GameEvents.gd Normal file
View file

@ -0,0 +1,8 @@
extends Node
signal insect_selected(insect_resource, is_black)
signal insect_placed(insect_resource, is_black, position)
signal insect_placement_cancelled
signal turn_started
signal turn_ended

View file

@ -1,7 +1,6 @@
extends Node3D
@onready var hex = $Hexagon
@onready var coord_label = $Hexagon/Label3D
@onready var placement_visualizer = $PlacementVisualizer
const DIR_N: Vector3 = Vector3(0, 1, -1)
const DIR_NE: Vector3 = Vector3(1, 0, -1)
@ -15,8 +14,12 @@ const DIR_ALL: Array[Vector3] = [DIR_N, DIR_NE, DIR_SE, DIR_S, DIR_SW, DIR_NW]
const size: float = 0.5
var used_cells: Dictionary = {}
@export var layer_height: float = 0.4
class CubeCoordinates:
var q: float
var r: float
@ -53,6 +56,8 @@ func flat_hex_to_world_position(coords: AxialCoordinates) -> Vector2:
#
# return
const INSECT_TILE = preload("res://InsectTiles/InsectTile.tscn")
func world_to_hex_tile(coords: Vector2) -> AxialCoordinates:
var q = (2.0/3.0 * coords.x) / size
var r = (-1.0/3.0 * coords.x + sqrt(3.0)/3.0 * coords.y) / size
@ -96,50 +101,182 @@ func cube_round(coords: CubeCoordinates) -> CubeCoordinates:
func get_3d_pos(position2D: Vector2):
return Plane(dragging_intersect_plane_normal, dragging_intersect_plane_distance).intersects_ray(get_viewport().get_camera_3d().project_ray_origin(position2D), get_viewport().get_camera_3d().project_ray_normal(position2D))
func _ready() -> void:
pass
#for x in range(-0, 1):
# for y in range(-0, 10):
# var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(x, y))
# var new_hex = hex.duplicate()
# new_hex.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
# var hex_id = world_to_hex_tile(Vector2(hex_pos.x, hex_pos.y))
# new_hex.get_node("Label3D").text = "%d, %d" % [hex_id.q, hex_id.r]
# add_child(new_hex)
var placements: Dictionary = {}
func spawn_random_tile() -> void:
var tile_copy = hex.duplicate()
var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(randi_range(-20, 20), randi_range(-20, 20)))
func get_neighbours(coords: Vector2i) -> Array[Vector2i]:
return [
Vector2i(coords.x + 1, coords.y), Vector2i(coords.x + 1, coords.y - 1), Vector2i(coords.x, coords.y - 1),
Vector2i(coords.x - 1, coords.y), Vector2i(coords.x - 1, coords.y + 1), Vector2i(coords.x, coords.y + 1)
]
var current_tile: Node3D
const HEX_OUTLINE = preload("res://hex_outline.tscn")
func _on_insect_selected(insect_resource: TileResource, is_black: bool) -> void:
# create a hexagon with insect resource data
#var tile = INSECT_TILE.instantiate()
#tile.resource = insect_resource
#tile.is_black = is_black
#current_tile = tile
#add_child(tile)
# spawn possible placement locations :)
if used_cells.size() == 0: # we have no cells placed, display a placement outline at 0, 0
var outline = HEX_OUTLINE.instantiate()
var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(0, 0))
outline.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
outline.hex_pos = Vector2i(0, 0)
outline.visible = true
outline.insect_resource = insect_resource
outline.is_black = is_black
placement_visualizer.add_child(outline)
placements[hex_pos] = outline
elif used_cells.size() == 1: # we have ONE cell placed, this is a special case in which
# the opposing player is allowed to place a tile that touches the enemy color
# We display outline placement around all spaces of this single cell
var single_cell = used_cells.keys().front()
var neighbours = get_neighbours(single_cell)
for neighbour in neighbours:
var outline = HEX_OUTLINE.instantiate()
var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(neighbour.x, neighbour.y))
outline.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
outline.hex_pos = neighbour
outline.visible = true
outline.insect_resource = insect_resource
outline.is_black = is_black
placement_visualizer.add_child(outline)
placements[hex_pos] = outline
else:
# iterate over all used_cells, get all empty cells surrounding those cells
# iterate over all those empty cells, check if they only neighbour the same color
var possible_placements: Dictionary = {}
for hex in used_cells.keys():
var neighbours = [
Vector2i(hex.x + 1, hex.y), Vector2i(hex.x + 1, hex.y - 1), Vector2i(hex.x, hex.y - 1),
Vector2i(hex.x - 1, hex.y), Vector2i(hex.x - 1, hex.y + 1), Vector2i(hex.x, hex.y + 1)
]
#var eligible: bool = true
for neighbour in neighbours:
if not used_cells.has(neighbour):
possible_placements[neighbour] = true
for p in possible_placements:
var neighbours = [
Vector2i(p.x + 1, p.y), Vector2i(p.x + 1, p.y - 1), Vector2i(p.x, p.y - 1),
Vector2i(p.x - 1, p.y), Vector2i(p.x - 1, p.y + 1), Vector2i(p.x, p.y + 1)
]
var eligible: bool = true
for neighbour in neighbours:
if not used_cells.has(neighbour):
continue
#if used_cells[neighbour].is_black != is_black:
# eligible = false
# break
if eligible:
var outline = HEX_OUTLINE.instantiate()
var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(p.x, p.y))
outline.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
outline.hex_pos = p
outline.visible = true
outline.insect_resource = insect_resource
outline.is_black = is_black
placement_visualizer.add_child(outline)
placements[p] = outline
pass
pass
func _on_insect_placement_cancelled() -> void:
if current_tile:
current_tile.queue_free()
current_tile = null
for child in placement_visualizer.get_children():
child.queue_free()
func _on_insect_placed(resource: TileResource, is_black: bool, pos: Vector2i) -> void:
var tile_copy = INSECT_TILE.instantiate()
var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(pos.x, pos.y))
tile_copy.position = Vector3(hex_pos.x, 20.0, hex_pos.y)
tile_copy.resource = resource
tile_copy.is_black = is_black
var target_pos = Vector3(hex_pos.x, 0.0, hex_pos.y)
used_cells[Vector2i(pos.x, pos.y)] = tile_copy
add_child(tile_copy)
var tween = get_tree().create_tween()
tween.tween_property(tile_copy, "position", target_pos, 1.0).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_EXPO)
func move_tile_to_random_position() -> void:
var new_hex_pos = flat_hex_to_world_position(AxialCoordinates.new(randi_range(-20, 20), randi_range(-20, 20)))
var sky_new_hex_pos = Vector3(new_hex_pos.x, 20.0, new_hex_pos.y)
var ground_new_hex_pos = Vector3(new_hex_pos.x, 0.0, new_hex_pos.y)
func _ready() -> void:
GameEvents.insect_selected.connect(_on_insect_selected)
GameEvents.insect_placement_cancelled.connect(_on_insect_placement_cancelled)
GameEvents.insect_placed.connect(_on_insect_placed)
var current_hex_pos = hex.position
var sky_current_hex_pos = hex.position + Vector3(0.0, 20.0, 0.0)
return
var tween = get_tree().create_tween()
tween.tween_property(hex, "position", sky_current_hex_pos, 0.5).set_ease(Tween.EASE_IN).set_trans(Tween.TRANS_EXPO)
tween.tween_property(hex, "position", sky_new_hex_pos, 0.0)
tween.tween_property(hex, "position", ground_new_hex_pos, 1.0).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_EXPO)
for x in range(-6, 5):
for y in range(-6, 5):
var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(x, y))
if randi_range(0, 1) == 0:
var new_hex = INSECT_TILE.instantiate()
new_hex.resource = preload("res://Tile/Prefabs/Bee.tres")
new_hex.is_black = false
new_hex.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
var hex_id = world_to_hex_tile(Vector2(hex_pos.x, hex_pos.y))
add_child(new_hex)
used_cells[Vector2i(x, y)] = new_hex
else:
continue
#func spawn_random_tile() -> void:
#var tile_copy = hex.duplicate()
#var hex_pos = flat_hex_to_world_position(AxialCoordinates.new(randi_range(-20, 20), randi_range(-20, 20)))
#
#tile_copy.position = Vector3(hex_pos.x, 20.0, hex_pos.y)
#var target_pos = Vector3(hex_pos.x, 0.0, hex_pos.y)
#
#add_child(tile_copy)
#
#var tween = get_tree().create_tween()
#tween.tween_property(tile_copy, "position", target_pos, 1.0).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_EXPO)
#
#func move_tile_to_random_position() -> void:
#var new_hex_pos = flat_hex_to_world_position(AxialCoordinates.new(randi_range(-20, 20), randi_range(-20, 20)))
#var sky_new_hex_pos = Vector3(new_hex_pos.x, 20.0, new_hex_pos.y)
#var ground_new_hex_pos = Vector3(new_hex_pos.x, 0.0, new_hex_pos.y)
#
#var current_hex_pos = hex.position
#var sky_current_hex_pos = hex.position + Vector3(0.0, 20.0, 0.0)
#
#var tween = get_tree().create_tween()
#tween.tween_property(hex, "position", sky_current_hex_pos, 0.5).set_ease(Tween.EASE_IN).set_trans(Tween.TRANS_EXPO)
#tween.tween_property(hex, "position", sky_new_hex_pos, 0.0)
#tween.tween_property(hex, "position", ground_new_hex_pos, 1.0).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_EXPO)
func _process(delta) -> void:
if Input.is_action_just_pressed("ui_accept"):
print("yay")
spawn_random_tile()
var pos3d = get_3d_pos(get_viewport().get_mouse_position())
#if Input.is_action_just_pressed("ui_accept"):
# print("yay")
# spawn_random_tile()
return
if pos3d:
var hex_pos = flat_hex_to_world_position(world_to_hex_tile(Vector2(pos3d.x, pos3d.z)))
hex.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
coord_label.text = "%d, %d" % [hex_pos.x, hex_pos.y]
if current_tile == null:
return
#var pos3d = get_3d_pos(get_viewport().get_mouse_position())
#if pos3d:
#var hex_pos = flat_hex_to_world_position(world_to_hex_tile(Vector2(pos3d.x, pos3d.z)))
#current_tile.position = Vector3(hex_pos.x, 0.0, hex_pos.y)
#coord_label.text = "%d, %d" % [hex_pos.x, hex_pos.y]

53
HexOutline.gd Normal file
View file

@ -0,0 +1,53 @@
extends Area3D
var hovered: bool = false
var insect_resource: TileResource
var is_black: bool = false
var hex_pos: Vector2i = Vector2i.ZERO
var tile: Node3D
const BUILD_GHOST = preload("res://InsectTiles/BuildGhost.tscn")
# Called when the node enters the scene tree for the first time.
func _ready():
if insect_resource == null:
print("Should not happen!")
return
GameEvents.insect_placed.connect(_on_insect_placed)
func _on_insect_placed(resource: TileResource, is_black: bool, pos: Vector2i) -> void:
queue_free()
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
if Input.is_action_just_pressed("place_tile"):
if hovered:
GameEvents.insect_placed.emit(insect_resource, is_black, hex_pos)
print("Place me pls")
pass
func _on_mouse_entered():
hovered = true
tile = BUILD_GHOST.instantiate()
tile.resource = insect_resource
tile.is_black = is_black
add_child(tile)
func _on_input_event(camera, event, position, normal, shape_idx):
pass # Replace with function body.
func _on_mouse_exited():
hovered = false
if tile:
tile.queue_free()
tile = null

139
InsectButton.gd Normal file
View file

@ -0,0 +1,139 @@
extends TextureButton
@onready var hex = $Hex
@onready var tile_count_label = $Hex/TileCountLabel
@onready var insect_icon = $Hex/InsectIcon
@export var insect_resource: TileResource = preload("res://Tile/Prefabs/Bee.tres")
const HEX_BLACK = preload("res://InsectTiles/Assets/UI/hex_black.svg")
const HEX_WHITE = preload("res://InsectTiles/Assets/UI/hex_white.svg")
@export var is_bee: bool = false
@export var is_black: bool = false
var tile_count: int = 1
var deactivated: bool = false
var selected: bool = false
var hovered: bool = false
func disable() -> void:
deactivated = true
var tween = get_tree().create_tween()
tween.tween_property(self, "modulate", Color.DIM_GRAY, 0.15)
func enable() -> void:
deactivated = false
disabled = false
var tween = get_tree().create_tween()
tween.tween_property(self, "modulate", Color.WHITE, 0.15)
func _on_placement_cancelled() -> void:
if selected:
tile_count += 1
tile_count_label.text = str(tile_count)
selected = false
if tile_count > 0:
if not hovered:
_on_mouse_exited()
enable()
return
func _on_insect_placed(resource: TileResource, is_black: bool, pos: Vector2i) -> void:
if selected:
selected = false
if not hovered:
_on_mouse_exited()
if tile_count > 0:
if not hovered:
_on_mouse_exited()
enable()
return
# Called when the node enters the scene tree for the first time.
func _ready():
GameEvents.insect_selected.connect(_on_insect_selected)
GameEvents.insect_placement_cancelled.connect(_on_placement_cancelled)
GameEvents.insect_placed.connect(_on_insect_placed)
tile_count_label.text = str(tile_count)
insect_icon.texture = insect_resource.ui_texture
if is_black:
hex.texture = HEX_BLACK
func _on_insect_selected(_resource, _is_black) -> void:
disabled = true
if _resource == insect_resource and _is_black == is_black:
selected = true
hover()
else:
unhover()
disable()
func hover() -> void:
hovered = true
var tween = get_tree().create_tween()
tween.tween_property(hex, "position", Vector2(0, -16), 0.1).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_SPRING)
func unhover() -> void:
hovered = false
var tween = get_tree().create_tween()
tween.tween_property(hex, "position", Vector2(0, 0), 0.25).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_SPRING)
func _on_mouse_entered():
if deactivated:
return
hover()
func _on_mouse_exited():
hovered = false
if selected:
return
if deactivated:
return
unhover()
func _on_pressed():
if deactivated:
return
if selected:
return
print("??")
if tile_count <= 0:
return
GameEvents.insect_selected.emit(insect_resource, is_black)
tile_count -= 1
release_focus()
tile_count_label.text = str(tile_count)
func _input(event):
if Input.is_action_just_pressed("ui_accept"):
release_focus()
return

View file

@ -1,25 +0,0 @@
[gd_scene load_steps=7 format=3 uid="uid://d33qkss7ugil3"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_7yv5d"]
[ext_resource type="Script" path="res://Tile/Tile.gd" id="1_akqw5"]
[ext_resource type="Texture2D" uid="uid://bp5lbofkicsqq" path="res://InsectTiles/Assets/Textures/ant_black.png" id="2_u0y11"]
[ext_resource type="Texture2D" uid="uid://sxdcdtxhsaor" path="res://InsectTiles/Assets/Roughness/ant_roughness.png" id="4_11k6x"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_u0y11")
roughness_texture = ExtResource("4_11k6x")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_oy7nn"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="AntBlack" type="Area3D"]
script = ExtResource("1_akqw5")
color = 0
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_7yv5d")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_oy7nn")

View file

@ -1,22 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://mkchd50fsx31"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_snql0"]
[ext_resource type="Texture2D" uid="uid://dr36631neiknu" path="res://InsectTiles/Assets/Textures/ant_white.png" id="2_dlhxx"]
[ext_resource type="Texture2D" uid="uid://sxdcdtxhsaor" path="res://InsectTiles/Assets/Roughness/ant_roughness.png" id="3_wpsas"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_dlhxx")
roughness_texture = ExtResource("3_wpsas")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_qh1h8"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="AntWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_snql0")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_qh1h8")

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://sxdcdtxhsaor"
path.s3tc="res://.godot/imported/ant_roughness.png-df5df478bf7a5864669373b064c01394.s3tc.ctex"
path.etc2="res://.godot/imported/ant_roughness.png-df5df478bf7a5864669373b064c01394.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/ant_roughness.png"
dest_files=["res://.godot/imported/ant_roughness.png-df5df478bf7a5864669373b064c01394.s3tc.ctex"]
dest_files=["res://.godot/imported/ant_roughness.png-df5df478bf7a5864669373b064c01394.s3tc.ctex", "res://.godot/imported/ant_roughness.png-df5df478bf7a5864669373b064c01394.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bhk2ison1sige"
path.s3tc="res://.godot/imported/bee_roughness.png-8ea7592e70fdeecb10719c13733fea23.s3tc.ctex"
path.etc2="res://.godot/imported/bee_roughness.png-8ea7592e70fdeecb10719c13733fea23.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/bee_roughness.png"
dest_files=["res://.godot/imported/bee_roughness.png-8ea7592e70fdeecb10719c13733fea23.s3tc.ctex"]
dest_files=["res://.godot/imported/bee_roughness.png-8ea7592e70fdeecb10719c13733fea23.s3tc.ctex", "res://.godot/imported/bee_roughness.png-8ea7592e70fdeecb10719c13733fea23.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dtld0rnjue23"
path.s3tc="res://.godot/imported/beetle_roughness.png-edab7e7dfc9c253221de307f9cff5c18.s3tc.ctex"
path.etc2="res://.godot/imported/beetle_roughness.png-edab7e7dfc9c253221de307f9cff5c18.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/beetle_roughness.png"
dest_files=["res://.godot/imported/beetle_roughness.png-edab7e7dfc9c253221de307f9cff5c18.s3tc.ctex"]
dest_files=["res://.godot/imported/beetle_roughness.png-edab7e7dfc9c253221de307f9cff5c18.s3tc.ctex", "res://.godot/imported/beetle_roughness.png-edab7e7dfc9c253221de307f9cff5c18.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bx8lx8mswnchc"
path.s3tc="res://.godot/imported/grasshopper_roughness.png-0d8249e63ca6275efb822d8372213684.s3tc.ctex"
path.etc2="res://.godot/imported/grasshopper_roughness.png-0d8249e63ca6275efb822d8372213684.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/grasshopper_roughness.png"
dest_files=["res://.godot/imported/grasshopper_roughness.png-0d8249e63ca6275efb822d8372213684.s3tc.ctex"]
dest_files=["res://.godot/imported/grasshopper_roughness.png-0d8249e63ca6275efb822d8372213684.s3tc.ctex", "res://.godot/imported/grasshopper_roughness.png-0d8249e63ca6275efb822d8372213684.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dqua2juudiwm4"
path.s3tc="res://.godot/imported/ladybug_roughness.png-56424b0725b00721417c59f400361102.s3tc.ctex"
path.etc2="res://.godot/imported/ladybug_roughness.png-56424b0725b00721417c59f400361102.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/ladybug_roughness.png"
dest_files=["res://.godot/imported/ladybug_roughness.png-56424b0725b00721417c59f400361102.s3tc.ctex"]
dest_files=["res://.godot/imported/ladybug_roughness.png-56424b0725b00721417c59f400361102.s3tc.ctex", "res://.godot/imported/ladybug_roughness.png-56424b0725b00721417c59f400361102.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dvlotqiu1n5nx"
path.s3tc="res://.godot/imported/mosquito_roughness.png-473dace209cb040fc11ba5cc80d6a5bb.s3tc.ctex"
path.etc2="res://.godot/imported/mosquito_roughness.png-473dace209cb040fc11ba5cc80d6a5bb.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/mosquito_roughness.png"
dest_files=["res://.godot/imported/mosquito_roughness.png-473dace209cb040fc11ba5cc80d6a5bb.s3tc.ctex"]
dest_files=["res://.godot/imported/mosquito_roughness.png-473dace209cb040fc11ba5cc80d6a5bb.s3tc.ctex", "res://.godot/imported/mosquito_roughness.png-473dace209cb040fc11ba5cc80d6a5bb.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bcuptx3dqepgw"
path.s3tc="res://.godot/imported/pillbug_roughness.png-6b5bbf875ba655ceb998fa59af135840.s3tc.ctex"
path.etc2="res://.godot/imported/pillbug_roughness.png-6b5bbf875ba655ceb998fa59af135840.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/pillbug_roughness.png"
dest_files=["res://.godot/imported/pillbug_roughness.png-6b5bbf875ba655ceb998fa59af135840.s3tc.ctex"]
dest_files=["res://.godot/imported/pillbug_roughness.png-6b5bbf875ba655ceb998fa59af135840.s3tc.ctex", "res://.godot/imported/pillbug_roughness.png-6b5bbf875ba655ceb998fa59af135840.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://baqdef5vcjoct"
path.s3tc="res://.godot/imported/spider_roughness.png-939aefc4a46d7b421ec15b95e2224f9d.s3tc.ctex"
path.etc2="res://.godot/imported/spider_roughness.png-939aefc4a46d7b421ec15b95e2224f9d.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Roughness/spider_roughness.png"
dest_files=["res://.godot/imported/spider_roughness.png-939aefc4a46d7b421ec15b95e2224f9d.s3tc.ctex"]
dest_files=["res://.godot/imported/spider_roughness.png-939aefc4a46d7b421ec15b95e2224f9d.s3tc.ctex", "res://.godot/imported/spider_roughness.png-939aefc4a46d7b421ec15b95e2224f9d.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bp5lbofkicsqq"
path.s3tc="res://.godot/imported/ant_black.png-b707d2922be6bd49acc931eca530e996.s3tc.ctex"
path.etc2="res://.godot/imported/ant_black.png-b707d2922be6bd49acc931eca530e996.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/ant_black.png"
dest_files=["res://.godot/imported/ant_black.png-b707d2922be6bd49acc931eca530e996.s3tc.ctex"]
dest_files=["res://.godot/imported/ant_black.png-b707d2922be6bd49acc931eca530e996.s3tc.ctex", "res://.godot/imported/ant_black.png-b707d2922be6bd49acc931eca530e996.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dr36631neiknu"
path.s3tc="res://.godot/imported/ant_white.png-a608578d15c5e9fb3aff6a6dbaae6c6e.s3tc.ctex"
path.etc2="res://.godot/imported/ant_white.png-a608578d15c5e9fb3aff6a6dbaae6c6e.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/ant_white.png"
dest_files=["res://.godot/imported/ant_white.png-a608578d15c5e9fb3aff6a6dbaae6c6e.s3tc.ctex"]
dest_files=["res://.godot/imported/ant_white.png-a608578d15c5e9fb3aff6a6dbaae6c6e.s3tc.ctex", "res://.godot/imported/ant_white.png-a608578d15c5e9fb3aff6a6dbaae6c6e.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dqvg2bmc361yl"
path.s3tc="res://.godot/imported/bee_black.png-eb8f1ee64e7173c464c70dc8d482c4b0.s3tc.ctex"
path.etc2="res://.godot/imported/bee_black.png-eb8f1ee64e7173c464c70dc8d482c4b0.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/bee_black.png"
dest_files=["res://.godot/imported/bee_black.png-eb8f1ee64e7173c464c70dc8d482c4b0.s3tc.ctex"]
dest_files=["res://.godot/imported/bee_black.png-eb8f1ee64e7173c464c70dc8d482c4b0.s3tc.ctex", "res://.godot/imported/bee_black.png-eb8f1ee64e7173c464c70dc8d482c4b0.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://rm4ysjfnx20t"
path.s3tc="res://.godot/imported/bee_white.png-5c36d14d4b43d0c06f7a0b3a7e022d3f.s3tc.ctex"
path.etc2="res://.godot/imported/bee_white.png-5c36d14d4b43d0c06f7a0b3a7e022d3f.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/bee_white.png"
dest_files=["res://.godot/imported/bee_white.png-5c36d14d4b43d0c06f7a0b3a7e022d3f.s3tc.ctex"]
dest_files=["res://.godot/imported/bee_white.png-5c36d14d4b43d0c06f7a0b3a7e022d3f.s3tc.ctex", "res://.godot/imported/bee_white.png-5c36d14d4b43d0c06f7a0b3a7e022d3f.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://b5wsm1j3e33xy"
path.s3tc="res://.godot/imported/beetle_black.png-c788c2e1e9cf6e7679975a608bfd231e.s3tc.ctex"
path.etc2="res://.godot/imported/beetle_black.png-c788c2e1e9cf6e7679975a608bfd231e.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/beetle_black.png"
dest_files=["res://.godot/imported/beetle_black.png-c788c2e1e9cf6e7679975a608bfd231e.s3tc.ctex"]
dest_files=["res://.godot/imported/beetle_black.png-c788c2e1e9cf6e7679975a608bfd231e.s3tc.ctex", "res://.godot/imported/beetle_black.png-c788c2e1e9cf6e7679975a608bfd231e.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://boxdyplaeyib4"
path.s3tc="res://.godot/imported/beetle_white.png-1fafb308b4fbe4601f6387c69e7eb308.s3tc.ctex"
path.etc2="res://.godot/imported/beetle_white.png-1fafb308b4fbe4601f6387c69e7eb308.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/beetle_white.png"
dest_files=["res://.godot/imported/beetle_white.png-1fafb308b4fbe4601f6387c69e7eb308.s3tc.ctex"]
dest_files=["res://.godot/imported/beetle_white.png-1fafb308b4fbe4601f6387c69e7eb308.s3tc.ctex", "res://.godot/imported/beetle_white.png-1fafb308b4fbe4601f6387c69e7eb308.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://d4b7so1ioq66t"
path.s3tc="res://.godot/imported/grasshopper_black.png-6091d274e772d022492013dc866d2ff0.s3tc.ctex"
path.etc2="res://.godot/imported/grasshopper_black.png-6091d274e772d022492013dc866d2ff0.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/grasshopper_black.png"
dest_files=["res://.godot/imported/grasshopper_black.png-6091d274e772d022492013dc866d2ff0.s3tc.ctex"]
dest_files=["res://.godot/imported/grasshopper_black.png-6091d274e772d022492013dc866d2ff0.s3tc.ctex", "res://.godot/imported/grasshopper_black.png-6091d274e772d022492013dc866d2ff0.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bbcnyge85wpu7"
path.s3tc="res://.godot/imported/grasshopper_white.png-0575c51bae9f1e7d981ba76a5c895fd4.s3tc.ctex"
path.etc2="res://.godot/imported/grasshopper_white.png-0575c51bae9f1e7d981ba76a5c895fd4.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/grasshopper_white.png"
dest_files=["res://.godot/imported/grasshopper_white.png-0575c51bae9f1e7d981ba76a5c895fd4.s3tc.ctex"]
dest_files=["res://.godot/imported/grasshopper_white.png-0575c51bae9f1e7d981ba76a5c895fd4.s3tc.ctex", "res://.godot/imported/grasshopper_white.png-0575c51bae9f1e7d981ba76a5c895fd4.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://c0gt6mo7rj7nk"
path.s3tc="res://.godot/imported/ladybug_black.png-d03152b2e9c820ed52595dd5a73feb40.s3tc.ctex"
path.etc2="res://.godot/imported/ladybug_black.png-d03152b2e9c820ed52595dd5a73feb40.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/ladybug_black.png"
dest_files=["res://.godot/imported/ladybug_black.png-d03152b2e9c820ed52595dd5a73feb40.s3tc.ctex"]
dest_files=["res://.godot/imported/ladybug_black.png-d03152b2e9c820ed52595dd5a73feb40.s3tc.ctex", "res://.godot/imported/ladybug_black.png-d03152b2e9c820ed52595dd5a73feb40.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://cdt2rmwyk7wdj"
path.s3tc="res://.godot/imported/ladybug_white.png-ccf9f5b3e05854232872691eadb6ac61.s3tc.ctex"
path.etc2="res://.godot/imported/ladybug_white.png-ccf9f5b3e05854232872691eadb6ac61.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/ladybug_white.png"
dest_files=["res://.godot/imported/ladybug_white.png-ccf9f5b3e05854232872691eadb6ac61.s3tc.ctex"]
dest_files=["res://.godot/imported/ladybug_white.png-ccf9f5b3e05854232872691eadb6ac61.s3tc.ctex", "res://.godot/imported/ladybug_white.png-ccf9f5b3e05854232872691eadb6ac61.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bbi5xlbfl564o"
path.s3tc="res://.godot/imported/mosquito_black.png-af84066e2be23328d5a5970de9b04aeb.s3tc.ctex"
path.etc2="res://.godot/imported/mosquito_black.png-af84066e2be23328d5a5970de9b04aeb.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/mosquito_black.png"
dest_files=["res://.godot/imported/mosquito_black.png-af84066e2be23328d5a5970de9b04aeb.s3tc.ctex"]
dest_files=["res://.godot/imported/mosquito_black.png-af84066e2be23328d5a5970de9b04aeb.s3tc.ctex", "res://.godot/imported/mosquito_black.png-af84066e2be23328d5a5970de9b04aeb.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://cb1bjgm7xd4ab"
path.s3tc="res://.godot/imported/mosquito_white.png-75588653ae9e372a8576462f2ea27844.s3tc.ctex"
path.etc2="res://.godot/imported/mosquito_white.png-75588653ae9e372a8576462f2ea27844.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/mosquito_white.png"
dest_files=["res://.godot/imported/mosquito_white.png-75588653ae9e372a8576462f2ea27844.s3tc.ctex"]
dest_files=["res://.godot/imported/mosquito_white.png-75588653ae9e372a8576462f2ea27844.s3tc.ctex", "res://.godot/imported/mosquito_white.png-75588653ae9e372a8576462f2ea27844.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dcirih4udlsv1"
path.s3tc="res://.godot/imported/pillbug_black.png-8e4be95bc9b4e4edc7e4cdc63c7bd00f.s3tc.ctex"
path.etc2="res://.godot/imported/pillbug_black.png-8e4be95bc9b4e4edc7e4cdc63c7bd00f.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/pillbug_black.png"
dest_files=["res://.godot/imported/pillbug_black.png-8e4be95bc9b4e4edc7e4cdc63c7bd00f.s3tc.ctex"]
dest_files=["res://.godot/imported/pillbug_black.png-8e4be95bc9b4e4edc7e4cdc63c7bd00f.s3tc.ctex", "res://.godot/imported/pillbug_black.png-8e4be95bc9b4e4edc7e4cdc63c7bd00f.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://bbyviem1qm647"
path.s3tc="res://.godot/imported/pillbug_white.png-5b6e70e15c114e48e430d3f0b6b1c6d6.s3tc.ctex"
path.etc2="res://.godot/imported/pillbug_white.png-5b6e70e15c114e48e430d3f0b6b1c6d6.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/pillbug_white.png"
dest_files=["res://.godot/imported/pillbug_white.png-5b6e70e15c114e48e430d3f0b6b1c6d6.s3tc.ctex"]
dest_files=["res://.godot/imported/pillbug_white.png-5b6e70e15c114e48e430d3f0b6b1c6d6.s3tc.ctex", "res://.godot/imported/pillbug_white.png-5b6e70e15c114e48e430d3f0b6b1c6d6.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dwubstbacbaos"
path.s3tc="res://.godot/imported/spider_black.png-36f5299647677af72532b8930951d9b0.s3tc.ctex"
path.etc2="res://.godot/imported/spider_black.png-36f5299647677af72532b8930951d9b0.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/spider_black.png"
dest_files=["res://.godot/imported/spider_black.png-36f5299647677af72532b8930951d9b0.s3tc.ctex"]
dest_files=["res://.godot/imported/spider_black.png-36f5299647677af72532b8930951d9b0.s3tc.ctex", "res://.godot/imported/spider_black.png-36f5299647677af72532b8930951d9b0.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://clfjxt0itp8on"
path.s3tc="res://.godot/imported/spider_white.png-b9b5a6fb2a9274fe2a8e109d4310dbd0.s3tc.ctex"
path.etc2="res://.godot/imported/spider_white.png-b9b5a6fb2a9274fe2a8e109d4310dbd0.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/Textures/spider_white.png"
dest_files=["res://.godot/imported/spider_white.png-b9b5a6fb2a9274fe2a8e109d4310dbd0.s3tc.ctex"]
dest_files=["res://.godot/imported/spider_white.png-b9b5a6fb2a9274fe2a8e109d4310dbd0.s3tc.ctex", "res://.godot/imported/spider_white.png-b9b5a6fb2a9274fe2a8e109d4310dbd0.etc2.ctex"]
[params]

View file

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="512"
height="512"
viewBox="0 0 135.46667 135.46667"
version="1.1"
id="svg1"
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
sodipodi:docname="hex.svg"
inkscape:export-filename="hex_black.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="px"
showguides="true"
inkscape:zoom="1.3089908"
inkscape:cx="292.97379"
inkscape:cy="347.59603"
inkscape:window-width="2560"
inkscape:window-height="1368"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer1">
<sodipodi:guide
position="67.733335,67.733335"
orientation="0,1"
id="guide1"
inkscape:locked="false"
inkscape:label=""
inkscape:color="rgb(0,134,229)" />
</sodipodi:namedview>
<defs
id="defs1" />
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<path
sodipodi:type="star"
style="display:none;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.001"
id="path1"
inkscape:flatsided="true"
sodipodi:sides="6"
sodipodi:cx="67.733337"
sodipodi:cy="67.733337"
sodipodi:r1="64.409515"
sodipodi:r2="55.780277"
sodipodi:arg1="1.0471976"
sodipodi:arg2="1.5707963"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 99.938092,123.51362 -64.409515,-1e-5 -32.204755,-55.780276 32.20476,-55.780275 64.409516,3e-6 32.204752,55.780279 z" />
<path
sodipodi:type="star"
style="fill:#050505;fill-opacity:1;stroke:#ffffff;stroke-width:1.001;stroke-opacity:1"
id="path2"
inkscape:flatsided="true"
sodipodi:sides="6"
sodipodi:cx="67.733337"
sodipodi:cy="67.733337"
sodipodi:r1="64.409515"
sodipodi:r2="55.780277"
sodipodi:arg1="1.0471976"
sodipodi:arg2="1.5707963"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 99.938092,123.51362 -64.409515,-1e-5 -32.204755,-55.780276 32.20476,-55.780275 64.409516,3e-6 32.204752,55.780279 z" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View file

@ -2,27 +2,26 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://wywgi6sr8mwg"
path.s3tc="res://.godot/imported/hex.svg-56964d24af6740fa194132a60110f62f.s3tc.ctex"
uid="uid://vawgsibmb37f"
path="res://.godot/imported/hex_black.svg-9288ca7d4cd09c260c5cfb784b454869.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
"vram_texture": false
}
[deps]
source_file="res://Testbed/hex.svg"
dest_files=["res://.godot/imported/hex.svg-56964d24af6740fa194132a60110f62f.s3tc.ctex"]
source_file="res://InsectTiles/Assets/UI/hex_black.svg"
dest_files=["res://.godot/imported/hex_black.svg-9288ca7d4cd09c260c5cfb784b454869.ctex"]
[params]
compress/mode=2
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@ -32,7 +31,7 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View file

Before

Width:  |  Height:  |  Size: 2 KiB

After

Width:  |  Height:  |  Size: 2 KiB

Before After
Before After

View file

@ -0,0 +1,39 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://wywgi6sr8mwg"
path.s3tc="res://.godot/imported/hex_white.svg-5a22f91bb5b92620e099d74551e7c722.s3tc.ctex"
path.etc2="res://.godot/imported/hex_white.svg-5a22f91bb5b92620e099d74551e7c722.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://InsectTiles/Assets/UI/hex_white.svg"
dest_files=["res://.godot/imported/hex_white.svg-5a22f91bb5b92620e099d74551e7c722.s3tc.ctex", "res://.godot/imported/hex_white.svg-5a22f91bb5b92620e099d74551e7c722.etc2.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View file

@ -1,16 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://n8dbakbneoqy"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_dhrrh"]
[ext_resource type="Material" uid="uid://b5rer8wc62ck3" path="res://InsectTiles/Materials/Bee_Black.tres" id="2_0y3un"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_c2rp8"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="BeeBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_dhrrh")
surface_material_override/0 = ExtResource("2_0y3un")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_c2rp8")

View file

@ -1,16 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://ddqk8acjuwwpn"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_f2k28"]
[ext_resource type="Material" uid="uid://d4hyq81yydmpr" path="res://InsectTiles/Materials/Bee_White.tres" id="2_xycw8"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_0qq6q"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="BeeWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_f2k28")
surface_material_override/0 = ExtResource("2_xycw8")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_0qq6q")

View file

@ -1,22 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://dhrtrsqjjrf7w"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_eotyo"]
[ext_resource type="Texture2D" uid="uid://b5wsm1j3e33xy" path="res://InsectTiles/Assets/Textures/beetle_black.png" id="2_yn1me"]
[ext_resource type="Texture2D" uid="uid://dtld0rnjue23" path="res://InsectTiles/Assets/Roughness/beetle_roughness.png" id="3_8dt4q"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_yn1me")
roughness_texture = ExtResource("3_8dt4q")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_6qqvs"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="BeetleBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_eotyo")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_6qqvs")

View file

@ -1,16 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://bpkjpolrtvfx6"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_8umkv"]
[ext_resource type="Material" uid="uid://cas4k78kf1c0x" path="res://InsectTiles/Materials/Beetle_White.tres" id="2_e4j01"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_5nige"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="BeetleWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_8umkv")
surface_material_override/0 = ExtResource("2_e4j01")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_5nige")

17
InsectTiles/BuildGhost.gd Normal file
View file

@ -0,0 +1,17 @@
extends Area3D
@export var coordinates: Vector4i
@export var is_black: bool = false
@export var resource: TileResource
@onready var hexagon_small = $HexagonSmall
func _ready() -> void:
if is_black:
hexagon_small.set_surface_override_material(0, resource.material_black.duplicate())
else:
hexagon_small.set_surface_override_material(0, resource.material_white.duplicate())
var mat: StandardMaterial3D = hexagon_small.get_surface_override_material(0)
mat.transparency = BaseMaterial3D.TRANSPARENCY_ALPHA
mat.albedo_color.a = 0.5

File diff suppressed because one or more lines are too long

View file

@ -1,22 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://dcvedqlww6puh"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_devya"]
[ext_resource type="Texture2D" uid="uid://d4b7so1ioq66t" path="res://InsectTiles/Assets/Textures/grasshopper_black.png" id="2_qknix"]
[ext_resource type="Texture2D" uid="uid://bx8lx8mswnchc" path="res://InsectTiles/Assets/Roughness/grasshopper_roughness.png" id="3_gb0ls"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_qknix")
roughness_texture = ExtResource("3_gb0ls")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_hyry2"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="GrasshopperBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_devya")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_hyry2")

View file

@ -1,16 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://d2bfycpj3s0bt"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_70aqr"]
[ext_resource type="Material" uid="uid://csuox1kvmm78p" path="res://InsectTiles/Materials/Grasshopper_White.tres" id="2_syx6h"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_mnwxq"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="GrasshopperWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_70aqr")
surface_material_override/0 = ExtResource("2_syx6h")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_mnwxq")

View file

@ -13,8 +13,8 @@ roughness_texture = ExtResource("4_f75dl")
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="InsectTile" type="Area3D"]
monitoring = false
script = ExtResource("1_b68ym")
color = 0
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("2_vm00h")

View file

@ -1,16 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://bkoo1yijb1o8p"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_j2jq5"]
[ext_resource type="Material" uid="uid://ymfmmwtlmikl" path="res://InsectTiles/Materials/Ladybug_Black.tres" id="2_it8gj"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_1bgff"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="LadybugBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_j2jq5")
surface_material_override/0 = ExtResource("2_it8gj")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_1bgff")

View file

@ -1,16 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://dgg1kyv7fipfd"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_anbr0"]
[ext_resource type="Material" uid="uid://c5oxmuvm8ngp6" path="res://InsectTiles/Materials/Ladybug_White.tres" id="2_tya5n"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_1u4p0"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="LadybugWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_anbr0")
surface_material_override/0 = ExtResource("2_tya5n")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_1u4p0")

View file

@ -1,17 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://bpop0s61lwm4h"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_x3gic"]
[ext_resource type="Material" uid="uid://4d8v7sxf1udv" path="res://InsectTiles/Materials/Mosquito_White.tres" id="2_gj6no"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_7qjrk"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="MosquitoWhite" type="Area3D"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_7qjrk")
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_x3gic")
skeleton = NodePath("")
surface_material_override/0 = ExtResource("2_gj6no")

View file

@ -1,22 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://dl2wgbbuglku5"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_iau18"]
[ext_resource type="Texture2D" uid="uid://dcirih4udlsv1" path="res://InsectTiles/Assets/Textures/pillbug_black.png" id="2_y2hnh"]
[ext_resource type="Texture2D" uid="uid://bcuptx3dqepgw" path="res://InsectTiles/Assets/Roughness/pillbug_roughness.png" id="3_d85hq"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_y2hnh")
roughness_texture = ExtResource("3_d85hq")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_lbw0c"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="PillbugBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_iau18")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_lbw0c")

View file

@ -1,22 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://dvultdikl0utt"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_d5kob"]
[ext_resource type="Texture2D" uid="uid://bbyviem1qm647" path="res://InsectTiles/Assets/Textures/pillbug_white.png" id="2_ii3qv"]
[ext_resource type="Texture2D" uid="uid://bcuptx3dqepgw" path="res://InsectTiles/Assets/Roughness/pillbug_roughness.png" id="3_7y2oh"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_ii3qv")
roughness_texture = ExtResource("3_7y2oh")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_dmhni"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="PillbugWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_d5kob")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_dmhni")

View file

@ -1,32 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://cfnvi5t0qidjw"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_uyykk"]
[ext_resource type="Texture2D" uid="uid://dwubstbacbaos" path="res://InsectTiles/Assets/Textures/spider_black.png" id="2_k0iyc"]
[ext_resource type="Texture2D" uid="uid://baqdef5vcjoct" path="res://InsectTiles/Assets/Roughness/spider_roughness.png" id="3_wmlcm"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_k0iyc")
roughness_texture = ExtResource("3_wmlcm")
roughness_texture_channel = 4
normal_texture = ExtResource("3_wmlcm")
rim = 0.71
rim_tint = 0.79
rim_texture = ExtResource("3_wmlcm")
heightmap_texture = ExtResource("3_wmlcm")
heightmap_flip_texture = true
subsurf_scatter_strength = 1.0
subsurf_scatter_texture = ExtResource("3_wmlcm")
refraction_texture = ExtResource("3_wmlcm")
refraction_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_rgh3h"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="SpiderBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_uyykk")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_rgh3h")

View file

@ -1,22 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://b467lm2miyvy2"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_6gcrr"]
[ext_resource type="Texture2D" uid="uid://clfjxt0itp8on" path="res://InsectTiles/Assets/Textures/spider_white.png" id="2_et1a4"]
[ext_resource type="Texture2D" uid="uid://baqdef5vcjoct" path="res://InsectTiles/Assets/Roughness/spider_roughness.png" id="3_v6wfh"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_et1a4")
roughness_texture = ExtResource("3_v6wfh")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_qyk88"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="SpiderWhite" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_6gcrr")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_qyk88")

12
MeshBreather.gd Normal file
View file

@ -0,0 +1,12 @@
extends MeshInstance3D
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
scale.y = 1.0+sin(Time.get_ticks_msec() * 0.002)*0.1
pass

175
Misc/RTSCamera3D.gd Normal file
View file

@ -0,0 +1,175 @@
extends Camera3D
class_name RTSCamera3D
@export var dragging_enabled: bool = true
@export var panning_enabled: bool = true
@export var edge_panning_enabled: bool = true
@export var rotating_enabled: bool = true
@export var zooming_enabled: bool = true
@export var dragging_intersect_plane_normal: Vector3 = Vector3.UP
@export var dragging_intersect_plane_distance: float = 0.0
@export_range(0.0, 1000.0, 10.0) var pan_speed: float = 20.0
@export_range(0.0, 1000.0, 10.0) var edge_pan_speed: float = 20.0
@export_range(0, 1.0, 0.01) var edge_trigger_percentage: float = 0.005
@export var lock_onto_position: bool = false
@export var lockon_position: Vector3 = Vector3.ZERO
@export var rotate_min_angle: float = 15.0
@export var rotate_max_angle: float = 80.0
@export var min_camera_distance: float = 1.0
@export var max_camera_distance: float = 50.0
@export var bounding_box: Vector2 = Vector2(100.0, 100.0)
@export var world_center: Vector2 = Vector2.ZERO
var dragging: bool = false
var drag_cam_position: Vector3 = Vector3.ZERO
var drag_2d_position: Vector2 = Vector2.ZERO
var rotating: bool = false
var orbit_angles: Vector2 = Vector2.ZERO #(deg_to_rad(-60.0), 0.0)
var temp_orbit_angles: Vector2 = Vector2.ZERO
var orbit_distance: float = 20.0
var orbitPosition: Vector3 = Vector3.ZERO
var rotate_3d_position: Vector3 = Vector3.ZERO
var rotate_2d_position: Vector2 = Vector2.ZERO
var rotate_2d_position_old: Vector2 = Vector2.ZERO
var panning_move_vector: Vector3 = Vector3.ZERO
var edge_panning_move_vector: Vector3 = Vector3.ZERO
var zoom_3d_position: Vector3 = Vector3.ZERO
var camera_distance: float = 0.0
var camera_distance_old: float = 0.0
var _camera_distance: float = 30.0
# TODO: Fix look_at() errors
func _ready():
await get_tree().process_frame
#set correct camera distance
rotate_3d_position = get_3d_pos(get_viewport().size / 2.0)
look_at(lockon_position)
if lock_onto_position:
rotate_3d_position = lockon_position
camera_distance = rotate_3d_position.distance_to(global_position)
camera_distance_old = camera_distance
orbit_angles = Vector2(global_rotation.x, global_rotation.y)
# This is to prevent edge_panning from panning when
# the mouse never entered the viewport before
var mouse_has_entered_once: bool = false
func _set_zoom_level(value: float) -> void:
_camera_distance = clamp(value, min_camera_distance, max_camera_distance)
var tween = get_tree().create_tween()
tween.tween_property(
self,
"camera_distance",
_camera_distance,
0.3
)
func _unhandled_input(event: InputEvent) -> void:
var pos_3d = get_3d_pos(get_viewport().get_mouse_position())
if pos_3d:
var pos_3d_rounded = "%.2f, %.2f, %.2f" % [pos_3d.x, pos_3d.y, pos_3d.z]
if event.is_action_pressed("drag_camera") and not rotating and not lock_onto_position:
_camera_distance = camera_distance
drag_2d_position = get_viewport().get_mouse_position()
drag_cam_position = position
dragging = true
elif event.is_action_released("drag_camera"):
camera_distance = _camera_distance
_camera_distance = 0
dragging = false
if event.is_action_pressed("rotate_camera") and not dragging:
rotate_3d_position = get_3d_pos(get_viewport().size / 2.0)
if lock_onto_position:
look_at(lockon_position)
rotate_3d_position = lockon_position
rotate_2d_position = get_viewport().get_mouse_position()
rotate_2d_position_old = get_viewport().get_mouse_position()
temp_orbit_angles = orbit_angles
rotating = true
elif event.is_action_released("rotate_camera"):
orbit_angles = temp_orbit_angles
rotating = false
if zooming_enabled:
if event.is_action_pressed("zoom_camera_in") and not dragging:
_set_zoom_level(camera_distance - 1)
zoom_3d_position = get_3d_pos(get_viewport().size / 2.0)
elif event.is_action_pressed("zoom_camera_out") and not dragging:
_set_zoom_level(camera_distance + 1)
zoom_3d_position = get_3d_pos(get_viewport().size / 2.0)
func get_3d_pos(position2D: Vector2):
return Plane(dragging_intersect_plane_normal, dragging_intersect_plane_distance).intersects_ray(project_ray_origin(position2D), project_ray_normal(position2D))
func _notification(what: int) -> void:
match what:
NOTIFICATION_WM_MOUSE_ENTER:
mouse_has_entered_once = true
func _process(delta: float) -> void:
panning_move_vector = Vector3.ZERO
edge_panning_move_vector = Vector3.ZERO
var mouse_position: Vector2 = get_viewport().get_mouse_position()
if panning_enabled and not lock_onto_position:
var camera_move_vector = Vector2(Input.get_action_strength("camera_right") - Input.get_action_strength("camera_left"), Input.get_action_strength("camera_down") - Input.get_action_strength("camera_up"))
panning_move_vector = Vector3(camera_move_vector.x, 0.0, camera_move_vector.y).rotated(Vector3.UP, rotation.y)
if edge_panning_enabled and mouse_has_entered_once and not lock_onto_position:
var percentage = mouse_position / Vector2(get_viewport().size)
if percentage.x <= edge_trigger_percentage:
edge_panning_move_vector = Vector3(-1, 0.0, 0.0).rotated(Vector3.UP, rotation.y)
elif percentage.x >= 1.0 - edge_trigger_percentage:
edge_panning_move_vector = Vector3(1, 0.0, 0.0).rotated(Vector3.UP, rotation.y)
elif percentage.y <= edge_trigger_percentage:
edge_panning_move_vector = Vector3(0.0, 0.0, -1).rotated(Vector3.UP, rotation.y)
elif percentage.y >= 1.0 - edge_trigger_percentage:
edge_panning_move_vector = Vector3(0.0, 0.0, 1).rotated(Vector3.UP, rotation.y)
# TODO: When reaching the limits, reset the rotation diff
# Currently: If you rotate up/down and go out of limits, you have to move back all the overshoot
# to move the camera back again
if rotating_enabled and rotating and not dragging:
rotate_2d_position = get_viewport().get_mouse_position()
var mouse_diff = rotate_2d_position - rotate_2d_position_old
temp_orbit_angles = Vector2(orbit_angles.x - mouse_diff.y * 0.01, orbit_angles.y - mouse_diff.x * 0.01)
temp_orbit_angles.x = clamp(temp_orbit_angles.x, -deg_to_rad(rotate_max_angle), -deg_to_rad(rotate_min_angle))
var lookRotation = Quaternion.from_euler(Vector3(temp_orbit_angles.x, temp_orbit_angles.y, 0.0))
var lookDirection = lookRotation * Vector3.FORWARD
var lookPosition = rotate_3d_position - lookDirection * camera_distance
look_at_from_position(lookPosition, rotate_3d_position)
if not is_equal_approx(camera_distance, camera_distance_old) and not rotating:
var lookRotation = Quaternion.from_euler(Vector3(orbit_angles.x, orbit_angles.y, 0.0))
var lookDirection = lookRotation * Vector3.FORWARD
var lookPosition = rotate_3d_position - lookDirection * camera_distance
look_at_from_position(lookPosition, rotate_3d_position)
camera_distance_old = camera_distance
# TODO: Always apply zooming and figure out how to reset initial drag position
# Probably just "stop" and start a new drag when zoom is different?
# Or always stop/start a new drag?
if dragging_enabled and dragging and not rotating and not lock_onto_position:
var new_3d_pos = get_3d_pos(mouse_position)
if new_3d_pos:
var drag_world_position = get_3d_pos(drag_2d_position)
if drag_world_position:
var mouse_diff = drag_world_position - new_3d_pos
var new_cam_pos = drag_cam_position + mouse_diff
position = new_cam_pos
rotate_3d_position = get_3d_pos(get_viewport().size / 2.0)
else:
position += ((panning_move_vector * pan_speed) + (edge_panning_move_vector * edge_pan_speed)) * delta

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://cilgpyanfb3a8"
path.s3tc="res://.godot/imported/wood_table_001_diff_4k.jpg-e80b891959669a4b412f9ae52dcbed08.s3tc.ctex"
path.etc2="res://.godot/imported/wood_table_001_diff_4k.jpg-e80b891959669a4b412f9ae52dcbed08.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://Testbed/textures/wood_table_001_diff_4k.jpg"
dest_files=["res://.godot/imported/wood_table_001_diff_4k.jpg-e80b891959669a4b412f9ae52dcbed08.s3tc.ctex"]
dest_files=["res://.godot/imported/wood_table_001_diff_4k.jpg-e80b891959669a4b412f9ae52dcbed08.s3tc.ctex", "res://.godot/imported/wood_table_001_diff_4k.jpg-e80b891959669a4b412f9ae52dcbed08.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://diamo44e2x4if"
path.s3tc="res://.godot/imported/wood_table_001_disp_4k.png-cc736e39078530d5707a84e2a7e10b87.s3tc.ctex"
path.etc2="res://.godot/imported/wood_table_001_disp_4k.png-cc736e39078530d5707a84e2a7e10b87.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://Testbed/textures/wood_table_001_disp_4k.png"
dest_files=["res://.godot/imported/wood_table_001_disp_4k.png-cc736e39078530d5707a84e2a7e10b87.s3tc.ctex"]
dest_files=["res://.godot/imported/wood_table_001_disp_4k.png-cc736e39078530d5707a84e2a7e10b87.s3tc.ctex", "res://.godot/imported/wood_table_001_disp_4k.png-cc736e39078530d5707a84e2a7e10b87.etc2.ctex"]
[params]

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://b6ejmikbfrprs"
path.s3tc="res://.godot/imported/wood_table_001_rough_4k.jpg-2cf54db848f373f07cec5f37c4880108.s3tc.ctex"
path.etc2="res://.godot/imported/wood_table_001_rough_4k.jpg-2cf54db848f373f07cec5f37c4880108.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://Testbed/textures/wood_table_001_rough_4k.jpg"
dest_files=["res://.godot/imported/wood_table_001_rough_4k.jpg-2cf54db848f373f07cec5f37c4880108.s3tc.ctex"]
dest_files=["res://.godot/imported/wood_table_001_rough_4k.jpg-2cf54db848f373f07cec5f37c4880108.s3tc.ctex", "res://.godot/imported/wood_table_001_rough_4k.jpg-2cf54db848f373f07cec5f37c4880108.etc2.ctex"]
[params]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://blffn2qorkxn3"
path.s3tc="res://.godot/imported/ant.png-545c351565288b0d5e1d37ee07380f94.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/ant.png"
dest_files=["res://.godot/imported/ant.png-545c351565288b0d5e1d37ee07380f94.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://devisp5h74rcd"
path.s3tc="res://.godot/imported/bee.png-8686119aba467cb0eed5d193d6b99e96.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/bee.png"
dest_files=["res://.godot/imported/bee.png-8686119aba467cb0eed5d193d6b99e96.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bcmbgtdets30h"
path.s3tc="res://.godot/imported/beetle.png-48ff38e9539b18a9dc6e84c82c30a4e5.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/beetle.png"
dest_files=["res://.godot/imported/beetle.png-48ff38e9539b18a9dc6e84c82c30a4e5.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://3x0hfdr5n7h6"
path.s3tc="res://.godot/imported/grasshopper.png-d7eb19f3a4edbfd999d92a0aad30a298.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/grasshopper.png"
dest_files=["res://.godot/imported/grasshopper.png-d7eb19f3a4edbfd999d92a0aad30a298.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d1ypfsvtyrrg6"
path.s3tc="res://.godot/imported/ladybug.png-6bd771e6310d0f1fa16efd3f1be48006.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/ladybug.png"
dest_files=["res://.godot/imported/ladybug.png-6bd771e6310d0f1fa16efd3f1be48006.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cin8dtlafb0k5"
path.s3tc="res://.godot/imported/mosquito.png-71ae3ea773a3079dd9dbc985ad5e7854.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/mosquito.png"
dest_files=["res://.godot/imported/mosquito.png-71ae3ea773a3079dd9dbc985ad5e7854.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cf7kj47q2b3gd"
path.s3tc="res://.godot/imported/pillbug.png-e9208bd54a2cbbcb80d3e8b0bcc5319f.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/pillbug.png"
dest_files=["res://.godot/imported/pillbug.png-e9208bd54a2cbbcb80d3e8b0bcc5319f.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

View file

@ -1,35 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bpq0sfwvd46n2"
path.s3tc="res://.godot/imported/spider.png-6c803dcf705792127b05419032d4392b.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/spider.png"
dest_files=["res://.godot/imported/spider.png-6c803dcf705792127b05419032d4392b.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

13
Tile/Prefabs/Ant.tres Normal file
View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://x25q4bbhxcp3"]
[ext_resource type="Material" uid="uid://cxosyb7s454wj" path="res://InsectTiles/Materials/Ant_Black.tres" id="1_yunq4"]
[ext_resource type="Material" uid="uid://cq13vo8hnk7k1" path="res://InsectTiles/Materials/Ant_White.tres" id="2_8sds4"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_n4n55"]
[ext_resource type="Texture2D" uid="uid://0sqfwl6wjdtl" path="res://InsectTiles/Assets/UI/ant.png" id="4_canjv"]
[resource]
script = ExtResource("3_n4n55")
tile_name = "Ant"
material_black = ExtResource("1_yunq4")
material_white = ExtResource("2_8sds4")
ui_texture = ExtResource("4_canjv")

13
Tile/Prefabs/Bee.tres Normal file
View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 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="Texture2D" uid="uid://dkfybq7qex2og" path="res://InsectTiles/Assets/UI/bee.png" id="4_1he20"]
[resource]
script = ExtResource("1_o55be")
tile_name = "Bee"
material_black = ExtResource("1_0fgqy")
material_white = ExtResource("2_qr48e")
ui_texture = ExtResource("4_1he20")

View file

@ -1,10 +0,0 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=3 format=3 uid="uid://ch36pwnypwcyh"]
[ext_resource type="Material" uid="uid://b5rer8wc62ck3" path="res://InsectTiles/Materials/Bee_Black.tres" id="1_e5u5l"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="2_rfdos"]
[resource]
script = ExtResource("2_rfdos")
tile_name = "Bee"
color = 0
material = ExtResource("1_e5u5l")

View file

@ -1,10 +0,0 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=3 format=3 uid="uid://b70uxn2ofij8y"]
[ext_resource type="Material" uid="uid://d4hyq81yydmpr" path="res://InsectTiles/Materials/Bee_White.tres" id="1_gnvqf"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="1_mcohu"]
[resource]
script = ExtResource("1_mcohu")
tile_name = "Bee"
color = 1
material = ExtResource("1_gnvqf")

13
Tile/Prefabs/Beetle.tres Normal file
View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://bn5na10diacrw"]
[ext_resource type="Material" uid="uid://bbx3b1qialq3l" path="res://InsectTiles/Materials/Beetle_Black.tres" id="1_cbjw0"]
[ext_resource type="Material" uid="uid://cas4k78kf1c0x" path="res://InsectTiles/Materials/Beetle_White.tres" id="2_txjyp"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_g4s7x"]
[ext_resource type="Texture2D" uid="uid://dwewgsgd0gasi" path="res://InsectTiles/Assets/UI/beetle.png" id="4_iki3w"]
[resource]
script = ExtResource("3_g4s7x")
tile_name = "Spider"
material_black = ExtResource("1_cbjw0")
material_white = ExtResource("2_txjyp")
ui_texture = ExtResource("4_iki3w")

View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://chuci1mu106hs"]
[ext_resource type="Material" uid="uid://tbfvmxogabnr" path="res://InsectTiles/Materials/Grasshopper_Black.tres" id="1_vut3o"]
[ext_resource type="Material" uid="uid://csuox1kvmm78p" path="res://InsectTiles/Materials/Grasshopper_White.tres" id="2_gc341"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_t3kan"]
[ext_resource type="Texture2D" uid="uid://dhnrq0gxmv7cr" path="res://InsectTiles/Assets/UI/grasshopper.png" id="4_tpusd"]
[resource]
script = ExtResource("3_t3kan")
tile_name = "Grasshopper"
material_black = ExtResource("1_vut3o")
material_white = ExtResource("2_gc341")
ui_texture = ExtResource("4_tpusd")

13
Tile/Prefabs/Ladybug.tres Normal file
View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://daieqla4g6pnx"]
[ext_resource type="Material" uid="uid://ymfmmwtlmikl" path="res://InsectTiles/Materials/Ladybug_Black.tres" id="1_1577p"]
[ext_resource type="Material" uid="uid://c5oxmuvm8ngp6" path="res://InsectTiles/Materials/Ladybug_White.tres" id="2_6ewhc"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_kco06"]
[ext_resource type="Texture2D" uid="uid://c8tm1giuiexap" path="res://InsectTiles/Assets/UI/ladybug.png" id="4_ad3wk"]
[resource]
script = ExtResource("3_kco06")
tile_name = "Ladybug"
material_black = ExtResource("1_1577p")
material_white = ExtResource("2_6ewhc")
ui_texture = ExtResource("4_ad3wk")

View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://5gxoun8c6a2i"]
[ext_resource type="Material" uid="uid://c3cgwluy7660h" path="res://InsectTiles/Materials/Mosquito_Black.tres" id="1_lthri"]
[ext_resource type="Material" uid="uid://4d8v7sxf1udv" path="res://InsectTiles/Materials/Mosquito_White.tres" id="2_qdl6y"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_5xhnv"]
[ext_resource type="Texture2D" uid="uid://sw4ar13a5qxx" path="res://InsectTiles/Assets/UI/mosquito.png" id="4_rp6ff"]
[resource]
script = ExtResource("3_5xhnv")
tile_name = "Mosquito"
material_black = ExtResource("1_lthri")
material_white = ExtResource("2_qdl6y")
ui_texture = ExtResource("4_rp6ff")

13
Tile/Prefabs/Pillbug.tres Normal file
View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://dk0ndwv8i2rsb"]
[ext_resource type="Material" uid="uid://4vol6qmah4dx" path="res://InsectTiles/Materials/Pillbug_Black.tres" id="1_45nom"]
[ext_resource type="Material" uid="uid://drmm6ppt50j7s" path="res://InsectTiles/Materials/Pillbug_White.tres" id="2_b3rd8"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_j2ho1"]
[ext_resource type="Texture2D" uid="uid://evg5tvmw8ehl" path="res://InsectTiles/Assets/UI/pillbug.png" id="4_dg5at"]
[resource]
script = ExtResource("3_j2ho1")
tile_name = "Pillbug"
material_black = ExtResource("1_45nom")
material_white = ExtResource("2_b3rd8")
ui_texture = ExtResource("4_dg5at")

13
Tile/Prefabs/Spider.tres Normal file
View file

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="TileResource" load_steps=5 format=3 uid="uid://dhvfn1adyay8i"]
[ext_resource type="Material" uid="uid://csjte7l8m4gwp" path="res://InsectTiles/Materials/Spider_Black.tres" id="1_htbqr"]
[ext_resource type="Material" uid="uid://dh2ehs3h106sb" path="res://InsectTiles/Materials/Spider_White.tres" id="2_ji24g"]
[ext_resource type="Script" path="res://Tile/TileResource.gd" id="3_semk6"]
[ext_resource type="Texture2D" uid="uid://bgyve5fappdn5" path="res://InsectTiles/Assets/UI/spider.png" id="4_e73ch"]
[resource]
script = ExtResource("3_semk6")
tile_name = "Spider"
material_black = ExtResource("1_htbqr")
material_white = ExtResource("2_ji24g")
ui_texture = ExtResource("4_e73ch")

View file

@ -1,10 +1,13 @@
extends Node
enum COLOR {
BLACK,
WHITE
}
@export var coordinates: Vector4i
@export var color: COLOR = COLOR.WHITE
@export var is_black: bool = false
@export var resource: TileResource
@onready var hexagon_small = $HexagonSmall
func _ready() -> void:
if is_black:
hexagon_small.set_surface_override_material(0, resource.material_black)
else:
hexagon_small.set_surface_override_material(0, resource.material_white)

View file

@ -3,11 +3,8 @@ class_name TileResource
@export var tile_name: String = "DefaultName"
enum TileColor {
BLACK,
WHITE
}
@export var color: TileColor = TileColor.BLACK
@export var movement_behaviour: MovementBehaviour
@export var material: StandardMaterial3D
@export var material_black: StandardMaterial3D
@export var material_white: StandardMaterial3D
@export var ui_texture: Texture2D

BIN
Tile/hex_outline_bottom.glb Normal file

Binary file not shown.

View file

@ -0,0 +1,47 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bye70mbdkbtih"
path="res://.godot/imported/hex_outline_bottom.glb-17af90997cb086d8cada74c4706a0145.scn"
[deps]
source_file="res://Tile/hex_outline_bottom.glb"
dest_files=["res://.godot/imported/hex_outline_bottom.glb-17af90997cb086d8cada74c4706a0145.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={
"meshes": {
"hex_outline_bottom_Cylinder_001": {
"generate/lightmap_uv": 0,
"generate/lods": 0,
"generate/shadow_meshes": 0,
"lods/normal_merge_angle": 60.0,
"lods/normal_split_angle": 25.0,
"save_to_file/enabled": true,
"save_to_file/make_streamable": "",
"save_to_file/path": "res://hex_outline_bottom.res"
}
}
}
gltf/naming_version=1
gltf/embedded_image_handling=1

BIN
Tile/hexagon_outline.glb Normal file

Binary file not shown.

View file

@ -0,0 +1,47 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cc5qrtsco6kak"
path="res://.godot/imported/hexagon_outline.glb-b687fd1e1f3692e99ebd1bbbfdb12471.scn"
[deps]
source_file="res://Tile/hexagon_outline.glb"
dest_files=["res://.godot/imported/hexagon_outline.glb-b687fd1e1f3692e99ebd1bbbfdb12471.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={
"meshes": {
"hexagon_outline_Cylinder": {
"generate/lightmap_uv": 0,
"generate/lods": 0,
"generate/shadow_meshes": 0,
"lods/normal_merge_angle": 60.0,
"lods/normal_split_angle": 25.0,
"save_to_file/enabled": true,
"save_to_file/make_streamable": "",
"save_to_file/path": "res://hex_outline.res"
}
}
}
gltf/naming_version=1
gltf/embedded_image_handling=1

66
UI/insect_button.tscn Normal file
View file

@ -0,0 +1,66 @@
[gd_scene load_steps=4 format=3 uid="uid://bo8hgq66dbbb6"]
[ext_resource type="Script" path="res://InsectButton.gd" id="1_scd5m"]
[ext_resource type="Texture2D" uid="uid://wywgi6sr8mwg" path="res://InsectTiles/Assets/UI/hex_white.svg" id="2_tohil"]
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_g7iov"]
load_path = "res://.godot/imported/bee.png-8686119aba467cb0eed5d193d6b99e96.s3tc.ctex"
[node name="InsectButton" type="TextureButton"]
texture_filter = 6
custom_minimum_size = Vector2(64, 64)
ignore_texture_size = true
stretch_mode = 0
script = ExtResource("1_scd5m")
[node name="Hex" type="TextureRect" parent="."]
texture_filter = 6
custom_minimum_size = Vector2(64, 64)
layout_mode = 0
offset_right = 64.0
offset_bottom = 64.0
texture = ExtResource("2_tohil")
expand_mode = 4
[node name="InsectIcon" type="TextureRect" parent="Hex"]
texture_filter = 6
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -32.0
offset_top = -32.0
offset_right = 32.0
offset_bottom = 32.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("CompressedTexture2D_g7iov")
expand_mode = 3
[node name="TileCountLabel" type="Label" parent="Hex"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -22.0
offset_right = 20.0
offset_bottom = 12.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
[connection signal="button_down" from="." to="." method="_on_button_down"]
[connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"]
[connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"]
[connection signal="pressed" from="." to="." method="_on_pressed"]

37
export_presets.cfg Normal file
View file

@ -0,0 +1,37 @@
[preset.0]
name="Web"
platform="Web"
runnable=true
dedicated_server=false
custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path=""
encryption_include_filters=""
encryption_exclude_filters=""
encrypt_pck=false
encrypt_directory=false
[preset.0.options]
custom_template/debug=""
custom_template/release=""
variant/extensions_support=false
vram_texture_compression/for_desktop=true
vram_texture_compression/for_mobile=true
html/export_icon=true
html/custom_html_shell=""
html/head_include=""
html/canvas_resize_policy=2
html/focus_canvas_on_start=true
html/experimental_virtual_keyboard=false
progressive_web_app/enabled=false
progressive_web_app/offline_page=""
progressive_web_app/display=1
progressive_web_app/orientation=0
progressive_web_app/icon_144x144=""
progressive_web_app/icon_180x180=""
progressive_web_app/icon_512x512=""
progressive_web_app/background_color=Color(0, 0, 0, 1)

BIN
hex_outline.res Normal file

Binary file not shown.

View file

@ -1,22 +1,29 @@
[gd_scene load_steps=6 format=3 uid="uid://cjkfacnab3g3t"]
[gd_scene load_steps=6 format=3 uid="uid://y2t5rrkvs0c0"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="1_6lpj5"]
[ext_resource type="Texture2D" uid="uid://bbi5xlbfl564o" path="res://InsectTiles/Assets/Textures/mosquito_black.png" id="2_kx842"]
[ext_resource type="Texture2D" uid="uid://dvlotqiu1n5nx" path="res://InsectTiles/Assets/Roughness/mosquito_roughness.png" id="3_w27cc"]
[ext_resource type="Script" path="res://HexOutline.gd" id="1_cbscl"]
[ext_resource type="ArrayMesh" uid="uid://cocujjycabbp3" path="res://hex_outline.res" id="2_hwabu"]
[ext_resource type="Script" path="res://MeshBreather.gd" id="3_6b28p"]
[ext_resource type="ArrayMesh" uid="uid://2hoclmeiswwf" path="res://hex_outline_bottom.res" id="4_lr4wm"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_80f17"]
albedo_texture = ExtResource("2_kx842")
roughness_texture = ExtResource("3_w27cc")
roughness_texture_channel = 4
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_f8pn0"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_uta8s"]
data = PackedVector3Array(-0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.5, 0.4004, 0, 0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, -0.25, 0.4004, -0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, -0.25, 0.4004, 0.433014, 0.25, 0.4004, -0.433014, 0.25, 0.4004, 0.433014, -0.5, 0.4004, 0, 0.25, 0.4004, 0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, 0.433014, 0.25, 0.4004, 0.433014, 0.5, 0.4004, 0, 0.5, 0.000399577, 0, 0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.25, 0.000399577, -0.433014, 0.25, 0.4004, -0.433014, -0.25, 0.4004, -0.433014, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, 0.433014, 0.25, 0.000399577, 0.433014, -0.25, 0.000399577, 0.433014, -0.25, 0.000399577, -0.433014, -0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, 0.5, 0.000399577, 0, 0.25, 0.000399577, -0.433014, -0.25, 0.000399577, 0.433014, 0.5, 0.000399577, 0, -0.25, 0.000399577, -0.433014, -0.5, 0.4004, 0, -0.25, 0.000399577, 0.433014, -0.5, 0.000399577, 0, -0.5, 0.4004, 0, -0.25, 0.4004, 0.433014, -0.25, 0.000399577, 0.433014)
[node name="MosquitoBlack" type="Area3D"]
[node name="HexagonSmall" type="MeshInstance3D" parent="."]
mesh = ExtResource("1_6lpj5")
surface_material_override/0 = SubResource("StandardMaterial3D_80f17")
[node name="HexOutline" type="Area3D"]
monitoring = false
script = ExtResource("1_cbscl")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConcavePolygonShape3D_f8pn0")
shape = SubResource("ConcavePolygonShape3D_uta8s")
[node name="Mesh" type="MeshInstance3D" parent="."]
mesh = ExtResource("2_hwabu")
skeleton = NodePath("../../..")
script = ExtResource("3_6b28p")
[node name="HexOutlineBottom" type="MeshInstance3D" parent="Mesh"]
mesh = ExtResource("4_lr4wm")
skeleton = NodePath("../../../..")
[connection signal="input_event" from="." to="." method="_on_input_event"]
[connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"]
[connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"]

BIN
hex_outline_bottom.res Normal file

Binary file not shown.

15
hex_outline_material.tres Normal file
View file

@ -0,0 +1,15 @@
[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://bxwitvdpsoro6"]
[sub_resource type="Gradient" id="Gradient_8056d"]
offsets = PackedFloat32Array(0, 0.0549828, 0.945017)
colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 0.52549, 1, 1, 1, 0)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_5kfu4"]
gradient = SubResource("Gradient_8056d")
[resource]
transparency = 1
cull_mode = 2
shading_mode = 0
albedo_color = Color(0, 0.552941, 0, 1)
albedo_texture = SubResource("GradientTexture1D_5kfu4")

View file

@ -4,15 +4,16 @@ importer="texture"
type="CompressedTexture2D"
uid="uid://dfj6mcqo8a3u5"
path.s3tc="res://.godot/imported/hexagon.png-c46fb4a7a195eaef0c3e4491a48e0d05.s3tc.ctex"
path.etc2="res://.godot/imported/hexagon.png-c46fb4a7a195eaef0c3e4491a48e0d05.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://hexagon.png"
dest_files=["res://.godot/imported/hexagon.png-c46fb4a7a195eaef0c3e4491a48e0d05.s3tc.ctex"]
dest_files=["res://.godot/imported/hexagon.png-c46fb4a7a195eaef0c3e4491a48e0d05.s3tc.ctex", "res://.godot/imported/hexagon.png-c46fb4a7a195eaef0c3e4491a48e0d05.etc2.ctex"]
[params]

View file

@ -1,15 +1,12 @@
[gd_scene load_steps=20 format=3 uid="uid://bx0bbrwdr0h40"]
[gd_scene load_steps=17 format=3 uid="uid://bx0bbrwdr0h40"]
[ext_resource type="Script" path="res://Tile/Tile.gd" id="1_scpor"]
[ext_resource type="Script" path="res://HexGrid3D/HexGrid3D.gd" id="2_xcbqy"]
[ext_resource type="ArrayMesh" uid="uid://dsbshu53k588h" path="res://hexagon_small.res" id="3_57kfx"]
[ext_resource type="PackedScene" uid="uid://ddqk8acjuwwpn" path="res://InsectTiles/Bee_White.tscn" id="4_ctlth"]
[ext_resource type="Script" path="res://free_look_camera.gd" id="5_cn386"]
[ext_resource type="Texture2D" uid="uid://cilgpyanfb3a8" path="res://Testbed/textures/wood_table_001_diff_4k.jpg" id="6_x76sf"]
[ext_resource type="Texture2D" uid="uid://diamo44e2x4if" path="res://Testbed/textures/wood_table_001_disp_4k.png" id="7_xr322"]
[ext_resource type="Script" path="res://BuildMenu.gd" id="8_lxt1e"]
[ext_resource type="Texture2D" uid="uid://b6ejmikbfrprs" path="res://Testbed/textures/wood_table_001_rough_4k.jpg" id="8_wvt2u"]
[ext_resource type="Texture2D" uid="uid://wywgi6sr8mwg" path="res://Testbed/hex.svg" id="9_wcfo0"]
[ext_resource type="Texture2D" uid="uid://devisp5h74rcd" path="res://Textures/bee.png" id="10_r7dkw"]
[ext_resource type="PackedScene" uid="uid://bo8hgq66dbbb6" path="res://UI/insect_button.tscn" id="11_pmmaq"]
[ext_resource type="Script" path="res://Misc/RTSCamera3D.gd" id="12_o7k50"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_u8oxs"]
albedo_texture = ExtResource("6_x76sf")
@ -40,8 +37,11 @@ sky_material = SubResource("ProceduralSkyMaterial_dv0dt")
background_mode = 2
sky = SubResource("Sky_v4pi7")
tonemap_mode = 1
ssao_enabled = true
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_41x5h"]
dof_blur_far_distance = 15.0
dof_blur_far_transition = 10.0
dof_blur_near_distance = 1.2
[sub_resource type="Gradient" id="Gradient_pctcs"]
@ -63,29 +63,17 @@ modulate_color = Color(1, 1, 1, 0.639216)
[node name="Node3D" type="Node3D"]
[node name="Node3D" type="Node3D" parent="."]
script = ExtResource("1_scpor")
[node name="Camera3D" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.5, 0.866025, 0, -0.866025, 0.5, 0, 6, 5)
script = ExtResource("12_o7k50")
edge_panning_enabled = false
[node name="HexGrid" type="Node3D" parent="."]
script = ExtResource("2_xcbqy")
[node name="Hexagon" type="MeshInstance3D" parent="HexGrid"]
mesh = ExtResource("3_57kfx")
skeleton = NodePath("../..")
[node name="PlacementVisualizer" type="Node3D" parent="HexGrid"]
[node name="Label3D" type="Label3D" parent="HexGrid/Hexagon"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
visible = false
pixel_size = 0.01
billboard = 1
text = "0, 0"
[node name="BeeWhite" parent="HexGrid/Hexagon" instance=ExtResource("4_ctlth")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0, 0)
[node name="Camera3D" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.904187, 0.427137, 0, -0.427137, 0.904187, 0, 1.90512, 2.87033)
script = ExtResource("5_cn386")
[node name="Tiles" type="Node3D" parent="HexGrid"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
mesh = SubResource("PlaneMesh_cu5ir")
@ -95,10 +83,10 @@ environment = SubResource("Environment_xoohw")
camera_attributes = SubResource("CameraAttributesPractical_41x5h")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(0.866025, -0.433013, 0.250001, 0.25, 0.808013, 0.533493, -0.433013, -0.399518, 0.808013, 0.262159, 3.27869, -0.104568)
transform = Transform3D(0.843961, -0.46784, 0.262404, -0.0775016, 0.377705, 0.922677, -0.530777, -0.79904, 0.28251, 0.262159, 3.27869, -0.104568)
shadow_enabled = true
[node name="Control" type="Control" parent="."]
[node name="BuildMenu" type="Control" parent="."]
layout_mode = 3
anchors_preset = 12
anchor_top = 1.0
@ -106,8 +94,9 @@ anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 0
script = ExtResource("8_lxt1e")
[node name="PanelContainer" type="PanelContainer" parent="Control"]
[node name="PanelContainer" type="PanelContainer" parent="BuildMenu"]
layout_mode = 1
anchors_preset = 12
anchor_top = 1.0
@ -117,228 +106,59 @@ grow_horizontal = 2
grow_vertical = 0
theme_override_styles/panel = SubResource("StyleBoxTexture_sfja1")
[node name="MarginContainer" type="MarginContainer" parent="Control/PanelContainer"]
[node name="MarginContainer" type="MarginContainer" parent="BuildMenu/PanelContainer"]
layout_mode = 2
theme_override_constants/margin_left = 15
theme_override_constants/margin_top = 15
theme_override_constants/margin_right = 15
theme_override_constants/margin_bottom = 15
[node name="VBoxContainer" type="VBoxContainer" parent="Control/PanelContainer/MarginContainer"]
[node name="VBoxContainer" type="VBoxContainer" parent="BuildMenu/PanelContainer/MarginContainer"]
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="Control/PanelContainer/MarginContainer/VBoxContainer"]
[node name="HBoxContainer" type="HBoxContainer" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer"]
layout_mode = 2
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
[node name="Label" type="Label" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "You"
[node name="PanelContainer" type="PanelContainer" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
[node name="PanelContainer" type="PanelContainer" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
self_modulate = Color(1, 1, 1, 0)
layout_mode = 2
size_flags_horizontal = 3
[node name="Label2" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
[node name="Label2" type="Label" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "Enemy"
horizontal_alignment = 2
[node name="HBoxContainer2" type="HBoxContainer" parent="Control/PanelContainer/MarginContainer/VBoxContainer"]
[node name="HBoxContainer2" type="HBoxContainer" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer"]
layout_mode = 2
alignment = 1
[node name="HBoxContainer" type="HBoxContainer" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2"]
[node name="LocalPlayerInsects" type="HBoxContainer" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2"]
layout_mode = 2
[node name="TextureButton" type="TextureButton" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer"]
custom_minimum_size = Vector2(64, 64)
[node name="InsectButton" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/LocalPlayerInsects" instance=ExtResource("11_pmmaq")]
layout_mode = 2
texture_normal = ExtResource("9_wcfo0")
ignore_texture_size = true
stretch_mode = 0
is_bee = true
[node name="TextureRect" type="TextureRect" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer/TextureButton"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -32.0
offset_top = -32.0
offset_right = 32.0
offset_bottom = 32.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("10_r7dkw")
expand_mode = 3
[node name="VSeparator" type="VSeparator" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/LocalPlayerInsects"]
layout_mode = 2
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer/TextureButton"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -22.0
offset_right = 20.0
offset_bottom = 12.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
[node name="PanelContainer" type="PanelContainer" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2"]
[node name="PanelContainer" type="PanelContainer" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2"]
modulate = Color(1, 1, 1, 0)
layout_mode = 2
size_flags_horizontal = 3
[node name="HBoxContainer2" type="HBoxContainer" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2"]
[node name="RemotePlayerInsects" type="HBoxContainer" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2"]
layout_mode = 2
[node name="TextureButton" type="TextureButton" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2"]
self_modulate = Color(1, 1, 0.309804, 1)
custom_minimum_size = Vector2(64, 64)
[node name="VSeparator" type="VSeparator" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/RemotePlayerInsects"]
layout_mode = 2
texture_normal = ExtResource("9_wcfo0")
ignore_texture_size = true
stretch_mode = 0
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2/TextureButton"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -23.0
offset_right = 20.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
[node name="TextureButton2" type="TextureButton" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2"]
self_modulate = Color(0.411765, 0.160784, 0.0235294, 1)
custom_minimum_size = Vector2(64, 64)
[node name="InsectButton2" parent="BuildMenu/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/RemotePlayerInsects" instance=ExtResource("11_pmmaq")]
layout_mode = 2
texture_normal = ExtResource("9_wcfo0")
ignore_texture_size = true
stretch_mode = 0
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2/TextureButton2"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -23.0
offset_right = 20.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
[node name="TextureButton3" type="TextureButton" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2"]
self_modulate = Color(0.309804, 0.701961, 0.701961, 1)
custom_minimum_size = Vector2(64, 64)
layout_mode = 2
texture_normal = ExtResource("9_wcfo0")
ignore_texture_size = true
stretch_mode = 0
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2/TextureButton3"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -23.0
offset_right = 20.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
[node name="TextureButton4" type="TextureButton" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2"]
self_modulate = Color(0.27451, 0.65098, 0.168627, 1)
custom_minimum_size = Vector2(64, 64)
layout_mode = 2
texture_normal = ExtResource("9_wcfo0")
ignore_texture_size = true
stretch_mode = 0
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2/TextureButton4"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -23.0
offset_right = 20.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
[node name="TextureButton5" type="TextureButton" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2"]
self_modulate = Color(0.537255, 0.345098, 0.690196, 1)
custom_minimum_size = Vector2(64, 64)
layout_mode = 2
texture_normal = ExtResource("9_wcfo0")
ignore_texture_size = true
stretch_mode = 0
[node name="Label" type="Label" parent="Control/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer2/HBoxContainer2/TextureButton5"]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -23.0
offset_right = 20.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 8
theme_override_font_sizes/font_size = 24
text = "1"
horizontal_alignment = 1
vertical_alignment = 2
is_bee = true
is_black = true

View file

@ -14,3 +14,64 @@ config/name="Swarm"
run/main_scene="res://node_3d.tscn"
config/features=PackedStringArray("4.2", "Mobile")
config/icon="res://icon.svg"
[autoload]
GameEvents="*res://Globals/GameEvents.gd"
[input]
place_tile={
"deadzone": 0.5,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
camera_up={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"echo":false,"script":null)
]
}
camera_left={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"echo":false,"script":null)
]
}
camera_right={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"echo":false,"script":null)
]
}
camera_down={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"echo":false,"script":null)
]
}
zoom_camera_in={
"deadzone": 0.5,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":4,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
zoom_camera_out={
"deadzone": 0.5,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":5,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
rotate_camera={
"deadzone": 0.5,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
drag_camera={
"deadzone": 0.5,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":3,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
deselect_tile={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"echo":false,"script":null)
]
}
[rendering]
textures/vram_compression/import_etc2_astc=true