]> git.mcshandy.xyz Git - sumeriangame/commitdiff
Rough draft of a first actual level.
authorRandy McShandy <randy@mcshandy.xyz>
Thu, 12 Mar 2026 04:20:52 +0000 (23:20 -0500)
committerRandy McShandy <randy@mcshandy.xyz>
Thu, 12 Mar 2026 04:20:52 +0000 (23:20 -0500)
main/assets.lua
main/main.lua
main/tiled/tablet_iv.lua [new file with mode: 0644]
main/tiled/tablet_iv.tmx [new file with mode: 0644]

index 05ec5de6a1b9fcd0d3bae907af52ad7c53757b4d..98c931d432d4151948c5bfd2384607d558b41049 100644 (file)
@@ -169,4 +169,10 @@ assets.store_map('side_scroll',
   scale = 2.0,
 })
 
+assets.store_map('tablet_iv',
+{
+  path = 'tiled/tablet_iv.lua',
+  scale = 4.0,
+})
+
 return assets
index c84d21bd6cb6939d2d8c9acd66af5146618a4617..b6c885e97735cff458fafa9ca971109f72d0661c 100644 (file)
@@ -21,7 +21,7 @@ function love.load()
   love.setDeprecationOutput(false)
   love.audio.play(assets.get_source('intro'))
 
-  render.activate_map('side_scroll')
+  render.activate_map('tablet_iv')
   player = assets.get_object('Player')
   player_module.init_controls(player, render.map.active_map)
 
