summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorthe lemons <citrons@mondecitronne.com>2022-08-28 01:13:24 -0500
committerthe lemons <citrons@mondecitronne.com>2022-08-28 01:22:32 -0500
commit3129926390486aa334bab648ced10bd928f99c93 (patch)
tree27621c85af53754afc02d194f027bdad8794975d
parent56ea4768c6decc07df7fd9025561835ac8be9d64 (diff)
enable multiple runtimes
-rw-r--r--load.lua11
-rw-r--r--main.lua23
-rw-r--r--runtime/game.lua15
3 files changed, 28 insertions, 21 deletions
diff --git a/load.lua b/load.lua
new file mode 100644
index 0000000..aefac62
--- /dev/null
+++ b/load.lua
@@ -0,0 +1,11 @@
+return function(args)
+ love.setDeprecationOutput(false)
+
+ local runtime = "game"
+ if not love.filesystem.isFused() and args[1] == '-r' then
+ runtime = args[2]
+ end
+ local path = "runtime/"..runtime..".lua"
+ local rt = assert(loadstring(assert(love.filesystem.read(path))))
+ return rt(unpack(args, 3))
+end
diff --git a/main.lua b/main.lua
index 98ad56f..f778e0d 100644
--- a/main.lua
+++ b/main.lua
@@ -1,30 +1,11 @@
require "globals"
-local Transform = require 'Transform'
local Drawable = require 'Drawable'
local Input = require 'Input'
-local Camera = require 'Camera'
-local Bolvis = require 'Bolvis'
-local Sprite = require 'Sprite'
-local world = require 'world'
-local level
-local camera
+global "level"
-function love.load()
- love.setDeprecationOutput(false)
-
- love.mouse.setRelativeMode(true)
- level = world()
-
- level:object(Transform {pos = {960, 540}}, Bolvis())
- level:object(Transform {pos = {400, 540}}, Sprite {name = 'utah-teapot'})
- level:object(Transform {pos = {600, 540}}, Sprite {name = 'apioform'})
- level:object(Transform {pos = {960, 300}}, Sprite {name = 'test'})
- level:object(Transform {pos = {960, 700}}, Sprite {name = 'test'})
- level:object(Transform {pos = {430, 700}}, Sprite {name = 'test'})
- level:object(Transform {pos = {1490, 700}}, Sprite {name = 'test'})
-end
+love.load = require "load"
local function screen_transform()
local ww, wh = love.graphics.getDimensions()
diff --git a/runtime/game.lua b/runtime/game.lua
new file mode 100644
index 0000000..e032ee4
--- /dev/null
+++ b/runtime/game.lua
@@ -0,0 +1,15 @@
+local world = require 'world'
+local Transform = require 'Transform'
+local Sprite = require 'Sprite'
+local Bolvis = require 'Bolvis'
+
+love.mouse.setRelativeMode(true)
+level = world()
+
+level:object(Transform {pos = {960, 540}}, Bolvis())
+level:object(Transform {pos = {400, 540}}, Sprite {name = 'utah-teapot'})
+level:object(Transform {pos = {600, 540}}, Sprite {name = 'apioform'})
+level:object(Transform {pos = {960, 300}}, Sprite {name = 'test'})
+level:object(Transform {pos = {960, 700}}, Sprite {name = 'test'})
+level:object(Transform {pos = {430, 700}}, Sprite {name = 'test'})
+level:object(Transform {pos = {1490, 700}}, Sprite {name = 'test'})