e5d936f706
Rebounding back to the menu and loading a new map from zero state works. The way I'm having to clear out the actors seems wrong. Instead of memset/ClearProperty I should be able to call akgl_heap_release_actor but I can't.
Andrew Kesterson2026-05-13 16:55:55 -04:00
f3b7fcdef1
Fix assumptions about keyboard/gamepad mappings by waiting for input from the default controller on startup
Andrew Kesterson2026-05-13 05:43:22 -04:00
a118434393
Transition to using the default config map, and pushing custom controls with SDL3G_controller_pushmaP
Andrew Kesterson2026-05-06 12:03:25 -04:00
569e0a42d1
Refactor from managing specific controller events to using controlmaps. Actor facing doesn't work quite right.
Andrew Kesterson2025-08-03 21:42:33 -04:00
3e36e39e48
Extract the error library out into libsdlerror, extract the game library out into libsdl3game, link against them
Andrew Kesterson2025-08-03 15:15:07 -04:00
dd2098779d
Builds and runs on Windows with msys2 / mingw64-gcc
Andrew Kesterson2025-01-05 19:53:54 -08:00
9ed7254364
Character definitions now use an array of state names instead of integers
Andrew Kesterson2025-01-04 14:24:48 -05:00
ee7fd1767c
Added parent/child relationship for actors. Children render relative to their parents and don't run movement logic.
Andrew Kesterson2025-01-03 21:37:51 -05:00
717f29fcb3
Actor automatic facing by movement state works correctly
Andrew Kesterson2025-01-03 16:59:08 -05:00
f38ba4d99e
Fixed a bug in heap error references not getting released properly
Andrew Kesterson2025-01-03 16:25:35 -05:00
5a193e8cac
Broke actor logic updates out into structure methods on the actor structure so they can be overriden and to clean up the logic. Introduced movement_controls_face but it doesn't work yet.
Andrew Kesterson2025-01-03 15:34:31 -05:00
fd3a97560b
Actor movement rates now controlled by velocity settings on the character and movement states
Andrew Kesterson2025-01-01 22:28:17 -05:00
01d75072b9
Fixed the tilemap loading and rendering. Added a bunch more error checking and tests. Fixed actors not rendering with their layers in the dist.
tests
Andrew Kesterson2025-01-01 13:56:15 -05:00
cae53ac621
Refactored the error stacktrace buffer into the ErrorContext. Fixed a few minor bugs. Got all the character tests working. Added additional warnings to the compilation flags. Actor test is failing now.
Andrew Kesterson2024-12-27 20:48:20 -05:00
8e73d2c4e1
Finished breaking out sprites, actors and characters. Completed tests for sprite, including json loading.
Andrew Kesterson2024-12-27 14:48:16 -05:00
ab15af80ae
Added tests for the registry and started testing the actors. Changed how unhandled error termination behavior works.
Andrew Kesterson2024-12-25 10:27:18 -05:00
9cb8f5e1da
Broke files out into library, game, and include. Added a tests/ directory to start building out tests. Gotta figure out WTF is going on w/ the memory management or all dev will have to be restarted. No bueno.
Andrew Kesterson2024-12-24 11:35:22 -05:00
a1a243b2b2
I removed exclib in favor of a errno style approach but now strncpy is segfaulting. I have no fucking idea.
nomoreexclib
Andrew Kesterson2024-12-23 23:25:53 -05:00
1e0d22d4e1
Fixed the game-breaking memory failure. Was a failure to free a json resource.
Andrew Kesterson2024-12-22 16:32:54 -05:00
ab51822caf
Broke out the registry and heap into their own files, added the string type, BITMASK_* functions, and ITERATOR_* flags
Andrew Kesterson2024-12-22 13:45:43 -05:00
e860c84bd1
Using latest exclib, json cleanup occurs properly now. But there's a bug in the joystick handler that causes SDL to crash malloc? So I disabled that until I can figure it out.
Andrew Kesterson2024-12-22 11:08:59 -05:00
206eae527b
Futile attempts to improve things through memory management. But I'm freeing strings before they're used. No bueno.
Andrew Kesterson2024-12-20 18:31:09 -05:00
1ead5d6823
Fixed a bug in reference counting on the heap objects. Added multiple sprites to a character.
Andrew Kesterson2024-12-20 15:37:40 -05:00
6cc097f334
Added iterator operators to transmit information to iterators, so now the actor iterator can operate by layer. Added tree layers to the test map to illustrate it works by putting the player behind a tree.
Andrew Kesterson2024-12-19 08:25:58 -05:00
f62442cfcc
New intermediate object between actors and sprites, "characters". Characters consist of a properties map of states to sprites. TIle object layers specify character names, and those are fetched from the heap, and new actors are instantiated for those characters. Each actor is used exactly once, characters may be used by many actors.
Andrew Kesterson2024-12-18 10:46:58 -05:00
bcc96261d3
Actors can be placed on object layers on the tile map now
Andrew Kesterson2024-12-18 07:30:32 -05:00
dd60c90352
Update loop renders actors by iterating over the property lists now
Andrew Kesterson2024-12-17 22:23:28 -05:00
e2425c5d9e
Ripped out the hashmap-based registry, the way it stores copies of objects and not references makes it incompatible for my use
Andrew Kesterson2024-12-08 17:50:17 -05:00
7ae5096d1a
Partial rendering of maps through viewports works now (this allows us to scroll the map under a camera)
Andrew Kesterson2024-12-08 17:46:51 -05:00
b92cd636e2
Fixed map rendering bug that broke rendering on larger maps
Andrew Kesterson2024-12-08 17:34:40 -05:00
15dabebad9
Fixed a bug in sprite sheet texture rendering that prevented using frames on a sprite sheet past the first line
Andrew Kesterson2024-12-08 16:34:07 -05:00
7de95cbea4
Added sprites, actors and spritesheets, along with their respective registries. Sprite animation not working yet.
Andrew Kesterson2024-12-08 15:39:07 -05:00
0de58d7903
Tilemaps can now be rendered layer by layer so things can be inserted between layers
Andrew Kesterson2024-12-08 12:52:16 -05:00
a907c0fd8b
Background music plays now. MIDI doesn't seem to work right but I think that's an issue on my system not with SDL_Mixer.
Andrew Kesterson2024-12-07 20:14:52 -05:00