aboutsummaryrefslogtreecommitdiff
path: root/pixel-client
diff options
context:
space:
mode:
Diffstat (limited to 'pixel-client')
-rw-r--r--pixel-client/.gitignore5
-rw-r--r--pixel-client/Cargo.toml26
-rw-r--r--pixel-client/README.md19
-rw-r--r--pixel-client/assets/connect.csv1
-rw-r--r--pixel-client/assets/font.ini96
-rw-r--r--pixel-client/assets/items.ini69
-rw-r--r--pixel-client/assets/misc.ini18
-rw-r--r--pixel-client/assets/palette.csv122
-rw-r--r--pixel-client/assets/textures/book.ta18
-rw-r--r--pixel-client/assets/textures/bread.ta16
-rw-r--r--pixel-client/assets/textures/bread_slice.ta21
-rw-r--r--pixel-client/assets/textures/burned.ta5
-rw-r--r--pixel-client/assets/textures/chair.ta30
-rw-r--r--pixel-client/assets/textures/chef.ta38
-rw-r--r--pixel-client/assets/textures/clouds.ta128
-rw-r--r--pixel-client/assets/textures/coconut.ta24
-rw-r--r--pixel-client/assets/textures/coconut_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/coconut_strawberry_puree_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/conveyor.ta38
-rw-r--r--pixel-client/assets/textures/conveyor_arrow_left.ta38
-rw-r--r--pixel-client/assets/textures/conveyor_arrow_up.ta38
-rw-r--r--pixel-client/assets/textures/counter.ta36
-rw-r--r--pixel-client/assets/textures/counter_window_ns_bottom.ta48
-rw-r--r--pixel-client/assets/textures/counter_window_ns_top.ta48
-rw-r--r--pixel-client/assets/textures/counter_window_we_bottom.ta48
-rw-r--r--pixel-client/assets/textures/counter_window_we_top.ta48
-rw-r--r--pixel-client/assets/textures/crate_back.ta36
-rw-r--r--pixel-client/assets/textures/crate_front.ta36
-rw-r--r--pixel-client/assets/textures/customer.ta38
-rw-r--r--pixel-client/assets/textures/cutting_board.ta36
-rw-r--r--pixel-client/assets/textures/door_ns.ta42
-rw-r--r--pixel-client/assets/textures/door_we.ta72
-rw-r--r--pixel-client/assets/textures/dough.ta16
-rw-r--r--pixel-client/assets/textures/dough_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/fish.ta19
-rw-r--r--pixel-client/assets/textures/fish_slice.ta16
-rw-r--r--pixel-client/assets/textures/floor.ta24
-rw-r--r--pixel-client/assets/textures/flour.ta16
-rw-r--r--pixel-client/assets/textures/flour_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/font/letter_100.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_101.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_102.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_103.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_104.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_105.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_106.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_107.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_108.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_109.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_110.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_111.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_112.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_113.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_114.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_115.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_116.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_117.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_118.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_119.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_120.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_121.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_122.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_123.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_124.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_125.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_126.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_127.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_32.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_33.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_34.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_35.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_36.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_37.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_38.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_39.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_40.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_41.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_42.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_43.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_44.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_45.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_46.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_47.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_48.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_49.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_50.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_51.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_52.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_53.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_54.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_55.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_56.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_57.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_58.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_59.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_60.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_61.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_62.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_63.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_64.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_65.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_66.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_67.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_68.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_69.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_70.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_71.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_72.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_73.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_74.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_75.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_76.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_77.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_78.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_79.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_80.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_81.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_82.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_83.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_84.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_85.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_86.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_87.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_88.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_89.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_90.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_91.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_92.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_93.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_94.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_95.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_96.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_97.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_98.ta12
-rw-r--r--pixel-client/assets/textures/font/letter_99.ta12
-rw-r--r--pixel-client/assets/textures/foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/freezer.ta42
-rw-r--r--pixel-client/assets/textures/glass.ta19
-rw-r--r--pixel-client/assets/textures/grass.ta30
-rw-r--r--pixel-client/assets/textures/interact_target_thick.ta24
-rw-r--r--pixel-client/assets/textures/interact_target_thin.ta24
-rw-r--r--pixel-client/assets/textures/itembubble.ta32
-rw-r--r--pixel-client/assets/textures/leek.ta18
-rw-r--r--pixel-client/assets/textures/leek_in_pot.ta10
-rw-r--r--pixel-client/assets/textures/milk_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/milk_strawberry_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/mochi_dough.ta8
-rw-r--r--pixel-client/assets/textures/nigiri_rice.ta15
-rw-r--r--pixel-client/assets/textures/oven.ta40
-rw-r--r--pixel-client/assets/textures/particle.ta2
-rw-r--r--pixel-client/assets/textures/path.ta24
-rw-r--r--pixel-client/assets/textures/plate.ta23
-rw-r--r--pixel-client/assets/textures/plate_dirty.ta23
-rw-r--r--pixel-client/assets/textures/pot_back.ta20
-rw-r--r--pixel-client/assets/textures/pot_front.ta20
-rw-r--r--pixel-client/assets/textures/rice.ta22
-rw-r--r--pixel-client/assets/textures/rice_cooked_in_pot.ta6
-rw-r--r--pixel-client/assets/textures/rice_flour.ta5
-rw-r--r--pixel-client/assets/textures/rice_flour_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/rice_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/rice_in_pot.ta6
-rw-r--r--pixel-client/assets/textures/sink.ta36
-rw-r--r--pixel-client/assets/textures/solid.ta1
-rw-r--r--pixel-client/assets/textures/steak.ta20
-rw-r--r--pixel-client/assets/textures/steak_in_pot.ta9
-rw-r--r--pixel-client/assets/textures/steak_raw.ta20
-rw-r--r--pixel-client/assets/textures/steak_raw_in_pot.ta9
-rw-r--r--pixel-client/assets/textures/stove.ta36
-rw-r--r--pixel-client/assets/textures/strawberry.ta23
-rw-r--r--pixel-client/assets/textures/strawberry_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/strawberry_icecream.ta14
-rw-r--r--pixel-client/assets/textures/strawberry_icecream_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/strawberry_mochi.ta15
-rw-r--r--pixel-client/assets/textures/strawberry_puree_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/strawberry_shake_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/strawberry_shake_glass.ta19
-rw-r--r--pixel-client/assets/textures/table.ta36
-rw-r--r--pixel-client/assets/textures/tomato.ta17
-rw-r--r--pixel-client/assets/textures/tomato_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/tomato_juice_foodprocessor.ta26
-rw-r--r--pixel-client/assets/textures/tomato_juice_in_pot.ta12
-rw-r--r--pixel-client/assets/textures/tomato_slice.ta14
-rw-r--r--pixel-client/assets/textures/tomato_soup.ta18
-rw-r--r--pixel-client/assets/textures/tomato_soup_in_pot.ta16
-rw-r--r--pixel-client/assets/textures/trash.ta36
-rw-r--r--pixel-client/assets/textures/tree.ta72
-rw-r--r--pixel-client/assets/textures/wall_ns.ta47
-rw-r--r--pixel-client/assets/textures/wall_we.ta42
-rw-r--r--pixel-client/assets/textures/wall_wen.ta54
-rw-r--r--pixel-client/assets/textures/wall_wens.ta54
-rw-r--r--pixel-client/assets/textures/wall_wes.ta48
-rw-r--r--pixel-client/assets/textures/wall_wn.ta54
-rw-r--r--pixel-client/assets/textures/wall_wns.ta54
-rw-r--r--pixel-client/assets/textures/wall_ws.ta48
-rw-r--r--pixel-client/assets/textures/water_glass.ta19
-rw-r--r--pixel-client/assets/textures/window.ta42
-rw-r--r--pixel-client/assets/tiles.ini55
-rw-r--r--pixel-client/makefile63
-rw-r--r--pixel-client/src/config.rs60
-rw-r--r--pixel-client/src/game.rs518
-rw-r--r--pixel-client/src/helper.rs33
-rw-r--r--pixel-client/src/main.rs180
-rw-r--r--pixel-client/src/menu/background.rs97
-rw-r--r--pixel-client/src/menu/credits.rs52
-rw-r--r--pixel-client/src/menu/ingame.rs78
-rw-r--r--pixel-client/src/menu/main.rs116
-rw-r--r--pixel-client/src/menu/mod.rs22
-rw-r--r--pixel-client/src/menu/settings.rs66
-rw-r--r--pixel-client/src/profiler.rs66
-rw-r--r--pixel-client/src/render/font.rs68
-rw-r--r--pixel-client/src/render/misc.rs46
-rw-r--r--pixel-client/src/render/mod.rs192
-rw-r--r--pixel-client/src/render/sprite.rs123
-rw-r--r--pixel-client/src/strings.rs45
-rw-r--r--pixel-client/src/tilemap.rs116
-rw-r--r--pixel-client/src/ui.rs273
-rw-r--r--pixel-client/tools/Cargo.toml12
-rw-r--r--pixel-client/tools/src/bin/bunnymark.rs106
-rw-r--r--pixel-client/tools/src/bin/tex_compose.rs135
-rw-r--r--pixel-client/tools/src/bin/tex_export.rs75
-rw-r--r--pixel-client/tools/src/bin/tex_import.rs75
-rw-r--r--pixel-client/tools/src/bin/tex_pack.rs95
-rw-r--r--pixel-client/tools/src/lib.rs1
223 files changed, 0 insertions, 6937 deletions
diff --git a/pixel-client/.gitignore b/pixel-client/.gitignore
deleted file mode 100644
index 1988a3bb..00000000
--- a/pixel-client/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-*.png
-/assets/atlas.ta
-/assets/atlas.meta.csv
-/assets/sprites
-/icon.png
diff --git a/pixel-client/Cargo.toml b/pixel-client/Cargo.toml
deleted file mode 100644
index 4d057627..00000000
--- a/pixel-client/Cargo.toml
+++ /dev/null
@@ -1,26 +0,0 @@
-[package]
-name = "pixelcurry"
-version = "0.1.0"
-edition = "2021"
-
-[dependencies]
-sdl2 = { version = "0.38.0", features = ["gfx", "ttf", "mixer"] }
-hurrycurry-protocol = { path = "../server/protocol" }
-hurrycurry-client-lib = { path = "../server/client-lib", default-features = false, features = [
- "sync-network",
-] }
-tungstenite = { version = "0.27.0", features = ["rustls-tls-native-roots"] }
-serde_json = "1.0.145"
-log = "0.4.28"
-env_logger = "0.11.8"
-anyhow = "1.0.99"
-clap = { version = "4.5.47", features = ["derive"] }
-rustls = { version = "0.23.31", features = ["ring"] }
-rand = "0.9.2"
-xdg = "3.0.0"
-toml = "0.9.6"
-serde = { version = "1.0.225", features = ["derive"] }
-users = "0.11.0"
-
-[features]
-bundle_sdl2 = ["sdl2/bundled"]
diff --git a/pixel-client/README.md b/pixel-client/README.md
deleted file mode 100644
index 93a0bac0..00000000
--- a/pixel-client/README.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Hurry Curry! Pixel Client
-
-An experimental version of the game that uses pixel-art rendering to allow
-smooth playing even on low-end devices. The pixel client is discontinued however
-and should be rewritten entirely in the future.
-
-## Building
-
-- Requirements:
- - Nightly rust toolchain
- - SDL2 development libraries (including gfx, ttf and mixer extensions)
-
-```
-make pixel-client
-```
-
-## Usage
-
-- `./target/release/pixelcurry`
diff --git a/pixel-client/assets/connect.csv b/pixel-client/assets/connect.csv
deleted file mode 100644
index 9278f64c..00000000
--- a/pixel-client/assets/connect.csv
+++ /dev/null
@@ -1 +0,0 @@
-wall,door,wall-window,counter-window
diff --git a/pixel-client/assets/font.ini b/pixel-client/assets/font.ini
deleted file mode 100644
index f033334f..00000000
--- a/pixel-client/assets/font.ini
+++ /dev/null
@@ -1,96 +0,0 @@
-letter_32=font/letter_32
-letter_33=font/letter_33
-letter_34=font/letter_34
-letter_35=font/letter_35
-letter_36=font/letter_36
-letter_37=font/letter_37
-letter_38=font/letter_38
-letter_39=font/letter_39
-letter_40=font/letter_40
-letter_41=font/letter_41
-letter_42=font/letter_42
-letter_43=font/letter_43
-letter_44=font/letter_44
-letter_45=font/letter_45
-letter_46=font/letter_46
-letter_47=font/letter_47
-letter_48=font/letter_48
-letter_49=font/letter_49
-letter_50=font/letter_50
-letter_51=font/letter_51
-letter_52=font/letter_52
-letter_53=font/letter_53
-letter_54=font/letter_54
-letter_55=font/letter_55
-letter_56=font/letter_56
-letter_57=font/letter_57
-letter_58=font/letter_58
-letter_59=font/letter_59
-letter_60=font/letter_60
-letter_61=font/letter_61
-letter_62=font/letter_62
-letter_63=font/letter_63
-letter_64=font/letter_64
-letter_65=font/letter_65
-letter_66=font/letter_66
-letter_67=font/letter_67
-letter_68=font/letter_68
-letter_69=font/letter_69
-letter_70=font/letter_70
-letter_71=font/letter_71
-letter_72=font/letter_72
-letter_73=font/letter_73
-letter_74=font/letter_74
-letter_75=font/letter_75
-letter_76=font/letter_76
-letter_77=font/letter_77
-letter_78=font/letter_78
-letter_79=font/letter_79
-letter_80=font/letter_80
-letter_81=font/letter_81
-letter_82=font/letter_82
-letter_83=font/letter_83
-letter_84=font/letter_84
-letter_85=font/letter_85
-letter_86=font/letter_86
-letter_87=font/letter_87
-letter_88=font/letter_88
-letter_89=font/letter_89
-letter_90=font/letter_90
-letter_91=font/letter_91
-letter_92=font/letter_92
-letter_93=font/letter_93
-letter_94=font/letter_94
-letter_95=font/letter_95
-letter_96=font/letter_96
-letter_97=font/letter_97
-letter_98=font/letter_98
-letter_99=font/letter_99
-letter_100=font/letter_100
-letter_101=font/letter_101
-letter_102=font/letter_102
-letter_103=font/letter_103
-letter_104=font/letter_104
-letter_105=font/letter_105
-letter_106=font/letter_106
-letter_107=font/letter_107
-letter_108=font/letter_108
-letter_109=font/letter_109
-letter_110=font/letter_110
-letter_111=font/letter_111
-letter_112=font/letter_112
-letter_113=font/letter_113
-letter_114=font/letter_114
-letter_115=font/letter_115
-letter_116=font/letter_116
-letter_117=font/letter_117
-letter_118=font/letter_118
-letter_119=font/letter_119
-letter_120=font/letter_120
-letter_121=font/letter_121
-letter_122=font/letter_122
-letter_123=font/letter_123
-letter_124=font/letter_124
-letter_125=font/letter_125
-letter_126=font/letter_126
-letter_127=font/letter_127
diff --git a/pixel-client/assets/items.ini b/pixel-client/assets/items.ini
deleted file mode 100644
index 7fcff029..00000000
--- a/pixel-client/assets/items.ini
+++ /dev/null
@@ -1,69 +0,0 @@
-tomato=tomato
-raw-steak=steak_raw
-flour=flour
-leek=leek
-rice=rice
-fish=fish
-coconut=coconut
-strawberry=strawberry
-
-
-foodprocessor=foodprocessor
-dough-foodprocessor=dough_foodprocessor
-flour-foodprocessor=flour_foodprocessor
-tomato-foodprocessor=tomato_foodprocessor
-tomato-juice-foodprocessor=tomato_juice_foodprocessor
-strawberry-foodprocessor=strawberry_foodprocessor
-strawberry-puree-foodprocessor=strawberry_puree_foodprocessor
-coconut-foodprocessor=coconut_foodprocessor
-milk-foodprocessor=milk_foodprocessor
-coconut-strawberry-puree-foodprocessor=coconut_strawberry_puree_foodprocessor
-milk-strawberry-foodprocessor=milk_strawberry_foodprocessor
-strawberry-shake-foodprocessor=strawberry_shake_foodprocessor
-strawberry-icecream-foodprocessor=strawberry_icecream_foodprocessor
-rice-foodprocessor=rice_foodprocessor
-rice-flour-foodprocessor=rice_flour_foodprocessor
-
-
-pot=pot_back,pot_front
-rice-flour-pot=pot_back,rice_flour~x4~y12,pot_front
-burned-pot=pot_back,burned~x4~y12,pot_front
-raw-steak-pot=pot_back,steak_raw_in_pot~x4~y11,pot_front
-steak-pot=pot_back,steak_in_pot~x4~y11,pot_front
-leek-pot=pot_back,leek_in_pot~x5~y11,pot_front
-tomato-soup-pot=pot_back,tomato_soup_in_pot~x2~y3,pot_front
-tomato-juice-pot=pot_back,tomato_juice_in_pot~x2~y7,pot_front
-leek-tomato-juice-pot=pot_back,tomato_juice_in_pot~x2~y7,leek_in_pot~x5~y11,pot_front
-rice-pot=pot_back,rice_in_pot~x3~y11,pot_front
-cooked-rice-pot=pot_back,rice_cooked_in_pot~x3~y11,pot_front
-mochi-dough-pot=pot_back,mochi_dough~x6~y10,pot_front
-
-
-sliced-tomato=tomato_slice
-sliced-fish=fish_slice
-bread=bread
-burned=burned
-dough=dough
-bread-slice=bread_slice
-nigiri=nigiri_rice,fish_slice~y4
-mochi-dough=mochi_dough
-strawberry-mochi=strawberry_mochi
-
-
-glass=glass
-strawberry-shake-glass=strawberry_shake_glass
-water-glass=water_glass
-
-
-plate=plate
-dirty-plate=plate_dirty~y3
-tomato-slice-plate=plate,tomato_slice~x6~y5
-strawberry-icecream-plate=plate,strawberry_icecream~y6~x5
-steak-plate=plate,steak~y3
-bread-slice-plate=plate,bread_slice~x3~y2
-bread-slice-steak-plate=plate,bread_slice~x3~y2,steak~y3
-bread-slice-sliced-tomato-plate=plate,bread_slice~x3~y2,tomato_slice~x6~y5
-bread-slice-sliced-tomato-steak-plate=plate,bread_slice~x3~y2,steak~y3,tomato_slice~x6~y5
-sliced-tomato-steak-plate=plate,steak~y3,tomato_slice~x6~y5
-tomato-soup-plate=plate,tomato_soup~x4~y3
-nigiri-plate=plate,nigiri_rice~x4~y3,fish_slice~x4~y7
diff --git a/pixel-client/assets/misc.ini b/pixel-client/assets/misc.ini
deleted file mode 100644
index 1647caac..00000000
--- a/pixel-client/assets/misc.ini
+++ /dev/null
@@ -1,18 +0,0 @@
-
-chef=chef
-customer=customer
-interact-target-thick=interact_target_thick
-interact-target-thin=interact_target_thin
-solid=solid
-particle=particle
-
-conveyor-arrow=conveyor_arrow_up
-conveyor-arrow=ns:conveyor_arrow_up~vflip
-conveyor-arrow=sn:conveyor_arrow_up
-conveyor-arrow=ew:conveyor_arrow_left
-conveyor-arrow=we:conveyor_arrow_left~hflip
-
-icon=pot_back,steak_in_pot~x4~y11,pot_front
-
-clouds=clouds
-itembubble=itembubble
diff --git a/pixel-client/assets/palette.csv b/pixel-client/assets/palette.csv
deleted file mode 100644
index 87376994..00000000
--- a/pixel-client/assets/palette.csv
+++ /dev/null
@@ -1,122 +0,0 @@
- ,0,0,0,0
-a,255,255,255,255
-b,242,242,242,255
-c,230,230,230,255
-d,217,217,217,255
-e,204,204,204,255
-f,191,191,191,255
-g,178,178,178,255
-h,166,166,166,255
-i,153,153,153,255
-j,140,140,140,255
-k,128,128,128,255
-l,115,115,115,255
-m,102,102,102,255
-n,89,89,89,255
-o,76,76,76,255
-p,64,64,64,255
-q,51,51,51,255
-r,38,38,38,255
-s,26,26,26,255
-t,0,0,0,255
-u,242,252,36,255
-v,255,234,0,255
-w,254,167,17,255
-x,254,139,104,255
-y,251,59,2,255
-z,254,53,33,255
-A,208,0,0,255
-B,168,31,61,255
-C,120,4,34,255
-D,43,0,0,255
-E,241,226,197,255
-F,254,228,179,255
-G,254,218,187,255
-H,254,194,142,255
-I,216,143,87,255
-J,189,99,64,255
-K,162,64,43,255
-L,99,53,45,255
-M,107,40,51,255
-N,52,18,12,255
-O,231,203,143,255
-P,209,179,139,255
-Q,193,177,127,255
-R,215,152,11,255
-S,255,177,0,255
-T,254,139,0,255
-U,255,106,0,255
-V,183,65,0,255
-W,95,62,29,255
-X,59,35,0,255
-Y,254,202,218,255
-Z,254,101,203,255
-0,254,19,146,255
-1,221,48,98,255
-2,192,74,109,255
-3,137,22,136,255
-4,77,38,137,255
-5,68,21,33,255
-6,44,17,57,255
-7,36,20,34,255
-8,255,255,125,255
-9,255,255,0,255
-!,255,127,0,255
-",255,125,125,255
-§,255,125,255,255
-$,255,0,254,255
-%,255,0,127,255
-&,255,0,0,255
-/,127,0,0,255
-(,10,10,0,255
-),246,253,255,255
-=,233,247,255,255
-?,207,230,254,255
-[,170,199,254,255
-],119,179,254,255
-{,30,116,253,255
-},0,70,170,255
-^,47,68,118,255
-+,0,48,82,255
--,14,14,37,255
-*,238,245,240,255
-~,214,229,222,255
-#,172,216,185,255
-',108,173,198,255
-.,66,169,175,255
-:,0,127,127,255
-;,73,103,92,255
-\,46,78,78,255
-<,29,50,57,255
->,15,28,33,255
-|,216,255,244,255
-ö,184,244,245,255
-ä,174,204,181,255
-ü,118,197,120,255
-Ö,53,135,87,255
-Ä,64,155,104,255
-Ü,70,135,104,255
-ß,31,81,43,255
-¿,42,60,55,255
-¡,18,46,29,255
-ẞ,239,255,201,255
-Æ,230,243,133,255
-æ,188,245,28,255
-€,212,220,24,255
-Ø,130,211,34,255
-ł,92,127,0,255
-Ł,89,147,43,255
-Ω,41,127,0,255
-€,0,67,32,255
-«,28,51,34,255
-»,0,255,127,255
-‹,0,255,0,255
-›,125,255,125,255
-„,125,255,255,255
-“,0,255,255,255
-@,125,125,255,255
-Ŧ,127,0,255,255
-ŧ,0,0,255,255
-ø,63,0,127,255
-¤,0,0,127,255
-°,255,255,255,128
diff --git a/pixel-client/assets/textures/book.ta b/pixel-client/assets/textures/book.ta
deleted file mode 100644
index b9ca1ad6..00000000
--- a/pixel-client/assets/textures/book.ta
+++ /dev/null
@@ -1,18 +0,0 @@
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-33333333333333
-$$$$$$$$$$$$$$
-$GGGGGGGGGGGG
-$cccccccccccc
-$$$$$$$$$$$$$$
diff --git a/pixel-client/assets/textures/bread.ta b/pixel-client/assets/textures/bread.ta
deleted file mode 100644
index 5f4c8b85..00000000
--- a/pixel-client/assets/textures/bread.ta
+++ /dev/null
@@ -1,16 +0,0 @@
- KKK
- KKLLKKKKLLKK
- LLLKKLLKKKLLLKKLL
- KLLKKLLKKKKLLKKKLLLK
- KKLLKKLLKKKLLKKKKLLKKK
- KKLLKKKLLKKKLLKKKKLLKKK
- KKLLKKKLKKKKLLKKKKLKKKKK
- KKKLKKKKKKKKKKLKKKKLLKKKKK
- KKKKKKKKKKKKKKKKKKKKKKKKKK
-LLKKKKKKKKKKKKKKKKKKKKKKKKL
-LLLKKKKKKKKKKKKKKKKKKKKKLLL
-LLLLLKKKKKKKKKKKKKKKKKLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLLLLLLL
diff --git a/pixel-client/assets/textures/bread_slice.ta b/pixel-client/assets/textures/bread_slice.ta
deleted file mode 100644
index 658b2d36..00000000
--- a/pixel-client/assets/textures/bread_slice.ta
+++ /dev/null
@@ -1,21 +0,0 @@
- LLLLLLLLLLLL
- LLLLLLLLLLLLLLLL
- LLLLLJJJJJJJJLLLLL
- LLLLJJJJJJJJJJJJLLLL
-LLLLJJJJJJJJJJJJJLLLL
-LLLJJJJJJJJJJJJJJJLLLL
-LLLJJJJJJJJJJJJJJJJLLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLJJJJJJJJJJJJJJJJJJLL
-LLLJJJJJJJJJJJJJJJJLLL
- LLLLLLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLLLL
diff --git a/pixel-client/assets/textures/burned.ta b/pixel-client/assets/textures/burned.ta
deleted file mode 100644
index fa13c7cb..00000000
--- a/pixel-client/assets/textures/burned.ta
+++ /dev/null
@@ -1,5 +0,0 @@
- (D((((DD
- ((>(>>>>(((
-((D>((Dt>>((D(
- ((((>tDtDD((
- ((((>(((
diff --git a/pixel-client/assets/textures/chair.ta b/pixel-client/assets/textures/chair.ta
deleted file mode 100644
index f739e389..00000000
--- a/pixel-client/assets/textures/chair.ta
+++ /dev/null
@@ -1,30 +0,0 @@
- JJJJJJJJJJJJJJ
- JJJJJJJJJJJJJJJJJJ
- JJJJJJJJJJJJJJJJJJJJJK
- JJJJJJJJJJJJJJJJJJJJJJKK
- JJJJJJJJJKKJJKKKKJJJJJJJKK
- JJJJJJJJJJJJJJJJJJKJJJJJJKK
- JJJJJJJKJJJJJJJJJJJJJJJJJJJK
- JJJJJJJKJJJJJJJJJJJJJJJJJJJJKK
- JJJJJJKJJJJJJJJJJJJJJJJJKJJJJK
- JJJJJKJJJJJJJJJJJJJJJJJJJKJJJKK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJKJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJKJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJKJJJJ
-LKJJJJKJJJJJJJJJJJJJJJJJJJKJJJJJ
-LKJJJJKJJJJJJJJJJJJJJJJJJJJJJJJJ
- KKJJJJKJJJJJJJJJJJJJJJJJJJJJJJL
- LKKJJJJKJJJJJJJJJJJJJJJJJJJJJLL
- LLKJJJJJJJJJJJJJJJJJJJKJJJJJJL
- LKKJJJJJJJJJJJJJJJJKKJJJJJJL
- LKKJJJJJJKKJJJJJKJJJJJJJJLL
- LLKKKKJJJJJKKJJJJJJJJJJJLL
- mLLLKKKJJJJJJJJJJJJJJJLLLm
- mmLLLLKKKJJJJJJJJJJJLLLLm
- mmmjLLLLLLKKKJJJLLLLLLmmm
- mmmjjLLLLLLLLLLLLLLmmmm
- mmjjjjjjLLLLLLjjmmmmm
- mmjjjjjjjjjjjjmmmmm
- mmmjjjjjjjjjjmmmm
- mmmmmjjjjjmmm
diff --git a/pixel-client/assets/textures/chef.ta b/pixel-client/assets/textures/chef.ta
deleted file mode 100644
index 065a3255..00000000
--- a/pixel-client/assets/textures/chef.ta
+++ /dev/null
@@ -1,38 +0,0 @@
- eeeeeecccee
- ececcccceaee
- ecaeeeeccaae
- eaaaaaaacaae
- eacaaacaaace
- eacacacaaace
- eaceeeeeeeee
- eeeevvvvvvv
- vvvvvvvvvvvv
- vvvvvvvvvvvv
- vvvvvvvvvvvv
- vvvvvvvvvvv
- Rvvvvvvvvvv
- RvvvvvvvvvR
- RvvvvvvvR
- RRvvvRR
- wwwwRRwww
- wwwwwwwvvvv
- wwwwvvvvvvvv
- vvwvvvvvvvvvv
- vvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvvvvvv
- wvvvvvvvvvvvvvvvvvvvvvvvvw
- wwvvvvvvvvvvvvvvvvvvvvvvww
- wwwvvvvvvvvvvvvvvvvvvvwww
- wwwwwvvvvvvvvvvvvvvvwwww
- wwwwwwwvvvvvvvvvvwwwww
- wwwwwwwwwwwwwwwwwwww
- wwwwwwwwwwwwwwww
- wwwwwwwwwwwwww
- wwwwwwwwwwww
diff --git a/pixel-client/assets/textures/clouds.ta b/pixel-client/assets/textures/clouds.ta
deleted file mode 100644
index f5b59c2b..00000000
--- a/pixel-client/assets/textures/clouds.ta
+++ /dev/null
@@ -1,128 +0,0 @@
-][[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[?[[[[[[[[[]]]]]]]]]]]]{{{{{{{{{]{{]]][[[[[[]]]{]]]]]]]]]]]]]]]]]}}}]]]]]]
-]][[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[????[[[[[[[[[]]]]]]]]]]{{}}}{{{{{{{{]]][[[[]]{{{]]]]]]]]]][[[[]]]}}}]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[??????[[[[[[[[[]]]]]]]]{{}}}}}}{{{{{{{]]][[]]{{{{]]]]]]]]][[[[[[[]]]}}]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[?????????????[[]]]]]]]{{{}}}}}}}{{{{{{]]]]]{{{{{{]]][[[[[[[[[[[[[[[[]]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[?[[??????????????[[]]]]]]{{{}}}}}}}}{{{{{{{]{{{{{{{]]][[[[[[[[[[[[[[[[[[]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[]]]]]][[[[[[[[[[[[??????????????????[]]]]]]{{{}}}}{{{{{{{{{{{{{{{{{{]]][[[[[[[[[[[[[[[[[[[[]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[]]]]]]][[[[[[[[[[[[[????????????????[]]]]]]]{}}}}{{{{{{{{{{{{{{{{{{{]][[[[[[[[[[[[[[[[[[[[[]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]][[[]]]]]]]]]]][[[[[[[[[[[???????????????[[]]]]]]]]}}}{{{{{{{{{{{{{{{{{{{]]][[[[[[[[[[[[????????[[]]]]
-]]]]]]]]]]}]]]]{]]]]]]]]]]]]]]]]]]]{]{{]][[[[[[[[[[[[??????????????[]]]]]]]]]{}}{{{{{{{{{{{{{{{{{{]]][[[[[[[[[[[[?????????[[]]]]
-]]]]]]]]]]}}}}}{{{{{]]]]]]]]]]]]]]{{}{{{][[[[[[[[[[[??????????????[]]]]]]]]]{{}}{{{{{{{{{{{{{{{{{]]]][[[[[[[[[[???????????[[[[[[
-??]]]]}}}}}}}}}}{{{{{]]]]]]]]]]]]]{{}}}{][[[[[[[[[[[????????????[[[[]]]]{{{{{{}}}{{{{{{{{{{]]]]]]]]]][[[[[[[[[[???????????[[[[[[
-????]]}}}}}}}}}}{{{{{{]]]]]]]]]{{{{{{}}{][[[[[[[[[[[????????????[[[[[[[{{{{{{}}}}}{{{{{{{{]]]]]]]]]]]][[[[[[?[[???????????[[[[[?
-?????]]}}}}}}}}}}{{{{{{]]]]]]]{{{{{{{{{{][[[[[[[[[[[????????????[[[[[[[{{}}}}}}}}}}{{{{{]]]]]]]]]]]][[[[[[????????????????[[[???
-??????]]}}}}}}}}}}{{{{{]]]]]]{{{{{{{{{{]][[[[[[[[[[[[???????????[[[[[[[{{}}}}}}{{{{{{{{]]]]]]]]][[[[[[[?????????????????????????
-???????]]}}}}}}}}{{{{]]]]]]]{{{{{{{{{{]]]][[[[[[[[[[[[[[[[[??[[[[[[[[[{{{}}}}}{{{{{{]]]]]]]]]]]][[[[[???????????????????????????
-????????]]}}}}}}{{{]]]]]]]]]{{{{{{{{{{]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[{{{{{}}}}{]]]]]]]]]]]]]]]][[[[[????????????????????????????
-?????????]]{}}}}{{]]]]]]]]]]{{{{{{{{]]]]]]][[[[[[[[[[[[[[[[[[[[[[{{{{{{{{{}}}}{]]]]]]]]]]]]]]][[[[[?????????????????????????????
-?????????]]{}}}}{{]]]]]]]]]]]{{{{{{]]]]]]]]]][[[[[[[[[[[[[[[[[[]]]]{{{{{{{{}}}{]]]]]]]]]]]]]][[[[[??????????????????????????????
-?????????]]]{}}}{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[]]]]]]]{{{{{{{{]]]]]]]]]]]]]]][[[[???????????????????????????????
-?????????]]]{{}}{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[]]][[[]]]]]]]]{{{]]]]]]][]]]]]]]]]]][[[????????????????????????????????
-????????]]]]{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[]]]]][[[]]]]]]]{{]]]]]]]][[]]]]]]]]]][[[????????????????????????????????
-????????]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[]]{]][[[[]]]]]{{{]][[]][[[[[]]]]]]]]][[[????????????????????????????????
-????????]]][[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{]]]]][[]]{]][[[[[]]]{{{]]][[[[[[[[[]]]]]]]]]][[????????????????????????????????
-?????????[[[[[[[]][[[]]]]]]]]]]]]]]]{]]]]]{{{{{{{{]]]][[[]{]][[[[]]]{{}{{]]][[[[[[[[]]]]]]]]]][[[???????????????????????????????
-??????????[[[[[[[[[[]]]]]]]]]]]]]]]{{{{]{{{{{{{{{{{]]][[[]]]][[[]]]{{{}}{]]]]][[[[[]]]]]{]]]]]][[[[??[??????????????????????????
-???[[[[[[??[[[[[[[[[]]]]{{]]]{{{]]{{{{{{{{{{{{{{{{{]][[[[]]]][[]]]]{{}}}{]]]]]]]]]]]]]{{{{{{{{{[[[[[[[[[[???????????????????????
-??[[[[[[[??[[[[[[[[[]]]{{{{{{{{{{{{{{{{{{{{{{{{{{{]][[[[[[][[[[]]]{{{}}}{]]]]]]]]]]]]]{{{{{{{{{{[[[[[[[[[[[[????????????????????
-?[[[[[[[[??[[[[[[[[]]]{{{{{{{{{{{{{{{{{{{{{{{{{{]]]][[[[[[[[[[]]]{{{}}}{]]]]]]]]]]]]]]]{{{{{{{{{{[[[[[[[[[[[[[[[[???????????????
-??[[[[[[???[[[[[[[[]]]{{{{{{{{{{{{{{{{{{{{{{{{{]]]]]][[[[[]]]]]]]{{{}}{]]]]]]]]]]]]]]]]]{{{{{{{{{{{{[[[[[[[[[[[[[[[?????????????
-??????????]]][[[[[[]]]{{{{{{{{{{{{{{{{{{{{{{{{{]]]]]]][[[]]]]]]]]]{{{{]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{[[[[[[[[[[[[[[[????????????
-??]]]]]]]]]]]]][[[]]]]{{{{{{{{{}}}{{{{{{{{{{{{]]]]]]]]][]]]]]]]]]]{{]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{[[[[[[[[[[[[[[[????????????
-]]]]{{{{]]]]]]]][[]]]]]{{{{{{{{}}}}}{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{}}{{{{{{{{{[[[[[[[[[[[[[[[[[[[[[[
-]]]{{{{{]]]]]]]]]]]]]]]{{{{{{{}}}}}}{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{}}}}}{{{{{{{{{[[[[[[[[[[[[[[[[[[[[[
-]]{{{{{{{]]]]]]]]]]]]]]]{{{{{{}}}}}}{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{}}}}}{{{{{{{{{{[[[[[[[[[[[[[[[]]]]]
-}{{{{{{{{{]]]]]]]]]]]]]]]{{{{{{}}}{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{}}}}{{{{{{{{{{{]]][]]]]]]]]]]]]]]]
-}{{{{{{{{{{{]]]]]]]]]]]]]{{{{{{{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{}}}}}{{{{{{{{{{{{]]{{{{{{{{{{}}}}}
-}{{{{{{{{{{{{{]]]]]]]]{{{{{{{{{{{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{}}}}}{{{{{{{{{{{{{{{{{{{{{}}}}}}}
-{{{{{{{{{{{{{{]]]]]]]]]{{{{{{{{{{{{{{{{{{{{{{{{{{]]{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{{}}}}}}{{{{{{{{{{{{{{{{{{{{}}}}}}}
-{{{{{{{{{{{{{]]][[]]]]]]{{{{{{{{{}}{{{{{{{{{{{{{{{{{{{{]]]]]]]]]]]]][[[[[[]]]]]]]{{{{{{{{{{{{{{{{{{}}}{{{{{{{}}}}{{{{{{{}}}}}}}}
-{{{{{{{{{{{{]]]][[]]]]]]{{{{{{{{{}}}}}{{{{{{{{{{{{{{{{{]]]]]]]]]][[[[[[[[[[[]]]]{{{{{{{{{{}}}{{{{{{{{{{{{{{}}}}}}}}{{{{}}}}}}}}}
-{{{{{{{{{{{]]]]][[[]]]]]]]]]{{{{{{{}}}}{{{{}{{{{{{{{{{]]]]]]]]][[[[[[[[[[[[[[]]]]]]{{{{{{{}}}{{{{{{]]{{{{{{{{{}}}}}}}}}}}}}}}}}}
-{{{{{{{{{{]]]]]][[[[]]]]]]]]]{{{{{{{{}}}}}}}{{{{{{{{{]]]]]]]]][[[[[[[[[[[[[[[[[[[]]]{{{{{{{}{{{{]]]]]]]]{{{]]{{{{}}}}}}}}}}}}}}}
-{{{{{{{{{{]]]]]][[[[]]]]]]]]]]]]]]{{{{}}}}}}{{{{{{]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[]]{{{{{{{{{{]]]]]]]]]]]]]]]]]{{}}}}}}}}}}}}}}
-{{{{{{{{{]]]]]][[[[[]]]]]]]]]]]]]]]]{{}}}}}}{{{{]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[]]]{{{{{{{{]]]]]]]]]]]]]]]]]]]]]}}}}}}}}}}}}{
-{{{{{{{{{]]]]]][[[[[[[[[[[[]]]]]]]]]]{{}}}{{{{{]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[]]]{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]}}}}}}}}}}{
-{{{{{{{{{]]]]]][[[[[[[[[[[[[]]]]]]]]]{{{{{{{{{{{]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{}}}}}}}{{
-{{{{{{{{]]]]]][[[[[[[[[[[[[[[[]]]]]]]{{{{{{{{{{{]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{}}}{{
-{{{{{{{{]]]]]][[[[[[[[[[[[[[[[[]]]]]]]{{{{{{{{{{]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{
-]{{{{{{{]]]]][[[[[[[[[[[[[[[[[[]]]]]]{{{{{{{{{{{]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{]
-]]{{{{{{]]]]][[[[[[[[[[[[[[[[[]]]]]]]{{{{{{{{{{]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{]]
-{{{{{{{{{]]]][[[[[[[[[[[]]][[]]]]]]]{{{{{{{{{{{{]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{]
-{{{{{{{{{]]]][[[[[[[[[[]]]]]]]]]]]]{{{{]]{{{{{{{]][[[[[[[[[[[[[[[][[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{
-{{{{{{{{{]]]]][]]]]]]]]]]]]]]]]]]]{{]]]]]]]{{{{]]][[[[[[[[[[[[[[]]]]]][]]]][[[[[[[[[[[[[[[[[]]]]]]{{{{{{]]]]]]]]]]]]]]]]]]{{{{{{
-{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[]]]]]]][]][[[[[[[[[[[[[[[[[[]]]]]{{{{{{{]]]]]]]]]]]]]]]]]]{{{{{
-{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[]]]][[[[[]][[[[[[[[[[[[[[[[[]]]]]{{{{{{{{]]]]]]]]]]]]]]]]]]{{{{
-{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[]]][[[[[[]][[[[[[[[[[[[[[[[]]]]{{{{{{{{{{{{{{{{]]]]]]]]]]]]{{{
-{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[]]]][[[[[[]]][[[[[[[[[[[[[[[]]]]{{{{{{{{{{{{{{{{{]]]]]]]]]]]{{{
-}}}}}{{{{]]]]]]]]]]]]]]]]]]{{{{{]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[]]]]]][[[[]]][[[[[[[[[[[[[[[]]]{{{{{{{{{{{{{{{{{{{]]]]]]]]]]{{{
-}}}}}}}{{{]]]]]]]]]]]]]]]]]{}}}}}]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]][[[[[[[[[[[[[[]]{{{{{{{{{{{{{{{{{{{{{]]]]]]]]]]]{{
-}}}}}}}{{{{]]]]]]]]]]]]]]]]{}}}}}]]]]]]]]]]]]]][[[[[[[[[[[[[[[]]]]]]]]]]]]]]]][[[[[[[[[[[[[[]{{{{{{{{{{{{{{{{{{{]]]]]]]]]]]]]{{{
-}}}}}}}{{{{]]]{{{{{]]]]]]]]{}}}}{]]]]]]]]]]]]]][[[[[[[[[[[]]]]]]]]]]]]]]]]]]]][]]]{{{[[[[[[]]{{{{{{{{{{{{{{{{{{]]]]]]]]]]]]]]{{{
-{}}}}}}{{{{]]]{{{{{{]]]]]]]{}}}}{]]]]]]]]]]]]]][[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]{{{{[[[[[]{{{{{{{{}}}{{{{{{{{{]]]]]]]]]]]]]{{{
-{{{}{{{{{{{]]]]{{{{{]]]]]]]{{}}{]]]]]]]{{{{]]]][[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{]]]]]{{{{{{{}}}}{{{{{{{{{{]]]{{{]]]]]]]]]
-]]{{{{{{{{{{]]]{{{{{]]]]]]]{{{{{]]]]]]{{}{{{]]]][[[[[[[[[]]]]]]{{{{]]]]]]]]]{{{{{{{{{{{{]]]]{{{{{{}}}}{{{{{{{{{{{{{{{{{{{]]]]]]]
-]]]{{{{{{{{]]]]{{{{]]]]]]]]]{{{{]]]]]{{}}}{{{]]]][[[[[[[]]]]]]{{{{{{{]]]]]]{{{{{{{{{{{{{{{{{{{{{{}}}}}{{{{{{{{{{{{{{{{{{{{{]]]]]
-]]]{{{{{]]]]]]]]]]]]]]]]]]]]{{{{]]]]{{{}}}}{{{]]]]]][[[]]]]]]]{{{{{{{]]]]]]{{{{{{{{]{{{{{{{{{{{{{}}}}}{{{{{{{{{{{{{{{{{{{{]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{}}}}}{{{{]]]]]]]]]]]]{{{{}}}}{{]]]]]]{{{{{{{]]]{{{{{{{{{{{}}}}}}{{{{{{{{{{{{{{{{{{{{]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{}}}}{{{{{{{{]]]]]]]]]{{{}}}}}{{]]]]]]{{{{]]]]]]{{{{{{{{{}}}}}}}}{{{{{{{{{{{{{{{{{{{{]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{}}}}{{{{{{{{{]]]]]]]]{{{{}}}{{{]]]]]]]{{]]]]]]]]{{{{{{{{}}}}}}}}{{{{{{{{{{{{{{{{{{{{]]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{}}}}{{{{{{{{{]]]]]]]]]]]]{{{{{{]]]]]]]]]]]]]]]]]{{{{{{{{}}}}}}}{{{{{{{{{{{{{{{{{{{{{{]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{}}}}}}{{{{{{{{{{]]]]]]]]]]]{{{]]]]]]]]]]]]]]]]]]]]{{{{{{{{}}}}{{{{{{{{{{{{{{{{{{{{{{{{]]]]]
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{}}}}}}}{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{}{{{{{{{{{{{{{{{{{{{{{{{{{{{]]]]
-]]]]]]]{]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{}}}}}}{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{{{{{{]]]{{{{{{{{{{{{{{{{{]]]]
-]]]]]{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{}}}}{{{{{{{{{{{{{]]]]]]]]]]]]]]][[[[]]]]]]]]]]]{{{{{{{{{{{{{{{{{]]]{{{{{{{{{{{{{{{{{]]]]]
-]]]]{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]{}}}{{{{{]]{{{{{]]]]]]]]]]]]][[[[[[[[]]]]]]]]]{{{{{{{{{{{{{{{{{{{]{{{{{{{{{{{{{{{{{]]]]]]
-]]]]{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[]]]]]]]]{{{{{{{{{{{{{{{]]]]]]{{{{{{{{{{{{{{{{{]]]]]]
-]]]]{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[]]]]]]]]{{{{{{{{{{{{{{{{]]]]]]{{{{{{{{{{{{{{{{]]]]]]
-]]]]{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[]]]]]]]]]]]]]]{{{{{{{{{{{]]]]]]]{{{{{{{{{{{{{{{{{{]]]
-]]]]{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{]]]]]]]]]{{{{{{{{{{{{{{{{{]]
-]]]{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{]]]]]]]]]]]{{{{{{{{{{{{{{{{]]
-]]]{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{]]]][[[[]]]]]{]{{{{{{{{{{{{{]]
-]]]{{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{]]]]]]]]]]]]]]]]]][[[[[]]]]]]]{{{{{{{{{{{{{]]
-]]]{{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{]]]]]]{]]]]]]]]][[[[[[[]]]]]]]{{{{{{{{{{{]]]
-]]]]{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{]]]]]]]]]]]]]]]]]]]]]{{]]]]]]]{{]]][[]]][[[[[[[]]]]]]]{{{{{{{{{{{]]]
-]{{{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{]]]]]]]]]]]]]]]]]]{]]]]]]]{{][[[[[[][[[[[[[[]]]]]{{{{{{{{{{{]]]]
-]{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]{{[[[[[[[[[[[[[[[[[]]]{{{{{{{{{{{{]]]]
-]{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[{{{{{{{{{{]]]]]]
-]]]]]]]]]]]]]]]]]][[[]]]]]][[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[{{{{{{{]]]]]]]]
-]]]]]]]]]]]]]]]]][[[[[]]][[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[{{{{{{]]]]]]]]
-]]]]]]]]]]]]]]]][[[[[[]][[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]{{{{{}{{{{{{{]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[{{{{{{]]]]]]]]
-]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]{{{}}}}{{{{{]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[]{{{{]]]]]]]]]]
-]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]{{}}}}}}}{{]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[]]{{]]]]]]]]]]]
-]]]]]]][]]]]]]]][[[???????[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]{{{}}}}}}{{]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]{{]]]]]]]]]]]
-]]]]]][[[[]]]]][[[????????[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]{{{{{}}}}{{]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]
-]]]]]][[[[]]]][[[??????????[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{{{]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]
-]]]]]][[[[]]][[[[?????????[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{{]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]
-]]]]]][[[[[[[[[[[????????[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]{{]]]]{{{{{{{{{{{{]]]]]]]]]][[[[[[[[[[[???[[[[[[[[[[[[[]]]]]]]][[[[[[[]]
-]]]]][[[[[[[[[[[[??????????[[????[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{]]]][[[[[[[[[[[[[[[[??????[[[[[[[[[[[]]]][[[[[[[[[[[[[
-]]]][[[[[[[[[[[[[[????????????????[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{][[[[[[[[[[[[[[[[[????????[[[[[[[[[[[[[[[[[[[[[[[[[[[
-]]][[[[[[[[[[[[[[??????????????????[[[[[[[[]]]]]]]]]]]]]]]]]]]{]]{{{{{{{{{{[[[[[[[[[[[[[??[[?????????[[[[[[[[[[[[[[[[[[[[[[[[[[[
-[]][[[[[[??????[[???????????????????[[[[[[[]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{{[[[[[[[[[[[[??????????????[[[[[[[[[[[[[[[[[[[[[[[[[[[
-[[][[[[[????????????????????????????[[[[[[[[]]]]]]]]]]]]]]]]]]]{{{{{{{{{{{{[[[[[[[[[[[???????????????[[[[[[[[[[[[[[[[[[[[[[[[[[[
-[[]][[[[??????????????????????????[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]{{{{{{{{{{[[[[[[[[[[[[???????????????[[[[[[[[[[[[[[[[[[[[[[[[[[[
-[[]][[[[??????????????????????????[[[[[[[[[]]]]]][[[[]]]]]]]]]]]{{{{{]{{{{[[[[[[[[[[[[???????????????[[[[[[[[[[[[[[[[[[[[{{[[[[[
-[]][[[[[??????????????????????????[[[[[[[[[]]]][[[[[[[]]]]]]]]]]]]]]]]{{{{[[[[[[[[[[[???????????????[[[[[[[[[[[[[[[[[[[{{{{{{{[[
-[[[[[[[[??????????????????????????[[[[[[[[[]]]][[[[[[[[]]]]]]]]]]]]]]]]]]{[[[[[[[[[[[??????????????[[[[[[[[[[[[[[[[[[[[{{{{{{{[[
-[[[[[[[???[?????????????????????[[[[?????[[[]][[[[[[[[[]]]]]]]]]]]]]]]]]]][[[[[[[[[[[?????????????[[[[[[[[[[[[[[[[[[[[[[{{{{{{[[
-[[[[[[???[[[???????????????????[[[?????????[[][[[[[[[[[]]]]]]]]]]]]]]]]]]][[[[[[[[[[[?????????????[[[[[[[[[[[[[[[[[[[[[[[{{{{{{[
-[[[[[[???[[[[???????????[[????[[[???????????[]][[[[[[[[[]]]]]]]]]]]]]]]]]][[[[[[[[[[[[?????????????[[[[[[[[[[[[[[[[[[[[[[[{{{{{[
-[[[[[[[[[[[[[[?????????[[[??????????????????[[][[[[[[[[[]]]]]]]]]]]]]]]]]][[[[[[[[[[[[??????????????[[[[[[[[[[[[[[[[[[[[[[[{{{{[
-[[[[[[[[[[[[[[[?????????????????????????????[[][[[[[[[[[][[]]]]]]]]]]]]]]][[[[[[[[[[[[?????[[???[[?[[[[[[[[[[[[[[[[[[[[[[[[{{{{[
-[[[[[[[[[[[[[[[[???????????????????????????[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]][[[[[[[[[[[[????[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[{{{{[
-]][[[[[[[[[[[[[[[[[[[[[[?????????????????[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]{][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[{{{{[
-]][[[[[[[[[[[[[[[[[[[[[[????????????[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]{{]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[{{{{{{
-{]][[[[[[[[[[[[[[[[[[[[[[????????[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]{}}{{][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[{{{}{{
-{{]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]{{}}}}{{]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[{{}}{{
-{{{]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]{{{}{{{{{{]]{{]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[{}}}{{
-{{{]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]{{]]]]]]{{{{]]]][[[[[[[[[[[[[[[[[]][[[[[[[[[[[[[[{}}}{{
-{{{]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]{{{]]]]]]]]]]]]]]]]{{{{{]]]][[[[[[[[[[[[[[[[]]]][[[[[[[[[[[[{{}}}{{
-{{{]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]{{{{{]]]]]]]]]]]]]]]{{{{{]]]]][[[[[[[[[[[[[[[]]]]]][[[[[[[[[{{{}}{{{
-{{{]][[[[[[[[[[]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]{{{{]]]]]]]]]]]]]]]{{{{{{]]]]]]]]][[[[[[[[[[]]]]]]]]]{{{{{{{{}}{{{{
-{{{]][[[[[[[[]]]]][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]{{{{]]]]]]]]]{]]]]]]{{{{{]]]]]]]]]]][[[[[[[[]]{{{{{{{{{{{{{{}}}{{{{
-{{{]]]][[[[]]]]]]][[[[[[[][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]{{{]]]]]]]]{{{{{]]]{{{{{]]]]]]]]]]][[[[[[[]]{{}}}}{]]{{{{{{{{{{{{{
-{{{]]]]]]]]]]]]]]][[[[[]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]{{{{{{]]]]{{{{]]]]]]]]]]]][[[[[]]]{}}}}{]]{{{{{{{{{{{{{{
-{{{]]]]]]]]]]]]]]]][[[]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]{{{{{{{{{{{{{{{]]]]]]]]]]]]][[]]]]]{{}}{{]{{{{{{{{{{{{{{{
-{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]{{{{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]{{{{]{{{{{{{{{{{{{{{{
-{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]{{{{{{{{{{{{]]]]]]]]]]]]]]]]]]]]]]]]]]]]]{{{{{{]{{{{{{{{{
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]{{{{{{{{{{{]]]]]]]]][[[]]]]]]]]]]]]]]]]{{{{{]]]]]{{{{{{{
diff --git a/pixel-client/assets/textures/coconut.ta b/pixel-client/assets/textures/coconut.ta
deleted file mode 100644
index 78d1d10d..00000000
--- a/pixel-client/assets/textures/coconut.ta
+++ /dev/null
@@ -1,24 +0,0 @@
- K
- KLN
- LLLKKNL
- LLLLLLLLLNN5
- NNLLLLLNNLLNL5
- NNFFFFNNLLLLLLLL
- NFFFPPPPPLKLLKKKL
- NFFPPPPPPLKLLLKKLL
- NNFFPPPPQQLKLLLKKKL
-NNNFPPPQQQQLKLLNLKKLL
-NNKLPPPQQQQLLLNNLKKNL
-NKLLLPQQQQLLKLNLLLKLNL
-NKKLLLL55LLKKLLLLLKLNL
-NKKLNNL5LLLKLLL55LLLNL
-KKKKNLLLLLKKLLLLLLLLNL
-KKKKNLLLLLLLLLLL5LLLL
-KKKKLLLNLLLLLKLLLLLLL
- KKKLLNLLLLLKKLLLLL5
- KKKLNLLLLKKLLLNLN5
- KKKKKLNLLKLLLLNNN
- KKKKKNLLLLNLNNN
- KKNNLNNLNNNNN
- NNNNNN55N
- NN555
diff --git a/pixel-client/assets/textures/coconut_foodprocessor.ta b/pixel-client/assets/textures/coconut_foodprocessor.ta
deleted file mode 100644
index 2d52ec49..00000000
--- a/pixel-client/assets/textures/coconut_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- hL°°°°°°°hhh
-[[[hDL]]]]]]h[[h
-[]]h]]LLLL]Lh]]h
-[]]h]LLLXLL]h]]h
-]]]hLWWXLLLLh]]h
-]]]hWWLLWLLLhhh]
-]]]hWWLLWWLWh]]]
-]]]hWXXLWWWWh]]]
-]]]hWXXLWWW5h]]]
-]]]]hLXXWW5h]]]]
-]]]]]hWWMMh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/coconut_strawberry_puree_foodprocessor.ta b/pixel-client/assets/textures/coconut_strawberry_puree_foodprocessor.ta
deleted file mode 100644
index e2d9f4c8..00000000
--- a/pixel-client/assets/textures/coconut_strawberry_puree_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°hWWWWh°h
- hN(hhhhNNh
- h(XNNNNNWhhh
-[[[hNNXXXWWWh[[h
-[]]hBBXXWWWBh]]h
-[]]h2BBBBBB2h]]h
-]]]h22222222h]]h
-]]]h22222222hhh]
-]]]h22222222h]]]
-]]]h22222222h]]]
-]]]h22222222h]]]
-]]]]h222222h]]]]
-]]]]]h2222h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/conveyor.ta b/pixel-client/assets/textures/conveyor.ta
deleted file mode 100644
index 453e2048..00000000
--- a/pixel-client/assets/textures/conveyor.ta
+++ /dev/null
@@ -1,38 +0,0 @@
-rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
-rorrprrrprrorrprrrorprorprrrorro
-rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
-rrprrrprrrprrrorrprrrprrrprrrprr
-rrorrrprrrorrrprrprrrorrrorrrorr
-rrprrrorrrorrrorrprrrprrrorrrorr
-rrprrrorrrprrrorrorrrprrrorrrorr
-rrprrrorrrorrrorrorrrorrrorrrprr
-rrorrrprrrprrrprrorrrprrrorrrprr
-rrprrrprrrprrrprrorrrprrrprrrorr
-rrprrrorrrprrrorrprrrprrrprrrorr
-rrorrrprrrorrrprrprrrprrrprrrprr
-rrprrrprrrprrrprrpprrprrrprrrprr
-rrorrrprrrorrrorrrprrorrrorrrprr
-rrorrrorrrorrrprrrprrorrrorrrprr
-rrorrrorrrorrrprrrprrorrrorrrorr
-rrorrrorrrorrrprrrprrorrrprrrorr
-rrprrrorrrprrrorrrprrprrrprrrorr
-rrprrrorrrprrrorrrprrprrrprrrorr
-rrorrrprrrprrrorrrprrprrrprrrprr
-rrprrrprrrprrrprrrprrprrrprrrprr
-rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
-porrprrrorprrprprrorrrrrorprprpr
-rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/conveyor_arrow_left.ta b/pixel-client/assets/textures/conveyor_arrow_left.ta
deleted file mode 100644
index ab03864b..00000000
--- a/pixel-client/assets/textures/conveyor_arrow_left.ta
+++ /dev/null
@@ -1,38 +0,0 @@
-
- uu uu
- uuu uuu
- uuu uuu
- uuu uuu
- uuu uuu
- uuuu uuu
- uuu uuu
- uuu uuu
- uuu uuu
- uuu uuu
- uuu uuu
- uuu uu
- uuu uuu
- uuu uuu
- uuu uuu
- uuu uuu
- uuu uuu
- uuuu uuu
- uuuu uuu
- uuu uuu
- uu uu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/conveyor_arrow_up.ta b/pixel-client/assets/textures/conveyor_arrow_up.ta
deleted file mode 100644
index 8f51d6c9..00000000
--- a/pixel-client/assets/textures/conveyor_arrow_up.ta
+++ /dev/null
@@ -1,38 +0,0 @@
-
- vv
- vvvv
- vvvvvv
- vvv vvv
- vvv vvv
- vvv vvv
- vvv vvv
- vvv vvv
- vvv vvv
- vvv vvv
- vv vv
- vv
- vvvv
- vvvvvv
- vvvvvvvv
- vvvv vvvv
- vvvv vvvv
- vvv vvvvv
- vvvv vvvv
- vvvv vvvv
- vv vv
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/counter.ta b/pixel-client/assets/textures/counter.ta
deleted file mode 100644
index 846fdbe3..00000000
--- a/pixel-client/assets/textures/counter.ta
+++ /dev/null
@@ -1,36 +0,0 @@
-KKKJJJJJJJJJJJJJJJJJJJJJJJJJJKKK
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJKKKKKJJJJJJJJJJJJJJJJJJJKKKKKK
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPI
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP
-PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPI
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPI
-IPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPI
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
diff --git a/pixel-client/assets/textures/counter_window_ns_bottom.ta b/pixel-client/assets/textures/counter_window_ns_bottom.ta
deleted file mode 100644
index 30db9f28..00000000
--- a/pixel-client/assets/textures/counter_window_ns_bottom.ta
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-KKKJJJJJJJJJJJJJJJJJJJJJJJJJJKKK
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JKKKKKJJJJJJJJJJJJJJJJJJJJJKKKKK
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-
diff --git a/pixel-client/assets/textures/counter_window_ns_top.ta b/pixel-client/assets/textures/counter_window_ns_top.ta
deleted file mode 100644
index 8ac68858..00000000
--- a/pixel-client/assets/textures/counter_window_ns_top.ta
+++ /dev/null
@@ -1,48 +0,0 @@
- LLLLLL
- LLLLLL
- LLLLLL
- LLLLLL
- LLLLLLLL
- LLLLLLLL
- LLLLLLLLLL
- LLLLLLLLLLLL
- LLLLLLLLLLLL
- LLLLLLLLLLLLLL
- LLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLL
- LLLLLLLLLLLLLL
- LLLLLLLLLLLL
- LLLLLLLLLLLL
- LLLLLLLLLL
- LLLLLLLL
- LLLLLLLL
- LLLLLL
- LLLLLL
- LLLLLL
- LLLLLL
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/counter_window_we_bottom.ta b/pixel-client/assets/textures/counter_window_we_bottom.ta
deleted file mode 100644
index 8cce3e6a..00000000
--- a/pixel-client/assets/textures/counter_window_we_bottom.ta
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJK
-JKKKKKKJJJJJJJJJJJJJJJJJJJKKKKKK
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/counter_window_we_top.ta b/pixel-client/assets/textures/counter_window_we_top.ta
deleted file mode 100644
index b7113a01..00000000
--- a/pixel-client/assets/textures/counter_window_we_top.ta
+++ /dev/null
@@ -1,48 +0,0 @@
- LL
- LLLLLL
- LLLLLLLL
- LLLLLLLLLLLL
- LLLLLLLLLLLLLLLL
- LLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-cccccLLLLLLLLLLLLLLLLLLLLLLccccc
-ccccccccLLLLLLLLLLLLLLLLcccccccc
-cc LLLLLLLLLLLL cc
-cc LLLLLLLL cc
-cc LLLLLL cc
-cc LL cc
-cc cc
-cc cc
-cc cc
-cc cc
-cc cc
-ff ff
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/crate_back.ta b/pixel-client/assets/textures/crate_back.ta
deleted file mode 100644
index 3ef0ce14..00000000
--- a/pixel-client/assets/textures/crate_back.ta
+++ /dev/null
@@ -1,36 +0,0 @@
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-NNNNNNNLNNNNNNNNLNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNNLNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNNLNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNNLNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNNLNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNLLNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNLNNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNLNNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNLNNNNNNNNLNNNNNNN
-NNNNNNNLNNNNNNNLNNNNNNNNLNNNNNNN
-NNNNNNNNNNNNNNNLNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
diff --git a/pixel-client/assets/textures/crate_front.ta b/pixel-client/assets/textures/crate_front.ta
deleted file mode 100644
index caeafdb9..00000000
--- a/pixel-client/assets/textures/crate_front.ta
+++ /dev/null
@@ -1,36 +0,0 @@
-
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-L L
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
-LKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKL
-KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
-L L
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
-LKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKL
-KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
-L L
-LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
-KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
-LKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKL
diff --git a/pixel-client/assets/textures/customer.ta b/pixel-client/assets/textures/customer.ta
deleted file mode 100644
index 602b0b21..00000000
--- a/pixel-client/assets/textures/customer.ta
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
- vvvvv
- vvvvvvvvv
- vvvvvvvvvv
- vvvvvvvvvvv
- vvvvvvvvvvvv
- vvvvvvvvvvvv
- vvvvvvvvvvvv
- vvvvvvvvvvv
- Rvvvvvvvvvv
- RvvvvvvvvvR
- RvvvvvvvR
- RRvvvRR
- wwwwRRwww
- wwwwwwwvvvv
- wwwwvvvvvvvv
- vvwvvvvvvvvvv
- vvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvvvv
- vvvvvvvvvvvvvvvvvvvvvvvvvv
- wvvvvvvvvvvvvvvvvvvvvvvvvw
- wwvvvvvvvvvvvvvvvvvvvvvvww
- wwwvvvvvvvvvvvvvvvvvvvwww
- wwwwwvvvvvvvvvvvvvvvwwww
- wwwwwwwvvvvvvvvvvwwwww
- wwwwwwwwwwwwwwwwwwww
- wwwwwwwwwwwwwwww
- wwwwwwwwwwwwww
- wwwwwwwwwwww
diff --git a/pixel-client/assets/textures/cutting_board.ta b/pixel-client/assets/textures/cutting_board.ta
deleted file mode 100644
index e6137c94..00000000
--- a/pixel-client/assets/textures/cutting_board.ta
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
- xPPxxxxxxxxxxxxxxxxxxPPP
- xxxxxxxxxxxxxxxxxxxxxxxP
- PxxxxxxxxxxxxxxxxxxxxxxP
- Pxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- Pxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxP
- Pxxxxxxxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxxxxxP
- xxxxxxxxxxxxxxxxxxxxxxxP
- PxxxxxxxxxxxxxxxxxxxxxxP
- PPPxxxxxxxxxxxxxxxxxxPPP
- LLLLLLLLLLLLLLLLLLLLLLLL
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/door_ns.ta b/pixel-client/assets/textures/door_ns.ta
deleted file mode 100644
index 8c9270f6..00000000
--- a/pixel-client/assets/textures/door_ns.ta
+++ /dev/null
@@ -1,42 +0,0 @@
-jjj jjj
-jjjjjjjjj jjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjfffffffjjjjjjjjjjjjj
-jjjjjfffffffffffffffffffffjjjjjj
-jjffffffffffffffffffffffffffffjj
-ffffffffffffffffffffffffffffffff
-ffffffffffUUUUUUUUUUUfffffffffff
-ffffffUUUUUUUIIIIIUUUUUUUfffffff
-ffffUUUUUIIIIIIIIIIIIIUUUUUfffff
-fffUUUIIIIIIIIIIIIIIIIIIIUUUUfff
-ffUUUIIIIIIIIIIIIIIIIIIIIIIIUUff
-fUUUIIIIIIIIIIIIIIIIIIIIIIIIIUUf
-UUIIIIIIIIIIIIIIIIIIIIIIIIIIIIUU
-UIIIIIIIIIIIIIIIIIIIIIIIIIIIIIUU
-UIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIU
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIII IIII IIIIIII
-IIIIII II IIIIII
-IIIIII II IIIIII
-IIIIIII IIII IIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIII IIII IIIIIII
-IIIIII II IIIIII
-IIIIII II IIIIII
-IIIIIII IIII IIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIUUUUUUIIIIIIIIIIIIIIIIIIIIIII
-IIIUIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIUIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
-IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
diff --git a/pixel-client/assets/textures/door_we.ta b/pixel-client/assets/textures/door_we.ta
deleted file mode 100644
index d8ccf839..00000000
--- a/pixel-client/assets/textures/door_we.ta
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjj
- jjjj
- jjjj
- jjjj
- jjjj
- jj
- jj
- jj
- jj
- jj
- jjjj
- jjjj
- jjjj
- jjjj
- jjjj
- jjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/dough.ta b/pixel-client/assets/textures/dough.ta
deleted file mode 100644
index 157aaaf9..00000000
--- a/pixel-client/assets/textures/dough.ta
+++ /dev/null
@@ -1,16 +0,0 @@
- FFF
- FFHHFFFFHHFF
- FHHFFHHFFFHHHFFHH
- FHHFFHHFFFFHHFFFHHHF
- FFHHFFHHFFFHHFFFFHHFFF
- FFHHFFFHHFFFHHFFFFHHFFF
- FFHHFFFHFFFFHHFFFFHFFFFF
- FFFHFFFFFFFFFFHFFFFHHFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFF
-HHFFFFFFFFFFFFFFFFFFFFFFFFH
-HHHFFFFFFFFFFFFFFFFFFFFFHHH
-HHHHHFFFFFFFFFFFFFFFFFHHHHH
-HHHHHHHHHHHHHHHHHHHHHHHHHHH
- HHHHHHHHHHHHHHHHHHHHHHHHH
- HHHHHHHHHHHHHHHHHHHHHHH
- HHHHHHHHHHHHHHHHHHHHH
diff --git a/pixel-client/assets/textures/dough_foodprocessor.ta b/pixel-client/assets/textures/dough_foodprocessor.ta
deleted file mode 100644
index df2b08fa..00000000
--- a/pixel-client/assets/textures/dough_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[hFFFFFFFFh[[h
-[]]hFFFFFFFFh]]h
-[]]hFFFFFFFFh]]h
-]]]hFFFFFFFFh]]h
-]]]hFFFFFFFFhhh]
-]]]hFFFFFFFFh]]]
-]]]hFFFFFFFFh]]]
-]]]hFFFFFFFFh]]]
-]]]]hFFFFFFh]]]]
-]]]]]hFFFFh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/fish.ta b/pixel-client/assets/textures/fish.ta
deleted file mode 100644
index c1f8f151..00000000
--- a/pixel-client/assets/textures/fish.ta
+++ /dev/null
@@ -1,19 +0,0 @@
- oo oo
- ooooo oo
- oooooooo
- nnnnoooo
- nnnnooo
- nnknnno
- nnnkmnnn
- mmmkkkmkn
- llmkjkkkkn
- llljjkjkkg
- kkkljjjjjkgg
- kkkkkjjjjjjxxg
- ljkjjjjjjjjxxxgg
- jlljjjjjjjjjjxxgg
- Fjjjxjjjjjjjjiggg
-FLFjjjljjxxjjiggg
-FFjjjjxlxgxxiggg
-jjjmlxlgggggggg
- mmll gggggg
diff --git a/pixel-client/assets/textures/fish_slice.ta b/pixel-client/assets/textures/fish_slice.ta
deleted file mode 100644
index efecbc73..00000000
--- a/pixel-client/assets/textures/fish_slice.ta
+++ /dev/null
@@ -1,16 +0,0 @@
- yy
- zzzyyy
- VVVVyzyy
- VVVVVVVyVVy
- VVVVVVVyyzzVV
- zzVVyyyVzyyzzV
- VVVVVVzyzzzyzz
- VVVVVVVVzyyyyz
- VVVVVVVVzyyyzz
- zzzyyyyyzyyzz
- zzzzzyyyyzyzz
- yyyyyyyzVzzz
- yyyyyyyyVzz
- yyyyyyVVVz
-yzzzVVVV
-zzzzz
diff --git a/pixel-client/assets/textures/floor.ta b/pixel-client/assets/textures/floor.ta
deleted file mode 100644
index ed84d15b..00000000
--- a/pixel-client/assets/textures/floor.ta
+++ /dev/null
@@ -1,24 +0,0 @@
-]???????????????????????????????
-]][[[[[[[[[[[[[[[[[[[[[[[[[[[[??
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[[?
-][[[[[[[[[[[[[[[[[[[[[[[[[[[[[??
-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]?
diff --git a/pixel-client/assets/textures/flour.ta b/pixel-client/assets/textures/flour.ta
deleted file mode 100644
index 94ca56e5..00000000
--- a/pixel-client/assets/textures/flour.ta
+++ /dev/null
@@ -1,16 +0,0 @@
- GGGGGGGGGGG
- GGGGGGGGGGGGGGH
- GGGHHGGGGGGGGGHG
- GGHHHGGGGGGGGHHG
-GGHH HHGG]]]]]]GGG
- HHH HHG]]VV]]]]GGG
- HHH.]VVV]]]]GG
- HHHH.]VVV]]]GG
- HHHH.]]VV]]]]HH
- HHHH.]]]V]]]GG
- HHHHH.]]]V]]GG
- HHHHH...]]GGGG
- HHHHHHGGGGGGGG
- HHHHHHHHHHHGGG
- HHHHHHHHHHHHHH
- HHHHHHHHHH
diff --git a/pixel-client/assets/textures/flour_foodprocessor.ta b/pixel-client/assets/textures/flour_foodprocessor.ta
deleted file mode 100644
index af9a7c93..00000000
--- a/pixel-client/assets/textures/flour_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- hEQ°°°°FQhhh
-[[[hFEFFFFQFh[[h
-[]]hQFEFQFEEh]]h
-[]]hQFFEFFFFh]]h
-]]]hEFQFFEFQh]]h
-]]]hFEFFEFQEhhh]
-]]]hFFQFEFFFh]]]
-]]]hFEFQFFEEh]]]
-]]]hQFFFFQFFh]]]
-]]]]hFFFQFFh]]]]
-]]]]]hFEFEh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/font/letter_100.ta b/pixel-client/assets/textures/font/letter_100.ta
deleted file mode 100644
index 5733df36..00000000
--- a/pixel-client/assets/textures/font/letter_100.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))
- )
- )
- )
- )
- ))))
- ) ))
-) )
-) )
-) )
- ) )
- )))))
diff --git a/pixel-client/assets/textures/font/letter_101.ta b/pixel-client/assets/textures/font/letter_101.ta
deleted file mode 100644
index 7b438136..00000000
--- a/pixel-client/assets/textures/font/letter_101.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )))
- ) )
-)) ))
-)))))))
-))
- ) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_102.ta b/pixel-client/assets/textures/font/letter_102.ta
deleted file mode 100644
index 16867d96..00000000
--- a/pixel-client/assets/textures/font/letter_102.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))
- ) )
- )
- )
- ) ))
-))))
- )
- )
- )
- )
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_103.ta b/pixel-client/assets/textures/font/letter_103.ta
deleted file mode 100644
index de983eed..00000000
--- a/pixel-client/assets/textures/font/letter_103.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
- )
- ))))))
-)) )
-) )
-)) )
- )))))
- )
-) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_104.ta b/pixel-client/assets/textures/font/letter_104.ta
deleted file mode 100644
index d8525d9e..00000000
--- a/pixel-client/assets/textures/font/letter_104.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- )
- )
- )
- )
- )))))
- ) ))
- ) )
- ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_105.ta b/pixel-client/assets/textures/font/letter_105.ta
deleted file mode 100644
index 5f1f4fc6..00000000
--- a/pixel-client/assets/textures/font/letter_105.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
- )
-
- )
- )
- )
- )
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_106.ta b/pixel-client/assets/textures/font/letter_106.ta
deleted file mode 100644
index 1bf56b21..00000000
--- a/pixel-client/assets/textures/font/letter_106.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
- )
- ))
-
- )
- )
- )
- )
- )
- )
- ) )
- )))
diff --git a/pixel-client/assets/textures/font/letter_107.ta b/pixel-client/assets/textures/font/letter_107.ta
deleted file mode 100644
index b2021667..00000000
--- a/pixel-client/assets/textures/font/letter_107.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- )
- )
- ) )
- ) )
- ) )
- ) )
- ))
- ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_108.ta b/pixel-client/assets/textures/font/letter_108.ta
deleted file mode 100644
index 259ecadc..00000000
--- a/pixel-client/assets/textures/font/letter_108.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
- ))
- )
- )
- )
- )
- )
- )
- )
- )
- ) )
- ))
diff --git a/pixel-client/assets/textures/font/letter_109.ta b/pixel-client/assets/textures/font/letter_109.ta
deleted file mode 100644
index 72279f49..00000000
--- a/pixel-client/assets/textures/font/letter_109.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )
-)))))
- ) ) )
- ) ) )
- ) ) )
- ) ) )
- ) ) )
diff --git a/pixel-client/assets/textures/font/letter_110.ta b/pixel-client/assets/textures/font/letter_110.ta
deleted file mode 100644
index 3f23b0d6..00000000
--- a/pixel-client/assets/textures/font/letter_110.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )
-)))))
- ) ))
- ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_111.ta b/pixel-client/assets/textures/font/letter_111.ta
deleted file mode 100644
index 7e60da6c..00000000
--- a/pixel-client/assets/textures/font/letter_111.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )))
- ) )
-) )
-) )
-) )
- ) )
- )))
diff --git a/pixel-client/assets/textures/font/letter_112.ta b/pixel-client/assets/textures/font/letter_112.ta
deleted file mode 100644
index c33c177e..00000000
--- a/pixel-client/assets/textures/font/letter_112.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
- )
-)))))
- ) )
- ) )
- ) )
- ))))
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_113.ta b/pixel-client/assets/textures/font/letter_113.ta
deleted file mode 100644
index 2a1a68b5..00000000
--- a/pixel-client/assets/textures/font/letter_113.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )))))
-)) )
-) )
-)) ))
- ))))))
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_114.ta b/pixel-client/assets/textures/font/letter_114.ta
deleted file mode 100644
index fab10b21..00000000
--- a/pixel-client/assets/textures/font/letter_114.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
- ) ))
- )))
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_115.ta b/pixel-client/assets/textures/font/letter_115.ta
deleted file mode 100644
index 71620acf..00000000
--- a/pixel-client/assets/textures/font/letter_115.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )))))
-) )
-)
- )))))
- )
-) )
- )))))
diff --git a/pixel-client/assets/textures/font/letter_116.ta b/pixel-client/assets/textures/font/letter_116.ta
deleted file mode 100644
index 6d0ebd5e..00000000
--- a/pixel-client/assets/textures/font/letter_116.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
- ))
- )
- )
- )
- )))))
- )
- )
- )
- )
- ) )
- ))
diff --git a/pixel-client/assets/textures/font/letter_117.ta b/pixel-client/assets/textures/font/letter_117.ta
deleted file mode 100644
index cf599681..00000000
--- a/pixel-client/assets/textures/font/letter_117.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-) )
-) )
-) )
-) )
-)) ))
- ))))))
diff --git a/pixel-client/assets/textures/font/letter_118.ta b/pixel-client/assets/textures/font/letter_118.ta
deleted file mode 100644
index 93c96072..00000000
--- a/pixel-client/assets/textures/font/letter_118.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
- ) )
- ) )
- ) )
- ) )
- ) )
- )
diff --git a/pixel-client/assets/textures/font/letter_119.ta b/pixel-client/assets/textures/font/letter_119.ta
deleted file mode 100644
index 6e7fe5e1..00000000
--- a/pixel-client/assets/textures/font/letter_119.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-) )
-) ) )
-) ) )
-)) ) ))
- )))))
- ) )
diff --git a/pixel-client/assets/textures/font/letter_120.ta b/pixel-client/assets/textures/font/letter_120.ta
deleted file mode 100644
index 5ba5f4a9..00000000
--- a/pixel-client/assets/textures/font/letter_120.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
- ) )
- ) )
- ))
- ))
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_121.ta b/pixel-client/assets/textures/font/letter_121.ta
deleted file mode 100644
index 6b9d023b..00000000
--- a/pixel-client/assets/textures/font/letter_121.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- ) )
- ) )
- ) )
- )) )
- ))
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_122.ta b/pixel-client/assets/textures/font/letter_122.ta
deleted file mode 100644
index aa6e06ba..00000000
--- a/pixel-client/assets/textures/font/letter_122.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-)))))))
- ))
- ))
- ))
-))
-))))))
diff --git a/pixel-client/assets/textures/font/letter_123.ta b/pixel-client/assets/textures/font/letter_123.ta
deleted file mode 100644
index 62d60a18..00000000
--- a/pixel-client/assets/textures/font/letter_123.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- )
- )
- )
- )
- ))
- )
- )
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_124.ta b/pixel-client/assets/textures/font/letter_124.ta
deleted file mode 100644
index 4415faaf..00000000
--- a/pixel-client/assets/textures/font/letter_124.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_125.ta b/pixel-client/assets/textures/font/letter_125.ta
deleted file mode 100644
index 281c5b17..00000000
--- a/pixel-client/assets/textures/font/letter_125.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- )
- )
- )
- )
- ))
- )
- )
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_126.ta b/pixel-client/assets/textures/font/letter_126.ta
deleted file mode 100644
index eafbde46..00000000
--- a/pixel-client/assets/textures/font/letter_126.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- ))) )
-) )))
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_127.ta b/pixel-client/assets/textures/font/letter_127.ta
deleted file mode 100644
index 404d1b09..00000000
--- a/pixel-client/assets/textures/font/letter_127.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_32.ta b/pixel-client/assets/textures/font/letter_32.ta
deleted file mode 100644
index 404d1b09..00000000
--- a/pixel-client/assets/textures/font/letter_32.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_33.ta b/pixel-client/assets/textures/font/letter_33.ta
deleted file mode 100644
index e81b2512..00000000
--- a/pixel-client/assets/textures/font/letter_33.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- a
- aa
- aa
- aa
- aa
- aa
- aa
- aa
- aa
-
- aa
- aa
diff --git a/pixel-client/assets/textures/font/letter_34.ta b/pixel-client/assets/textures/font/letter_34.ta
deleted file mode 100644
index 320e0544..00000000
--- a/pixel-client/assets/textures/font/letter_34.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
- ) )
- ) )
- ) )
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_35.ta b/pixel-client/assets/textures/font/letter_35.ta
deleted file mode 100644
index b0dcad70..00000000
--- a/pixel-client/assets/textures/font/letter_35.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- a a
- aa aa
- a a
-aaaaaaa
- a a
- aa aa
-aaaaaaa
- a a
- a a
-aa aa
-a a
-a a
diff --git a/pixel-client/assets/textures/font/letter_36.ta b/pixel-client/assets/textures/font/letter_36.ta
deleted file mode 100644
index 2af985d8..00000000
--- a/pixel-client/assets/textures/font/letter_36.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- a
- aaaaa
-aa a
-a a
-aa a
- aaaaa
- a aa
- a a
- a aa
- aaaaa
- a
- a
diff --git a/pixel-client/assets/textures/font/letter_37.ta b/pixel-client/assets/textures/font/letter_37.ta
deleted file mode 100644
index c7707777..00000000
--- a/pixel-client/assets/textures/font/letter_37.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- aa aa
-a a a
-a aaa
- aa a
- aa
- a
- aa
- a aa
- aaa a
- a a a
-aa aa
-a
diff --git a/pixel-client/assets/textures/font/letter_38.ta b/pixel-client/assets/textures/font/letter_38.ta
deleted file mode 100644
index 97b971bd..00000000
--- a/pixel-client/assets/textures/font/letter_38.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- aaa
- a a
- a a
- a a
- aaaa
- aa
- aaa
-a a
-a a a
-a aa
-a a
- aaaa a
diff --git a/pixel-client/assets/textures/font/letter_39.ta b/pixel-client/assets/textures/font/letter_39.ta
deleted file mode 100644
index 0f8dd0a5..00000000
--- a/pixel-client/assets/textures/font/letter_39.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
- a
- a
- a
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_40.ta b/pixel-client/assets/textures/font/letter_40.ta
deleted file mode 100644
index 49251ba9..00000000
--- a/pixel-client/assets/textures/font/letter_40.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- aa
- a
- aa
- aa
- a
- a
- a
- a
- aa
- aa
- a
- aa
diff --git a/pixel-client/assets/textures/font/letter_41.ta b/pixel-client/assets/textures/font/letter_41.ta
deleted file mode 100644
index 9927f863..00000000
--- a/pixel-client/assets/textures/font/letter_41.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- aa
- a
- aa
- aa
- a
- a
- a
- a
- aa
- aa
- a
- aa
diff --git a/pixel-client/assets/textures/font/letter_42.ta b/pixel-client/assets/textures/font/letter_42.ta
deleted file mode 100644
index 7215bd31..00000000
--- a/pixel-client/assets/textures/font/letter_42.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- a
- a
- aaaaa
- a
- a a
- a a
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_43.ta b/pixel-client/assets/textures/font/letter_43.ta
deleted file mode 100644
index 61fa0405..00000000
--- a/pixel-client/assets/textures/font/letter_43.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
- )
- )
- )))))
- )
- )
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_44.ta b/pixel-client/assets/textures/font/letter_44.ta
deleted file mode 100644
index ae3a42e8..00000000
--- a/pixel-client/assets/textures/font/letter_44.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_45.ta b/pixel-client/assets/textures/font/letter_45.ta
deleted file mode 100644
index ea50c23d..00000000
--- a/pixel-client/assets/textures/font/letter_45.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- )))))
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_46.ta b/pixel-client/assets/textures/font/letter_46.ta
deleted file mode 100644
index c17d1033..00000000
--- a/pixel-client/assets/textures/font/letter_46.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- )
diff --git a/pixel-client/assets/textures/font/letter_47.ta b/pixel-client/assets/textures/font/letter_47.ta
deleted file mode 100644
index 0ed1cef9..00000000
--- a/pixel-client/assets/textures/font/letter_47.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- aa
- a
- aa
- a
- aa
- a
- aa
- a
- aa
- a
-aa
-a
diff --git a/pixel-client/assets/textures/font/letter_48.ta b/pixel-client/assets/textures/font/letter_48.ta
deleted file mode 100644
index 11ff04b8..00000000
--- a/pixel-client/assets/textures/font/letter_48.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))
- ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) ) )
- ) )
- )))
diff --git a/pixel-client/assets/textures/font/letter_49.ta b/pixel-client/assets/textures/font/letter_49.ta
deleted file mode 100644
index b2e4d626..00000000
--- a/pixel-client/assets/textures/font/letter_49.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_50.ta b/pixel-client/assets/textures/font/letter_50.ta
deleted file mode 100644
index 1a5dbde5..00000000
--- a/pixel-client/assets/textures/font/letter_50.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))
- ) )
-) )
-) )
- ) ))
- )
- )
- )
- )
- )
-))
-)))))))
diff --git a/pixel-client/assets/textures/font/letter_51.ta b/pixel-client/assets/textures/font/letter_51.ta
deleted file mode 100644
index db82dda8..00000000
--- a/pixel-client/assets/textures/font/letter_51.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))))
-) )
- )
- )
- )
- ))
- )
- )
- )
- )
-) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_52.ta b/pixel-client/assets/textures/font/letter_52.ta
deleted file mode 100644
index d7aa72dc..00000000
--- a/pixel-client/assets/textures/font/letter_52.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- ))
- ) )
- ) )
- ) )
-) )
-) )
-)))))))
- )
- )
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_53.ta b/pixel-client/assets/textures/font/letter_53.ta
deleted file mode 100644
index d1bbe88d..00000000
--- a/pixel-client/assets/textures/font/letter_53.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)))))))
-)
-)
-)
-)
-)))))))
- )
- )
- )
-) )
- ) )
- )))
diff --git a/pixel-client/assets/textures/font/letter_54.ta b/pixel-client/assets/textures/font/letter_54.ta
deleted file mode 100644
index 95222d07..00000000
--- a/pixel-client/assets/textures/font/letter_54.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))))
- ) )
- ) )
- )
- )
- ))))))
- )) )
- ) )
- ) )
- ) )
- )) ))
- )))))
diff --git a/pixel-client/assets/textures/font/letter_55.ta b/pixel-client/assets/textures/font/letter_55.ta
deleted file mode 100644
index e54ebc9e..00000000
--- a/pixel-client/assets/textures/font/letter_55.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)))))))
- )
- )
- )
- )
- )
- ))))))
- )
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_56.ta b/pixel-client/assets/textures/font/letter_56.ta
deleted file mode 100644
index c40e5f15..00000000
--- a/pixel-client/assets/textures/font/letter_56.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))
- ) )
-) )
-) )
- ) )
- )))
- ) )
-) )
-) )
-) )
- ) )
- )))
diff --git a/pixel-client/assets/textures/font/letter_57.ta b/pixel-client/assets/textures/font/letter_57.ta
deleted file mode 100644
index cff5e498..00000000
--- a/pixel-client/assets/textures/font/letter_57.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
-)) ))
-) )
-) )
-) )
-)) )
- ))))))
- )
- )
-) )
- ) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_58.ta b/pixel-client/assets/textures/font/letter_58.ta
deleted file mode 100644
index 5114b2a3..00000000
--- a/pixel-client/assets/textures/font/letter_58.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
- )
-
-
-
- )
diff --git a/pixel-client/assets/textures/font/letter_59.ta b/pixel-client/assets/textures/font/letter_59.ta
deleted file mode 100644
index 5f08abfb..00000000
--- a/pixel-client/assets/textures/font/letter_59.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
- )
-
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_60.ta b/pixel-client/assets/textures/font/letter_60.ta
deleted file mode 100644
index b100f848..00000000
--- a/pixel-client/assets/textures/font/letter_60.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
- )
- ))
- )
- )
- )
- ))
- )
-
-
diff --git a/pixel-client/assets/textures/font/letter_61.ta b/pixel-client/assets/textures/font/letter_61.ta
deleted file mode 100644
index da5689d2..00000000
--- a/pixel-client/assets/textures/font/letter_61.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-)))))))
-
-)))))))
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_62.ta b/pixel-client/assets/textures/font/letter_62.ta
deleted file mode 100644
index 4c917fa1..00000000
--- a/pixel-client/assets/textures/font/letter_62.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
- )
- ))
- )
- )
- )
- ))
- )
-
-
diff --git a/pixel-client/assets/textures/font/letter_63.ta b/pixel-client/assets/textures/font/letter_63.ta
deleted file mode 100644
index 9d610d01..00000000
--- a/pixel-client/assets/textures/font/letter_63.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
-)) ))
-) )
-) )
- ) )
- ))
- ))
- ))
- )
-
- )
- )))
diff --git a/pixel-client/assets/textures/font/letter_64.ta b/pixel-client/assets/textures/font/letter_64.ta
deleted file mode 100644
index 71bd28c8..00000000
--- a/pixel-client/assets/textures/font/letter_64.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
- ))))
- ) )
-) )) )
-) ) ) )
-) ) ) )
-) )))))
-)
- ) )
- )))))
diff --git a/pixel-client/assets/textures/font/letter_65.ta b/pixel-client/assets/textures/font/letter_65.ta
deleted file mode 100644
index 28071f85..00000000
--- a/pixel-client/assets/textures/font/letter_65.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- ) )
- ) )
- ) )
- ) )
-) )
-) )
-)))))))
-) )
-) )
-) )
-) )
diff --git a/pixel-client/assets/textures/font/letter_66.ta b/pixel-client/assets/textures/font/letter_66.ta
deleted file mode 100644
index 4864fcdf..00000000
--- a/pixel-client/assets/textures/font/letter_66.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- )))))
- ) )
- ) )
- ) ))
- ))))
- ) )
- ) )
- ) )
- ) )
- ) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_67.ta b/pixel-client/assets/textures/font/letter_67.ta
deleted file mode 100644
index 85490d56..00000000
--- a/pixel-client/assets/textures/font/letter_67.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))))))
-))
-)
-)
-)
-)
-)
-)
-)
-)
-))
- ))))))
diff --git a/pixel-client/assets/textures/font/letter_68.ta b/pixel-client/assets/textures/font/letter_68.ta
deleted file mode 100644
index ad36aa7d..00000000
--- a/pixel-client/assets/textures/font/letter_68.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)))))
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_69.ta b/pixel-client/assets/textures/font/letter_69.ta
deleted file mode 100644
index 1140ae6a..00000000
--- a/pixel-client/assets/textures/font/letter_69.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- ))))))
- )
- )
- )
- )
- ))))))
- )
- )
- )
- )
- ))))))
diff --git a/pixel-client/assets/textures/font/letter_70.ta b/pixel-client/assets/textures/font/letter_70.ta
deleted file mode 100644
index 7edf7b81..00000000
--- a/pixel-client/assets/textures/font/letter_70.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- ))))))
- )
- )
- )
- ))))))
- )
- )
- )
- )
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_71.ta b/pixel-client/assets/textures/font/letter_71.ta
deleted file mode 100644
index c274f69b..00000000
--- a/pixel-client/assets/textures/font/letter_71.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
-)) ))
-)
-)
-)
-)
-)
-) )))
-) ) )
-) )
-)) )
- ))))))
diff --git a/pixel-client/assets/textures/font/letter_72.ta b/pixel-client/assets/textures/font/letter_72.ta
deleted file mode 100644
index 8dd0b37f..00000000
--- a/pixel-client/assets/textures/font/letter_72.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)) ))
- ) )
- ) )
- ) )
- ) )
- ))))))
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_73.ta b/pixel-client/assets/textures/font/letter_73.ta
deleted file mode 100644
index e6fedf1e..00000000
--- a/pixel-client/assets/textures/font/letter_73.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )))))
diff --git a/pixel-client/assets/textures/font/letter_74.ta b/pixel-client/assets/textures/font/letter_74.ta
deleted file mode 100644
index 5c20b402..00000000
--- a/pixel-client/assets/textures/font/letter_74.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)))))))
- )
- )
- )
- )
- )
- )
- )
-) )
-) )
-) )
- ))))
diff --git a/pixel-client/assets/textures/font/letter_75.ta b/pixel-client/assets/textures/font/letter_75.ta
deleted file mode 100644
index 7e75437f..00000000
--- a/pixel-client/assets/textures/font/letter_75.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)) )
- ) )
- ) )
- ) )
- ) )
- ))
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_76.ta b/pixel-client/assets/textures/font/letter_76.ta
deleted file mode 100644
index 5aa685e2..00000000
--- a/pixel-client/assets/textures/font/letter_76.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )))))
diff --git a/pixel-client/assets/textures/font/letter_77.ta b/pixel-client/assets/textures/font/letter_77.ta
deleted file mode 100644
index 47f7141c..00000000
--- a/pixel-client/assets/textures/font/letter_77.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-) )
-)) ))
-)) ))
-) ) ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) ) )
-) )
-) )
diff --git a/pixel-client/assets/textures/font/letter_78.ta b/pixel-client/assets/textures/font/letter_78.ta
deleted file mode 100644
index 41abc7da..00000000
--- a/pixel-client/assets/textures/font/letter_78.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-) )
-)) )
-))) )
-) ) )
-) )) )
-) ) )
-) ) )
-) )) )
-) ) )
-) )))
-) ))
-) )
diff --git a/pixel-client/assets/textures/font/letter_79.ta b/pixel-client/assets/textures/font/letter_79.ta
deleted file mode 100644
index bdfb121c..00000000
--- a/pixel-client/assets/textures/font/letter_79.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
-)) ))
-) )
-) )
-) )
-) )
-) )
-) )
-) )
-) )
-)) ))
- )))))
diff --git a/pixel-client/assets/textures/font/letter_80.ta b/pixel-client/assets/textures/font/letter_80.ta
deleted file mode 100644
index ceb8e40c..00000000
--- a/pixel-client/assets/textures/font/letter_80.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))))))
- ) ))
- ) )
- ) )
- ) ))
- )))))
- )
- )
- )
- )
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_81.ta b/pixel-client/assets/textures/font/letter_81.ta
deleted file mode 100644
index 2cee9139..00000000
--- a/pixel-client/assets/textures/font/letter_81.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
-)) ))
-) )
-) )
-) )
-) )
-) )
-) )
-) )) )
-)) ))
- ))))))
- )
diff --git a/pixel-client/assets/textures/font/letter_82.ta b/pixel-client/assets/textures/font/letter_82.ta
deleted file mode 100644
index b42aaf0e..00000000
--- a/pixel-client/assets/textures/font/letter_82.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- )))))
- ) ))
- ) )
- ) ))
- )))))
- ))
- )))
- ) ))
- ) )
- ) ))
- ) ))
diff --git a/pixel-client/assets/textures/font/letter_83.ta b/pixel-client/assets/textures/font/letter_83.ta
deleted file mode 100644
index d484fe86..00000000
--- a/pixel-client/assets/textures/font/letter_83.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )))))
-) )
-)
-)
-)
- )))))
- )
- )
- )
- )
-) )
- )))))
diff --git a/pixel-client/assets/textures/font/letter_84.ta b/pixel-client/assets/textures/font/letter_84.ta
deleted file mode 100644
index 2fbfde94..00000000
--- a/pixel-client/assets/textures/font/letter_84.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)))))))
-) ) )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )))
diff --git a/pixel-client/assets/textures/font/letter_85.ta b/pixel-client/assets/textures/font/letter_85.ta
deleted file mode 100644
index 5cb28d7b..00000000
--- a/pixel-client/assets/textures/font/letter_85.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-) )
-) )
-) )
-) )
-) )
-) )
-) )
-) )
-) )
-) )
-)) ))
- )))))
diff --git a/pixel-client/assets/textures/font/letter_86.ta b/pixel-client/assets/textures/font/letter_86.ta
deleted file mode 100644
index ad5af20d..00000000
--- a/pixel-client/assets/textures/font/letter_86.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- )
diff --git a/pixel-client/assets/textures/font/letter_87.ta b/pixel-client/assets/textures/font/letter_87.ta
deleted file mode 100644
index aa16652c..00000000
--- a/pixel-client/assets/textures/font/letter_87.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-) )
-) )
-) ) )
-) ) )
-) ) )
-) ) ) )
-) ) ) )
-) ) ) )
-) ) ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_88.ta b/pixel-client/assets/textures/font/letter_88.ta
deleted file mode 100644
index d26cb6a9..00000000
--- a/pixel-client/assets/textures/font/letter_88.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ) )
- ) )
- ) )
- ) )
- ) )
- )
- )
- ) )
- ) )
- ) )
- ) )
- ) )
diff --git a/pixel-client/assets/textures/font/letter_89.ta b/pixel-client/assets/textures/font/letter_89.ta
deleted file mode 100644
index d0452481..00000000
--- a/pixel-client/assets/textures/font/letter_89.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- ) )
- )
- )
- )
- )
- )))
diff --git a/pixel-client/assets/textures/font/letter_90.ta b/pixel-client/assets/textures/font/letter_90.ta
deleted file mode 100644
index ae95e414..00000000
--- a/pixel-client/assets/textures/font/letter_90.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-)))))))
- ))
- )
- ))
- )
- ))
- ))
- )
- ))
- )
-))
-)))))))
diff --git a/pixel-client/assets/textures/font/letter_91.ta b/pixel-client/assets/textures/font/letter_91.ta
deleted file mode 100644
index b91a7626..00000000
--- a/pixel-client/assets/textures/font/letter_91.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_92.ta b/pixel-client/assets/textures/font/letter_92.ta
deleted file mode 100644
index 78702898..00000000
--- a/pixel-client/assets/textures/font/letter_92.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- )
- ))
- )
- ))
- )
- )
- ))
- )
- ))
- )
- )
diff --git a/pixel-client/assets/textures/font/letter_93.ta b/pixel-client/assets/textures/font/letter_93.ta
deleted file mode 100644
index 7d20c471..00000000
--- a/pixel-client/assets/textures/font/letter_93.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- ))
- )
- )
- )
- )
- )
- )
- )
- )
- )
- )
- ))
diff --git a/pixel-client/assets/textures/font/letter_94.ta b/pixel-client/assets/textures/font/letter_94.ta
deleted file mode 100644
index 0060dbd7..00000000
--- a/pixel-client/assets/textures/font/letter_94.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- )))
- )) ))
- ) )
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_95.ta b/pixel-client/assets/textures/font/letter_95.ta
deleted file mode 100644
index 30d2d1f2..00000000
--- a/pixel-client/assets/textures/font/letter_95.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-)))))))
diff --git a/pixel-client/assets/textures/font/letter_96.ta b/pixel-client/assets/textures/font/letter_96.ta
deleted file mode 100644
index 7911a73d..00000000
--- a/pixel-client/assets/textures/font/letter_96.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- )
- ))
- )
- ))
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/font/letter_97.ta b/pixel-client/assets/textures/font/letter_97.ta
deleted file mode 100644
index d48584a7..00000000
--- a/pixel-client/assets/textures/font/letter_97.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
- ))))
-) )
- ))))
- ) ))
-) )
-) )
-)) )
- ))))))
diff --git a/pixel-client/assets/textures/font/letter_98.ta b/pixel-client/assets/textures/font/letter_98.ta
deleted file mode 100644
index 2d15bb74..00000000
--- a/pixel-client/assets/textures/font/letter_98.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-))
- )
- )
- )
- )
- ))))
- )) )
- ) )
- ) )
- ) )
- ) )
-)))))
diff --git a/pixel-client/assets/textures/font/letter_99.ta b/pixel-client/assets/textures/font/letter_99.ta
deleted file mode 100644
index 5ccf277c..00000000
--- a/pixel-client/assets/textures/font/letter_99.ta
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- ))))))
-))
-)
-)
-)
-))
- ))))))
diff --git a/pixel-client/assets/textures/foodprocessor.ta b/pixel-client/assets/textures/foodprocessor.ta
deleted file mode 100644
index ef6fa194..00000000
--- a/pixel-client/assets/textures/foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[h]]]]]]]]h[[h
-[]]h]]]]]]]]h]]h
-[]]h]]mmmm]]h]]h
-]]]h]mrrrrm]h]]h
-]]]hmrrrrrrmhhh]
-]]]hrrrrrrrrh]]]
-]]]hrrrrrrrrh]]]
-]]]hrrrrrrrrh]]]
-]]]]hrrrrrrh]]]]
-]]]]]hrrrrh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/freezer.ta b/pixel-client/assets/textures/freezer.ta
deleted file mode 100644
index 94c66e46..00000000
--- a/pixel-client/assets/textures/freezer.ta
+++ /dev/null
@@ -1,42 +0,0 @@
-¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤''''''''''''''''''''''''''''''¤
-¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
-¤öööööööööööööööööööööööööööööö¤
-¤ööööööööööööööööööööööööööööööö
-¤öööööööööööööööööööööööööööööö¤
-ööööööööööööööööööööööööööööööö¤
-¤öööööööööööööööööööööööööööööö¤
-öööööööööööööööööööööööööööööööö
-ööööööööööööööööööööööööööööööö¤
-öööööööööööööööööööööööööööööööö
-öööööööööööööööööööööööööööööööö
-öööööööööööööööööööööööööööööööö
-öööööööööööööööööööööööööööööööö
-öööööööööööööööööööööööööööööööö
-¤ööööööööööööööööööööööööööööööö
-öööööööööööööööööööööööööööööööö
-¤öööööööööööööööööööööööööööööö¤
-¤öööööööööööööööööööööööööööööö¤
-¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
diff --git a/pixel-client/assets/textures/glass.ta b/pixel-client/assets/textures/glass.ta
deleted file mode 100644
index 10306095..00000000
--- a/pixel-client/assets/textures/glass.ta
+++ /dev/null
@@ -1,19 +0,0 @@
- a°°°°°°°°a
- a°°°°°°°°°°a
-a°°°°°°°°°°°°a
-aa°°°°°°°°°°aa
-a°a°°°°°°°°a°a
-a°°aaaaaaaa°°a
-a°°°°°°°°°°°°a
-a°°°°°°°°°°a°a
-a°°°°°°°°°a°°a
-a°°°°°°°°°a°°a
-a°°°°°°°°°a°°a
-a°°°°°°°a°a°°a
-a°°°°°°°a°a°°a
-a°°°°°°°a°°°°a
-a°°°°°°°a°°°°a
-a°°°°°°°a°°°°a
-a°°°°°°a°°°°°a
- a°°°°a°°°°°a
- aaaaaaaaaa
diff --git a/pixel-client/assets/textures/grass.ta b/pixel-client/assets/textures/grass.ta
deleted file mode 100644
index 359904f9..00000000
--- a/pixel-client/assets/textures/grass.ta
+++ /dev/null
@@ -1,30 +0,0 @@
- ‹‹‹‹
- ‹Ø ØØ‹
- ‹‹ ‹ Ø ‹ØØ
- ‹‹‹ ‹‹ ‹Ø‹ ‹‹‹‹
- ‹ØØ ‹‹ ‹‹‹ ‹‹‹‹‹‹‹‹‹
- ‹‹ØØ ‹‹‹‹‹Ø‹ ‹‹ ‹ ‹ØØØØØ‹ØØ
-Ø‹‹ØØØ‹‹‹ØØØØØ‹‹ØØ‹‹‹‹‹‹‹‹‹‹‹Ø‹‹
-ØØØØØØØØ‹ØØØØØØØØØØØØØØ‹ØØØØ‹ØØØ
-Ø‹ØØØØØØ‹ØØØ‹ØØ‹‹ØØØØØØ‹ØØØ‹‹‹ØØ
-ØØ‹‹ØØØØØØØ‹‹ØØ‹‹‹ØØ‹‹‹Ø‹‹‹‹‹‹ØØ
-ØØ‹‹‹‹‹‹‹‹ØØØØØØ‹‹‹ØØØØØ‹ØØØØ‹‹Ø
-ØØØ‹‹ØØØØ‹‹ØØØØ‹‹‹‹‹ØØØØ‹ØØØØØ‹Ø
-ØØØØ‹ØØØØØ‹‹Ø‹‹‹‹‹Ø‹ØØØØ‹ØØØØ‹ØØ
-ØØØØ‹‹ØØØØ‹‹‹Ø‹ØØØØ‹‹ØØØØØ‹‹‹ØØØ
-Ø‹‹‹‹‹ØØØØ‹‹ØØ‹ØØØØØ‹‹ØØØØ‹‹Ø‹‹Ø
-Ø‹ØØØØØØ‹‹‹ØØØ‹‹ØØØØØ‹ØØØØØ‹ØØ‹Ø
-ØØØØØØØØ‹‹ØØ‹‹‹‹‹ØØØØØØØ‹ØØ‹‹ØØØ
-ØØØØØØ‹‹Ø‹‹Ø‹Ø‹Ø‹‹ØØØØØ‹‹ØØ‹ØØØØ
-Ø‹‹Ø‹‹‹ØØØØØØØØØ‹‹ØØØ‹‹‹‹ØØ‹ØØØØ
-ØØ‹‹‹ØØØØØØØØØ‹‹Ø‹‹ØØ‹‹Ø‹ØØØØØØØ
-ØØØ‹‹‹‹‹‹‹‹‹‹‹‹ØØØ‹ØØ‹ØØ‹‹ØØØ‹ØØ
-ØØØØ‹ØØØØ‹‹Ø‹ØØØØØØØ‹‹ØØØ‹‹ØØ‹‹Ø
-ØØØ‹‹ØØØØØ‹‹‹ØØØØØØØ‹ØØØØØ‹‹‹‹‹Ø
-ØØ‹ØØØØØ‹‹‹ØØØØ‹ØØ‹‹‹ØØØØØ‹‹ØØ‹Ø
-ØØØØØØØØ‹Ø‹‹ØØ‹‹‹ØØØØØØØ‹‹ØØØ‹ØØ
-ØØØ‹‹ØØØ‹ØØ‹‹Ø‹Ø‹‹‹‹‹ØØ‹‹‹ØØØ‹‹Ø
-ØØ‹‹‹ØØØ‹ØØØ‹‹‹ØØØØØ‹Ø‹‹Ø‹ØØØØØ‹
-‹‹‹ØØØØ‹‹ØØØØ‹‹ØØØØØ‹‹‹ØØ‹ØØØØØØ
-‹ØØØØØ‹‹ØØØØØ‹‹ØØØØØØØØØØ‹ØØØØØØ
-ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ
diff --git a/pixel-client/assets/textures/interact_target_thick.ta b/pixel-client/assets/textures/interact_target_thick.ta
deleted file mode 100644
index 3ece0dfa..00000000
--- a/pixel-client/assets/textures/interact_target_thick.ta
+++ /dev/null
@@ -1,24 +0,0 @@
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aa aa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/pixel-client/assets/textures/interact_target_thin.ta b/pixel-client/assets/textures/interact_target_thin.ta
deleted file mode 100644
index b0cbc90d..00000000
--- a/pixel-client/assets/textures/interact_target_thin.ta
+++ /dev/null
@@ -1,24 +0,0 @@
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-a a
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/pixel-client/assets/textures/itembubble.ta b/pixel-client/assets/textures/itembubble.ta
deleted file mode 100644
index 02b6b1bb..00000000
--- a/pixel-client/assets/textures/itembubble.ta
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
- eeeeeeeeeeeeeeeeeeeeee
- ejjjjjjjjjjjjjjjjjjjjjje
- ejjjjjjjjjjjjjjjjjjjjjjjje
- ejjjjjjjjjjjjjjjjjjjjjjjjjje
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- jjjjjjjjjjjjjjjjjjjjjjjjjjjj
- mjjjjjjjjjjjjjjjjjjjjjjjjjjm
- mjjjjjjjjjjjjjjjjjjjjjjjjm
- mjjjjjjjjjjjjjjjjjjjjjjm
- mmmmjjjjjjjjjjjjjjmmmm
- mmmjjjjjjjjmmm
- mmjjjjmm
- mjjm
- mm
diff --git a/pixel-client/assets/textures/leek.ta b/pixel-client/assets/textures/leek.ta
deleted file mode 100644
index d77c9c15..00000000
--- a/pixel-client/assets/textures/leek.ta
+++ /dev/null
@@ -1,18 +0,0 @@
- ΩΩßß
- ΩßΩΩß
- ΩΩΩΩßß
- ΩΩΩΩßß
- ΩΩΩΩßß
- ŁΩΩΩß ßß
- ŁŁŁΩΩΩΩΩΩΩΩ
- ŁŁŁŁßßßßßΩΩ
- ŁŁŁŁÖ
- ŁŁŁŁÖ
- ŁŁŁŁÖ
- cŁŁŁÖ
- ccŁÖÖ
- ccccÖ
- ccccc
-OcccO
-QcOO
-OQPQ
diff --git a/pixel-client/assets/textures/leek_in_pot.ta b/pixel-client/assets/textures/leek_in_pot.ta
deleted file mode 100644
index 301222f0..00000000
--- a/pixel-client/assets/textures/leek_in_pot.ta
+++ /dev/null
@@ -1,10 +0,0 @@
- ΩΩßß
- ΩßΩΩß
- ΩΩΩΩßß
- ΩΩΩΩßß
- ΩΩΩΩßß
- ŁΩΩΩß ßß
- ŁŁŁΩΩΩΩΩΩΩΩ
- ŁŁŁŁßßßßßΩΩ
- ŁŁŁŁÖ
-ŁŁŁŁÖ
diff --git a/pixel-client/assets/textures/milk_foodprocessor.ta b/pixel-client/assets/textures/milk_foodprocessor.ta
deleted file mode 100644
index 4697ffd7..00000000
--- a/pixel-client/assets/textures/milk_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[h]]]]]]]]h[[h
-[]]hebbbbbbeh]]h
-[]]heebbbbeeh]]h
-]]]heeeeeeeeh]]h
-]]]heeeeeeeehhh]
-]]]heeeeeeeeh]]]
-]]]heeeeeeeeh]]]
-]]]heeeeeeeeh]]]
-]]]]heeeeeeh]]]]
-]]]]]heeeeh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/milk_strawberry_foodprocessor.ta b/pixel-client/assets/textures/milk_strawberry_foodprocessor.ta
deleted file mode 100644
index b978a59c..00000000
--- a/pixel-client/assets/textures/milk_strawberry_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°Ø°°h
- h°°°°ÖØÄ°h
- hh°°°°°Øhh
- h°hłłŁŁh›h
- h°°hhhhßłh
- h°°°CVBŁßhhh
-[[[h]]CCBB›Łh[[h
-[]]hebCVBCß/h]]h
-[]]heebBCVCeh]]h
-]]]heeeeeeeeh]]h
-]]]heeeeeeeehhh]
-]]]heeeeeeeeh]]]
-]]]heeeeeeeeh]]]
-]]]heeeeeeeeh]]]
-]]]]heeeeeeh]]]]
-]]]]]heeeeh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/mochi_dough.ta b/pixel-client/assets/textures/mochi_dough.ta
deleted file mode 100644
index 55b6b016..00000000
--- a/pixel-client/assets/textures/mochi_dough.ta
+++ /dev/null
@@ -1,8 +0,0 @@
- ))))
- )))))))
- )))))))))
-))))))))))
-))))))))))
-E))))))))
- EEE)))EE
- EEEE
diff --git a/pixel-client/assets/textures/nigiri_rice.ta b/pixel-client/assets/textures/nigiri_rice.ta
deleted file mode 100644
index 5613626d..00000000
--- a/pixel-client/assets/textures/nigiri_rice.ta
+++ /dev/null
@@ -1,15 +0,0 @@
- ))
- )))
- E))
- )))E
- )))))))
- )))))E))))
- )))))))))))E))
- )))E))))E)))))
- ))))))))))))))
- ))))))))))))E)
- )))))))))))E)))
-E)E))))E))E)))))
-)E))E)))))))))
- )))))))E)))
- E))))))
diff --git a/pixel-client/assets/textures/oven.ta b/pixel-client/assets/textures/oven.ta
deleted file mode 100644
index 96e3d2a0..00000000
--- a/pixel-client/assets/textures/oven.ta
+++ /dev/null
@@ -1,40 +0,0 @@
-MM////MM///MMMMMMMMMMMMMMM//////
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
-/MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM/
-///MMMMMMMMMMMMMMMMMMMMMMMMM////
-////////////////////////////////
-/555555555555555555555555555555/
-/555555555555555555555555555555/
-/555555555555555555555555555555/
-/5555555555555555555555555555555
-55555555555555555555555555555555
-55555555555555555555555555555555
-55555555555555555555555555555555
-55555555555555555555555555555555
-5555555555555555555555555555555/
-/555555555555555555555555555555/
-5555555555555555555555555555555/
-55555555555555555555555555555555
-55555555555555555555555555555555
-/555555555555555555555555555555/
-////////////////////////////////
diff --git a/pixel-client/assets/textures/particle.ta b/pixel-client/assets/textures/particle.ta
deleted file mode 100644
index 0ad4d2e5..00000000
--- a/pixel-client/assets/textures/particle.ta
+++ /dev/null
@@ -1,2 +0,0 @@
-cc
-c
diff --git a/pixel-client/assets/textures/path.ta b/pixel-client/assets/textures/path.ta
deleted file mode 100644
index 30f94645..00000000
--- a/pixel-client/assets/textures/path.ta
+++ /dev/null
@@ -1,24 +0,0 @@
-QPPPPPPPPPPPPPPPHHPPPPPQQPPPPPPP
-QQPPHPQQHPPPPPPHQQQQQQQPHPPPPQPP
-QQHHHPHPHHHHHHQPPHHPPQPPHQQPHHPH
-QPPHHPHHPHHPPPQQQPPPHHQPQQPPQPHP
-QHHHPHPHHHPPQQHQPPPPHHQPPHPQPPPH
-PPQHQHPPQQHHPPPQQPPHHHQPPHQQQPPP
-PPHPPHPPQQHHPPPQPHHQQHPPPHHHPPPP
-HHHPPHPPHQQQPPQHPPPPQHHQQHHHHPQQ
-HPPPHPHQQQPQQPHHPPHHQQQQQQQQQQQP
-QPHQQPPHQPHHHQPPPHHHPPPHQQHHQHPQ
-QPQPHPPPHHPPPHHPHQQQPHPQPPPHQHQP
-QPQPQPHHHPHHPQHPHQPPHPPQPPHHQHQP
-PPPPQPHHPPPHHQQHHHPPHQPQPPPHQQPH
-PHHHHHPPPQHQPHHQHHPQQHHQPHPPQQPH
-HHQHHPPPQPHQPHHHQHPHPPHQHHHQQPPP
-PPHQHQQPQQQHPHQQQHHHHHHPQHPPQHPH
-PHHPPQQPPHPHQQQPQQPQHHHPPQHPHPHH
-PHPHHHPQHHPHQQQQQHQQQHQHHQHHPHHP
-PHPPHPHHQQHHQHHQQQPPHQQQHQQQHPPQ
-QHPHHHHHPPQQQQHPPQQQHHHQPQQHQPPQ
-PQHHHHPPQHQQHHHPQQPPHHQQQQHPQPHQ
-PQQQQQQQQPHHPPPHHQPPPQQHHPHPPPPQ
-PQQQHHQQQPHHHHHHPHPQHHHHHPPQPPQQ
-PPPHHPPQQQHPHPPPPQQQQQPPPHPPHPPQ
diff --git a/pixel-client/assets/textures/plate.ta b/pixel-client/assets/textures/plate.ta
deleted file mode 100644
index 15d66e0c..00000000
--- a/pixel-client/assets/textures/plate.ta
+++ /dev/null
@@ -1,23 +0,0 @@
- ffffffffffff
- fffjjjjjjjjfff
- fffjjjjjjjjjjjjfff
- fffjjjjjjjjjjjjjjjff
- fffjjjffffffffffffjjff
- fffjjfffffffffffffffjjff
- ffjjfffffffffffffffffjjff
- ffjfffffffffffffffffffjff
- ffffffffffffffffffffffffff
- fffffffffffffffffffffffffff
- fffffffffffffffffffffffffff
- fffffffffffffffffffffffffff
- fffffffffffffffffffffffffff
- fffffffffffffffffffffffffff
- ffffffffffffffffffffffffff
- fffffffffffffffffffffffjf
- fjfffffffffffffffffffffj
- jjfffffffffffffffffffj
- jjfffffffffffffffffj
- jjffffffffffffffjj
- jjjffffffffffjjj
- jjjjjjjjjjjj
- jjjjjj
diff --git a/pixel-client/assets/textures/plate_dirty.ta b/pixel-client/assets/textures/plate_dirty.ta
deleted file mode 100644
index 50781b21..00000000
--- a/pixel-client/assets/textures/plate_dirty.ta
+++ /dev/null
@@ -1,23 +0,0 @@
- ffffffffffff
- fffjjjjjjjjfff
- fffjjjjjjjjjjjjfff
- fffjjjjjjjjjjjjjjjff
- fffjjjHHffffffffffjjff
- fffjjfHHfJHffIffHHffjjff
- ffjjfHHHHHffffxxIHHffjjff
- ffjffxxHHHHxffHHxHffxfjff
-ffffffHxHHHHHHfffHHHffffff
-fffffffHHHIHHffffJfffffffff
-fffffxfHHfffxfffJfJHHfxffff
-ffffIfHHJffffxffHHfHHHfffff
-fffffIHHJffffffxHHffHffffff
-fffffHHHHfIfHHHHHHHHJHfffff
-fffffHHxfffIIHHHHHHHJfffff
- ffffffHffffHHHHxfHJJfffjf
- fjfffHHfffxfffHHHffffffj
- jjfffffJffffIfHHfffffj
- jjffffffffIfHHfffffj
- jjffffffffffffffjj
- jjjffffffffffjjj
- jjjjjjjjjjjj
- jjjjjj
diff --git a/pixel-client/assets/textures/pot_back.ta b/pixel-client/assets/textures/pot_back.ta
deleted file mode 100644
index 85456a40..00000000
--- a/pixel-client/assets/textures/pot_back.ta
+++ /dev/null
@@ -1,20 +0,0 @@
- jjjjjj
- jjjmmmmmmjjj
- jmmmmmmmmmmmmj
- jmmmmmmmmmmmmmmj
- mmmmmmmmmmmmmmmm
- mmmmmmmmmmmmmmm
- mmmmmmmmmmmmm
- mmmmmm
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/pot_front.ta b/pixel-client/assets/textures/pot_front.ta
deleted file mode 100644
index ccfdf15e..00000000
--- a/pixel-client/assets/textures/pot_front.ta
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
- j j
- jj jj
-mmjjj jjjmm
-m mjjjjj jjjhjj j
-mmmjjjjjjjjjjjjjhhjjjj
- mjjjjjjjjjjjhjhhjj
- mmjjjjjjjjjjhjhhjj
- mmmjjjjjjjjjhjhhjj
- mmmmjjjjjjjjhjhjjm
- mmmmmmjjjjjjhjhjjm
- mmmmmmjjjjjhjjmmm
- mmmmmmmjjjjjjmmm
- mmmmmmmmmmmmmmm
- mmmmmmmmmmmmm
- mmmmmmmmm
- mmmmm
diff --git a/pixel-client/assets/textures/rice.ta b/pixel-client/assets/textures/rice.ta
deleted file mode 100644
index 8b2e6c14..00000000
--- a/pixel-client/assets/textures/rice.ta
+++ /dev/null
@@ -1,22 +0,0 @@
- KKKEEPE)E
- IKKEEEEEEEEEKKKK
- IKEEEPEE)E)EEEPEKI
- IKEEPEEEEEEEPEEEEKI
- IIIE)EEPEPEEEE)EEII
- IIIKKKKKEEE)EEIIIII
- KIIKKKKKKKKIIIIIIII
- KIIKKKKKKKIIIIIII
- KKIKKKKKKKIIIIK
- IKKKKKKKKKKKKK
- IIKKKKKKKKKKKI
- IIIKKKKKKKIIIIII
- IIIKKKKKKKKIIIIII
- IIKKKKKKKKKIIIIIIK
- IKEKE)EKKKKKIIIIIKK
- EEEEEEEEEKKKIIIIIIII
- EP)EEEPEEPEKKKKIIIIII
-EPEEPEEEEEEEEKKKKKK
- EEEEEEEPEEEEKKK
-) PEEEEEE)
- E E
- P
diff --git a/pixel-client/assets/textures/rice_cooked_in_pot.ta b/pixel-client/assets/textures/rice_cooked_in_pot.ta
deleted file mode 100644
index 56b32a2b..00000000
--- a/pixel-client/assets/textures/rice_cooked_in_pot.ta
+++ /dev/null
@@ -1,6 +0,0 @@
- aaEaEa
- aaaaaaaaa
-aaaEaaEaEaaaEa
- EaaaaaaaEaaaa
- aaEaEaaaaEaa
- aaaEaa
diff --git a/pixel-client/assets/textures/rice_flour.ta b/pixel-client/assets/textures/rice_flour.ta
deleted file mode 100644
index 82ab2133..00000000
--- a/pixel-client/assets/textures/rice_flour.ta
+++ /dev/null
@@ -1,5 +0,0 @@
- )E))))))
- ))))))E))))
-)E))E)))))E))E
- ))))))))))))
- )E)))E))
diff --git a/pixel-client/assets/textures/rice_flour_foodprocessor.ta b/pixel-client/assets/textures/rice_flour_foodprocessor.ta
deleted file mode 100644
index 06017d8c..00000000
--- a/pixel-client/assets/textures/rice_flour_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[h]]]]]]))h[[h
-[]]h]]]]]))Eh]]h
-[]]hE]mm))))h]]h
-]]]h))))))))h]]h
-]]]h)E)))E))hhh]
-]]]h))))))))h]]]
-]]]h))E)))))h]]]
-]]]h)))E))E)h]]]
-]]]]h))))))h]]]]
-]]]]]hE)))h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/rice_foodprocessor.ta b/pixel-client/assets/textures/rice_foodprocessor.ta
deleted file mode 100644
index 58d79651..00000000
--- a/pixel-client/assets/textures/rice_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[hE]]]])P]h[[h
-[]]h]])EE]]]h]]h
-[]]hP]EEPmE]h]]h
-]]]h]EEEEE)Eh]]h
-]]]hE)EPEErmhhh]
-]]]hEEEEE)EEh]]]
-]]]hEPEEEEE)h]]]
-]]]hEE)EEEEEh]]]
-]]]]hEEPEEPh]]]]
-]]]]]hEEE)h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/rice_in_pot.ta b/pixel-client/assets/textures/rice_in_pot.ta
deleted file mode 100644
index e9f3221c..00000000
--- a/pixel-client/assets/textures/rice_in_pot.ta
+++ /dev/null
@@ -1,6 +0,0 @@
- EEPE)E
- EEEEEEEEE
-EEEPEE)E)EEEPE
- PEEEEEEEPEEEE
- EEPEPEEEE)EE
- EEE)EE
diff --git a/pixel-client/assets/textures/sink.ta b/pixel-client/assets/textures/sink.ta
deleted file mode 100644
index e76c2af7..00000000
--- a/pixel-client/assets/textures/sink.ta
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
- jjjjj jjjjj
- jjj ljjl jjj
- lll ljjl lll
- ljjl
- hhhhhhhhhhhhhjjhhhhhhhhhhhhh
- hhhhhhhhhhhhhjjhhhhhhhhhhhhh
- hhmmmmmmmmmmmjjmmmmmmmmmmmhh
- hhmmmmmmmmmmmjjmmmmmmmmmmmhh
- hhmmmmmmmmmmmmmmmmmmmmmmmmhh
- hhmmhhhhhhhhhhhhhhhhhhhhmmhh
- hhmmhhhhhhhhhhhhhhhhhhhhhmhh
- hhmhhhhhhhhhhmmhhhhhhhhhhmhh
- hhmhhhhhhhhhmmmmhhhhhhhhhmhh
- hhmhhhhhhhhhmmmmhhhhhhhhhmhh
- hhmhhhhhhhhhhmmhhhhhhhhhhmhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhmmmmmmmmmmmmmmmmmmmmhhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhh
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/solid.ta b/pixel-client/assets/textures/solid.ta
deleted file mode 100644
index 78981922..00000000
--- a/pixel-client/assets/textures/solid.ta
+++ /dev/null
@@ -1 +0,0 @@
-a
diff --git a/pixel-client/assets/textures/steak.ta b/pixel-client/assets/textures/steak.ta
deleted file mode 100644
index 23f31da7..00000000
--- a/pixel-client/assets/textures/steak.ta
+++ /dev/null
@@ -1,20 +0,0 @@
- LLLLL
- KKKKKKKLLK
- KKKxKKKKKKLLK
- KKKKxLKKxKKKNLL
- LLxKKKxLLLLLxKKNxNK
- LLLxxxNKKLLLLLKKKxKK
- LLxNNNLKLLKKxLKKKxKK
- LLLxLLLKKLLKxLLLxxK
- LLLxLLLLKLLKxLLNxxK
- LxLLKKLLLKLKKxNNxK
- xxLLxKKKLLLLKKxxxK
- NNLLLLxKLLNNxxxxx
- NxLKLLLKKKLxxxxxxx
- NLLLKKLxKKKKxxxxxx
- LLLLLLKKxKKKKxKxxxx
-NLLLLKKKKKKxKxxxxxxxxx
-NNKKKxxxxxxxxxLxx5xx
-xxxxxxxxxxxxxxxxLxxL
-xxxxxxxxxKxxxLx5xx5
- Kxxxxx5xLx
diff --git a/pixel-client/assets/textures/steak_in_pot.ta b/pixel-client/assets/textures/steak_in_pot.ta
deleted file mode 100644
index 4aec1c5a..00000000
--- a/pixel-client/assets/textures/steak_in_pot.ta
+++ /dev/null
@@ -1,9 +0,0 @@
- LLLLL
- KKKKKKKL
- KKKxKKKKKK
- KKKKxLKKxKKK
-LxKKKxLLLLLxKK
-LLxxxNKKLLLLLK
-LxNNNLKLLKKxL
-LLxLLLKKLLKx
- LLLLKL
diff --git a/pixel-client/assets/textures/steak_raw.ta b/pixel-client/assets/textures/steak_raw.ta
deleted file mode 100644
index a0bfb0da..00000000
--- a/pixel-client/assets/textures/steak_raw.ta
+++ /dev/null
@@ -1,20 +0,0 @@
- BBBBB
- &&&&&&&BB&
- &&&Y&&&&&&BB&
- &&&&YB&&Y&&&/BB
- BBY&&&YBBBBBY&&/Y/&
- BBBYYY/&&BBBBB&&&Y&&
- BBY///B&BB&&YB&&&Y&&
- BBBYBBB&&BB&YBBBYY&
- BBBYBBBB&BB&YBB/YY&
- BYBB&&BBB&B&&Y//Y&
- YYBBY&&&BBBB&&YYY&
- //BBBBY&BB//YYYYY
- /YB&BBB&&&BYYYYYYY
- /BBB&&BY&&&&YYYYYY
- BBBBBB&&Y&&&&Y&YYYY
-/BBBB&&&&&&Y&YYYYYYYYY
-//&&&YYYYYYYYY/YYBYY
-YYYYYYYYYYYYYYYY/YY&
-YYYYYYYYY&YYY/YBYYB
- &YYYYYBY/Y
diff --git a/pixel-client/assets/textures/steak_raw_in_pot.ta b/pixel-client/assets/textures/steak_raw_in_pot.ta
deleted file mode 100644
index 2eb5c53b..00000000
--- a/pixel-client/assets/textures/steak_raw_in_pot.ta
+++ /dev/null
@@ -1,9 +0,0 @@
- BBBB
- &&&&&&&
- &&&Y&&&&&
- &&&&YB&&Y&&
-BBY&&&YBBBBBY&
-BBBYYY/&&BBBBB
-BBY///B&BB&&Y
-BBBYBBB&&BB&
- YBBBB&
diff --git a/pixel-client/assets/textures/stove.ta b/pixel-client/assets/textures/stove.ta
deleted file mode 100644
index f5010163..00000000
--- a/pixel-client/assets/textures/stove.ta
+++ /dev/null
@@ -1,36 +0,0 @@
- hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
- hhhhhhhhhhmmmmmmmmmhhhhhhhhhhh
- hhhhhhhhmmjjjjjjjjjmmhhhhhhhhh
- hhhhhhhhmjmmmmmmmmmjjmhhhhhhhh
- hhhhhhhmjmjjjjjjjjjmmjmhhhhhhh
- hhhhhhhmjmjmmmmmmmmjmjmhhhhhhh
- hhhhhhmjmjmjjjjjjjjmjmjmhhhhhh
- hhhhhhmjmmjmjmmmmmjmjmjmhhhhhh
- hhhhhhhmjmjmmjjjjjmmjmjmhhhhhh
- hhhhhhhmjmmjjmmmmjjjmjmhhhhhhh
- hhhhhhhhmjjmmjjjjmmmjjmhhhhhhh
- hhhhhhhhhmmjjmmmmjjjmmhhhhhhhh
- hhhhhhhhhhhmmjjjjmmmhhhhhhhhhh
- hjjjjhhhhhhhhmmmmhhhhhhhhjjjjh
- hjjjjhhhhhhhhhhhhhhhhhhhhjjjjh
- hjjjjhhhhhhhhhhhhhhhhhhhhjjjjh
- hmmmmhhhhhhhhhhhhhhhhhhhhmmmmh
- hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
- mmmmmmmmmmmmmmmmmmmmmmmmmmmmmm
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pixel-client/assets/textures/strawberry.ta b/pixel-client/assets/textures/strawberry.ta
deleted file mode 100644
index 8c3e0282..00000000
--- a/pixel-client/assets/textures/strawberry.ta
+++ /dev/null
@@ -1,23 +0,0 @@
- Ø›ßŁŁ
- łłCCCC
- Ø CłVCBC
- CCCCVBC
- Ø› ØØ/ØØCBBC
- ØłłŁŁŁ›łØłłCBC
- CCłßłŁ /VCCC
- CCBVBBߣØ//CCC
- CBBBBCCߨ//CV
- CBVBBCC/ Ø /CC
- C BBBBCVC/ Ø /
- CC BBCCCC//
- CCB //VC///// ØØŁ
- CCVBB /////// ßłłCC
- CCCBBC////// ŁßCCBBBC
- CCCCBV/// ›CVCBBBBCC
- C//CCCC ›ØłCCCBBBVBC
- //VC/C Øł///CVCBBBC
- /////C //V/CCCBBC
- ›///ß/ /////CCVBC
- ›łß ///////C
-ØłłłØØß
- łł
diff --git a/pixel-client/assets/textures/strawberry_foodprocessor.ta b/pixel-client/assets/textures/strawberry_foodprocessor.ta
deleted file mode 100644
index 419b0b68..00000000
--- a/pixel-client/assets/textures/strawberry_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h h
- h h
- h h
- hh Ø hh
- h h h h
- h hhhhØŁh
- h ØłłŁŁŁ›hhh
-[[[h]]]]Cłßłh[[h
-[]]h]]]CVBŁßh]]h
-[]]h]]CCBB›Łh]]h
-]]]h]mCVBCß/h]]h
-]]]hmCBBCVC›hhh]
-]]]hBBCCCC//h]]]
-]]]h/VCCC/V/h]]]
-]]]h//CCC///h]]]
-]]]]h//V///h]]]]
-]]]]]h////h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/strawberry_icecream.ta b/pixel-client/assets/textures/strawberry_icecream.ta
deleted file mode 100644
index d80366c3..00000000
--- a/pixel-client/assets/textures/strawberry_icecream.ta
+++ /dev/null
@@ -1,14 +0,0 @@
- §§§§§§§
- §§YYY§§§§§§
- §YY§§§§§§§§§
- §§Y§§§§§§§§§§
- §Y§§§§§§§§§§Z
- §Y§§§§§§§§§§ZZ
- §§§§§§§§§§§§§ZZ
- §§§§§§§§§§§§§ZZZ
-§§§§§§§§§§§§§ZZZZZ
- Z§§§§§§§§ZZZZZZZ
- ZZ§§§ZZZZZZZ
- ZZZZZZZZZZZZZ
- ZZZZZZZZZZZZ
- ZZZ ZZZ
diff --git a/pixel-client/assets/textures/strawberry_icecream_foodprocessor.ta b/pixel-client/assets/textures/strawberry_icecream_foodprocessor.ta
deleted file mode 100644
index af545930..00000000
--- a/pixel-client/assets/textures/strawberry_icecream_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[h]]]]]]]]h[[h
-[]]h]]§§§§]]h]]h
-[]]h]§Y§§§§]h]]h
-]]]h§Y§§§§§§h]]h
-]]]hY§Y§§§§§hhh]
-]]]h§§§§§§§Zh]]]
-]]]h§§§§§§ZZh]]]
-]]]h§§§§§ZZZh]]]
-]]]]hZZZZZZh]]]]
-]]]]]hZZZZh]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/strawberry_mochi.ta b/pixel-client/assets/textures/strawberry_mochi.ta
deleted file mode 100644
index 3dcd079e..00000000
--- a/pixel-client/assets/textures/strawberry_mochi.ta
+++ /dev/null
@@ -1,15 +0,0 @@
- Ø› ØØ
- ØłłŁŁŁ›ł
- CCłßłŁ
- CCBVBBߣ
- CBBBBCCß
- CBVBBCC/
- BBBBCVC/
- ))BBCCCC//
-)))/VC/////
-))))/////)))
-))))))))))))
-E)))))))))))
- E))))))))EE
- EEE)))EE
- EEEE
diff --git a/pixel-client/assets/textures/strawberry_puree_foodprocessor.ta b/pixel-client/assets/textures/strawberry_puree_foodprocessor.ta
deleted file mode 100644
index 8be6eb23..00000000
--- a/pixel-client/assets/textures/strawberry_puree_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[h]]BBBB]]h[[h
-[]]hBBBBBBBBh]]h
-[]]h2BBBBBB2h]]h
-]]]h22222222h]]h
-]]]h22222222hhh]
-]]]h22222222h]]]
-]]]h22222222h]]]
-]]]h22222222h]]]
-]]]]h222222h]]]]
-]]]]]h2222h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/strawberry_shake_foodprocessor.ta b/pixel-client/assets/textures/strawberry_shake_foodprocessor.ta
deleted file mode 100644
index bea21e2c..00000000
--- a/pixel-client/assets/textures/strawberry_shake_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°°°°°hhh
-[[[h]]]]]]]]h[[h
-[]]h2""""""2h]]h
-[]]h22""""22h]]h
-]]]h22222222h]]h
-]]]h22222222hhh]
-]]]h22222222h]]]
-]]]h22222222h]]]
-]]]h22222222h]]]
-]]]]h222222h]]]]
-]]]]]h2222h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/strawberry_shake_glass.ta b/pixel-client/assets/textures/strawberry_shake_glass.ta
deleted file mode 100644
index 51e32705..00000000
--- a/pixel-client/assets/textures/strawberry_shake_glass.ta
+++ /dev/null
@@ -1,19 +0,0 @@
- a°°°°°°°°a
- a°°°°°°°°°°a
-a°°°°°°°°°°°°a
-aa°°°°°°°°°°aa
-a°a°°°°°°°°a°a
-a°°aaaaaaaa°°a
-a°°°""""""°°°a
-a°"""""""""a°a
-a22"""""""a22a
-a222222222a22a
-a222222222a22a
-a2222222a2a22a
-a2222222a2a22a
-a2222222a2222a
-a2222222a2222a
-a2222222a2222a
-a222222a22222a
- a2222a22222a
- aaaaaaaaaa
diff --git a/pixel-client/assets/textures/table.ta b/pixel-client/assets/textures/table.ta
deleted file mode 100644
index ea05c05e..00000000
--- a/pixel-client/assets/textures/table.ta
+++ /dev/null
@@ -1,36 +0,0 @@
- KKKKKJJJ
- KKKJJJJJJJJJJ
- KKJJJJJJJJJJJJJJJ
- KKJJJJJJJJJJJJJJJJJJJ
- KKJJJJJJJJJJJJJJJJJJJJJ
- KJJJJJJJJJJJJJJJJJJJJJJJJ
- KJJJJJJJJJJJJJJJJJJJJJJJJJJ
- KJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
- JJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
- JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-KJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
-LJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJL
-LKJJJJJJJJJJJJJJJJJJJJJJJJJJJJKL
- KJJJJJJJJJJJJJJJJJJJJJJJJJJJKL
- LKJJJJJJJJJJJJJJJJJJJJJJJJJKLL
- LLKJJJJJJJJJJJJJJJJJJJJJJJKLL
- LLKJJJJJJJJJJJJJJJJJJJJJKLL
- LLJJJJJJJJJJJJJJJJJJJJKLL
- LLLJJJJJJJJJJJJJJKKKLLL
- LLLLJJJJJJJJJKKKKLLLL
- jLLLLLJJJJKKKLLLLLmm
- mjjjjLLLLLLLLLLLLLjjjmmm
- mmjjjjjjjLLLLLLLjjjjjjjmmm
- mmjjjjjjjjjLLLLjjjjjjjjmmmm
- mmmjjjjjjjjjLLLLjjjjjjjjmmmm
- mmmmjjjjjjjjLLLLjjjjjjjmmmmmm
- mmmjjjjjjjjjjjjjjjjjjjmmmmm
- mmmmjjjjjjjjjjjjjjjjjmmmmm
- mmmjjjjjjjjjjjjjjjjjmmmm
- mjjjjjjjjjjjjjjjjmmm
- mmmmjjjjjjjjjmmmmm
- mmmmmmmmmmmmmm
- mmmmm
diff --git a/pixel-client/assets/textures/tomato.ta b/pixel-client/assets/textures/tomato.ta
deleted file mode 100644
index b6f087d9..00000000
--- a/pixel-client/assets/textures/tomato.ta
+++ /dev/null
@@ -1,17 +0,0 @@
-ßßÖÄ
-ßßßßß
- ۧ ۅ
- z€ßÄ€z
- zÖz€¡ß€yzA
- zzÄ€€€€€yAAA
-zzAyy€AA€AAAAA
-zAAxx€yyy€Azzz
-zAAxxy€xAAzzzzy
-AAAAxyxyAAzzAAy
-zzAAAAAAAAzzAAy
-yzzAAAAAAAzzAy
-yyzzAAAAAAyAAy
- yyzzAAAAyyAy
- yyzzAyyyyy
- yyyyyyyy
- yyy
diff --git a/pixel-client/assets/textures/tomato_foodprocessor.ta b/pixel-client/assets/textures/tomato_foodprocessor.ta
deleted file mode 100644
index 8b2719de..00000000
--- a/pixel-client/assets/textures/tomato_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h°°°°Ω°°°hhh
-[[[hΩ]ßΩΩ]]]h[[h
-[]]h¿Ω€AAzz]h]]h
-[]]h€ß€AVVzzh]]h
-]]]hΩß¡AAVVzh]]h
-]]]hA€AAAAVzhhh]
-]]]h//zAAVVzh]]]
-]]]h//zzAVAAh]]]
-]]]h////zAAAh]]]
-]]]]h//////h]]]]
-]]]]]h////h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/tomato_juice_foodprocessor.ta b/pixel-client/assets/textures/tomato_juice_foodprocessor.ta
deleted file mode 100644
index 9c0313f8..00000000
--- a/pixel-client/assets/textures/tomato_juice_foodprocessor.ta
+++ /dev/null
@@ -1,26 +0,0 @@
- hhhh
- h°°°°h
- h°°°°°°h
- h°°°°°°°°h
- hh°°°°°°hh
- h°h°°°°h°h
- h°°hhhh°°h
- h/AAAAAA/hhh
-[[[h//AAAA//h[[h
-[]]h////////h]]h
-[]]h////////h]]h
-]]]h////////h]]h
-]]]h////////hhh]
-]]]h////////h]]]
-]]]h////////h]]]
-]]]h////////h]]]
-]]]]h//////h]]]]
-]]]]]h////h]]]]]
-[]]]]]hhhh]]]]][
-[]]]]]]]]]]]]]][
-[[[]]]]]]]]]][[[
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
-{{{{{{{{{{{{{{{{
diff --git a/pixel-client/assets/textures/tomato_juice_in_pot.ta b/pixel-client/assets/textures/tomato_juice_in_pot.ta
deleted file mode 100644
index c8276921..00000000
--- a/pixel-client/assets/textures/tomato_juice_in_pot.ta
+++ /dev/null
@@ -1,12 +0,0 @@
- zzzzzzzz
- zzzzzzzzzzzz
- zzzzzzzzzzzzzzz
- zzzzzzzzzzzzzzzzz
-zzzzzzzzzzzzzzzzzz
-zzzzzzzzzzzzzzzzzz
-zzzzzzzzzzzzzzzzzz
-zzzzzzzzzzzzzzzzz
-zzzzzzzzzzzzzzzzz
-zzzzzzzzzzzzzzzz
- zzzzzzzzzzzzzz
- zzzzzzzzzzz
diff --git a/pixel-client/assets/textures/tomato_slice.ta b/pixel-client/assets/textures/tomato_slice.ta
deleted file mode 100644
index 77d257f8..00000000
--- a/pixel-client/assets/textures/tomato_slice.ta
+++ /dev/null
@@ -1,14 +0,0 @@
- AAAJ
- AAzzAAJHAAAA
-AA///zA/HAAAAAAJ
-A//x//AHHA////AA
-A/////zÆHA/x//AA
-A/////zzÆA/////A
-AA///zAzzA//x//A
- Ax/zAAzz/////AA
- A//zA/zz////zA
- A//A//zz/x/zz
- A/A//z///zzz
- AAA///AAAzz
- AAA//zzzz
- Azzz
diff --git a/pixel-client/assets/textures/tomato_soup.ta b/pixel-client/assets/textures/tomato_soup.ta
deleted file mode 100644
index 36be679e..00000000
--- a/pixel-client/assets/textures/tomato_soup.ta
+++ /dev/null
@@ -1,18 +0,0 @@
- AAAAAAAA
- AAAAAAAAAAAA
- AAAA«AAAAßAAAAA
- AAAAAAAAAAAAAAAAA
- A«AAAAAΩAAAAAAAA«AA
-AAAAAAAAAAAAAAAAAAAAA
-AAAAAAAAAAAAAAAAAAAAA
-AAAAAAAAAAAAAAAΩAAAAA
-AAAΩAAAAßAAAAAAAAAAAA
-AAAAAAAAAAAA«AAAAAAAA
-AAAAAAAAAAAAAAAAAAßAA
-AAAAAAAAAAAAAAAAAAAA
-AA«AAAAAAAAAßAAAAAAA
-AAAAAAAΩAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAA
- AAAAAAAAA«AAAAAA
- AAAAAAAAAAAAA
- AAAAAAAAAA
diff --git a/pixel-client/assets/textures/tomato_soup_in_pot.ta b/pixel-client/assets/textures/tomato_soup_in_pot.ta
deleted file mode 100644
index da39044d..00000000
--- a/pixel-client/assets/textures/tomato_soup_in_pot.ta
+++ /dev/null
@@ -1,16 +0,0 @@
- AAAAAAAA
- AA«AAAAßAAAA
- AAAAAAAAAAAAAAA
-«AAAAAΩAAAAAAAA«AA
-AAAAAAAAAAAAAAAAAA
-AAAAAAAAAAAAAAAAAA
-AAAAAAAAAAAAAΩAAAA
-AΩAAAAßAAAAAAAAAAA
-AAAAAAAAAA«AAAAAAA
-AAAAAAAAAAAAAAAAßA
-AAAAAAAAAAAAAAAAAA
-«AAAAAAAAAßAAAAAAA
-AAAAAΩAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAA
- AAAAAAA«AAAAAAA
- AAAAAAAAAAAAAA
diff --git a/pixel-client/assets/textures/trash.ta b/pixel-client/assets/textures/trash.ta
deleted file mode 100644
index 41d05300..00000000
--- a/pixel-client/assets/textures/trash.ta
+++ /dev/null
@@ -1,36 +0,0 @@
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡ÖÖ¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-Ö¡¡¡¡¡¡Ö¡¡¡¡¡¡¡Ö¡¡¡¡¡¡¡¡Ö¡¡¡¡¡¡Ö
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
-ÖßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßÖ
-ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
-ÖßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßÖ
-ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
-Ö¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö
-ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ
-ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
-ÖßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßÖ
diff --git a/pixel-client/assets/textures/tree.ta b/pixel-client/assets/textures/tree.ta
deleted file mode 100644
index 2d5bee16..00000000
--- a/pixel-client/assets/textures/tree.ta
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
- ΩΩΩΩΩΩ
- ΩΩΩΩΩΩΩΩ‹‹‹‹‹‹ΩΩ
- ΩØØØ‹‹‹‹‹‹‹‹‹‹‹‹Ω
- ΩØØØØØØØØØ‹‹‹‹‹‹‹‹ΩΩΩ
- Ω‹‹‹‹‹‹ØØØØØØØ‹‹‹‹‹‹‹‹ΩΩΩ
- ΩØØØØØ‹‹ØØØ‹‹ØØØ‹‹‹‹‹‹‹‹‹ΩΩ
- ΩØØØØ€ØØ‹‹ØØØ‹‹‹ØØØØØ‹‹‹‹‹‹‹Ω
- ΩØØØØ€ΩΩ€‹ΩΩΩØØ‹ØØØØØØØ‹‹‹‹‹Ω
- ΩØØΩΩ€€€Ω€ΩΩΩΩΩ‹ØØØØØØØØ‹‹‹‹Ω
- ΩΩØΩΩΩ€€ΩΩΩΩΩΩΩΩ‹ΩΩØØØØØØØ‹‹‹Ω
- ΩΩØΩΩΩΩ€€€ΩΩΩΩΩΩΩ€ΩΩΩØØØØØ‹‹‹Ω
- €€ΩΩΩΩΩΩΩ€€Ω€ΩΩΩΩ€€ΩΩΩΩ€ØØØ‹Ω
- €€ΩΩΩΩΩΩΩΩ€€€ΩΩΩΩΩ€€€€€€ØØØ‹Ω
- €€€€€ΩΩΩΩΩΩΩΩΩΩΩØØ€€€€€€ΩØØ‹‹Ω
- €€€€€€ΩΩØØΩΩΩØØØØØΩΩΩΩΩΩΩΩØØØΩ
- €€€€€€ΩØØØΩΩΩØΩΩΩØØΩΩΩΩΩØ‹‹‹ØΩ
- €€€€€€ΩΩΩØØΩΩΩΩΩΩΩØΩΩ€€Ω‹‹Ø‹ØΩ
- €€€€€€ΩΩΩΩØØΩΩΩΩΩΩØΩ€€ΩΩΩΩØ‹‹‹Ω
- €€€€€€€ΩΩΩΩØ€€€€ΩΩΩΩ€€ΩΩΩΩØØ‹‹Ω
-€€€€€€€€ΩΩΩØØ€€€€ΩΩΩΩΩ€€ΩΩØ€Ø€‹‹
-€€€€€€€€€€ØØ€€€€€€ΩΩΩΩΩ€€€€€€€‹‹
-€€€€€€€€€€€€€€€€€€ΩΩΩΩΩΩΩΩΩΩØØØ‹
-€€€€€€€€€€€€€€€€€€€ΩΩΩΩΩΩΩΩΩØØ‹‹
-€€€€€€€€€€€€€€€€€€€€€€€ΩΩΩΩ€ØØ‹‹
- €€€€€€€€€€€€€€€€€€€€€€€€€€€ØØØ‹
- €€€€€€€€€€€€€€€€€€€€€€€€€€€€ØØ
- €€€€€€€€€€€€€€€€€€€€€€ €€€
- €€€€€€€€€€€€€€€€€€€€ €€€
- €€€€€€€€€€€€€€€€€€€
- €€€€€€€XW€€€WX€€€€
- €€€NXWWWWX€€€
- NNXWWWWX
- NNXWWWWXX
- NNNXWWWWW
- NNNXWWWWN
- NNNNXWWWN
- NNNNXWWNN
- NNNNXWWWN
- NNNNXWWWN
- NNNNXWXWNN
- NNNNXWXWWN‹
- NNNNWWXWWNØ‹
- ‹‹ NNWWWWXWNØØ
- ‹‹‹ NNWWWWWWN‹Ø‹ ‹‹‹‹
- ‹ØØ ‹‹ NNWXWWWWW‹‹‹‹‹‹‹‹‹
- ‹‹ØØ ‹‹‹‹NNWXWWWWW‹ØØØØØ‹ØØ
-Ø‹‹ØØØ‹‹‹ØØØNNWXWWWWX‹‹‹‹‹‹‹‹Ø‹‹
-ØØØØØØØØ‹ØØØNNWXWWWWXØØ‹ØØØØ‹ØØØ
-Ø‹ØØØØØØ‹ØØØNNWXWWWWXØØNNØØ‹‹‹ØØ
-ØØ‹‹ØNNNNØØ‹NNWXWWWWN‹NN‹‹‹‹‹‹ØØ
-ØØ‹‹‹NNNNNØØNNWWWWWWNNNN‹ØØØØ‹‹Ø
-ØØØ‹‹ØØNNNNNNNWWWWWWWNNØ‹ØØØØØ‹Ø
-ØØØØ‹ØØNNNNNNWWXWWWWWNNØWWWØØ‹ØØ
-ØØØØ‹‹ØØNNNNNWXWWWXWWNNWWXXX‹ØØØ
-Ø‹NNNNNNNNWWWWWWWWXWWWNNNX‹‹Ø‹‹Ø
-ØNNNNNNNNNWWWWWWWWWXXXWWWØØ‹ØØ‹Ø
-ØØNNNNNNNNNWWNWWWWWWWNNWWWØ‹‹ØØØ
-ØØØØØNNNNNWWWWNWNNNWWNNNNWW‹ØØØØ
-Ø‹‹Ø‹NNNNNNNXWNNNNNWWNNNNWWXXØØØ
-ØØ‹‹‹ØNNNNNNXWNNNNNWWWWWNNWWXXØØ
-ØØØ‹‹NNN‹‹NXWWWWWNNWWWWWWXØØØ‹ØØ
-ØØØØNNNØØ‹XWWWØØWNNWWXXWWWXØØ‹‹Ø
-ØØØ‹‹ØØØØØXWWWØØWWNWWXØXWWW‹‹‹‹Ø
-ØØ‹ØØØØØ‹‹XWNØØ‹ØWNWWXØØXXXXØØ‹Ø
-ØØØØØØØØ‹ØXNØØ‹‹‹ØNWWXØØ‹‹ØØØ‹ØØ
-ØØØ‹‹ØØØ‹XX‹‹Ø‹ØNNNWWWX‹‹‹ØØØ‹‹Ø
-ØØ‹‹‹ØØØ‹XØØ‹‹‹ØNWWWXXW‹Ø‹ØØØØØ‹
-‹‹‹ØØØØ‹‹ØØØØ‹‹NWØØØ‹XXØØ‹ØØØØØØ
-‹ØØØØØ‹‹ØØØØØ‹‹ØØØØØØØXXØ‹ØØØØØØ
-ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ
diff --git a/pixel-client/assets/textures/wall_ns.ta b/pixel-client/assets/textures/wall_ns.ta
deleted file mode 100644
index c381c712..00000000
--- a/pixel-client/assets/textures/wall_ns.ta
+++ /dev/null
@@ -1,47 +0,0 @@
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccffffffccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_we.ta b/pixel-client/assets/textures/wall_we.ta
deleted file mode 100644
index bc5aec79..00000000
--- a/pixel-client/assets/textures/wall_we.ta
+++ /dev/null
@@ -1,42 +0,0 @@
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_wen.ta b/pixel-client/assets/textures/wall_wen.ta
deleted file mode 100644
index a53f4b99..00000000
--- a/pixel-client/assets/textures/wall_wen.ta
+++ /dev/null
@@ -1,54 +0,0 @@
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_wens.ta b/pixel-client/assets/textures/wall_wens.ta
deleted file mode 100644
index 54d6c397..00000000
--- a/pixel-client/assets/textures/wall_wens.ta
+++ /dev/null
@@ -1,54 +0,0 @@
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-fffffffffffffjjjjjjfffffffffffff
-cccccccccccccffffffccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_wes.ta b/pixel-client/assets/textures/wall_wes.ta
deleted file mode 100644
index 78232ee1..00000000
--- a/pixel-client/assets/textures/wall_wes.ta
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-fffffffffffffjjjjjjfffffffffffff
-cccccccccccccffffffccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_wn.ta b/pixel-client/assets/textures/wall_wn.ta
deleted file mode 100644
index 274a6172..00000000
--- a/pixel-client/assets/textures/wall_wn.ta
+++ /dev/null
@@ -1,54 +0,0 @@
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-ccccccccccccccccccfccccccccccccc
-fffffffffffffffffffccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_wns.ta b/pixel-client/assets/textures/wall_wns.ta
deleted file mode 100644
index de0134f2..00000000
--- a/pixel-client/assets/textures/wall_wns.ta
+++ /dev/null
@@ -1,54 +0,0 @@
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
- jjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-fffffffffffffjjjjjjccccccccccccc
-cccccccccccccffffffccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/wall_ws.ta b/pixel-client/assets/textures/wall_ws.ta
deleted file mode 100644
index bbdd75cd..00000000
--- a/pixel-client/assets/textures/wall_ws.ta
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjj
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-cccccccccccccjjjjjjccccccccccccc
-fffffffffffffjjjjjjccccccccccccc
-cccccccccccccffffffccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-cccccccccccccfjjjjfccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/textures/water_glass.ta b/pixel-client/assets/textures/water_glass.ta
deleted file mode 100644
index fcdff0f2..00000000
--- a/pixel-client/assets/textures/water_glass.ta
+++ /dev/null
@@ -1,19 +0,0 @@
- a°°°°°°°°a
- a°°°°°°°°°°a
-a°°°°°°°°°°°°a
-aa°°°°°°°°°°aa
-a°a°°°°°°°°a°a
-a°°aaaaaaaa°°a
-a°°°]]]]]]°°°a
-a°]]]]]]]]]a°a
-a{{]]]]]]]a{{a
-a{{{{{{{{{a{{a
-a{{{{{{{{{a{{a
-a{{{{{{{a{a{{a
-a{{{{{{{a{a{{a
-a{{{{{{{a{{{{a
-a{{{{{{{a{{{{a
-a{{{{{{{a{{{{a
-a{{{{{{a{{{{{a
- a{{{{a{{{{{a
- aaaaaaaaaa
diff --git a/pixel-client/assets/textures/window.ta b/pixel-client/assets/textures/window.ta
deleted file mode 100644
index 9056295c..00000000
--- a/pixel-client/assets/textures/window.ta
+++ /dev/null
@@ -1,42 +0,0 @@
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-°°°°°°°°°°°°°°°°°°°°°°°°° °°°°°°
-°°°°°°°°° °°°°°°°°°° °° °°°°°°
-°°°°°°°°° °°°°°°°°° °° °°°°°°°
-°°°°°°° °°°°°°°°° °°° °°°°°°°°
-°°°°°°° °°°°°°°°° °°°°°°°°°°°°°
-°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-ffffffffffffffffffffffffffffffff
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
-cccccccccccccccccccccccccccccccc
diff --git a/pixel-client/assets/tiles.ini b/pixel-client/assets/tiles.ini
deleted file mode 100644
index 8aa1c4d5..00000000
--- a/pixel-client/assets/tiles.ini
+++ /dev/null
@@ -1,55 +0,0 @@
-chair=floor,chair
-table=floor,table
-
-door=floor,door_ns
-door=ns:floor,door_we
-door=we:floor,door_ns
-
-wall=:wall_ns
-wall=w:wall_ns
-wall=e:wall_ns
-wall=we:wall_we
-wall=n:wall_ns
-wall=wn:wall_wn
-wall=en:wall_wn~hflip
-wall=wen:wall_wen
-wall=s:wall_ns
-wall=ws:wall_ws
-wall=es:wall_ws~hflip
-wall=wes:wall_wes
-wall=ns:wall_ns
-wall=wns:wall_wns
-wall=ens:wall_wns~hflip
-wall=wens:wall_wens
-
-wall-window=window
-wall-window=ns:wall_ns
-wall-window=we:window
-
-counter-window=we:counter_window_we_bottom,counter_window_we_top
-counter-window=ns:counter_window_ns_bottom,counter_window_ns_top
-counter-window=we:counter_window_we_bottom,counter_window_we_top
-
-floor=floor
-grass=grass
-path=path
-tree=tree
-
-tomato-crate=crate_back,tomato~x12~y6,tomato~x1~y13,tomato~x16~y20,crate_front
-steak-crate=crate_back,steak_raw~x2~y13,crate_front
-flour-crate=crate_back,flour~y19,flour~x11~y22,flour~x10~y5~hflip,crate_front
-leek-crate=crate_back,leek~x6~y12,leek~x6~y3,leek~x2~y18,leek~x7~y17~hflip,leek~x10~y10,crate_front
-rice-crate=crate_back,rice~x2~y12,rice~x10~y5,crate_front
-fish-crate=crate_back,fish~x2~y5~hflip,fish~y16,fish~x5~y11,crate_front
-coconut-crate=crate_back,coconut~y13,coconut~x8~y3,crate_front
-strawberry-crate=crate_back,strawberry~x8~y6,strawberry~y12~vflip~hflip,crate_front
-
-counter=counter
-book=counter,book~x9~y17
-cutting-board=counter,cutting_board
-sink=counter,sink
-stove=counter,stove
-freezer=freezer
-trash=trash
-oven=oven
-conveyor=counter,conveyor
diff --git a/pixel-client/makefile b/pixel-client/makefile
deleted file mode 100644
index 4a317c1a..00000000
--- a/pixel-client/makefile
+++ /dev/null
@@ -1,63 +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/>.
-#
-SPRITES = $(shell find assets/sprites -name '*.ta')
-SPRITES_PNG = $(patsubst %.ta,%.png,$(SPRITES))
-
-TEXTURES = $(shell find assets/textures -name '*.ta')
-TEXTURES_PNG = $(patsubst %.ta,%.png,$(TEXTURES))
-TEXTURES_IMPORT_PNG = $(patsubst %.import.png,%.ta,$(shell find assets/textures -name '*.import.png'))
-
-PNG = $(shell find assets/textures -name '*.png')
-
-CLIENT_DEPS = assets/atlas.meta.csv assets/atlas.ta assets/connect.csv assets/palette.csv
-
-IMPORT = ../target/release/tex_import
-EXPORT = ../target/release/tex_export
-PACK = ../target/release/tex_pack
-COMPOSE = ../target/release/tex_compose
-CLIENT = ../target/release/pixelcurry
-
-.PHONY: all tex_pack tex_export tex_import clean
-all: $(CLIENT) icon.png
-tex_pack: assets/atlas.ta
-tex_import: $(TEXTURES_IMPORT_PNG)
-tex_export: $(TEXTURES_PNG) $(SPRITES_PNG) assets/atlas.png
-clean:
- $(RM) $(PNG)
- $(RM) -r assets/sprites
- $(RM) assets/atlas.ta assets/atlas.meta.csv
-
-$(CLIENT): $(shell find src -type f) $(CLIENT_DEPS)
- cargo $(CARGOFLAGS) build --release --bin pixelcurry
-$(IMPORT) $(EXPORT) $(PACK) $(COMPOSE): $(shell find tools/src -type f)
- { cd tools; cargo $(CARGOFLAGS) build --release; }
-
-%.ta: %.import.png $(IMPORT)
- $(IMPORT) $< $@
-%.png: %.ta $(EXPORT)
- $(EXPORT) $< $@
-
-icon.png: assets/sprites/misc/icon+a.png
- ffmpeg -i $< -vf scale=512x512:sws_flags=neighbor -y $@
-
-assets/sprites/%/all: assets/%.ini $(TEXTURES) $(COMPOSE)
- @mkdir -p $(shell dirname $@)
- $(COMPOSE) $< assets/textures $(shell dirname $@)
- @touch $@
-
-assets/atlas.ta assets/atlas.meta.csv: assets/sprites/items/all assets/sprites/tiles/all assets/sprites/font/all assets/sprites/misc/all $(PACK)
- @echo $(PACK) assets/atlas.ta assets/atlas.meta.csv ...
- @$(PACK) assets/atlas.ta assets/atlas.meta.csv $(SPRITES)
diff --git a/pixel-client/src/config.rs b/pixel-client/src/config.rs
deleted file mode 100644
index 1499b1cd..00000000
--- a/pixel-client/src/config.rs
+++ /dev/null
@@ -1,60 +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/>.
-
-*/
-use anyhow::{anyhow, Result};
-use serde::{Deserialize, Serialize};
-use std::{
- fs::{read_to_string, rename, File},
- io::Write,
- path::PathBuf,
-};
-
-#[derive(Serialize, Deserialize)]
-pub struct Config {
- pub username: String,
-}
-
-impl Config {
- pub fn path() -> Result<PathBuf> {
- Ok(xdg::BaseDirectories::with_prefix("pixelcurry").place_config_file("config.toml")?)
- }
- pub fn load() -> Result<Self> {
- let path = Self::path()?;
- if path.exists() {
- Ok(toml::from_str(&read_to_string(path)?)?)
- } else {
- File::create(path)?.write_all(toml::to_string(&Self::initial()?)?.as_bytes())?;
- Self::load()
- }
- }
- pub fn save(&self) -> Result<()> {
- let path = Self::path()?;
- let temp = path.with_added_extension("~");
- File::create(&temp)?.write_all(toml::to_string(self)?.as_bytes())?;
- rename(temp, path)?;
- Ok(())
- }
- pub fn initial() -> Result<Self> {
- Ok(Config {
- username: users::get_current_username()
- .ok_or(anyhow!("current user has no name"))?
- .to_str()
- .ok_or(anyhow!("current user's name is not valid UTF8"))?
- .to_owned(),
- })
- }
-}
diff --git a/pixel-client/src/game.rs b/pixel-client/src/game.rs
deleted file mode 100644
index d71b676e..00000000
--- a/pixel-client/src/game.rs
+++ /dev/null
@@ -1,518 +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/>.
-
-*/
-use crate::{
- config::Config,
- helper::InterpolateExt,
- render::{
- misc::MiscTextures,
- sprite::{Sprite, SpriteDraw},
- AtlasLayout, Renderer,
- },
- tilemap::Tilemap,
- State,
-};
-use hurrycurry_client_lib::{network::sync::Network, spatial_index::SpatialIndex, Involvement};
-use hurrycurry_protocol::{
- glam::{IVec2, Vec2},
- movement::MovementBase,
- Character, Gamedata, Hand, ItemIndex, ItemLocation, Message, MessageTimeout, PacketC, PacketS,
- PlayerClass, PlayerID, RecipeIndex, Score, TileIndex,
-};
-use log::{info, warn};
-use sdl2::{
- keyboard::{KeyboardState, Scancode},
- rect::Rect,
-};
-use std::collections::{HashMap, HashSet};
-
-pub struct Game {
- network: Network,
-
- data: Gamedata,
- tiles: HashMap<IVec2, Tile>,
- tilemap: Tilemap,
- walkable: HashSet<IVec2>,
- players: HashMap<PlayerID, Player>,
- players_spatial_index: SpatialIndex<PlayerID>,
- items_removed: Vec<Item>,
- my_id: PlayerID,
-
- camera_center: Vec2,
- misc_textures: MiscTextures,
- item_sprites: Vec<Sprite>,
- movement_send_cooldown: f32,
- interacting: bool,
- score: Score,
-}
-
-pub struct Tile {
- _kind: TileIndex,
- item: Option<Item>,
-}
-
-pub struct Player {
- movement: MovementBase,
- items: [Option<Item>; 2],
- message_persist: Option<(Message, MessageTimeout)>,
- _name: String,
- _character: Character,
- _class: PlayerClass,
- interact_target_anim: Vec2,
- interact_target_anim_pressed: f32,
-}
-
-pub struct Item {
- position: Vec2,
- parent_position: Vec2,
- kind: ItemIndex,
- alive: f32,
- active: Option<Involvement>,
-}
-
-impl Game {
- pub fn new(mut network: Network, config: &Config, layout: &AtlasLayout) -> Self {
- network.queue_out.push_back(PacketS::Join {
- id: None,
- name: config.username.clone(),
- class: PlayerClass::Chef,
- character: Character::default(),
- position: None,
- });
-
- Self {
- network,
- tiles: HashMap::new(),
- players: HashMap::new(),
- tilemap: Tilemap::default(),
- my_id: PlayerID(0),
- data: Gamedata::default(),
- walkable: HashSet::new(),
- movement_send_cooldown: 0.,
- misc_textures: MiscTextures::init(layout),
- item_sprites: Vec::new(),
- items_removed: Vec::new(),
- interacting: false,
- score: Score::default(),
- players_spatial_index: SpatialIndex::default(),
- camera_center: Vec2::ZERO,
- }
- }
-
- pub fn tick(
- &mut self,
- dt: f32,
- keyboard: &KeyboardState,
- layout: &AtlasLayout,
- ) -> Option<Box<State>> {
- if let Err(e) = self.network.poll() {
- eprintln!("network error: {e}");
- return Some(Box::new(State::Quit));
- }
-
- for packet in self.network.queue_in.drain(..).collect::<Vec<_>>() {
- self.packet_in(packet, layout);
- }
-
- let mut direction = IVec2::new(
- keyboard.is_scancode_pressed(Scancode::D) as i32
- - keyboard.is_scancode_pressed(Scancode::A) as i32,
- keyboard.is_scancode_pressed(Scancode::S) as i32
- - keyboard.is_scancode_pressed(Scancode::W) as i32,
- )
- .as_vec2();
- let boost = keyboard.is_scancode_pressed(Scancode::K);
- let interact = keyboard.is_scancode_pressed(Scancode::Space)
- | keyboard.is_scancode_pressed(Scancode::J);
-
- if interact {
- direction *= 0.;
- }
-
- self.movement_send_cooldown -= dt;
- let send_movement = self.movement_send_cooldown < 0.;
- if send_movement {
- self.movement_send_cooldown += 0.04
- }
-
- self.score.time_remaining -= dt as f64;
- self.score.time_remaining -= self.score.time_remaining.max(0.);
-
- if interact != self.interacting {
- if interact {
- self.network.queue_out.push_back(PacketS::Interact {
- player: self.my_id,
- pos: Some(self.players[&self.my_id].movement.get_interact_target()),
- hand: Hand(0),
- });
- } else {
- self.network.queue_out.push_back(PacketS::Interact {
- player: self.my_id,
- pos: None,
- hand: Hand(0),
- });
- }
- self.interacting = interact;
- }
-
- if let Some(player) = self.players.get_mut(&self.my_id) {
- player.movement.input(direction, boost);
-
- if send_movement {
- self.network
- .queue_out
- .push_back(player.movement.movement_packet_s(self.my_id));
- }
-
- player.interact_target_anim.exp_to(
- player.movement.get_interact_target().as_vec2() + Vec2::new(0., -0.4),
- dt * 20.,
- );
- player
- .interact_target_anim_pressed
- .exp_to(if interact { 1. } else { 0. }, dt * 10.);
-
- self.camera_center.exp_to(player.movement.position, dt * 5.);
- }
-
- for (&pid, player) in &mut self.players {
- player.movement.update(&self.walkable, dt);
- if let Some((_, timeout)) = &mut player.message_persist {
- timeout.remaining -= dt;
- if timeout.remaining < 0. {
- player.message_persist = None;
- }
- }
- self.players_spatial_index
- .update_entry(pid, player.movement.position);
- }
-
- self.players_spatial_index.all(|p1, pos1| {
- self.players_spatial_index.query(pos1, 2., |p2, _pos2| {
- if p1 != p2 {
- if let [Some(a), Some(b)] = self.players.get_disjoint_mut([&p1, &p2]) {
- a.movement.collide(&mut b.movement, dt)
- }
- }
- })
- });
-
- for player in self.players.values_mut() {
- for item in player.items.iter_mut().flatten() {
- item.parent_position = player.movement.position;
- item.tick(1., dt);
- }
- }
- for tile in self.tiles.values_mut() {
- if let Some(item) = &mut tile.item {
- item.tick(1., dt)
- }
- }
- self.items_removed.retain_mut(|i| {
- i.tick(0., dt);
- i.alive > 0.01
- });
-
- None
- }
-
- pub fn packet_in(&mut self, packet: PacketC, layout: &AtlasLayout) {
- match packet {
- PacketC::Joined { id } => self.my_id = id,
- PacketC::Data { data } => {
- self.tilemap.init(&data.tile_names, layout);
- self.item_sprites = data
- .item_names
- .iter()
- .map(|name| {
- Sprite::new(
- layout
- .get(&format!("{name}+a"))
- .copied()
- .unwrap_or_else(|| {
- warn!("no sprite for item {name:?}");
- Rect::new(0, 0, 32, 24)
- }),
- Vec2::new(0., 0.0),
- 0.1,
- )
- })
- .collect();
- self.data = data;
- }
- PacketC::UpdateMap {
- tile,
- kind,
- neighbors,
- } => {
- if let Some(kind) = kind {
- self.tiles.insert(
- tile,
- Tile {
- _kind: kind,
- item: None,
- },
- );
- if self.data.tile_collide[kind.0] {
- self.walkable.remove(&tile);
- } else {
- self.walkable.insert(tile);
- }
- } else {
- self.tiles.remove(&tile);
- self.walkable.remove(&tile);
- }
- self.tilemap.set(tile, kind, neighbors);
- }
- PacketC::AddPlayer {
- id,
- position,
- character,
- name,
- class,
- } => {
- info!("add player {} {name:?}", id.0);
- self.players.insert(
- id,
- Player {
- interact_target_anim: position,
- interact_target_anim_pressed: 0.,
- _class: class,
- _character: character,
- _name: name,
- message_persist: None,
- items: [const { None }; 2],
- movement: MovementBase {
- position,
- input_direction: Vec2::ZERO,
- input_boost: false,
- facing: Vec2::X,
- rotation: 0.,
- velocity: Vec2::ZERO,
- boosting: false,
- stamina: 0.,
- },
- },
- );
- }
- PacketC::RemovePlayer { id } => {
- info!("remove player {}", id.0);
- self.players_spatial_index.remove_entry(id);
- self.players.remove(&id);
- }
- PacketC::Movement {
- player,
- pos,
- rot,
- boost,
- dir,
- } => {
- if player != self.my_id {
- if let Some(p) = self.players.get_mut(&player) {
- p.movement.position = pos;
- p.movement.rotation = rot;
- p.movement.input(dir, boost);
- }
- }
- }
- PacketC::MoveItem { from, to } => {
- let mut item = self.get_item(from).unwrap().take();
- if let Some(item) = &mut item {
- item.parent_position = self.get_location_position(to);
- }
- *self.get_item(to).unwrap() = item;
- }
- PacketC::SetItem { location, item } => {
- let position = self.get_location_position(location);
- let slot = match location {
- ItemLocation::Tile(pos) => &mut self.tiles.get_mut(&pos).unwrap().item,
- ItemLocation::Player(pid, hand) => self
- .players
- .get_mut(&pid)
- .unwrap()
- .items
- .get_mut(hand.0)
- .unwrap(),
- };
- self.items_removed.extend(slot.take());
- *slot = item.map(|kind| Item {
- kind,
- parent_position: position,
- alive: 0.,
- position,
- active: None,
- })
- }
- PacketC::ClearProgress { item } => {
- if let Some(Some(item)) = self.get_item(item) {
- item.active = None;
- }
- }
- PacketC::SetProgress {
- item,
- position,
- speed,
- player,
- warn,
- } => {
- if let Some(Some(item)) = self.get_item(item) {
- item.active = Some(Involvement {
- position,
- speed,
- player,
- warn,
- recipe: RecipeIndex(0),
- });
- }
- }
- PacketC::ServerMessage { .. } => {
- // TODO
- }
- PacketC::Score(score) => {
- self.score = score;
- }
- PacketC::SetIngame { state: _, lobby: _ } => {
- // TODO
- }
- PacketC::Communicate {
- player,
- message,
- timeout: Some(timeout),
- } => {
- if let Some(player) = self.players.get_mut(&player) {
- player.message_persist = message.map(|m| (m, timeout));
- }
- }
- _ => (),
- }
- }
-
- pub fn get_item(&mut self, location: ItemLocation) -> Option<&mut Option<Item>> {
- match location {
- ItemLocation::Tile(pos) => Some(&mut self.tiles.get_mut(&pos)?.item),
- ItemLocation::Player(pid, hand) => {
- Some(self.players.get_mut(&pid)?.items.get_mut(hand.0)?)
- }
- }
- }
- pub fn get_location_position(&self, location: ItemLocation) -> Vec2 {
- match location {
- ItemLocation::Tile(pos) => pos.as_vec2() + 0.5,
- ItemLocation::Player(p, _) => self.players[&p].movement.position,
- }
- }
-
- pub fn draw(&self, ctx: &mut Renderer) {
- ctx.set_world_view(
- -self.camera_center + (ctx.size / ctx.get_world_scale() / 2.),
- ctx.size.min_element() / 32. / 10.,
- );
-
- self.tilemap.draw(ctx);
-
- if let Some(me) = self.players.get(&self.my_id) {
- ctx.draw_world(
- self.misc_textures
- .interact_target
- .at(me.interact_target_anim)
- .tint(
- 100,
- 100 + (me.interact_target_anim_pressed * 150.) as u8,
- 100 + ((1. - me.interact_target_anim_pressed) * 150.) as u8,
- ),
- )
- }
-
- for p in self.players.values() {
- p.draw(ctx, &self.item_sprites)
- }
- for tile in self.tiles.values() {
- if let Some(item) = &tile.item {
- item.draw(ctx, &self.item_sprites)
- }
- }
- for item in &self.items_removed {
- item.draw(ctx, &self.item_sprites)
- }
- }
-}
-
-impl Item {
- pub fn tick(&mut self, alive: f32, dt: f32) {
- self.position.exp_to(self.parent_position, dt * 20.);
- self.alive.exp_to(alive, dt * 20.);
- if let Some(active) = &mut self.active {
- active.position += active.speed * dt;
- }
- }
- pub fn draw(&self, ctx: &mut Renderer, item_sprites: &[Sprite]) {
- ctx.draw_world(
- item_sprites[self.kind.0]
- .at(self.position)
- .alpha(self.alive),
- );
- if let Some(Involvement { position, warn, .. }) = self.active {
- let (bg, fg) = if warn {
- ([100, 0, 0, 200], [255, 0, 0, 200])
- } else {
- ([0, 100, 0, 200], [0, 255, 0, 200])
- };
- ctx.draw_world(SpriteDraw::overlay(
- ctx.misc_textures.solid,
- self.position + Vec2::new(-0.5, -1.3),
- Vec2::new(1., 0.2),
- Some(bg),
- ));
- ctx.draw_world(SpriteDraw::overlay(
- ctx.misc_textures.solid,
- self.position + Vec2::new(-0.5, -1.3),
- Vec2::new(position, 0.2),
- Some(fg),
- ))
- }
- }
-}
-
-impl Player {
- pub fn draw(&self, ctx: &mut Renderer, item_sprites: &[Sprite]) {
- ctx.draw_world(
- match self._class {
- PlayerClass::Chef | PlayerClass::Bot => &ctx.misc_textures.chef,
- _ => &ctx.misc_textures.customer,
- }
- .at(self.movement.position),
- );
- if let Some((message, _timeout)) = &self.message_persist {
- match message {
- Message::Text(_) => (), // TODO
- Message::Item(item) => {
- ctx.draw_world(ctx.misc_textures.itembubble.at(self.movement.position));
- ctx.draw_world(
- item_sprites[item.0]
- .at(self.movement.position)
- .elevate(1.2)
- .scale(0.8),
- );
- }
- _ => (),
- }
- }
- for item in self.items.iter().flatten() {
- item.draw(ctx, item_sprites)
- }
- }
-}
diff --git a/pixel-client/src/helper.rs b/pixel-client/src/helper.rs
deleted file mode 100644
index 41ce5d9f..00000000
--- a/pixel-client/src/helper.rs
+++ /dev/null
@@ -1,33 +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/>.
-
-*/
-use hurrycurry_protocol::glam::Vec2;
-
-pub trait InterpolateExt {
- fn exp_to(&mut self, target: Self, dt: f32);
-}
-impl InterpolateExt for Vec2 {
- fn exp_to(&mut self, target: Self, dt: f32) {
- self.x = target.x + (self.x - target.x) * (-dt).exp();
- self.y = target.y + (self.y - target.y) * (-dt).exp();
- }
-}
-impl InterpolateExt for f32 {
- fn exp_to(&mut self, target: Self, dt: f32) {
- *self = target + (*self - target) * (-dt).exp();
- }
-}
diff --git a/pixel-client/src/main.rs b/pixel-client/src/main.rs
deleted file mode 100644
index d1efaedd..00000000
--- a/pixel-client/src/main.rs
+++ /dev/null
@@ -1,180 +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/>.
-
-*/
-#![feature(path_add_extension, iterator_try_collect)]
-use anyhow::{anyhow, Result};
-use clap::{Parser, Subcommand};
-use config::Config;
-use game::Game;
-use hurrycurry_client_lib::network::sync::Network;
-use hurrycurry_protocol::glam::Vec2;
-use menu::{ingame::IngameMenu, main::MainMenu};
-use profiler::ProfilerOverlay;
-use render::Renderer;
-use sdl2::{event::Event, keyboard::KeyboardState, mouse::MouseState, pixels::Color};
-use std::time::{Duration, Instant};
-use strings::set_language;
-
-pub mod config;
-pub mod game;
-pub mod helper;
-pub mod menu;
-pub mod profiler;
-pub mod render;
-pub mod strings;
-pub mod tilemap;
-pub mod ui;
-
-#[derive(Debug, Parser)]
-pub struct Args {
- #[clap(subcommand)]
- action: Option<Action>,
-}
-
-#[derive(Debug, Subcommand, Default)]
-pub enum Action {
- #[default]
- Menu,
- Join {
- #[arg(default_value = "ws://127.0.0.1/")]
- server_address: String,
- },
-}
-
-pub enum State {
- Ingame(IngameMenu),
- MainMenu(MainMenu),
- Quit,
-}
-
-fn main() -> Result<()> {
- env_logger::init_from_env("LOG");
-
- let args = Args::parse();
- let mut config = Config::load()?;
- set_language("de");
-
- rustls::crypto::ring::default_provider()
- .install_default()
- .expect("failed to initialize crypto things");
-
- let sdl_context = sdl2::init().map_err(|e| anyhow!("sdl2 init failed: {e}"))?;
-
- let video_subsystem = sdl_context
- .video()
- .map_err(|e| anyhow!("sdl2 video subsystem init failed: {e}"))?;
- let window = video_subsystem
- .window("Pixel Curry!", 1280, 720)
- .position_centered()
- .resizable()
- .build()
- .map_err(|e| anyhow!("sdl2 window creation failed: {e}"))?;
-
- let mut canvas = window
- .into_canvas()
- .accelerated()
- .present_vsync()
- .build()
- .map_err(|e| anyhow!("sdl2 canvas creation failed: {e}"))?;
-
- let texture_creator = canvas.texture_creator();
-
- let mut renderer = Renderer::init(&texture_creator);
-
- let mut state = match args.action.unwrap_or_default() {
- Action::Menu => State::MainMenu(MainMenu::new(renderer.atlas_layout())),
- Action::Join { server_address } => State::Ingame(IngameMenu::new(Game::new(
- Network::connect(&server_address)?,
- &config,
- renderer.atlas_layout(),
- ))),
- };
-
- let mut events = sdl_context
- .event_pump()
- .map_err(|e| anyhow!("sdl2 event pump: {e}"))?;
- let mut last_tick = Instant::now();
- let mut profiler = ProfilerOverlay::new();
-
- 'mainloop: loop {
- let (width, height) = canvas
- .output_size()
- .map_err(|_| anyhow!("cannot get canvas size"))?;
- renderer.size = Vec2::new(width as f32, height as f32);
-
- let keyboard = KeyboardState::new(&events);
- let mouse = MouseState::new(&events);
-
- let actual_dt = last_tick.elapsed();
- last_tick += actual_dt;
- let dt = actual_dt.min(Duration::from_secs_f32(1. / 30.));
-
- let next = match &mut state {
- State::Ingame(x) => {
- x.tick(dt.as_secs_f32(), &keyboard, &mouse, renderer.atlas_layout())
- }
- State::MainMenu(x) => {
- x.tick(dt.as_secs_f32(), &keyboard, &mouse, renderer.atlas_layout())
- }
- State::Quit => break Ok(()),
- };
- if let Some(next) = next {
- state = *next;
- }
-
- renderer.set_ui_view(4.);
- match &mut state {
- State::Ingame(x) => x.draw(&mut renderer, &mut config),
- State::MainMenu(x) => x.draw(&mut renderer, &mut config),
- State::Quit => (),
- }
-
- profiler.update(&mut renderer);
- canvas.set_draw_color(Color::BLACK);
- canvas.clear();
- renderer.submit(&mut canvas);
- canvas.present();
-
- for event in events.poll_iter() {
- match event {
- Event::Quit { .. } => break 'mainloop Ok(()),
- Event::KeyUp {
- keycode: Some(keycode),
- ..
- } => match &mut state {
- State::Ingame(g) => g.keyboard_event(keycode, false),
- State::MainMenu(g) => g.keyboard_event(keycode, false),
- _ => (),
- },
- Event::KeyDown {
- keycode: Some(keycode),
- ..
- } => match &mut state {
- State::Ingame(g) => g.keyboard_event(keycode, true),
- State::MainMenu(g) => g.keyboard_event(keycode, true),
- _ => (),
- },
- Event::TextInput { text, .. } => match &mut state {
- State::Ingame(g) => g.ui_state.text_input(text),
- State::MainMenu(g) => g.ui_state.text_input(text),
- _ => (),
- },
- _ => {}
- }
- }
- }
-}
diff --git a/pixel-client/src/menu/background.rs b/pixel-client/src/menu/background.rs
deleted file mode 100644
index 190858a6..00000000
--- a/pixel-client/src/menu/background.rs
+++ /dev/null
@@ -1,97 +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/>.
-
-*/
-use crate::{
- render::{sprite::SpriteDraw, AtlasLayout, Renderer},
- tilemap::Tilemap,
-};
-use hurrycurry_protocol::{
- glam::{IVec2, Vec2},
- TileIndex,
-};
-use rand::{random, rng, seq::IndexedRandom};
-
-pub struct MenuBackground {
- background: Vec2,
- map: Tilemap,
-}
-
-impl MenuBackground {
- pub fn new(layout: &AtlasLayout) -> Self {
- let mut map = Tilemap::default();
- map.init(
- &[
- "floor",
- "tomato-crate",
- "steak-crate",
- "table",
- "chair",
- "counter",
- "sink",
- "stove",
- ]
- .map(String::from),
- layout,
- );
- static BUCKETS: &[&[usize]] = &[&[], &[0, 0, 0, 0, 1, 2], &[3, 4, 5], &[6, 7]];
-
- for x in -10..11 {
- for y in -10..11 {
- let p = Vec2::new(x as f32, y as f32);
- let w = (-p.length() * 0.15).exp();
- let k = ((random::<f32>() * w) * BUCKETS.len() as f32) as usize;
- if let Some(ti) = BUCKETS[k.min(BUCKETS.len())].choose(&mut rng()) {
- map.set(IVec2::new(x, y), Some(TileIndex(*ti)), [None; 4])
- }
- }
- }
- Self {
- map,
- background: Vec2::ZERO,
- }
- }
-
- pub fn tick(&mut self, dt: f32) {
- self.background += Vec2::new(2., 3.) * dt;
- self.background %= 256.;
- }
- pub fn draw(&self, ctx: &mut Renderer) {
- ctx.set_world_view(
- ctx.size / ctx.get_world_scale() * Vec2::new(0.8, 0.2),
- ctx.size.max_element() / 32. / 15.,
- );
-
- for x in -1..=2 {
- for y in -1..=2 {
- ctx.draw_ui(SpriteDraw::underlay(
- ctx.misc_textures.clouds,
- Vec2::new(x as f32, y as f32) * 256. + self.background,
- Vec2::ONE * 256.,
- None,
- ));
- }
- }
- ctx.draw_ui(SpriteDraw::underlay(
- ctx.misc_textures.solid,
- Vec2::ZERO,
- ctx.ui_size,
- Some([0, 0, 0, 50]),
- ));
-
- self.map.draw(ctx);
- }
-}
diff --git a/pixel-client/src/menu/credits.rs b/pixel-client/src/menu/credits.rs
deleted file mode 100644
index abf71ffe..00000000
--- a/pixel-client/src/menu/credits.rs
+++ /dev/null
@@ -1,52 +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/>.
-
-*/
-use crate::{render::sprite::SpriteDraw, strings::tr, ui::Ui};
-use hurrycurry_protocol::glam::Vec2;
-
-#[derive(Default)]
-pub struct CreditsMenu {}
-
-impl CreditsMenu {
- pub fn draw(&mut self, ui: &mut Ui) -> bool {
- ui.renderer.draw_ui(SpriteDraw::overlay(
- ui.renderer.misc_textures.solid,
- Vec2::ZERO,
- ui.renderer.ui_size,
- Some([0, 0, 0, 150]),
- ));
-
- let mut back = false;
-
- ui.horizontal(|ui| {
- ui.advance(Vec2::splat(30.));
- ui.vertical(|ui| {
- ui.advance(Vec2::splat(30.));
- ui.text("Pixel Curry!");
-
- ui.small_text(tr("c.credits.developed_by"));
-
- ui.text("metamuffin, BigBrotherNii");
-
- ui.advance(ui.get_remaining() - Vec2::Y * 30.);
- back = ui.button(80., tr("c.menu.back"));
- });
- });
-
- back
- }
-}
diff --git a/pixel-client/src/menu/ingame.rs b/pixel-client/src/menu/ingame.rs
deleted file mode 100644
index 66c77bce..00000000
--- a/pixel-client/src/menu/ingame.rs
+++ /dev/null
@@ -1,78 +0,0 @@
-use super::main::MainMenu;
-use crate::{
- config::Config,
- game::Game,
- render::{sprite::SpriteDraw, AtlasLayout, Renderer},
- strings::tr,
- ui::UiState,
- State,
-};
-use hurrycurry_protocol::glam::Vec2;
-use sdl2::{
- keyboard::{KeyboardState, Keycode},
- mouse::MouseState,
-};
-
-pub struct IngameMenu {
- game: Box<Game>,
- pub ui_state: UiState,
- overlay_shown: bool,
- next_state: Option<Box<State>>,
-}
-impl IngameMenu {
- pub fn new(game: Game) -> Self {
- Self {
- overlay_shown: false,
- game: Box::new(game),
- ui_state: UiState::default(),
- next_state: None,
- }
- }
- pub fn tick(
- &mut self,
- dt: f32,
- keyboard: &KeyboardState,
- mouse: &MouseState,
- layout: &AtlasLayout,
- ) -> Option<Box<State>> {
- self.game.tick(dt, keyboard, layout);
- self.ui_state.update(keyboard, mouse, dt);
- self.next_state.take()
- }
- pub fn keyboard_event(&mut self, keycode: Keycode, down: bool) {
- self.ui_state.keyboard_event(keycode, down);
- if down && keycode == Keycode::Escape {
- self.overlay_shown = !self.overlay_shown
- }
- }
- pub fn draw(&mut self, ctx: &mut Renderer, _config: &mut Config) {
- self.game.draw(ctx);
- if self.overlay_shown {
- let mut main_menu = false;
- ctx.draw_ui(SpriteDraw::overlay(
- ctx.misc_textures.solid,
- Vec2::ZERO,
- ctx.ui_size,
- Some([0, 0, 0, 130]),
- ));
- self.ui_state.draw(ctx, |ui| {
- ui.horizontal(|ui| {
- ui.advance(Vec2::splat(20.));
- ui.vertical(|ui| {
- ui.advance(Vec2::splat(20.));
- let w = 80.;
- main_menu |= ui.button(w, tr("c.menu.ingame.resume"));
- ui.advance(Vec2::Y * 10.);
- main_menu |= ui.button(w, tr("c.menu.ingame.main_menu"));
- if ui.button(w, tr("c.menu.ingame.quit")) {
- self.next_state = Some(Box::new(State::Quit))
- }
- });
- });
- });
- if main_menu {
- self.next_state = Some(Box::new(State::MainMenu(MainMenu::new(ctx.atlas_layout()))))
- }
- }
- }
-}
diff --git a/pixel-client/src/menu/main.rs b/pixel-client/src/menu/main.rs
deleted file mode 100644
index e50473d9..00000000
--- a/pixel-client/src/menu/main.rs
+++ /dev/null
@@ -1,116 +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/>.
-
-*/
-use super::{
- background::MenuBackground, credits::CreditsMenu, ingame::IngameMenu, settings::SettingsMenu,
-};
-use crate::{
- config::Config,
- game::Game,
- render::{sprite::SpriteDraw, AtlasLayout, Renderer},
- strings::tr,
- ui::UiState,
- State,
-};
-use hurrycurry_client_lib::network::sync::Network;
-use hurrycurry_protocol::glam::Vec2;
-use sdl2::{
- keyboard::{KeyboardState, Keycode},
- mouse::MouseState,
-};
-
-pub struct MainMenu {
- background: MenuBackground,
- fade_in: f32,
- pub ui_state: UiState,
- server_address: String,
- next_state: Option<Box<State>>,
- settings: Option<SettingsMenu>,
- credits: Option<CreditsMenu>,
-}
-
-impl MainMenu {
- pub fn new(layout: &AtlasLayout) -> Self {
- Self {
- background: MenuBackground::new(layout),
- fade_in: 0.,
- server_address: String::from("ws://127.0.0.1"),
- ui_state: UiState::default(),
- next_state: None,
- settings: None,
- credits: None,
- }
- }
- pub fn tick(
- &mut self,
- dt: f32,
- keyboard: &KeyboardState,
- mouse: &MouseState,
- _layout: &AtlasLayout,
- ) -> Option<Box<State>> {
- self.fade_in = (self.fade_in + dt).min(1.);
- self.ui_state.update(keyboard, mouse, dt);
- self.background.tick(dt);
- self.next_state.take()
- }
- pub fn keyboard_event(&mut self, keycode: Keycode, down: bool) {
- self.ui_state.keyboard_event(keycode, down);
- }
- pub fn draw(&mut self, ctx: &mut Renderer, config: &mut Config) {
- self.background.draw(ctx);
-
- self.ui_state.draw(ctx, |ui| {
- if let Some(settings) = &mut self.settings {
- if settings.draw(ui, config) {
- self.settings = None;
- }
- return;
- }
- if let Some(credits) = &mut self.credits {
- if credits.draw(ui) {
- self.credits = None;
- }
- return;
- }
- if ui.button(80., tr("c.menu.play.connect")) {
- self.next_state = Some(Box::new(State::Ingame(IngameMenu::new(Game::new(
- Network::connect(&self.server_address).unwrap(),
- config,
- ui.renderer.atlas_layout(),
- )))))
- }
- ui.textedit(80., &mut self.server_address);
- if ui.button(80., tr("c.menu.settings")) {
- self.settings = Some(SettingsMenu::default())
- }
- if ui.button(80., tr("c.menu.about.credits")) {
- self.credits = Some(CreditsMenu::default())
- }
- if ui.button(80., tr("c.menu.quit")) {
- self.next_state = Some(Box::new(State::Quit));
- }
- ui.fill();
- });
-
- ctx.draw_ui(SpriteDraw::overlay(
- ctx.misc_textures.solid,
- Vec2::ZERO,
- ctx.ui_size,
- Some([0, 0, 0, 255 - (self.fade_in * 255.) as u8]),
- ));
- }
-}
diff --git a/pixel-client/src/menu/mod.rs b/pixel-client/src/menu/mod.rs
deleted file mode 100644
index ea8b6fbd..00000000
--- a/pixel-client/src/menu/mod.rs
+++ /dev/null
@@ -1,22 +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/>.
-
-*/
-pub mod background;
-pub mod credits;
-pub mod ingame;
-pub mod main;
-pub mod settings;
diff --git a/pixel-client/src/menu/settings.rs b/pixel-client/src/menu/settings.rs
deleted file mode 100644
index 27a0e3f4..00000000
--- a/pixel-client/src/menu/settings.rs
+++ /dev/null
@@ -1,66 +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/>.
-
-*/
-use crate::{config::Config, render::sprite::SpriteDraw, strings::tr, ui::Ui};
-use hurrycurry_protocol::glam::Vec2;
-use log::warn;
-
-pub struct Settings {
- pub username: String,
-}
-
-#[derive(Default)]
-pub struct SettingsMenu {}
-
-impl SettingsMenu {
- pub fn draw(&mut self, ui: &mut Ui, config: &mut Config) -> bool {
- ui.renderer.draw_ui(SpriteDraw::overlay(
- ui.renderer.misc_textures.solid,
- Vec2::ZERO,
- ui.renderer.ui_size,
- Some([0, 0, 0, 150]),
- ));
-
- let mut back = false;
-
- ui.horizontal(|ui| {
- ui.advance(Vec2::splat(20.));
- ui.vertical(|ui| {
- ui.advance(Vec2::splat(10.));
- ui.text(tr("c.menu.settings"));
-
- ui.horizontal(|ui| {
- ui.text(tr("c.settings.username"));
- ui.advance(Vec2::X * 20.);
- ui.textedit(100., &mut config.username);
- });
-
- ui.advance(ui.get_remaining() - Vec2::Y * 30.);
-
- if ui.button(80., tr("c.menu.back")) {
- if let Err(e) = config.save() {
- warn!("cannot save config: {e}");
- } else {
- back = true
- }
- }
- });
- });
-
- back
- }
-}
diff --git a/pixel-client/src/profiler.rs b/pixel-client/src/profiler.rs
deleted file mode 100644
index 660c06cd..00000000
--- a/pixel-client/src/profiler.rs
+++ /dev/null
@@ -1,66 +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/>.
-
-*/
-use crate::render::{sprite::SpriteDraw, Renderer};
-use hurrycurry_protocol::glam::Vec2;
-use std::time::Instant;
-
-pub struct ProfilerOverlay {
- frames: usize,
- fps_timer_start: Instant,
- fps: f32,
-}
-
-impl Default for ProfilerOverlay {
- fn default() -> Self {
- Self::new()
- }
-}
-
-impl ProfilerOverlay {
- pub fn new() -> Self {
- Self {
- fps: 0.,
- fps_timer_start: Instant::now(),
- frames: 0,
- }
- }
- pub fn update(&mut self, renderer: &mut Renderer) {
- self.frames += 1;
-
- let t = self.fps_timer_start.elapsed();
-
- if t.as_secs_f32() > 0.2 {
- self.fps = self.frames as f32 / t.as_secs_f32();
- self.frames = 0;
- self.fps_timer_start += t;
- }
- let size = renderer.draw_text(
- Vec2::ZERO,
- &format!("FPS: {:.0}\nSprites: {}", self.fps, renderer.num_sprites()),
- 0.3,
- Some([255, 150, 255, 255]),
- );
- renderer.draw_ui(SpriteDraw::screen(
- renderer.misc_textures.solid,
- i32::MAX - 1,
- Vec2::ZERO,
- size,
- Some([0, 0, 0, 200]),
- ))
- }
-}
diff --git a/pixel-client/src/render/font.rs b/pixel-client/src/render/font.rs
deleted file mode 100644
index 60d27083..00000000
--- a/pixel-client/src/render/font.rs
+++ /dev/null
@@ -1,68 +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/>.
-
-*/
-use super::{sprite::SpriteDraw, AtlasLayout, Renderer};
-use hurrycurry_protocol::glam::Vec2;
-use sdl2::rect::Rect;
-
-pub struct FontTextures {
- pub glyphs: [Rect; 128],
-}
-
-impl FontTextures {
- pub fn init(layout: &AtlasLayout) -> Self {
- FontTextures {
- glyphs: (0..128)
- .map(|n| {
- layout
- .get(&format!("letter_{n}+a"))
- .copied()
- .unwrap_or(Rect::new(0, 0, 0, 0))
- })
- .collect::<Vec<_>>()
- .try_into()
- .expect("some letters are missing in the font"),
- }
- }
-}
-
-impl Renderer<'_> {
- pub fn draw_text(
- &mut self,
- position: Vec2,
- text: &str,
- scale: f32,
- tint: Option<[u8; 4]>,
- ) -> Vec2 {
- let mut cursor = position;
- let mut line_height = 0f32;
- for c in text.chars() {
- if c == '\n' {
- cursor.y += line_height;
- cursor.x = position.x
- }
- if (c as u32) < 128 {
- let r = self.font_textures.glyphs[c as usize];
- let size = Vec2::new(r.width() as f32, r.height() as f32) * scale;
- self.draw_ui(SpriteDraw::overlay(r, cursor, size, tint));
- cursor.x += size.x;
- line_height = line_height.max(size.y)
- }
- }
- (cursor - position.y) + Vec2::Y * line_height
- }
-}
diff --git a/pixel-client/src/render/misc.rs b/pixel-client/src/render/misc.rs
deleted file mode 100644
index c9f25462..00000000
--- a/pixel-client/src/render/misc.rs
+++ /dev/null
@@ -1,46 +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/>.
-
-*/
-use super::{sprite::Sprite, AtlasLayout};
-use hurrycurry_protocol::glam::Vec2;
-use sdl2::rect::Rect;
-
-pub struct MiscTextures {
- pub chef: Sprite,
- pub customer: Sprite,
- pub interact_target: Sprite,
- pub solid: Rect,
- pub clouds: Rect,
- pub itembubble: Sprite,
-}
-
-impl MiscTextures {
- pub fn init(layout: &AtlasLayout) -> Self {
- MiscTextures {
- chef: Sprite::new(*layout.get("chef+a").unwrap(), Vec2::Y * 0.3, 0.5 + 0.3),
- customer: Sprite::new(*layout.get("customer+a").unwrap(), Vec2::Y * 0.3, 0.5 + 0.3),
- interact_target: Sprite::new(
- *layout.get("interact-target-thick+a").unwrap(),
- Vec2::new(0.5, 1.0),
- 10.,
- ),
- solid: *layout.get("solid+a").unwrap(),
- clouds: *layout.get("clouds+a").unwrap(),
- itembubble: Sprite::new(*layout.get("itembubble+a").unwrap(), Vec2::Y * -1., 1.),
- }
- }
-}
diff --git a/pixel-client/src/render/mod.rs b/pixel-client/src/render/mod.rs
deleted file mode 100644
index 008e015d..00000000
--- a/pixel-client/src/render/mod.rs
+++ /dev/null
@@ -1,192 +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/>.
-
-*/
-pub mod font;
-pub mod misc;
-pub mod sprite;
-
-use font::FontTextures;
-use hurrycurry_protocol::glam::Vec2;
-use misc::MiscTextures;
-use sdl2::{
- pixels::PixelFormatEnum,
- rect::{FRect, Rect},
- render::{BlendMode, Canvas, Texture, TextureAccess, TextureCreator},
- video::{Window, WindowContext},
-};
-use sprite::SpriteDraw;
-use std::collections::HashMap;
-
-pub struct Renderer<'a> {
- metadata: AtlasLayout,
-
- font_textures: FontTextures,
- pub misc_textures: MiscTextures,
-
- pub size: Vec2,
- pub ui_size: Vec2,
- texture: Texture<'a>,
-
- world_scale: Vec2,
- world_offset: Vec2,
- pub ui_scale: Vec2,
-
- sprites: Vec<SpriteDraw>,
-}
-
-pub type AtlasLayout = HashMap<String, Rect>;
-
-impl<'a> Renderer<'a> {
- pub fn init(texture_creator: &'a TextureCreator<WindowContext>) -> Self {
- let palette = include_str!("../../assets/palette.csv")
- .split('\n')
- .filter(|l| !l.is_empty())
- .map(|s| {
- let mut toks = s.split(",");
- (
- toks.next().unwrap().chars().next().unwrap(),
- [
- toks.next().unwrap().parse::<u8>().unwrap(),
- toks.next().unwrap().parse::<u8>().unwrap(),
- toks.next().unwrap().parse::<u8>().unwrap(),
- toks.next().unwrap().parse::<u8>().unwrap(),
- ],
- )
- })
- .collect::<HashMap<_, _>>();
-
- let mut texels = vec![255; 1024 * 1024 * 4];
-
- for (y, line) in include_str!("../../assets/atlas.ta").lines().enumerate() {
- if line.is_empty() {
- continue;
- }
- for (x, char) in line.chars().enumerate() {
- let color = palette.get(&char).unwrap();
- texels[(y * 1024 + x) * 4] = color[3];
- texels[(y * 1024 + x) * 4 + 1] = color[2];
- texels[(y * 1024 + x) * 4 + 2] = color[1];
- texels[(y * 1024 + x) * 4 + 3] = color[0];
- }
- }
-
- let mut texture = texture_creator
- .create_texture(
- Some(PixelFormatEnum::RGBA8888),
- TextureAccess::Streaming,
- 1024,
- 1024,
- )
- .unwrap();
-
- texture.update(None, &texels, 1024 * 4).unwrap();
- texture.set_blend_mode(BlendMode::Blend);
-
- let atlas_layout = include_str!("../../assets/atlas.meta.csv")
- .lines()
- .filter(|l| !l.is_empty())
- .map(|l| {
- let mut toks = l.split(",");
- let x: i32 = toks.next().unwrap().parse().unwrap();
- let y: i32 = toks.next().unwrap().parse().unwrap();
- let w: u32 = toks.next().unwrap().parse().unwrap();
- let h: u32 = toks.next().unwrap().parse().unwrap();
- let name = toks.next().unwrap().to_string();
- (name, Rect::new(x, y, w, h))
- })
- .collect::<HashMap<_, _>>();
-
- Self {
- ui_scale: Vec2::ZERO,
- ui_size: Vec2::ZERO,
- misc_textures: MiscTextures::init(&atlas_layout),
- texture,
- font_textures: FontTextures::init(&atlas_layout),
- size: Vec2::ONE,
- metadata: atlas_layout,
- sprites: vec![],
- world_offset: Vec2::ZERO,
- world_scale: Vec2::ZERO,
- }
- }
-
- pub fn set_world_view(&mut self, offset: Vec2, scale: f32) {
- self.world_offset = offset;
- self.world_scale = Vec2::new(32., 24.) * scale;
- }
- pub fn set_ui_view(&mut self, scale: f32) {
- self.ui_scale = Vec2::splat(scale);
- self.ui_size = self.size / self.ui_scale;
- }
- pub fn get_world_scale(&self) -> Vec2 {
- self.world_scale
- }
-
- #[inline]
- pub fn atlas_layout(&self) -> &HashMap<String, Rect> {
- &self.metadata
- }
-
- pub fn set_modulation(&mut self, r: u8, g: u8, b: u8, a: u8) {
- self.texture.set_alpha_mod(a);
- self.texture.set_color_mod(r, g, b);
- }
- pub fn reset_modulation(&mut self) {
- self.set_modulation(255, 255, 255, 255)
- }
-
- pub fn draw_world(&mut self, sprite: SpriteDraw) {
- self.sprites.push(SpriteDraw {
- tint: sprite.tint,
- z_order: sprite.z_order,
- src: sprite.src,
- dst: FRect::new(
- (sprite.dst.x + self.world_offset.x) * self.world_scale.x,
- (sprite.dst.y + self.world_offset.y) * self.world_scale.y,
- sprite.dst.w * self.world_scale.x,
- sprite.dst.h * self.world_scale.y,
- ),
- })
- }
-
- pub fn draw_ui(&mut self, sprite: SpriteDraw) {
- self.sprites.push(SpriteDraw {
- tint: sprite.tint,
- z_order: sprite.z_order,
- src: sprite.src,
- dst: FRect::new(
- sprite.dst.x * self.ui_scale.x,
- sprite.dst.y * self.ui_scale.y,
- sprite.dst.w * self.ui_scale.x,
- sprite.dst.h * self.ui_scale.y,
- ),
- })
- }
-
- pub fn submit(&mut self, canvas: &mut Canvas<Window>) {
- self.sprites.sort();
- for SpriteDraw { src, dst, tint, .. } in self.sprites.drain(..) {
- self.texture.set_color_mod(tint[0], tint[1], tint[2]);
- self.texture.set_alpha_mod(tint[3]);
- canvas.copy_f(&self.texture, src, dst).unwrap();
- }
- }
-
- pub fn num_sprites(&self) -> usize {
- self.sprites.len()
- }
-}
diff --git a/pixel-client/src/render/sprite.rs b/pixel-client/src/render/sprite.rs
deleted file mode 100644
index ae06165a..00000000
--- a/pixel-client/src/render/sprite.rs
+++ /dev/null
@@ -1,123 +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/>.
-
-*/
-use hurrycurry_protocol::glam::Vec2;
-use sdl2::rect::{FRect, Rect};
-
-pub struct Sprite {
- z_offset: f32,
- src: Rect,
- relative_dst: FRect,
-}
-
-impl Sprite {
- pub fn new(src: Rect, anchor: Vec2, elevation: f32) -> Self {
- let relative_dst = FRect::new(
- anchor.x - (src.w as f32) / 32. / 2.,
- anchor.y - (src.h as f32) / 24.,
- (src.w as f32) / 32.,
- (src.h as f32) / 24.,
- );
- Self {
- z_offset: elevation,
- src,
- relative_dst,
- }
- }
- pub fn new_tile(src: Rect) -> Self {
- Self::new(src, Vec2::new(0.5, 1.0), 0.5)
- }
- pub fn at(&self, pos: Vec2) -> SpriteDraw {
- SpriteDraw {
- z_order: ((self.z_offset + pos.y) * 24.) as i32,
- src: self.src,
- dst: FRect::new(
- self.relative_dst.x + pos.x,
- self.relative_dst.y + pos.y,
- self.relative_dst.w,
- self.relative_dst.h,
- ),
- tint: [0xff; 4],
- }
- }
-}
-
-#[derive(Debug, Clone, Copy)]
-pub struct SpriteDraw {
- pub tint: [u8; 4],
- pub z_order: i32,
- pub src: Rect,
- pub dst: FRect,
-}
-
-impl SpriteDraw {
- pub fn screen(src: Rect, z_order: i32, pos: Vec2, size: Vec2, tint: Option<[u8; 4]>) -> Self {
- Self {
- dst: FRect::new(pos.x, pos.y, size.x, size.y),
- src,
- tint: tint.unwrap_or([0xff; 4]),
- z_order,
- }
- }
- pub fn overlay(src: Rect, pos: Vec2, size: Vec2, tint: Option<[u8; 4]>) -> Self {
- SpriteDraw::screen(src, i32::MAX, pos, size, tint)
- }
- pub fn underlay(src: Rect, pos: Vec2, size: Vec2, tint: Option<[u8; 4]>) -> Self {
- SpriteDraw::screen(src, i32::MIN, pos, size, tint)
- }
- pub fn alpha(mut self, alpha: f32) -> Self {
- self.tint[3] = (alpha.clamp(0., 1.) * 255.) as u8;
- self
- }
- pub fn tint(mut self, r: u8, g: u8, b: u8) -> Self {
- self.tint[0] = r;
- self.tint[1] = g;
- self.tint[2] = b;
- self
- }
- pub fn elevate(mut self, offset: f32) -> SpriteDraw {
- self.z_order += (offset * 24.) as i32;
- self.dst.set_y(self.dst.y() - offset);
- self
- }
- pub fn scale(mut self, factor: f32) -> SpriteDraw {
- self.dst
- .set_x(self.dst.x() + self.dst.width() * 0.5 * (1. - factor));
- self.dst
- .set_y(self.dst.y() + self.dst.height() * 0.5 * (1. - factor));
- self.dst.set_width(self.dst.width() * factor);
- self.dst.set_height(self.dst.height() * factor);
- self
- }
-}
-
-impl Ord for SpriteDraw {
- fn cmp(&self, other: &Self) -> std::cmp::Ordering {
- self.z_order.cmp(&other.z_order)
- }
-}
-impl PartialOrd for SpriteDraw {
- fn partial_cmp(&self, other: &Self) -> Option<std::cmp::Ordering> {
- Some(self.cmp(other))
- }
-}
-impl Eq for SpriteDraw {}
-impl PartialEq for SpriteDraw {
- fn eq(&self, other: &Self) -> bool {
- self.z_order == other.z_order && self.src == other.src && self.dst == other.dst
- }
-}
diff --git a/pixel-client/src/strings.rs b/pixel-client/src/strings.rs
deleted file mode 100644
index a941ecec..00000000
--- a/pixel-client/src/strings.rs
+++ /dev/null
@@ -1,45 +0,0 @@
-use anyhow::{anyhow, Result};
-use std::{
- collections::HashMap,
- fs::read_to_string,
- ops::Index,
- path::Path,
- sync::{LazyLock, Mutex},
-};
-
-pub struct Strings(HashMap<String, String>);
-impl Index<&'static str> for Strings {
- type Output = str;
- fn index(&self, index: &'static str) -> &Self::Output {
- self.0.get(index).map(|s| s.as_str()).unwrap_or(index)
- }
-}
-
-impl Strings {
- pub fn load(path: &Path) -> Result<Self> {
- Ok(Self(
- read_to_string(path)?
- .lines()
- .skip(1)
- .map(|l| {
- let (k, v) = l.split_once("=").ok_or(anyhow!("'=' missing"))?;
- Ok::<_, anyhow::Error>((
- k.trim_end().to_owned(),
- v.trim_start().replace("%n", "\n"),
- ))
- })
- .try_collect()?,
- ))
- }
-}
-
-static TR_LOAD: Mutex<Option<Strings>> = Mutex::new(None);
-static TR: LazyLock<Strings> = LazyLock::new(|| TR_LOAD.lock().unwrap().take().unwrap());
-
-pub fn tr<'a>(s: &'static str) -> &'a str {
- &TR[s]
-}
-pub fn set_language(lang: &str) {
- *TR_LOAD.lock().unwrap() =
- Some(Strings::load(Path::new(&format!("locale/{lang}.ini"))).unwrap());
-}
diff --git a/pixel-client/src/tilemap.rs b/pixel-client/src/tilemap.rs
deleted file mode 100644
index f79d4cad..00000000
--- a/pixel-client/src/tilemap.rs
+++ /dev/null
@@ -1,116 +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/>.
-
-*/
-use crate::render::{
- sprite::{Sprite, SpriteDraw},
- Renderer,
-};
-use hurrycurry_protocol::{glam::IVec2, TileIndex};
-use log::warn;
-use sdl2::rect::Rect;
-use std::collections::{HashMap, HashSet};
-
-#[derive(Default, Debug)]
-pub struct Tilemap {
- connect_group_by_tile: Vec<Option<usize>>,
- connect_members_by_group: Vec<HashSet<Option<TileIndex>>>,
- tile_srcs: Vec<[Rect; 16]>,
- tiles: HashMap<IVec2, SpriteDraw>,
-}
-
-impl Tilemap {
- pub fn init(&mut self, tile_names: &[String], sprite_rects: &HashMap<String, Rect>) {
- let tile_index = tile_names
- .iter()
- .enumerate()
- .map(|(t, i)| (i.to_string(), t))
- .collect::<HashMap<_, _>>();
- self.connect_group_by_tile = vec![None; tile_names.len()];
- self.connect_members_by_group = include_str!("../assets/connect.csv")
- .lines()
- .enumerate()
- .map(|(gid, line)| {
- line.split(",")
- .flat_map(|tile| tile_index.get(tile).copied())
- .map(|ti| {
- self.connect_group_by_tile[ti] = Some(gid);
- Some(TileIndex(ti))
- })
- .collect::<HashSet<_>>()
- })
- .collect::<Vec<_>>();
-
- self.tile_srcs = tile_names
- .iter()
- .map(|name| {
- let fallback = sprite_rects
- .get(&format!("{name}+a"))
- .copied()
- .unwrap_or_else(|| {
- warn!("no sprite for tile {name:?}");
- Rect::new(0, 0, 0, 0)
- });
-
- [
- sprite_rects.get(&format!("{name}+")),
- sprite_rects.get(&format!("{name}+w")),
- sprite_rects.get(&format!("{name}+e")),
- sprite_rects.get(&format!("{name}+we")),
- sprite_rects.get(&format!("{name}+n")),
- sprite_rects.get(&format!("{name}+wn")),
- sprite_rects.get(&format!("{name}+en")),
- sprite_rects.get(&format!("{name}+wen")),
- sprite_rects.get(&format!("{name}+s")),
- sprite_rects.get(&format!("{name}+ws")),
- sprite_rects.get(&format!("{name}+es")),
- sprite_rects.get(&format!("{name}+wes")),
- sprite_rects.get(&format!("{name}+ns")),
- sprite_rects.get(&format!("{name}+wns")),
- sprite_rects.get(&format!("{name}+ens")),
- sprite_rects.get(&format!("{name}+wens")),
- ]
- .map(|e| e.copied().unwrap_or(fallback))
- })
- .collect();
- }
-
- pub fn set(&mut self, pos: IVec2, tile: Option<TileIndex>, neighbors: [Option<TileIndex>; 4]) {
- let Some(tile) = tile else {
- self.tiles.remove(&pos);
- return;
- };
-
- let mut idx = 0;
- if let Some(gid) = self.connect_group_by_tile[tile.0] {
- let cgroup = &self.connect_members_by_group[gid];
- idx |= 0b0100 * (cgroup.contains(&neighbors[0])) as usize;
- idx |= (cgroup.contains(&neighbors[1])) as usize;
- idx |= 0b1000 * (cgroup.contains(&neighbors[2])) as usize;
- idx |= 0b0010 * (cgroup.contains(&neighbors[3])) as usize;
- }
-
- let src = self.tile_srcs[tile.0][idx];
- self.tiles
- .insert(pos, Sprite::new_tile(src).at(pos.as_vec2()));
- }
-
- pub fn draw(&self, ctx: &mut Renderer) {
- for &sprite in self.tiles.values() {
- ctx.draw_world(sprite);
- }
- }
-}
diff --git a/pixel-client/src/ui.rs b/pixel-client/src/ui.rs
deleted file mode 100644
index caa82707..00000000
--- a/pixel-client/src/ui.rs
+++ /dev/null
@@ -1,273 +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/>.
-
-*/
-use crate::render::{sprite::SpriteDraw, Renderer};
-use hurrycurry_protocol::glam::{IVec2, Vec2};
-use sdl2::{
- keyboard::{KeyboardState, Keycode, Scancode},
- mouse::MouseState,
-};
-
-#[derive(Default)]
-pub struct FocusDevice {
- focus: usize,
- pressing: Option<usize>,
- interact_just_pressed: bool,
- interact_just_released: bool,
- interact_down: bool,
-}
-
-#[derive(Default)]
-pub struct UiState {
- mouse_position: Vec2,
- ui_scale: Vec2,
-
- backspace: bool,
- text_input: String,
-
- keyboard_focus: FocusDevice,
- mouse_focus: FocusDevice,
-}
-
-pub struct Ui<'a, 'b> {
- cursor: Vec2,
- size: Vec2,
- cross_height: f32,
- index: usize,
- direction_horizontal: bool,
- pub renderer: &'a mut Renderer<'b>,
- state: &'a mut UiState,
-}
-
-impl UiState {
- pub fn update(&mut self, keyboard: &KeyboardState, mouse: &MouseState, _dt: f32) {
- self.mouse_position = IVec2::new(mouse.x(), mouse.y()).as_vec2() / self.ui_scale;
-
- self.mouse_focus.update(mouse.left());
- self.keyboard_focus
- .update(keyboard.is_scancode_pressed(Scancode::Space));
- }
- pub fn text_input(&mut self, text: String) {
- self.text_input = text;
- }
- pub fn keyboard_event(&mut self, keycode: Keycode, down: bool) {
- if down {
- match keycode {
- Keycode::DOWN => self.keyboard_focus.focus += 1,
- Keycode::UP if self.keyboard_focus.focus > 0 => self.keyboard_focus.focus -= 1,
- Keycode::BACKSPACE => self.backspace = true,
- _ => (),
- }
- }
- }
-
- pub fn draw(&mut self, renderer: &mut Renderer, ui: impl FnOnce(&mut Ui)) {
- self.ui_scale = renderer.ui_scale;
- self.mouse_focus.focus = usize::MAX;
- let mut u = Ui {
- cursor: Vec2::ZERO,
- direction_horizontal: false,
- size: renderer.ui_size,
- renderer,
- state: self,
- cross_height: 0.,
- index: 0,
- };
- ui(&mut u);
- self.end()
- }
- fn end(&mut self) {
- if self.mouse_focus.interact_just_released {
- self.mouse_focus.pressing = None;
- }
- if self.keyboard_focus.interact_just_released {
- self.keyboard_focus.pressing = None;
- }
- self.text_input.clear();
- self.backspace = false;
- }
-}
-
-impl FocusDevice {
- pub fn update(&mut self, interact: bool) {
- self.interact_just_pressed = interact && !self.interact_down;
- self.interact_just_released = !interact && self.interact_down;
- self.interact_down = interact;
- }
- pub fn element(&mut self, index: usize) -> (bool, bool, bool) {
- let focus = self.focus == index;
- if focus && self.interact_just_pressed {
- self.pressing = Some(index)
- };
- let pressing = self.pressing == Some(index);
- let released = self.interact_just_released && pressing && focus;
- (focus, pressing, released)
- }
-}
-
-impl Ui<'_, '_> {
- pub fn vertical(&mut self, content: impl FnOnce(&mut Ui)) {
- self.flow(false, content)
- }
- pub fn horizontal(&mut self, content: impl FnOnce(&mut Ui)) {
- self.flow(true, content)
- }
- pub fn flow(&mut self, dir: bool, content: impl FnOnce(&mut Ui)) {
- let d = self.direction_horizontal;
- let ch = self.cross_height;
- let c = self.cursor;
- self.direction_horizontal = dir;
- self.cross_height = 0.;
- content(self);
- let size = (self.cursor - c).max(if dir { Vec2::Y } else { Vec2::X } * self.cross_height);
- self.direction_horizontal = d;
- self.cross_height = ch;
- self.cursor = c;
- self.advance(size);
- }
-
- pub fn text(&mut self, text: &str) {
- self.scaled_text(text, 1.)
- }
- pub fn small_text(&mut self, text: &str) {
- self.scaled_text(text, 0.5)
- }
- pub fn scaled_text(&mut self, text: &str, scale: f32) {
- let margin = Vec2::splat(2.);
- let size = margin
- + self
- .renderer
- .draw_text(self.cursor + margin, text, scale, None)
- + margin;
- self.advance(size);
- }
- pub fn button(&mut self, w: f32, label: &str) -> bool {
- let c = self.cursor;
- let margin = Vec2::splat(4.);
- let text_size = self
- .renderer
- .draw_text(self.cursor + margin, label, 1., None);
- let size = margin + Vec2::new(w, text_size.y) + margin;
-
- self.index += 1;
-
- let mouse_rel = self.state.mouse_position - c;
- if mouse_rel.x >= 0. && mouse_rel.y >= 0. && mouse_rel.x < size.x && mouse_rel.y < size.y {
- self.state.mouse_focus.focus = self.index;
- }
-
- let (focus, pressing, released) = {
- let (mfocus, mpressing, mreleased) = self.state.mouse_focus.element(self.index);
- let (kfocus, kpressing, kreleased) = self.state.keyboard_focus.element(self.index);
- (
- mfocus || kfocus,
- mpressing || kpressing,
- mreleased || kreleased,
- )
- };
-
- let l = if pressing {
- 100
- } else if focus {
- 50
- } else {
- 30
- };
- self.renderer.draw_ui(SpriteDraw::screen(
- self.renderer.misc_textures.solid,
- i32::MAX - 1,
- c,
- size,
- Some([l, l, l, 200]),
- ));
-
- self.advance(size);
- released
- }
-
- pub fn textedit(&mut self, w: f32, content: &mut String) {
- let c = self.cursor;
- let margin = Vec2::splat(4.);
- let text_size = self
- .renderer
- .draw_text(self.cursor + margin, content, 1., None);
- let size = margin + Vec2::new(w, text_size.y) + margin;
-
- self.index += 1;
-
- let mouse_rel = self.state.mouse_position - c;
- if mouse_rel.x >= 0. && mouse_rel.y >= 0. && mouse_rel.x < size.x && mouse_rel.y < size.y {
- self.state.mouse_focus.focus = self.index;
- }
-
- if self.state.mouse_focus.interact_just_pressed
- && self.state.mouse_focus.focus == self.index
- {
- self.state.keyboard_focus.focus = self.index;
- }
-
- let keyboard_focus = self.state.keyboard_focus.focus == self.index;
-
- if keyboard_focus {
- *content += &self.state.text_input;
- self.state.text_input.clear();
- if self.state.backspace {
- content.pop();
- }
- }
-
- let focus = self.state.mouse_focus.focus == self.index || keyboard_focus;
- let l = if focus { 50 } else { 30 };
- self.renderer.draw_ui(SpriteDraw::screen(
- self.renderer.misc_textures.solid,
- i32::MAX - 1,
- c,
- size,
- Some([l, l, l, 200]),
- ));
-
- self.advance(size);
- }
-
- pub fn fill(&mut self) {
- self.renderer.draw_ui(SpriteDraw::screen(
- self.renderer.misc_textures.solid,
- i32::MAX - 1,
- self.cursor,
- self.get_remaining(),
- Some([30, 30, 30, 200]),
- ));
- }
-
- pub fn get_remaining(&self) -> Vec2 {
- if self.direction_horizontal {
- Vec2::new(self.size.x - self.cursor.x, self.cross_height)
- } else {
- Vec2::new(self.cross_height, self.size.y - self.cursor.y)
- }
- }
-
- pub fn advance(&mut self, size: Vec2) {
- if self.direction_horizontal {
- self.cursor.x += size.x;
- self.cross_height = self.cross_height.max(size.y);
- } else {
- self.cursor.y += size.y;
- self.cross_height = self.cross_height.max(size.x);
- }
- }
-}
diff --git a/pixel-client/tools/Cargo.toml b/pixel-client/tools/Cargo.toml
deleted file mode 100644
index 65ab3bbb..00000000
--- a/pixel-client/tools/Cargo.toml
+++ /dev/null
@@ -1,12 +0,0 @@
-[package]
-name = "tools"
-version = "0.1.0"
-edition = "2021"
-
-[dependencies]
-image = "0.25.8"
-anyhow = "1.0.99"
-log = "0.4.28"
-env_logger = "0.11.8"
-clap = { version = "4.5.47", features = ["derive"] }
-sdl2 = { version = "0.38.0", features = ["image"] }
diff --git a/pixel-client/tools/src/bin/bunnymark.rs b/pixel-client/tools/src/bin/bunnymark.rs
deleted file mode 100644
index a7ef412d..00000000
--- a/pixel-client/tools/src/bin/bunnymark.rs
+++ /dev/null
@@ -1,106 +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/>.
-
-*/
-use sdl2::{
- event::Event,
- image::{InitFlag, LoadTexture},
- keyboard::Keycode,
- pixels::Color,
- rect::Rect,
-};
-use std::time::Instant;
-
-const WIDTH: i32 = 1920;
-const HEIGHT: i32 = 1080;
-
-pub fn main() {
- let amount = std::env::args().nth(1).unwrap().parse().unwrap();
-
- let sdl_context = sdl2::init().unwrap();
- let video_subsystem = sdl_context.video().unwrap();
- let _image_context = sdl2::image::init(InitFlag::WEBP | InitFlag::PNG).unwrap();
- let window = video_subsystem
- .window("Hurry Curry! Bunnymark", WIDTH as u32, HEIGHT as u32)
- .position_centered()
- .build()
- .map_err(|e| e.to_string())
- .unwrap();
-
- let mut canvas = window
- .into_canvas()
- .accelerated()
- .build()
- .map_err(|e| e.to_string())
- .unwrap();
- let texture_creator = canvas.texture_creator();
- let texture = texture_creator
- .load_texture("client/icons/main.png")
- .unwrap();
-
- let mut bunnies = vec![((0, 0), (0, 0)); amount];
-
- for (i, (pos, vel)) in bunnies.iter_mut().enumerate() {
- let mut r = xorshift(i as i32);
- pos.0 = r % WIDTH;
- r = xorshift(r);
- pos.1 = r % HEIGHT;
- r = xorshift(r);
- vel.0 = r % 7 - 3;
- r = xorshift(r);
- vel.1 = r % 7 - 3;
- }
-
- let mut last = Instant::now();
- 'mainloop: loop {
- canvas.set_draw_color(Color::BLACK);
- canvas.clear();
- for (pos, vel) in &mut bunnies {
- pos.0 += vel.0;
- pos.1 += vel.1;
- if pos.0 < 0 || pos.0 > WIDTH {
- vel.0 *= -1
- }
- if pos.1 < 0 || pos.1 > HEIGHT {
- vel.1 *= -1
- }
- canvas
- .copy(&texture, None, Some(Rect::new(pos.0, pos.1, 30, 30)))
- .unwrap();
- }
- canvas.present();
-
- for event in sdl_context.event_pump().unwrap().poll_iter() {
- match event {
- Event::Quit { .. }
- | Event::KeyDown {
- keycode: Option::Some(Keycode::Escape),
- ..
- } => break 'mainloop,
- _ => {}
- }
- }
- println!("frame time: {:?}", last.elapsed());
- last = Instant::now();
- }
-}
-
-fn xorshift(mut x: i32) -> i32 {
- x ^= x << 13;
- x ^= x >> 17;
- x ^= x << 5;
- x
-}
diff --git a/pixel-client/tools/src/bin/tex_compose.rs b/pixel-client/tools/src/bin/tex_compose.rs
deleted file mode 100644
index c81a538c..00000000
--- a/pixel-client/tools/src/bin/tex_compose.rs
+++ /dev/null
@@ -1,135 +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/>.
-
-*/
-use clap::Parser;
-use std::{
- collections::HashMap,
- fs::{read_to_string, File},
- io::{BufRead, BufReader, BufWriter, Write},
- path::PathBuf,
-};
-
-#[derive(Parser)]
-struct Args {
- catalogue: PathBuf,
- texture_dir: PathBuf,
- output_dir: PathBuf,
-}
-
-fn main() {
- let Args {
- catalogue,
- texture_dir,
- output_dir,
- } = Args::parse();
-
- for line in read_to_string(catalogue).unwrap().lines() {
- let (line, _) = line.split_once(";").unwrap_or((line, ""));
- let line = line.trim();
- if line.is_empty() {
- continue;
- }
-
- let (name, rest) = line.split_once("=").unwrap();
- let (connects, rest) = rest.split_once(":").unwrap_or(("a", rest));
- eprintln!(" compose {name:?} ({connects})");
-
- let mut texels = HashMap::new();
-
- for part in rest.split(",") {
- let mut mods = part.split("~");
- let texname = mods.next().unwrap();
-
- let mut hflip = false;
- let mut vflip = true;
- let mut xoff = 0;
- let mut yoff = 0;
-
- for m in mods {
- if m == "hflip" {
- hflip = !hflip
- }
- if m == "vflip" {
- vflip = !vflip
- }
- if let Some(m) = m.strip_prefix("x") {
- xoff += m.parse::<i32>().unwrap();
- }
- if let Some(m) = m.strip_prefix("y") {
- yoff += m.parse::<i32>().unwrap();
- }
- }
-
- let texpath = texture_dir.join(texname).with_extension("ta");
- eprintln!(" + {texpath:?}");
- let file = BufReader::new(File::open(&texpath).unwrap());
- let tex = file.lines().map(Result::unwrap).collect::<Vec<String>>();
- let (width, height) = (tex[0].chars().count(), tex.len());
-
- for (mut y, line) in tex.iter().enumerate() {
- if line.is_empty() {
- continue;
- }
- if vflip {
- y = height - y - 1
- }
- for (mut x, char) in line.chars().enumerate() {
- if hflip {
- x = width - x - 1
- }
- let e = texels
- .entry((x as i32 + xoff, y as i32 + yoff))
- .or_insert(' ');
- if char != ' ' {
- *e = char
- }
- }
- }
- }
-
- let mut min_x = 0;
- let mut min_y = 0;
- let mut max_x = 0;
- let mut max_y = 0;
- for (x, y) in texels.keys() {
- min_x = min_x.min(*x);
- min_y = min_y.min(*y);
- max_x = max_x.max(*x + 1);
- max_y = max_y.max(*y + 1);
- }
-
- let width = max_x - min_x;
- let height = max_y - min_y;
-
- let outpath = output_dir
- .join(format!("{name}+{connects}"))
- .with_extension("ta");
- let mut output = BufWriter::new(File::create(outpath).unwrap());
-
- for y in 0..height {
- for x in 0..width {
- write!(
- output,
- "{}",
- texels.get(&(x + min_x, max_y - y - 1)).unwrap_or(&' ')
- )
- .unwrap();
- }
- writeln!(output).unwrap();
- }
- }
-}
diff --git a/pixel-client/tools/src/bin/tex_export.rs b/pixel-client/tools/src/bin/tex_export.rs
deleted file mode 100644
index 3863cd47..00000000
--- a/pixel-client/tools/src/bin/tex_export.rs
+++ /dev/null
@@ -1,75 +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/>.
-
-*/
-use clap::Parser;
-use image::Rgba;
-use std::{
- collections::HashMap,
- fs::File,
- io::{BufRead, BufReader},
- path::PathBuf,
-};
-
-#[derive(Parser)]
-struct Args {
- input: PathBuf,
- output: PathBuf,
-}
-
-fn main() {
- let Args {
- input,
- output: out_path,
- } = Args::parse();
-
- let palette = include_str!("../../../assets/palette.csv")
- .split('\n')
- .filter(|l| !l.is_empty())
- .map(|s| {
- let (c, s) = s.split_once(",").unwrap();
- let (r, s) = s.split_once(",").unwrap();
- let (g, s) = s.split_once(",").unwrap();
- let (b, a) = s.split_once(",").unwrap();
- (
- c.chars().next().unwrap(),
- [
- r.parse().unwrap(),
- g.parse().unwrap(),
- b.parse().unwrap(),
- a.parse().unwrap(),
- ],
- )
- })
- .collect::<HashMap<_, _>>();
-
- let file = BufReader::new(File::open(&input).unwrap());
- let tex = file.lines().map(Result::unwrap).collect::<Vec<String>>();
- let (width, height) = (tex[0].chars().count(), tex.len());
-
- let mut output = image::ImageBuffer::<Rgba<u8>, Vec<_>>::new(width as u32, height as u32);
-
- for (y, line) in tex.iter().enumerate() {
- if line.is_empty() {
- continue;
- }
- for (x, char) in line.chars().enumerate() {
- output.put_pixel(x as u32, y as u32, Rgba(*palette.get(&char).unwrap()));
- }
- }
-
- output.save(out_path).unwrap();
-}
diff --git a/pixel-client/tools/src/bin/tex_import.rs b/pixel-client/tools/src/bin/tex_import.rs
deleted file mode 100644
index 7dab9afe..00000000
--- a/pixel-client/tools/src/bin/tex_import.rs
+++ /dev/null
@@ -1,75 +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/>.
-
-*/
-use clap::Parser;
-use std::{
- collections::HashMap,
- fs::File,
- io::{BufWriter, Write},
- path::PathBuf,
- process::exit,
-};
-
-#[derive(Parser)]
-struct Args {
- input: PathBuf,
- output: PathBuf,
-}
-
-fn main() {
- let Args { input, output } = Args::parse();
-
- let palette = include_str!("../../../assets/palette.csv")
- .split('\n')
- .filter(|l| !l.is_empty())
- .map(|s| {
- let (c, s) = s.split_once(",").unwrap();
- let (r, s) = s.split_once(",").unwrap();
- let (g, s) = s.split_once(",").unwrap();
- let (b, a) = s.split_once(",").unwrap();
- (
- [
- r.parse().unwrap(),
- g.parse().unwrap(),
- b.parse().unwrap(),
- a.parse().unwrap(),
- ],
- c.chars().next().unwrap(),
- )
- })
- .collect::<HashMap<_, _>>();
-
- let input = image::open(input).unwrap().to_rgba8();
- let mut output = BufWriter::new(File::create(output).unwrap());
-
- for y in 0..input.height() {
- for x in 0..input.width() {
- let mut c = input.get_pixel(x, y).0;
- if c[3] == 0 {
- c = [0, 0, 0, 0];
- }
- let Some(char) = palette.get(&c) else {
- eprintln!("color at {x},{y} not in palette: {c:?}");
- exit(1);
- };
- write!(output, "{char}").unwrap();
- }
- writeln!(output).unwrap();
- }
- output.flush().unwrap();
- output.into_inner().unwrap().flush().unwrap()
-}
diff --git a/pixel-client/tools/src/bin/tex_pack.rs b/pixel-client/tools/src/bin/tex_pack.rs
deleted file mode 100644
index ccb8caee..00000000
--- a/pixel-client/tools/src/bin/tex_pack.rs
+++ /dev/null
@@ -1,95 +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/>.
-
-*/
-use clap::Parser;
-use std::{
- fs::File,
- io::{BufRead, BufReader, BufWriter, Write},
- path::PathBuf,
-};
-
-#[derive(Parser)]
-struct Args {
- atlas_out: PathBuf,
- atlas_meta_out: PathBuf,
- inputs: Vec<PathBuf>,
-}
-
-fn main() {
- let Args {
- inputs,
- atlas_meta_out,
- atlas_out,
- } = Args::parse();
-
- let atlas_size = 1024;
-
- let mut cursor_x = 0;
- let mut cursor_y = 0;
- let mut row_height = 0;
-
- let mut texels = vec![vec![' '; atlas_size]; atlas_size];
- let mut metadata = Vec::new();
-
- println!(" savepack {atlas_out:?}");
- for path in inputs {
- let file = BufReader::new(File::open(&path).unwrap());
- let tex = file.lines().map(Result::unwrap).collect::<Vec<String>>();
- let name = path.file_stem().unwrap().to_str().unwrap().to_string();
- let (width, height) = (tex[0].chars().count(), tex.len());
-
- println!(" + {width}x{height} {name}");
-
- if cursor_x + width > atlas_size {
- cursor_y += row_height;
- row_height = 0;
- cursor_x = 0;
- }
- if cursor_y + height > atlas_size {
- panic!("texture too big or atlas full");
- }
- row_height = row_height.max(height);
- let texcoord = [cursor_x, cursor_y, width, height];
-
- for (y, line) in tex.iter().enumerate() {
- if line.is_empty() {
- continue;
- }
- for (x, char) in line.chars().enumerate() {
- texels[cursor_y + y][cursor_x + x] = char;
- }
- }
-
- metadata.push((texcoord, name));
-
- cursor_x += width;
- }
-
- let mut atlas_out = BufWriter::new(File::create(atlas_out).unwrap());
- let mut atlas_meta_out = BufWriter::new(File::create(atlas_meta_out).unwrap());
-
- for line in texels {
- for char in line {
- write!(atlas_out, "{char}").unwrap()
- }
- writeln!(atlas_out).unwrap();
- }
-
- for ([x, y, w, h], name) in metadata {
- writeln!(atlas_meta_out, "{x},{y},{w},{h},{name}").unwrap();
- }
-}
diff --git a/pixel-client/tools/src/lib.rs b/pixel-client/tools/src/lib.rs
deleted file mode 100644
index 8b137891..00000000
--- a/pixel-client/tools/src/lib.rs
+++ /dev/null
@@ -1 +0,0 @@
-