71 lines
1.7 KiB
Lua
71 lines
1.7 KiB
Lua
-- CameraLoader = require 'lib/camera'
|
|
|
|
require "character"
|
|
|
|
local camera = require 'lib/camera'
|
|
local Vec3 = require "lib/vec3"
|
|
local tree = require "lib/tree"
|
|
local AssetBundle = require "lib/asset_bundle"
|
|
|
|
function love.conf(t)
|
|
t.console = true
|
|
end
|
|
|
|
function love.load()
|
|
AssetBundle:load()
|
|
|
|
Camera = camera.new()
|
|
Camera.position = Vec3({})
|
|
-- PlayerFaction = Faction
|
|
|
|
-- Hero1 = Character:create("Petya", 10)
|
|
-- Hero2 = Character:create("Andrysha", 12)
|
|
|
|
Hero = CreateCharacter("Hero", AssetBundle.files.sprites.character)
|
|
|
|
-- PlayerFaction.characters = { Hero1, Hero2 }
|
|
love.window.setMode(1080, 720, { resizable = true, msaa = 4, vsync = true })
|
|
end
|
|
|
|
---@todo Вынести это в свое поле в дереве глобального состояния уровня
|
|
-- local cameraPos = Vec3({})
|
|
-- Camera:lockPosition(cameraPos.x, cameraPos.y, Camera.smooth.damped(10))
|
|
|
|
function love.update(dt)
|
|
Camera:update(dt)
|
|
tree.instance().panning:update(dt)
|
|
|
|
Hero:update(dt)
|
|
end
|
|
|
|
function love.draw()
|
|
Camera:attach()
|
|
|
|
local uiSize = 0.2
|
|
|
|
local windowWidth = love.graphics.getWidth()
|
|
local windowHeight = love.graphics.getHeight() * (1 - uiSize)
|
|
local width = 20
|
|
local height = 12
|
|
|
|
love.graphics.setColor(139 / 255, 195 / 255, 74 / 255, 1)
|
|
|
|
love.graphics.rectangle('fill', 0, 0, width, height)
|
|
love.graphics.setColor(244 / 255, 67 / 255, 54 / 255, 1)
|
|
love.graphics.rectangle('fill', 0, 0, 1, 1)
|
|
love.graphics.setColor(1, 1, 1, 1)
|
|
Hero:draw(Camera)
|
|
|
|
Camera:detach()
|
|
end
|
|
|
|
local Level = {}
|
|
Level.kakaya_ta_hren = 10
|
|
Level.map = {}
|
|
|
|
local v = Vec3({ 0, 1, 2 })
|
|
|
|
-- Faction -> Character
|
|
-- calculate_order()
|
|
-- calculate_order()
|