рай эпилептика

Co-authored-by: Ivan Yuriev <ivanyr44@gmail.com>
This commit is contained in:
Neckrat 2025-08-11 02:50:41 +03:00
parent 324856b26c
commit e65a078fb6
16 changed files with 29 additions and 21 deletions

View File

@ -1,3 +0,0 @@
return {
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,6 @@
return {
tilewidth = 32,
tileheight = 32,
spacing = 0,
margin = 0,
}

View File

@ -1,5 +1,5 @@
local Vec3 = require "lib/vec3" local Vec3 = require "lib.utils.vec3"
local utils = require "lib/utils" local utils = require "lib.utils.utils"
local EPSILON = 0.001 local EPSILON = 0.001

View File

@ -1,4 +1,4 @@
local anim8 = require "lib/anim8" local anim8 = require "lib.utils.anim8"
--- Скорость между кадрами в анимации --- Скорость между кадрами в анимации
local ANIMATION_SPEED = 0.1 local ANIMATION_SPEED = 0.1

View File

@ -1,5 +1,5 @@
local anim8 = require "lib/anim8" local anim8 = require "lib.utils.anim8"
require 'lib/vec3' require 'lib.utils.vec3'
--- @alias Id integer --- @alias Id integer

View File

@ -1,4 +1,4 @@
local utils = require "lib/utils" local utils = require "lib.utils.utils"
--- @alias Device "mouse" | "key" | "pad" --- @alias Device "mouse" | "key" | "pad"

View File

@ -1,4 +1,4 @@
local utils = require "lib/utils" local utils = require "lib.utils.utils"
--- @class CharacterGrid --- @class CharacterGrid
--- @field __grid {string: Id|nil} --- @field __grid {string: Id|nil}

View File

@ -1,4 +1,4 @@
local utils = require "lib/utils" local utils = require "lib.utils.utils"
--- @class Level --- @class Level
--- @field size Vec3 --- @field size Vec3

View File

@ -1,4 +1,4 @@
local Vec3 = require "lib/vec3" local Vec3 = require "lib.utils.vec3"
--- @class PanningState --- @class PanningState
--- @field pos Vec3 | nil --- @field pos Vec3 | nil

View File

@ -5,7 +5,7 @@
Tree = { Tree = {
panning = require "lib/panning", panning = require "lib/panning",
assets = (require "lib/asset_bundle"):load(), assets = (require "lib.utils.asset_bundle"):load(),
controls = require "lib/controls", controls = require "lib/controls",
level = (require "lib/level"):new() -- для теста у нас только один уровень, который сразу же загружен level = (require "lib/level"):new() -- для теста у нас только один уровень, который сразу же загружен
} }

View File

@ -48,8 +48,9 @@ function AssetBundle.loadFile(path)
img img
elseif (ext == "glsl") then elseif (ext == "glsl") then
return love.graphics.newShader(path); return love.graphics.newShader(path);
elseif (ext == "lua") then
return require(string.gsub(path, ".lua", ""))
end end
return nil return nil
end end

View File

@ -3,6 +3,8 @@
local character = require "lib/character/character" local character = require "lib/character/character"
require "lib/tree" require "lib/tree"
function love.conf(t) function love.conf(t)
t.console = true t.console = true
end end
@ -11,6 +13,9 @@ function love.load()
local char = character.spawn("Hero", "warrior", Tree.assets.files.sprites.character) local char = character.spawn("Hero", "warrior", Tree.assets.files.sprites.character)
char:runTo(Vec3 { 5, 5 }) char:runTo(Vec3 { 5, 5 })
Grass = Tree.assets.files.tiles.grass.atlas
Gr1 = love.graphics.newQuad(0, 32, 32, 32, Grass)
-- PlayerFaction.characters = { Hero1, Hero2 } -- PlayerFaction.characters = { Hero1, Hero2 }
love.window.setMode(1080, 720, { resizable = true, msaa = 4, vsync = true }) love.window.setMode(1080, 720, { resizable = true, msaa = 4, vsync = true })
end end
@ -30,15 +35,14 @@ function love.draw()
for y = 0, height - 1 do for y = 0, height - 1 do
for x = 0, width - 1 do for x = 0, width - 1 do
if (x + y) % 2 == 0 then love.graphics.draw(Grass, love.graphics.newQuad(math.random(0, 32), math.random(0, 32), 32, 32, Grass), x, y,
love.graphics.setColor(0, 0, 0) nil, 1 / 32, 1 / 32)
else
love.graphics.setColor(1, 1, 1)
end
love.graphics.rectangle("fill", x, y, 1, 1)
end end
end end
love.graphics.setColor(1, 1, 1)
Tree.level:draw() Tree.level:draw()
Tree.level.camera:detach() Tree.level.camera:detach()
end end