aboutsummaryrefslogtreecommitdiff
path: root/client/map/tiles
diff options
context:
space:
mode:
Diffstat (limited to 'client/map/tiles')
-rw-r--r--client/map/tiles/active_interact_counter.gd2
-rw-r--r--client/map/tiles/button/button.gd2
-rw-r--r--client/map/tiles/button/button_model.gd2
-rw-r--r--client/map/tiles/button_base.gd2
-rw-r--r--client/map/tiles/chair.gd2
-rw-r--r--client/map/tiles/conveyor.gd2
-rw-r--r--client/map/tiles/conveyor_direction.gdshader2
-rw-r--r--client/map/tiles/conveyor_model.gd2
-rw-r--r--client/map/tiles/counter.gd71
-rw-r--r--client/map/tiles/counter.gd.uid2
-rw-r--r--client/map/tiles/counter_base.gd29
-rw-r--r--client/map/tiles/counter_base.gd.uid1
-rw-r--r--client/map/tiles/counter_like.gd80
-rw-r--r--client/map/tiles/counter_like.gd.uid1
-rw-r--r--client/map/tiles/counter_window.gd2
-rw-r--r--client/map/tiles/counter_window_conveyor.gd2
-rw-r--r--client/map/tiles/crate.gd4
-rw-r--r--client/map/tiles/cutting_board.gd2
-rw-r--r--client/map/tiles/deep_fryer.gd2
-rw-r--r--client/map/tiles/door.gd2
-rw-r--r--client/map/tiles/exterior_tree.gd2
-rw-r--r--client/map/tiles/fence.gd2
-rw-r--r--client/map/tiles/floor.gd2
-rw-r--r--client/map/tiles/floor.gdshader2
-rw-r--r--client/map/tiles/floor_like.gd2
-rw-r--r--client/map/tiles/floor_mesher.gd2
-rw-r--r--client/map/tiles/freezer.gd4
-rw-r--r--client/map/tiles/freezer_model.gd2
-rw-r--r--client/map/tiles/generic_tile.gd2
-rw-r--r--client/map/tiles/grass.gd9
-rw-r--r--client/map/tiles/grass_mesher.gd17
-rw-r--r--client/map/tiles/house_balcony.gd2
-rw-r--r--client/map/tiles/house_door.gd2
-rw-r--r--client/map/tiles/house_oriel.gd2
-rw-r--r--client/map/tiles/house_roof.gd2
-rw-r--r--client/map/tiles/house_roof_chimney.gd2
-rw-r--r--client/map/tiles/house_side.gd2
-rw-r--r--client/map/tiles/house_tile.gd2
-rw-r--r--client/map/tiles/house_wall.gd2
-rw-r--r--client/map/tiles/item_portal.gd7
-rw-r--r--client/map/tiles/lamp.gd2
-rw-r--r--client/map/tiles/light_tile.gd2
-rw-r--r--client/map/tiles/oven.gd4
-rw-r--r--client/map/tiles/oven_model.gd2
-rw-r--r--client/map/tiles/path.gd2
-rw-r--r--client/map/tiles/player_portal.gd2
-rw-r--r--client/map/tiles/portal.gd7
-rw-r--r--client/map/tiles/portal.gdshader2
-rw-r--r--client/map/tiles/rolling_board.gd2
-rw-r--r--client/map/tiles/screen/screen.gd2
-rw-r--r--client/map/tiles/screen/screen_model.gd2
-rw-r--r--client/map/tiles/sink.gd4
-rw-r--r--client/map/tiles/sink_particles.gd2
-rw-r--r--client/map/tiles/stove.gd4
-rw-r--r--client/map/tiles/street.gd2
-rw-r--r--client/map/tiles/table.gd2
-rw-r--r--client/map/tiles/tile.gd3
-rw-r--r--client/map/tiles/trash.gd4
-rw-r--r--client/map/tiles/unknown_tile.gd2
-rw-r--r--client/map/tiles/wall.gd2
-rw-r--r--client/map/tiles/wall_tile.gd2
-rw-r--r--client/map/tiles/window.gd2
62 files changed, 182 insertions, 159 deletions
diff --git a/client/map/tiles/active_interact_counter.gd b/client/map/tiles/active_interact_counter.gd
index fef23bba..b44c862a 100644
--- a/client/map/tiles/active_interact_counter.gd
+++ b/client/map/tiles/active_interact_counter.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/button/button.gd b/client/map/tiles/button/button.gd
index 16359d23..f47eba2d 100644
--- a/client/map/tiles/button/button.gd
+++ b/client/map/tiles/button/button.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/button/button_model.gd b/client/map/tiles/button/button_model.gd
index f571d599..41a4674f 100644
--- a/client/map/tiles/button/button_model.gd
+++ b/client/map/tiles/button/button_model.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/button_base.gd b/client/map/tiles/button_base.gd
index 8f6597e9..1ceee5e2 100644
--- a/client/map/tiles/button_base.gd
+++ b/client/map/tiles/button_base.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/chair.gd b/client/map/tiles/chair.gd
index 4cd28cf7..d5669dca 100644
--- a/client/map/tiles/chair.gd
+++ b/client/map/tiles/chair.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/conveyor.gd b/client/map/tiles/conveyor.gd
index 421bc411..e5e908b4 100644
--- a/client/map/tiles/conveyor.gd
+++ b/client/map/tiles/conveyor.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/conveyor_direction.gdshader b/client/map/tiles/conveyor_direction.gdshader
index d59fcd2d..7adef653 100644
--- a/client/map/tiles/conveyor_direction.gdshader
+++ b/client/map/tiles/conveyor_direction.gdshader
@@ -1,6 +1,6 @@
/*
Hurry Curry! - a game about cooking
- Copyright (C) 2025 Hurry Curry! Contributors
+ Copyright (C) 2026 Hurry Curry! Contributors
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
diff --git a/client/map/tiles/conveyor_model.gd b/client/map/tiles/conveyor_model.gd
index 81ba1ecd..fcf36675 100644
--- a/client/map/tiles/conveyor_model.gd
+++ b/client/map/tiles/conveyor_model.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/counter.gd b/client/map/tiles/counter.gd
index f91c5cbc..b8e7531a 100644
--- a/client/map/tiles/counter.gd
+++ b/client/map/tiles/counter.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,67 +14,14 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Counter
-extends Tile
-
-const COUNTERS: Array = [
- "counter",
- "pan",
- "sink",
- "oven",
-]
-
-const FLOORS: Array = [
- "floor",
- "chandelier",
- "ceiling-lamp",
- "grass",
- "table",
- "chair"
-]
-
-enum CounterKind {
- OUTER_CORNER,
- STRAIGHT,
- STRAIGHT_BACKSPLASH
-}
-
-var kind: CounterKind = CounterKind.STRAIGHT
-
-static func interact_target(): # -> Vector3?
- return Vector3(0, 0.5, 0)
+extends CounterLike
func _init(ctx: TileFactory.TileCC):
super(ctx)
-
- var facing: int = 0
- var max_series: int = 0
- var max_idx: int = 0
- for start in range(4):
- var series = 0
- for i in range(4):
- if not is_attachable(ctx.neighbors[(start + i) % 4]):
- series += 1
- else:
- break
- if series > max_series:
- max_series = series
- max_idx = start
-
- # we can neither find out whether it is an inner corner nor an outer corner
- # backsplash
- facing = max_idx
- if max_series == 1:
- if G.has_one(WallTile.WALLS, ctx.neighbors[(max_idx + 2) % 4]):
- kind = CounterKind.STRAIGHT_BACKSPLASH
- else:
- kind = CounterKind.STRAIGHT
- elif max_series == 2:
- kind = CounterKind.OUTER_CORNER
-
- turn_facing(facing)
-
-static func is_attachable(neighbor: Array) -> bool:
- for tile: String in neighbor:
- if tile.ends_with("crate"): return true
- if COUNTERS.has(tile): return true
- return false
+ match kind:
+ CounterKind.OUTER_CORNER:
+ base.add_child(load("res://map/tiles/counter_outer_corner.tscn").instantiate())
+ CounterKind.STRAIGHT:
+ base.add_child(load("res://map/tiles/counter_straight.tscn").instantiate())
+ CounterKind.STRAIGHT_BACKSPLASH:
+ base.add_child(load("res://map/tiles/counter_straight_backsplash.tscn").instantiate())
diff --git a/client/map/tiles/counter.gd.uid b/client/map/tiles/counter.gd.uid
index 0fd45b66..395db459 100644
--- a/client/map/tiles/counter.gd.uid
+++ b/client/map/tiles/counter.gd.uid
@@ -1 +1 @@
-uid://bs61uem0427k6
+uid://bj8o06q70sek2
diff --git a/client/map/tiles/counter_base.gd b/client/map/tiles/counter_base.gd
deleted file mode 100644
index d29953ad..00000000
--- a/client/map/tiles/counter_base.gd
+++ /dev/null
@@ -1,29 +0,0 @@
-# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
-#
-# 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 <https://www.gnu.org/licenses/>.
-#
-class_name CounterBase
-extends Counter
-
-func _init(ctx: TileFactory.TileCC, top):
- super(ctx)
- match kind:
- CounterKind.OUTER_CORNER:
- base.add_child(load("res://map/tiles/counter_outer_corner.tscn").instantiate())
- CounterKind.STRAIGHT:
- base.add_child(load("res://map/tiles/counter_straight.tscn").instantiate())
- CounterKind.STRAIGHT_BACKSPLASH:
- base.add_child(load("res://map/tiles/counter_straight_backsplash.tscn").instantiate())
- if top is PackedScene:
- base.add_child(top.instantiate())
diff --git a/client/map/tiles/counter_base.gd.uid b/client/map/tiles/counter_base.gd.uid
deleted file mode 100644
index f46c79fa..00000000
--- a/client/map/tiles/counter_base.gd.uid
+++ /dev/null
@@ -1 +0,0 @@
-uid://dx116e5ebg1p4
diff --git a/client/map/tiles/counter_like.gd b/client/map/tiles/counter_like.gd
new file mode 100644
index 00000000..ebecbbfa
--- /dev/null
+++ b/client/map/tiles/counter_like.gd
@@ -0,0 +1,80 @@
+# Hurry Curry! - a game about cooking
+# Copyright (C) 2026 Hurry Curry! Contributors
+#
+# 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 <https://www.gnu.org/licenses/>.
+#
+class_name CounterLike
+extends Tile
+
+const COUNTERS: Array = [
+ "counter",
+ "pan",
+ "sink",
+ "oven",
+]
+
+const FLOORS: Array = [
+ "floor",
+ "chandelier",
+ "ceiling-lamp",
+ "grass",
+ "table",
+ "chair"
+]
+
+enum CounterKind {
+ OUTER_CORNER,
+ STRAIGHT,
+ STRAIGHT_BACKSPLASH
+}
+
+var kind: CounterKind = CounterKind.STRAIGHT
+
+static func interact_target(): # -> Vector3?
+ return Vector3(0, 0.5, 0)
+
+func _init(ctx: TileFactory.TileCC):
+ super(ctx)
+
+ var facing: int = 0
+ var max_series: int = 0
+ var max_idx: int = 0
+ for start in range(4):
+ var series = 0
+ for i in range(4):
+ if not is_attachable(ctx.neighbors[(start + i) % 4]):
+ series += 1
+ else:
+ break
+ if series > max_series:
+ max_series = series
+ max_idx = start
+
+ # we can neither find out whether it is an inner corner nor an outer corner
+ # backsplash
+ facing = max_idx
+ if max_series == 1:
+ if G.has_one(WallTile.WALLS, ctx.neighbors[(max_idx + 2) % 4]):
+ kind = CounterKind.STRAIGHT_BACKSPLASH
+ else:
+ kind = CounterKind.STRAIGHT
+ elif max_series == 2:
+ kind = CounterKind.OUTER_CORNER
+
+ turn_facing(facing)
+
+static func is_attachable(neighbor: Array) -> bool:
+ for tile: String in neighbor:
+ if tile.ends_with("crate"): return true
+ if COUNTERS.has(tile): return true
+ return false
diff --git a/client/map/tiles/counter_like.gd.uid b/client/map/tiles/counter_like.gd.uid
new file mode 100644
index 00000000..0fd45b66
--- /dev/null
+++ b/client/map/tiles/counter_like.gd.uid
@@ -0,0 +1 @@
+uid://bs61uem0427k6
diff --git a/client/map/tiles/counter_window.gd b/client/map/tiles/counter_window.gd
index 8b01979d..d9cf6d24 100644
--- a/client/map/tiles/counter_window.gd
+++ b/client/map/tiles/counter_window.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/counter_window_conveyor.gd b/client/map/tiles/counter_window_conveyor.gd
index cd661298..e34dd2fd 100644
--- a/client/map/tiles/counter_window_conveyor.gd
+++ b/client/map/tiles/counter_window_conveyor.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/crate.gd b/client/map/tiles/crate.gd
index 24dada3c..bb96b919 100644
--- a/client/map/tiles/crate.gd
+++ b/client/map/tiles/crate.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Crate
-extends Counter
+extends CounterLike
static func interact_target(): # -> Vector3?
return Vector3(0, 0.25, 0)
diff --git a/client/map/tiles/cutting_board.gd b/client/map/tiles/cutting_board.gd
index 65487417..d9f95911 100644
--- a/client/map/tiles/cutting_board.gd
+++ b/client/map/tiles/cutting_board.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/deep_fryer.gd b/client/map/tiles/deep_fryer.gd
index 5318cd62..d730207f 100644
--- a/client/map/tiles/deep_fryer.gd
+++ b/client/map/tiles/deep_fryer.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/door.gd b/client/map/tiles/door.gd
index 0473c337..37dd012f 100644
--- a/client/map/tiles/door.gd
+++ b/client/map/tiles/door.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/exterior_tree.gd b/client/map/tiles/exterior_tree.gd
index faaede1c..82c457e2 100644
--- a/client/map/tiles/exterior_tree.gd
+++ b/client/map/tiles/exterior_tree.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/fence.gd b/client/map/tiles/fence.gd
index 328e115c..5d2dfdd8 100644
--- a/client/map/tiles/fence.gd
+++ b/client/map/tiles/fence.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/floor.gd b/client/map/tiles/floor.gd
index e0959708..6baae392 100644
--- a/client/map/tiles/floor.gd
+++ b/client/map/tiles/floor.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/floor.gdshader b/client/map/tiles/floor.gdshader
index a1567189..dd6f277f 100644
--- a/client/map/tiles/floor.gdshader
+++ b/client/map/tiles/floor.gdshader
@@ -1,6 +1,6 @@
/*
Hurry Curry! - a game about cooking
- Copyright (C) 2025 Hurry Curry! Contributors
+ Copyright (C) 2026 Hurry Curry! Contributors
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
diff --git a/client/map/tiles/floor_like.gd b/client/map/tiles/floor_like.gd
index 228a95e9..fc9be052 100644
--- a/client/map/tiles/floor_like.gd
+++ b/client/map/tiles/floor_like.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/floor_mesher.gd b/client/map/tiles/floor_mesher.gd
index cb89cc0b..addd23d2 100644
--- a/client/map/tiles/floor_mesher.gd
+++ b/client/map/tiles/floor_mesher.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/freezer.gd b/client/map/tiles/freezer.gd
index 47ab89a9..72aa4660 100644
--- a/client/map/tiles/freezer.gd
+++ b/client/map/tiles/freezer.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Freezer
-extends Counter
+extends CounterLike
var freezer: FreezerModel = load("res://map/tiles/freezer.tscn").instantiate()
diff --git a/client/map/tiles/freezer_model.gd b/client/map/tiles/freezer_model.gd
index 4defda9c..b05c6959 100644
--- a/client/map/tiles/freezer_model.gd
+++ b/client/map/tiles/freezer_model.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/generic_tile.gd b/client/map/tiles/generic_tile.gd
index 33c01cdb..73ac3fac 100644
--- a/client/map/tiles/generic_tile.gd
+++ b/client/map/tiles/generic_tile.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/grass.gd b/client/map/tiles/grass.gd
index d9ebce7c..bc555b93 100644
--- a/client/map/tiles/grass.gd
+++ b/client/map/tiles/grass.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -16,6 +16,13 @@
class_name Grass
extends FloorLike
+func _init(ctx: TileFactory.TileCC):
+ super(ctx)
+ if not base_mesh:
+ var grass_mesher: GrassMesher = ctx.floor_meshers[fm_id()]
+ var use_no_grass: bool = ctx.above_tile_names.any(func (s): return s == "chair" or s == "table" or s == "conveyor")
+ grass_mesher.add_tile(ctx.position, use_no_grass)
+
static func fm_id() -> String:
return "grass"
diff --git a/client/map/tiles/grass_mesher.gd b/client/map/tiles/grass_mesher.gd
index 466c3c1e..f157c84c 100644
--- a/client/map/tiles/grass_mesher.gd
+++ b/client/map/tiles/grass_mesher.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -19,10 +19,21 @@ extends FloorMesher
const GRASS_MESH: Mesh = preload("res://map/tiles/grass_side.tres")
var multimesh_instance := MultiMeshInstance3D.new()
+var no_grass_tiles: Dictionary[String, Vector2i] = {}
+
func _init(mesh: MeshInstance3D) -> void:
super(mesh)
mesh_instance.add_child(multimesh_instance)
+func add_tile(pos: Vector2i, use_no_grass: bool = false):
+ super(pos)
+ if use_no_grass:
+ no_grass_tiles[str(pos)] = pos
+
+func remove_tile(pos: Vector2i):
+ super(pos)
+ no_grass_tiles.erase(str(pos))
+
func flush() -> void:
super()
var random = RandomNumberGenerator.new()
@@ -33,8 +44,10 @@ func flush() -> void:
multimesh.transform_format = MultiMesh.TRANSFORM_3D
multimesh.instance_count = tiles.size() * Settings.read("graphics.grass_amount")
var t := tiles.values()
+ var no_grass := no_grass_tiles.values()
for i in multimesh.instance_count:
- var p = t[i / Settings.read("graphics.grass_amount")]
+ var p: Vector2i = t[i / Settings.read("graphics.grass_amount")]
+ if p in no_grass: continue
var origin := Vector3(random.randf_range(-.5, .5), 0.25, random.randf_range(-.5, .5)) + Vector3(p.x + 0.5, 0.0, p.y + 0.5)
var basis_ := (Basis(Vector3(0, 1, 0), random.randf_range(0, PI)) * Basis(Vector3(1, 0, 0), PI/2)).scaled(Vector3(0.75, 0.5, 0.75))
multimesh.set_instance_transform(i, Transform3D(basis_, origin))
diff --git a/client/map/tiles/house_balcony.gd b/client/map/tiles/house_balcony.gd
index 98fc63ac..210faaa5 100644
--- a/client/map/tiles/house_balcony.gd
+++ b/client/map/tiles/house_balcony.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_door.gd b/client/map/tiles/house_door.gd
index bcd35254..96c14459 100644
--- a/client/map/tiles/house_door.gd
+++ b/client/map/tiles/house_door.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_oriel.gd b/client/map/tiles/house_oriel.gd
index a659267b..828663f7 100644
--- a/client/map/tiles/house_oriel.gd
+++ b/client/map/tiles/house_oriel.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_roof.gd b/client/map/tiles/house_roof.gd
index 9e3e7b5c..30dfb517 100644
--- a/client/map/tiles/house_roof.gd
+++ b/client/map/tiles/house_roof.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_roof_chimney.gd b/client/map/tiles/house_roof_chimney.gd
index d46686d5..4d178788 100644
--- a/client/map/tiles/house_roof_chimney.gd
+++ b/client/map/tiles/house_roof_chimney.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_side.gd b/client/map/tiles/house_side.gd
index bca0317a..3fbaae9d 100644
--- a/client/map/tiles/house_side.gd
+++ b/client/map/tiles/house_side.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_tile.gd b/client/map/tiles/house_tile.gd
index cd0ff6c3..aba81f80 100644
--- a/client/map/tiles/house_tile.gd
+++ b/client/map/tiles/house_tile.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/house_wall.gd b/client/map/tiles/house_wall.gd
index fea2515d..e01fda08 100644
--- a/client/map/tiles/house_wall.gd
+++ b/client/map/tiles/house_wall.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/item_portal.gd b/client/map/tiles/item_portal.gd
index 6d292bde..23e14caf 100644
--- a/client/map/tiles/item_portal.gd
+++ b/client/map/tiles/item_portal.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,9 +14,10 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name ItemPortal
-extends CounterBase
+extends Tile
var model := preload("res://map/tiles/portal.tscn")
func _init(ctx: TileFactory.TileCC, type: float):
- super(ctx, model)
+ super(ctx)
+ base.add_child(model.instantiate())
model.configure(0.2, type)
diff --git a/client/map/tiles/lamp.gd b/client/map/tiles/lamp.gd
index d315f737..d99949ee 100644
--- a/client/map/tiles/lamp.gd
+++ b/client/map/tiles/lamp.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/light_tile.gd b/client/map/tiles/light_tile.gd
index 2476d8eb..2187ec6f 100644
--- a/client/map/tiles/light_tile.gd
+++ b/client/map/tiles/light_tile.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/oven.gd b/client/map/tiles/oven.gd
index ef47047f..14ff0758 100644
--- a/client/map/tiles/oven.gd
+++ b/client/map/tiles/oven.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Oven
-extends Counter
+extends CounterLike
var oven: OvenModel = load("res://map/tiles/oven.tscn").instantiate()
diff --git a/client/map/tiles/oven_model.gd b/client/map/tiles/oven_model.gd
index 9ad66bd6..644213ff 100644
--- a/client/map/tiles/oven_model.gd
+++ b/client/map/tiles/oven_model.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/path.gd b/client/map/tiles/path.gd
index 1127c0bf..cfb598ca 100644
--- a/client/map/tiles/path.gd
+++ b/client/map/tiles/path.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/player_portal.gd b/client/map/tiles/player_portal.gd
index c78bcf0a..a9bd7fa0 100644
--- a/client/map/tiles/player_portal.gd
+++ b/client/map/tiles/player_portal.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/portal.gd b/client/map/tiles/portal.gd
index dbb882c5..dc7d8700 100644
--- a/client/map/tiles/portal.gd
+++ b/client/map/tiles/portal.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -30,3 +30,8 @@ func _process(delta: float) -> void:
if abs(target_size - current_size) > 0.01:
current_size = G.interpolate(current_size, target_size, delta * 5.)
mat.set_shader_parameter("size", current_size)
+
+func configure(size: float, type: bool):
+ mat = $Mesh.get_active_material(0)
+ target_type = 1. if type else -1.
+ target_size = size
diff --git a/client/map/tiles/portal.gdshader b/client/map/tiles/portal.gdshader
index c5bc0be4..e3093b07 100644
--- a/client/map/tiles/portal.gdshader
+++ b/client/map/tiles/portal.gdshader
@@ -1,6 +1,6 @@
/*
Hurry Curry! - a game about cooking
- Copyright (C) 2025 Hurry Curry! Contributors
+ Copyright (C) 2026 Hurry Curry! Contributors
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
diff --git a/client/map/tiles/rolling_board.gd b/client/map/tiles/rolling_board.gd
index 00c28ba1..93db2989 100644
--- a/client/map/tiles/rolling_board.gd
+++ b/client/map/tiles/rolling_board.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/screen/screen.gd b/client/map/tiles/screen/screen.gd
index 3e059fc1..41667830 100644
--- a/client/map/tiles/screen/screen.gd
+++ b/client/map/tiles/screen/screen.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/screen/screen_model.gd b/client/map/tiles/screen/screen_model.gd
index 2a495dae..9f63fc3f 100644
--- a/client/map/tiles/screen/screen_model.gd
+++ b/client/map/tiles/screen/screen_model.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/sink.gd b/client/map/tiles/sink.gd
index 055cc353..4f9fffdf 100644
--- a/client/map/tiles/sink.gd
+++ b/client/map/tiles/sink.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Sink
-extends Counter
+extends CounterLike
var particles: SinkParticles = preload("res://map/tiles/sink_particles.tscn").instantiate()
var running: AudioStreamPlayer3D = AudioStreamPlayer3D.new()
diff --git a/client/map/tiles/sink_particles.gd b/client/map/tiles/sink_particles.gd
index 415b1d64..6674c21d 100644
--- a/client/map/tiles/sink_particles.gd
+++ b/client/map/tiles/sink_particles.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/stove.gd b/client/map/tiles/stove.gd
index 3adb6c91..13ae2c7e 100644
--- a/client/map/tiles/stove.gd
+++ b/client/map/tiles/stove.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Stove
-extends Counter
+extends CounterLike
func _init(ctx: TileFactory.TileCC):
super(ctx)
diff --git a/client/map/tiles/street.gd b/client/map/tiles/street.gd
index 38fb61f4..1ed21111 100644
--- a/client/map/tiles/street.gd
+++ b/client/map/tiles/street.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/table.gd b/client/map/tiles/table.gd
index 72352dac..4fe10323 100644
--- a/client/map/tiles/table.gd
+++ b/client/map/tiles/table.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/tile.gd b/client/map/tiles/tile.gd
index cd41ecc9..df7aa38d 100644
--- a/client/map/tiles/tile.gd
+++ b/client/map/tiles/tile.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -94,7 +94,6 @@ func set_item(i: Item):
item.remove()
item = i
if i != null:
- printt("I am", self, "and item", i, "now has item target", item_base.global_position)
i.owned_by = item_base
i.position_target = item_base.global_position
diff --git a/client/map/tiles/trash.gd b/client/map/tiles/trash.gd
index 36918b52..68e7f7d1 100644
--- a/client/map/tiles/trash.gd
+++ b/client/map/tiles/trash.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
@@ -14,7 +14,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
class_name Trash
-extends Counter
+extends CounterLike
func _init(ctx: TileFactory.TileCC):
super(ctx)
diff --git a/client/map/tiles/unknown_tile.gd b/client/map/tiles/unknown_tile.gd
index f3524834..aa6eee79 100644
--- a/client/map/tiles/unknown_tile.gd
+++ b/client/map/tiles/unknown_tile.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/wall.gd b/client/map/tiles/wall.gd
index 25289635..1c14de11 100644
--- a/client/map/tiles/wall.gd
+++ b/client/map/tiles/wall.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/wall_tile.gd b/client/map/tiles/wall_tile.gd
index 244b2294..01522609 100644
--- a/client/map/tiles/wall_tile.gd
+++ b/client/map/tiles/wall_tile.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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
diff --git a/client/map/tiles/window.gd b/client/map/tiles/window.gd
index f8444fff..9f8670a7 100644
--- a/client/map/tiles/window.gd
+++ b/client/map/tiles/window.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# 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