diff --git a/main/tiled/tablet_iv.lua b/main/tiled/tablet_iv.lua
new file mode 100644 (file)
index 0000000..a22a42a
--- /dev/null
@@ -0,0 +1,323 @@
+return {
+  version = "1.10",
+  luaversion = "5.1",
+  tiledversion = "1.11.2",
+  class = "",
+  orientation = "orthogonal",
+  renderorder = "left-down",
+  width = 30,
+  height = 20,
+  tilewidth = 16,
+  tileheight = 16,
+  nextlayerid = 4,
+  nextobjectid = 16,
+  properties = {
+    ["viewclass"] = "topdown"
+  },
+  tilesets = {
+    {
+      name = "monochrome_ba_packed",
+      firstgid = 1,
+      class = "",
+      tilewidth = 16,
+      tileheight = 16,
+      spacing = 0,
+      margin = 0,
+      columns = 49,
+      image = "../assets/tilesets/kenney_1_bit/Tilesheet/monochrome_ba_packed.png",
+      imagewidth = 784,
+      imageheight = 352,
+      transparentcolor = "#e5e5e5",
+      objectalignment = "unspecified",
+      tilerendersize = "tile",
+      fillmode = "stretch",
+      tileoffset = {
+        x = 0,
+        y = 0
+      },
+      grid = {
+        orientation = "orthogonal",
+        width = 16,
+        height = 16
+      },
+      properties = {},
+      wangsets = {},
+      tilecount = 1078,
+      tiles = {}
+    },
+    {
+      name = "monochrome_bw_packed",
+      firstgid = 1079,
+      class = "",
+      tilewidth = 16,
+      tileheight = 16,
+      spacing = 0,
+      margin = 0,
+      columns = 49,
+      image = "../assets/tilesets/kenney_1_bit/Tilesheet/monochrome_bw_packed.png",
+      imagewidth = 784,
+      imageheight = 352,
+      objectalignment = "unspecified",
+      tilerendersize = "tile",
+      fillmode = "stretch",
+      tileoffset = {
+        x = 0,
+        y = 0
+      },
+      grid = {
+        orientation = "orthogonal",
+        width = 16,
+        height = 16
+      },
+      properties = {},
+      wangsets = {},
+      tilecount = 1078,
+      tiles = {}
+    }
+  },
+  layers = {
+    {
+      type = "tilelayer",
+      x = 0,
+      y = 0,
+      width = 30,
+      height = 20,
+      id = 1,
+      name = "Tile Layer 1",
+      class = "",
+      visible = true,
+      opacity = 0.9,
+      offsetx = 0,
+      offsety = 0,
+      parallaxx = 1,
+      parallaxy = 1,
+      properties = {},
+      encoding = "lua",
+      data = {
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1079, 1080, 1079, 1079, 1177, 1079, 1, 1, 1, 1, 1079, 1079, 1583, 1177, 1177, 1079, 1, 1, 1, 1, 1079, 1079, 1177, 1177, 1177, 1183, 1, 1,
+        1, 1, 1079, 1080, 1079, 1079, 1079, 1079, 1, 1, 1, 1, 1079, 1079, 1079, 1079, 1177, 1079, 1, 1, 1, 1, 1177, 1080, 1079, 1080, 1177, 1177, 1, 1,
+        1, 1, 1079, 1079, 1079, 1177, 1079, 1177, 1, 1, 1, 1, 1079, 1079, 1079, 1177, 1080, 1080, 1, 1, 1, 1, 1079, 1079, 1079, 1177, 1079, 1079, 1, 1,
+        1, 1, 1079, 1177, 1079, 1079, 1079, 1079, 1, 1, 1, 1, 1079, 1079, 1177, 1079, 1079, 1177, 1, 1, 1, 1, 1079, 1080, 1079, 1079, 1177, 1583, 1, 1,
+        1, 1, 1079, 1080, 1177, 1177, 1079, 1079, 1, 1, 1, 1, 1177, 1079, 1079, 1079, 1079, 1079, 1, 1, 1, 1, 1079, 1183, 1080, 1079, 1079, 1177, 1, 1,
+        1, 1, 1079, 1079, 1079, 1079, 1080, 1079, 1, 1, 1, 1, 1079, 1079, 1079, 1177, 1080, 1079, 1, 1, 1, 1, 1177, 1079, 1177, 1079, 1079, 1079, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1177, 1177, 1080, 1177, 1183, 1080, 1, 1, 1, 1, 1183, 1079, 1079, 1177, 1183, 1080, 1, 1, 1, 1, 1084, 1084, 1084, 1084, 1128, 1180, 1, 1,
+        1, 1, 1079, 1183, 1079, 1177, 1079, 1080, 1, 1, 1, 1, 1079, 1079, 1177, 1079, 1080, 1183, 1, 1, 1, 1, 1084, 1086, 1177, 1128, 1128, 1128, 1, 1,
+        1, 1, 1080, 1177, 1583, 1177, 1177, 1079, 1, 1, 1, 1, 1583, 1079, 1079, 1079, 1079, 1079, 1, 1, 1, 1, 1079, 1079, 1079, 1079, 1128, 1128, 1, 1,
+        1, 1, 1183, 1080, 1079, 1177, 1177, 1177, 1, 1, 1, 1, 1177, 1177, 1177, 1079, 1177, 1177, 1, 1, 1, 1, 1084, 1177, 1128, 1128, 1128, 1180, 1, 1,
+        1, 1, 1177, 1079, 1177, 1080, 1079, 1079, 1, 1, 1, 1, 1177, 1080, 1079, 1079, 1177, 1080, 1, 1, 1, 1, 1177, 1177, 1128, 1180, 1180, 1128, 1, 1,
+        1, 1, 1079, 1177, 1177, 1079, 1079, 1079, 1, 1, 1, 1, 1183, 1079, 1080, 1080, 1177, 1183, 1, 1, 1, 1, 1080, 1177, 1080, 1128, 1180, 1128, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
+      }
+    },
+    {
+      type = "objectgroup",
+      draworder = "topdown",
+      id = 2,
+      name = "Object Layer 1",
+      class = "",
+      visible = true,
+      opacity = 1,
+      offsetx = 0,
+      offsety = 0,
+      parallaxx = 1,
+      parallaxy = 1,
+      properties = {},
+      objects = {
+        {
+          id = 1,
+          name = "Player",
+          type = "",
+          shape = "rectangle",
+          x = 32,
+          y = 48,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 1593,
+          visible = true,
+          properties = {}
+        },
+        {
+          id = 2,
+          name = "CameraFocus",
+          type = "Meta",
+          shape = "point",
+          x = 0,
+          y = 16,
+          width = 0,
+          height = 0,
+          rotation = 0,
+          visible = true,
+          properties = {}
+        },
+        {
+          id = 3,
+          name = "teleporter_tx_a",
+          type = "",
+          shape = "rectangle",
+          x = 96,
+          y = 112,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "teleporter_rx_a"
+          }
+        },
+        {
+          id = 7,
+          name = "teleporter_rx_a",
+          type = "",
+          shape = "rectangle",
+          x = 208,
+          y = 48,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "none"
+          }
+        },
+        {
+          id = 8,
+          name = "teleporter_tx_b",
+          type = "",
+          shape = "rectangle",
+          x = 240,
+          y = 80,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "teleporter_rx_b"
+          }
+        },
+        {
+          id = 9,
+          name = "teleporter_tx_c",
+          type = "",
+          shape = "rectangle",
+          x = 384,
+          y = 128,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "teleporter_rx_c"
+          }
+        },
+        {
+          id = 10,
+          name = "teleporter_rx_b",
+          type = "",
+          shape = "rectangle",
+          x = 432,
+          y = 96,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "none"
+          }
+        },
+        {
+          id = 11,
+          name = "teleporter_tx_d",
+          type = "",
+          shape = "rectangle",
+          x = 32,
+          y = 208,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "teleporter_rx_d"
+          }
+        },
+        {
+          id = 12,
+          name = "teleporter_rx_c",
+          type = "",
+          shape = "rectangle",
+          x = 64,
+          y = 240,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "none"
+          }
+        },
+        {
+          id = 13,
+          name = "teleporter_tx_e",
+          type = "",
+          shape = "rectangle",
+          x = 272,
+          y = 240,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "teleporter_rx_e"
+          }
+        },
+        {
+          id = 14,
+          name = "teleporter_rx_d",
+          type = "",
+          shape = "rectangle",
+          x = 192,
+          y = 240,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "none"
+          }
+        },
+        {
+          id = 15,
+          name = "teleporter_rx_e",
+          type = "",
+          shape = "rectangle",
+          x = 352,
+          y = 240,
+          width = 16,
+          height = 16,
+          rotation = 0,
+          gid = 673,
+          visible = true,
+          properties = {
+            ["target"] = "none"
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/main/tiled/tablet_iv.tmx b/main/tiled/tablet_iv.tmx
new file mode 100644 (file)
index 0000000..c19fa4e
--- /dev/null
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<map version="1.10" tiledversion="1.11.2" orientation="orthogonal" renderorder="left-down" width="30" height="20" tilewidth="16" tileheight="16" infinite="0" nextlayerid="4" nextobjectid="16">
+ <editorsettings>
+  <export target="tablet_iv.lua" format="lua"/>
+ </editorsettings>
+ <properties>
+  <property name="viewclass" value="topdown"/>
+ </properties>
+ <tileset firstgid="1" name="monochrome_ba_packed" tilewidth="16" tileheight="16" tilecount="1078" columns="49">
+  <image source="../assets/tilesets/kenney_1_bit/Tilesheet/monochrome_ba_packed.png" trans="e5e5e5" width="784" height="352"/>
+ </tileset>
+ <tileset firstgid="1079" name="monochrome_bw_packed" tilewidth="16" tileheight="16" tilecount="1078" columns="49">
+  <image source="../assets/tilesets/kenney_1_bit/Tilesheet/monochrome_bw_packed.png" width="784" height="352"/>
+ </tileset>
+ <layer id="1" name="Tile Layer 1" width="30" height="20" opacity="0.9">
+  <data encoding="csv">
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1079,1080,1079,1079,1177,1079,1,1,1,1,1079,1079,1583,1177,1177,1079,1,1,1,1,1079,1079,1177,1177,1177,1183,1,1,
+1,1,1079,1080,1079,1079,1079,1079,1,1,1,1,1079,1079,1079,1079,1177,1079,1,1,1,1,1177,1080,1079,1080,1177,1177,1,1,
+1,1,1079,1079,1079,1177,1079,1177,1,1,1,1,1079,1079,1079,1177,1080,1080,1,1,1,1,1079,1079,1079,1177,1079,1079,1,1,
+1,1,1079,1177,1079,1079,1079,1079,1,1,1,1,1079,1079,1177,1079,1079,1177,1,1,1,1,1079,1080,1079,1079,1177,1583,1,1,
+1,1,1079,1080,1177,1177,1079,1079,1,1,1,1,1177,1079,1079,1079,1079,1079,1,1,1,1,1079,1183,1080,1079,1079,1177,1,1,
+1,1,1079,1079,1079,1079,1080,1079,1,1,1,1,1079,1079,1079,1177,1080,1079,1,1,1,1,1177,1079,1177,1079,1079,1079,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1177,1177,1080,1177,1183,1080,1,1,1,1,1183,1079,1079,1177,1183,1080,1,1,1,1,1084,1084,1084,1084,1128,1180,1,1,
+1,1,1079,1183,1079,1177,1079,1080,1,1,1,1,1079,1079,1177,1079,1080,1183,1,1,1,1,1084,1086,1177,1128,1128,1128,1,1,
+1,1,1080,1177,1583,1177,1177,1079,1,1,1,1,1583,1079,1079,1079,1079,1079,1,1,1,1,1079,1079,1079,1079,1128,1128,1,1,
+1,1,1183,1080,1079,1177,1177,1177,1,1,1,1,1177,1177,1177,1079,1177,1177,1,1,1,1,1084,1177,1128,1128,1128,1180,1,1,
+1,1,1177,1079,1177,1080,1079,1079,1,1,1,1,1177,1080,1079,1079,1177,1080,1,1,1,1,1177,1177,1128,1180,1180,1128,1,1,
+1,1,1079,1177,1177,1079,1079,1079,1,1,1,1,1183,1079,1080,1080,1177,1183,1,1,1,1,1080,1177,1080,1128,1180,1128,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
+</data>
+ </layer>
+ <objectgroup id="2" name="Object Layer 1">
+  <object id="1" name="Player" gid="1593" x="32" y="48" width="16" height="16"/>
+  <object id="2" name="CameraFocus" type="Meta" x="0" y="16">
+   <point/>
+  </object>
+  <object id="3" name="teleporter_tx_a" gid="673" x="96" y="112" width="16" height="16">
+   <properties>
+    <property name="target" value="teleporter_rx_a"/>
+   </properties>
+  </object>
+  <object id="7" name="teleporter_rx_a" gid="673" x="208" y="48" width="16" height="16">
+   <properties>
+    <property name="target" value="none"/>
+   </properties>
+  </object>
+  <object id="8" name="teleporter_tx_b" gid="673" x="240" y="80" width="16" height="16">
+   <properties>
+    <property name="target" value="teleporter_rx_b"/>
+   </properties>
+  </object>
+  <object id="9" name="teleporter_tx_c" gid="673" x="384" y="128" width="16" height="16">
+   <properties>
+    <property name="target" value="teleporter_rx_c"/>
+   </properties>
+  </object>
+  <object id="10" name="teleporter_rx_b" gid="673" x="432" y="96" width="16" height="16">
+   <properties>
+    <property name="target" value="none"/>
+   </properties>
+  </object>
+  <object id="11" name="teleporter_tx_d" gid="673" x="32" y="208" width="16" height="16">
+   <properties>
+    <property name="target" value="teleporter_rx_d"/>
+   </properties>
+  </object>
+  <object id="12" name="teleporter_rx_c" gid="673" x="64" y="240" width="16" height="16">
+   <properties>
+    <property name="target" value="none"/>
+   </properties>
+  </object>
+  <object id="13" name="teleporter_tx_e" gid="673" x="272" y="240" width="16" height="16">
+   <properties>
+    <property name="target" value="teleporter_rx_e"/>
+   </properties>
+  </object>
+  <object id="14" name="teleporter_rx_d" gid="673" x="192" y="240" width="16" height="16">
+   <properties>
+    <property name="target" value="none"/>
+   </properties>
+  </object>
+  <object id="15" name="teleporter_rx_e" gid="673" x="352" y="240" width="16" height="16">
+   <properties>
+    <property name="target" value="none"/>
+   </properties>
+  </object>
+ </objectgroup>
+</map>