class Assets { static menuBackground = new Image(); static background = new Image(); static floorTile = new Image(); static player = { idle: { u: new Image(), d: new Image(), r: new Image(), l: new Image() }, walking: { u: [ new Image(), new Image(), new Image() ], d: [ new Image(), new Image(), new Image() ], r: [ new Image(), new Image(), new Image() ], l: [ new Image(), new Image(), new Image() ] } } static trashbin = new Image(); static coffeetable = new Image(); static cabletable = new Image(); static shoptable = new Image(); static server = [ new Image(), new Image(), new Image(), new Image() ]; static serverFailure = new Image(); static spark = [ new Image(), new Image(), new Image() ]; static ui = { cursor: { default: new Image(), wrench: new Image() }, server: { background: new Image(), connector: new Image(), cableConnector: new Image() }, buttons: { close: new Image() }, gauge: new Image() }; static items = { cable_red: new Image(), broken_cable: new Image(), coffee: new Image(), backpack: new Image(), big_backpack: new Image(), shoes: new Image(), comfy_shoes: new Image(), server: new Image() } static sounds = { player: { step: new Audio("assets/sounds/step.wav"), drink: new Audio("assets/sounds/restore_energy.wav"), makeCoffe: new Audio("assets/sounds/make_coffee.wav"), takeCable: new Audio("assets/sounds/take_cable.wav"), placeItem: new Audio("assets/sounds/place_item.wav"), takeItem: new Audio("assets/sounds/take_item.wav") }, server: { open: new Audio("assets/sounds/open_server.wav"), spark: new Audio("assets/sounds/spark.wav"), fix: new Audio("assets/sounds/fix_server.wav") }, cable: { connect: new Audio("assets/sounds/cable_connect.wav"), disconnect: new Audio("assets/sounds/cable_disconnect.wav") }, trash: new Audio("assets/sounds/trash.wav"), click: new Audio("assets/sounds/click.wav"), buy: new Audio("assets/sounds/buy.wav"), openDialogue: new Audio("assets/sounds/open_dialogue.wav") }; static fonts = { small: { size: 10, name: "Pixolletta8px", full: "10px Pixolletta8px" }, large: { size: 16, name: "Pixellari", full: "16px Pixellari" } } static loadAssets() { Assets.menuBackground.src = "assets/menu_background.png"; Assets.background.src = "assets/background.png"; Assets.floorTile.src = "assets/floor_tile.png"; Assets.player.idle.u.src = "assets/player/idle_u.png"; Assets.player.idle.d.src = "assets/player/idle_d.png"; Assets.player.idle.l.src = "assets/player/idle_l.png"; Assets.player.idle.r.src = "assets/player/idle_r.png"; Assets.player.walking.u[0].src = "assets/player/walk_u_1.png"; Assets.player.walking.u[1].src = "assets/player/idle_u.png"; Assets.player.walking.u[2].src = "assets/player/walk_u_2.png"; Assets.player.walking.d[0].src = "assets/player/walk_d_1.png"; Assets.player.walking.d[1].src = "assets/player/idle_d.png"; Assets.player.walking.d[2].src = "assets/player/walk_d_2.png"; Assets.player.walking.l[0].src = "assets/player/walk_l_1.png"; Assets.player.walking.l[1].src = "assets/player/idle_l.png"; Assets.player.walking.l[2].src = "assets/player/walk_l_2.png"; Assets.player.walking.r[0].src = "assets/player/walk_r_1.png"; Assets.player.walking.r[1].src = "assets/player/idle_r.png"; Assets.player.walking.r[2].src = "assets/player/walk_r_2.png"; Assets.trashbin.src = "assets/trashbin.png"; Assets.coffeetable.src = "assets/table_coffee.png"; Assets.cabletable.src = "assets/table_cables.png"; Assets.shoptable.src = "assets/shop_table.png"; Assets.server[0].src = "assets/server/server_1.png"; Assets.server[1].src = "assets/server/server_2.png"; Assets.server[2].src = "assets/server/server_3.png"; Assets.server[3].src = "assets/server/server_4.png"; Assets.serverFailure.src = "assets/server/server_failure.png"; Assets.spark[0].src = "assets/server/sparks/spark_1.png"; Assets.spark[1].src = "assets/server/sparks/spark_2.png"; Assets.spark[2].src = "assets/server/sparks/spark_3.png"; Assets.ui.cursor.default.src = "assets/cursor/default.png"; Assets.ui.cursor.wrench.src = "assets/cursor/wrench.png"; Assets.ui.server.background.src = "assets/ui/server_rack.png"; Assets.ui.server.connector.src = "assets/ui/connector.png"; Assets.ui.server.cableConnector.src = "assets/ui/cable_connector.png"; Assets.ui.buttons.close.src = "assets/ui/close_button.png"; Assets.ui.gauge.src = "assets/ui/gauge.png"; Assets.items.cable_red.src = "assets/items/cable_red.png"; Assets.items.broken_cable.src = "assets/items/broken_cable.png"; Assets.items.coffee.src = "assets/items/coffee.png"; Assets.items.backpack.src = "assets/items/backpack.png"; Assets.items.big_backpack.src = "assets/items/big_backpack.png"; Assets.items.shoes.src = "assets/items/shoes.png"; Assets.items.comfy_shoes.src = "assets/items/comfy_shoes.png"; Assets.items.server.src = "assets/items/server.png"; const small_font = new FontFace( Assets.fonts.small.name, "url(assets/Pixolletta8px.ttf)" ); const large_font = new FontFace( Assets.fonts.large.name, "url(assets/Pixellari.ttf)" ); document.fonts.add(small_font); document.fonts.add(large_font); } }