Martin Dørum
b04d30022a
make everything work with proper matrix stuff
3 anos atrás
Martin Dørum
33eda68f12
correctly position some things
3 anos atrás
Martin Dørum
fb898427d9
hey, something draws to the screen now
3 anos atrás
Martin Dørum
46fd6289e3
fix initialization order
3 anos atrás
Martin Dørum
447d4e8d39
libswan and core.mod now compiles
3 anos atrás
Martin Dørum
de5e49e700
rewrite mod and asset loading logic
3 anos atrás
Martin Dørum
f01f0e1a96
some missing style things
3 anos atrás
Martin Dørum
2348fe9f64
move item and tile to struct
3 anos atrás
Martin Dørum
0db704582d
make style consistent
3 anos atrás
Martin Dørum
b8fcf907d5
integrate lighting with swan
3 anos atrás
Martin Dørum
b2fd4178df
new trait system, split Body into Body and Physics
4 anos atrás
Martin Dørum
abc277b256
integrate tracy, cmake stuff, etc
4 anos atrás
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 anos atrás
Martin Dørum
976d9b4b9c
replace core::air with @::air
"@internal::" is also renamed to "@::" for libswan-internal stuff.
4 anos atrás
Martin Dørum
e9c9c862e8
mods are responsible for creating the mod object now, not just init
4 anos atrás
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 anos atrás
Martin Dørum
24b8fdcd8d
more optimization
4 anos atrás
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 anos atrás
Martin Dørum
056579e6be
cave background stuff
4 anos atrás
Martin Dørum
ce70c058aa
mostly performance stuff
4 anos atrás
Martin Dørum
3b4ce891fe
traits
4 anos atrás
Martin Dørum
d44754b089
chunk stuff
4 anos atrás
Martin Dørum
98fcf0dde9
throttle chunk generation
4 anos atrás
Martin Dørum
201dffd6fc
make World::addPlane slightly clearer
4 anos atrás
Martin Dørum
f22b1e47e7
mod loading and resource stuff
4 anos atrás
Martin Dørum
0993872ad5
at least it now draws _something_...
4 anos atrás
Martin Dørum
191c5034b8
colorful logging
4 anos atrás
Martin Dørum
2a016c2c5f
replace fprintf with log.h stuff
4 anos atrás
Martin Dørum
5d92544963
resource stuff
4 anos atrás
Martin Dørum
c527655e79
almost ported to SDL
4 anos atrás
Martin Dørum
401e069646
hey, this compiles now
4 anos atrás
Martin Dørum
e71e20c6c5
WIP, rewriting stuff to use SDL instead of SFML
4 anos atrás
Martin Dørum
3902a2d652
move Win into its own thing, make vector stuff constexpr
4 anos atrás
Martin Dørum
362adf6171
clang-tidy
4 anos atrás
Martin Dørum
ba28d348d0
despawning, add dt to tick(), etc
4 anos atrás
Martin Dørum
95ac54ddc3
make Swan::Vector2 a struct
4 anos atrás
Martin Dørum
1a5988bfd9
bounding box
4 anos atrás
Martin Dørum
718281b35b
wow, that was many changes.
This should've been multiple commits, but hey, it's late.
4 anos atrás
Martin Dørum
c78891fe7f
Swan::Context
4 anos atrás
Martin Dørum
21926981f9
items
4 anos atrás
Martin Dørum
e12ba020fa
changed tile registration and stuff
4 anos atrás
Martin Dørum
294a3528b9
add the ability to compress chunks
4 anos atrás
Martin Dørum
660c6f9f7a
way faster chunk rendering
4 anos atrás
Martin Dørum
e01584038f
get tile at mouse position
4 anos atrás
Martin Dørum
11406a6680
use INVALID_* rather than null
4 anos atrás
Martin Dørum
fa91b4ad83
remove TileMap
4 anos atrás
Martin Dørum
6a19a4cc46
a bunch of stuff ok
4 anos atrás
Martin Dørum
647cded803
animation stuff, scaling, etc
4 anos atrás
Martin Dørum
998289c194
better chunk thing
4 anos atrás
Martin Dørum
cb83477950
more chunk gen stuff, world gen stuff, etc
4 anos atrás