From 652f2f53c05ce963553a053a6429d0259a56772b Mon Sep 17 00:00:00 2001 From: nokoe Date: Tue, 25 Jun 2024 18:30:24 +0200 Subject: add windows --- client/map/tile_factory.gd | 4 +++- client/map/tiles/counter_window.gd | 29 +++++++++++++++++++++++++++++ client/map/tiles/counter_window.res | Bin 0 -> 5279 bytes client/map/tiles/counter_window.tscn | 10 ++++++++++ client/map/tiles/wall_tile.gd | 3 ++- 5 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 client/map/tiles/counter_window.gd create mode 100644 client/map/tiles/counter_window.res create mode 100644 client/map/tiles/counter_window.tscn (limited to 'client') diff --git a/client/map/tile_factory.gd b/client/map/tile_factory.gd index 9869270d..a9fae032 100644 --- a/client/map/tile_factory.gd +++ b/client/map/tile_factory.gd @@ -46,7 +46,9 @@ static func produce(tile_name: String, node_name: String, neighbors: Array) -> T return Table.new(node_name, neighbors) "floor": return Floor.new(node_name, neighbors) - "window": + "counter-window": + return CounterWindow.new(node_name, neighbors) + "wall-window": return WallWindow.new(node_name, neighbors) "door": return Door.new(node_name, neighbors) diff --git a/client/map/tiles/counter_window.gd b/client/map/tiles/counter_window.gd new file mode 100644 index 00000000..233be1fc --- /dev/null +++ b/client/map/tiles/counter_window.gd @@ -0,0 +1,29 @@ +# Undercooked - a game about cooking +# Copyright 2024 nokoe +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, version 3 of the License only. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +class_name CounterWindow +extends WallTile + +static func interact_target() -> Vector3: + return Vector3(0, 0.625, 0) + +func _init(rename: String, neighbors: Array): + super(rename, neighbors) + match kind: + WallKind.STRAIGHT: + base.add_child(load("res://map/tiles/counter_window.tscn").instantiate()) + WallKind.OUTER_CORNER: + push_warning("There is no corner counter window!") + base.add_child(load("res://map/tiles/counter_window.tscn").instantiate()) diff --git a/client/map/tiles/counter_window.res b/client/map/tiles/counter_window.res new file mode 100644 index 00000000..2cb0f059 Binary files /dev/null and b/client/map/tiles/counter_window.res differ diff --git a/client/map/tiles/counter_window.tscn b/client/map/tiles/counter_window.tscn new file mode 100644 index 00000000..8ae5a54d --- /dev/null +++ b/client/map/tiles/counter_window.tscn @@ -0,0 +1,10 @@ +[gd_scene load_steps=2 format=3 uid="uid://bwgkd65215m7e"] + +[ext_resource type="ArrayMesh" uid="uid://lywflqnpelc7" path="res://map/tiles/counter_window.res" id="1_gyddt"] + +[node name="CounterWindow" type="Node3D"] + +[node name="Mesh" type="MeshInstance3D" parent="."] +transform = Transform3D(-2.18557e-08, 0, 0.5, 0, 0.5, 0, -0.5, 0, -2.18557e-08, 0, 0, 0) +mesh = ExtResource("1_gyddt") +skeleton = NodePath("") diff --git a/client/map/tiles/wall_tile.gd b/client/map/tiles/wall_tile.gd index 08d3c080..b876990e 100644 --- a/client/map/tiles/wall_tile.gd +++ b/client/map/tiles/wall_tile.gd @@ -18,7 +18,8 @@ extends FullTile const WALLS: Array = [ "wall", - "window", + "wall-window", + "counter-window", "door" ] -- cgit v1.2.3-70-g09d2