switch to nata
This commit is contained in:
parent
e7197f93fc
commit
0a1d655267
4 changed files with 588 additions and 51 deletions
|
|
@ -1,3 +1,5 @@
|
|||
(local utils (require "src/utils.fnl"))
|
||||
|
||||
;; colors
|
||||
(lambda color [full-r full-g full-b]
|
||||
(let [(r g b) (love.math.colorFromBytes full-r full-g full-b)]
|
||||
|
|
@ -19,12 +21,12 @@
|
|||
"reset color to white (no tinting)"
|
||||
(love.graphics.setColor 1 1 1))
|
||||
|
||||
(lambda set-color [color]
|
||||
(lambda set-color [color-name]
|
||||
"set color to the given color from the color pallet"
|
||||
(love.graphics.setColor (unpack (. colors color))))
|
||||
(love.graphics.setColor (unpack (. colors color-name))))
|
||||
|
||||
{
|
||||
:reset-color reset-color
|
||||
:set-color set-color
|
||||
: reset-color
|
||||
: set-color
|
||||
: colors
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,46 +1,37 @@
|
|||
(local color (require "src/colors.fnl"))
|
||||
(local tiny (require "libs/tiny"))
|
||||
(local nata (require "libs/nata"))
|
||||
(local utils (require "src/utils.fnl"))
|
||||
|
||||
(local level {})
|
||||
(lambda gen-renderer [screen canvas]
|
||||
(let [renderer {}]
|
||||
(fn renderer.draw [self]
|
||||
(color.set-color :cream)
|
||||
(love.graphics.rectangle "fill" 0 0 screen.canvas-w screen.canvas-h))
|
||||
(fn renderer.post-draw [self]
|
||||
(love.graphics.setCanvas)
|
||||
(color:reset-color)
|
||||
(love.graphics.draw canvas 0 0 0 screen.scale screen.scale))
|
||||
(fn renderer.pre-draw [self]
|
||||
; use canvas
|
||||
(love.graphics.setCanvas canvas)
|
||||
; clear the screen
|
||||
(love.graphics.clear))
|
||||
renderer))
|
||||
|
||||
|
||||
; function HudSystem:init(layerFlag)
|
||||
; self.filter = tiny.requireAll("drawHud", layerFlag)
|
||||
; end
|
||||
|
||||
; function HudSystem:process(e, dt)
|
||||
; e:drawHud(dt)
|
||||
; end
|
||||
(fn bg-render [screen]
|
||||
(let [system (tiny.system {: screen})]
|
||||
(fn system.draw [self]
|
||||
(print "Drawing BG")
|
||||
(color.set-color color.colors.cream)
|
||||
(love.graphics.rectangle "fill" 0 0 self.screen.canvas-w self.screen.canvas-h))
|
||||
(utils.debug-print system)
|
||||
system
|
||||
))
|
||||
|
||||
(local root-render (tiny.system))
|
||||
(fn root-render.pre-draw [self]
|
||||
(print "Pre-drawing root")
|
||||
; use canvas
|
||||
(love.graphics.setCanvas level.canvas)
|
||||
; clear the screen
|
||||
(love.graphics.clear))
|
||||
|
||||
|
||||
(local camera {:x 0 :y 0})
|
||||
|
||||
(local debug true)
|
||||
; (local camera {:x 0 :y 0})
|
||||
; (local debug true)
|
||||
|
||||
(fn load [screen]
|
||||
(set level.canvas (love.graphics.newCanvas screen.canvas-w screen.canvas-h))
|
||||
(tiny.world
|
||||
root-render
|
||||
(bg-render screen)))
|
||||
|
||||
(let [canvas (love.graphics.newCanvas screen.canvas-w screen.canvas-h)]
|
||||
(nata.new {
|
||||
; :groups {
|
||||
; gravity = {filter = {'gravity'}},
|
||||
; },
|
||||
:systems [
|
||||
(gen-renderer screen canvas)
|
||||
]
|
||||
})))
|
||||
|
||||
{
|
||||
: load
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue