diff options
-rw-r--r-- | data/index.yaml | 3 | ||||
-rw-r--r-- | data/maps/tiny.yaml | 78 | ||||
-rw-r--r-- | server/src/state.rs | 4 |
3 files changed, 84 insertions, 1 deletions
diff --git a/data/index.yaml b/data/index.yaml index e00ff9f2..535a43ea 100644 --- a/data/index.yaml +++ b/data/index.yaml @@ -6,8 +6,9 @@ demands: maps: - lobby - - big + - tiny - small + - big recipes: - none diff --git a/data/maps/tiny.yaml b/data/maps/tiny.yaml new file mode 100644 index 00000000..58f8eae0 --- /dev/null +++ b/data/maps/tiny.yaml @@ -0,0 +1,78 @@ +# Undercooked - a game about cooking +# Copyright 2024 metamuffin +# +# 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/>. +# +map: + - "*''''*'''*'''*''*'''" + - "'''*''''*'*'*''''*'*" + - "''████▒███████▒███*'" + - "*'█tc.ctc.d...~.s█''" + - "''▒c...c..█.⌷C..L█'*" + - "*'█.......w.⌷⌷..R█*'" + - "*'█c......w.p⌷..T█*'" + - "'*█tc.....w.....F'*" + - "''█c....ct█oofSSX█''" + - "*'████dd█████▒████*'" + - "'*''''__'''''''''''*" + - "*'*'''______________" + - "'''*''_____________!" + - "'*''''''''''''''''''" + +tiles: + "⌷": counter + "f": counter + "p": counter + "t": table + "w": counter-window + "s": sink + "o": oven + "S": stove + "C": cuttingboard + "R": raw-steak-crate + "T": tomato-crate + "F": flour-crate + "L": leek-crate + "X": trash + + "c": chair + "~": floor + ".": floor + "'": grass + "*": tree + "!": path + "_": path + "d": door + "▒": wall-window + "█": wall + +items: + "S": pot + "w": plate + "p": plate + "f": foodprocessor + +chef_spawn: "~" +customer_spawn: "!" + +walkable: + - door + - floor + - chair + - grass + - path + +collider: + - wall + - wall-window + - tree diff --git a/server/src/state.rs b/server/src/state.rs index 4716d271..bba60108 100644 --- a/server/src/state.rs +++ b/server/src/state.rs @@ -28,6 +28,7 @@ enum Command { Effect { name: String, }, + Reload, End, } @@ -114,6 +115,9 @@ impl State { self.game .load(self.index.generate("lobby-none-none".to_string())?, None); } + Command::Reload => { + self.index.reload()?; + } Command::Effect { name } => { self.tx .send(PacketC::Communicate { |