Martin Dørum
15f83881b1
background colors
3 lat temu
Martin Dørum
f8ad8b808a
draw rect
3 lat temu
Martin Dørum
b04d30022a
make everything work with proper matrix stuff
3 lat temu
Martin Dørum
33eda68f12
correctly position some things
3 lat temu
Martin Dørum
fb898427d9
hey, something draws to the screen now
3 lat temu
Martin Dørum
46fd6289e3
fix initialization order
3 lat temu
Martin Dørum
447d4e8d39
libswan and core.mod now compiles
3 lat temu
Martin Dørum
de5e49e700
rewrite mod and asset loading logic
3 lat temu
Martin Dørum
f01f0e1a96
some missing style things
3 lat temu
Martin Dørum
2348fe9f64
move item and tile to struct
3 lat temu
Martin Dørum
0db704582d
make style consistent
3 lat temu
Martin Dørum
b8fcf907d5
integrate lighting with swan
3 lat temu
Martin Dørum
b2fd4178df
new trait system, split Body into Body and Physics
4 lat temu
Martin Dørum
abc277b256
integrate tracy, cmake stuff, etc
4 lat temu
Martin Dørum
4a8694dc27
store entities contiguously in memory
There are still some things left to do:
* Implement despawn
* Maybe shrink SlotVector if there's a lot more free slots than occupied slots
* Implement iteration over entities
4 lat temu
Martin Dørum
976d9b4b9c
replace core::air with @::air
"@internal::" is also renamed to "@::" for libswan-internal stuff.
4 lat temu
Martin Dørum
e9c9c862e8
mods are responsible for creating the mod object now, not just init
4 lat temu
Martin Dørum
1fb53a1df3
event system
I know, I know, this segfaults on exit.
I need to make each mod subclass a Swan::Mod superclass
so that they can have EventListener structs which are
destroyed when the mod exits, and the mod has to exit
before the world goes away so that mods' EventListener
dtors can access their respective EventEmitters.
4 lat temu
Martin Dørum
24b8fdcd8d
more optimization
4 lat temu
Martin Dørum
d808b8bcfb
this is a big one
* reworked some resource loading and mod init stuff
* texetures are now configured at runtime via .toml files
* moved from SRF to messagepack
* changed folder structures
* added the fmt library (for later)
4 lat temu
Martin Dørum
056579e6be
cave background stuff
4 lat temu
Martin Dørum
ce70c058aa
mostly performance stuff
4 lat temu
Martin Dørum
3b4ce891fe
traits
4 lat temu
Martin Dørum
d44754b089
chunk stuff
4 lat temu
Martin Dørum
98fcf0dde9
throttle chunk generation
4 lat temu
Martin Dørum
201dffd6fc
make World::addPlane slightly clearer
4 lat temu
Martin Dørum
f22b1e47e7
mod loading and resource stuff
4 lat temu
Martin Dørum
0993872ad5
at least it now draws _something_...
4 lat temu
Martin Dørum
191c5034b8
colorful logging
4 lat temu
Martin Dørum
2a016c2c5f
replace fprintf with log.h stuff
4 lat temu
Martin Dørum
5d92544963
resource stuff
4 lat temu
Martin Dørum
c527655e79
almost ported to SDL
4 lat temu
Martin Dørum
401e069646
hey, this compiles now
4 lat temu
Martin Dørum
e71e20c6c5
WIP, rewriting stuff to use SDL instead of SFML
4 lat temu
Martin Dørum
3902a2d652
move Win into its own thing, make vector stuff constexpr
4 lat temu
Martin Dørum
362adf6171
clang-tidy
4 lat temu
Martin Dørum
ba28d348d0
despawning, add dt to tick(), etc
4 lat temu
Martin Dørum
95ac54ddc3
make Swan::Vector2 a struct
4 lat temu
Martin Dørum
1a5988bfd9
bounding box
4 lat temu
Martin Dørum
718281b35b
wow, that was many changes.
This should've been multiple commits, but hey, it's late.
4 lat temu
Martin Dørum
c78891fe7f
Swan::Context
4 lat temu
Martin Dørum
21926981f9
items
4 lat temu
Martin Dørum
e12ba020fa
changed tile registration and stuff
4 lat temu
Martin Dørum
294a3528b9
add the ability to compress chunks
4 lat temu
Martin Dørum
660c6f9f7a
way faster chunk rendering
4 lat temu
Martin Dørum
e01584038f
get tile at mouse position
4 lat temu
Martin Dørum
11406a6680
use INVALID_* rather than null
4 lat temu
Martin Dørum
fa91b4ad83
remove TileMap
4 lat temu
Martin Dørum
6a19a4cc46
a bunch of stuff ok
4 lat temu
Martin Dørum
647cded803
animation stuff, scaling, etc
4 lat temu