Commit Graph

224 Commits

Author SHA1 Message Date
Linus Probert a66f16de79 Reintroduces the pointer and mouse menu operation. 2018-05-20 17:25:53 +02:00
Linus Probert 123ae90f59 Better mod key logic in input and mouse motion check. 2018-05-20 16:53:16 +02:00
Linus Probert 821cac2fbd Completely separates input handling and game logic.
This commit disables mouse support in menus. This needs to be rethought
to be more stable.
2018-05-20 00:03:17 +02:00
Linus Probert 186cc7b514 Replaced state logic with behaviours instead. 2018-05-19 17:55:10 +02:00
Linus Probert 60114ed159 Hopefully fixes the build issues 2018-05-18 23:11:33 +02:00
Linus Probert e222e51a0e Don't test on clang and fix include problem in appveyor
Clang doesn't have the same --wrap linker flag that GCC has. Just ignore
it for now.
2018-05-18 14:17:29 +02:00
Linus Probert 138cba1400 Mock test for keyboardinput and fixed the found issues 2018-05-18 13:49:31 +02:00
Linus Probert 2feeb5cbcf Attempts to fix appveyor build 2018-05-17 23:34:44 +02:00
Linus Probert 2813a571e4 Separate player movement from input event loop.
Wrote a keyboardinput object but decided against using it for the time
being. I'll leave it in if I change my mind.
2018-05-17 23:14:42 +02:00
Linus Probert c4dc8382a9 Monsters now indicate their state with speech bubbles 2018-05-17 21:41:23 +02:00
Linus Probert a7822331f8 Hopefully handle the "event overflow exploit"
There was an exploit where a keyboard would fire events quicker then
they could be consumed. This would lock the main game loop in the
SDL_PollEvent loop and block rendering until the key in this case was
released. Combning this with an attack meant that you could "farm" one
NPC for multiple kills and massive XP gains. Leaving the player at level
8+ on dungeon level 1. This fix should mitigate such shenanigans.
2018-05-16 19:09:01 +02:00
Linus Probert bc0d194dce Additional fall sounds
Wilhelm scream
2018-05-16 15:52:39 +02:00
Linus Probert fa8797a20f Removed a memory leak and MACROD colors 2018-05-15 23:21:28 +02:00
Linus Probert 853d390427 Some create package dir in travis 2018-05-15 14:21:54 +02:00
Linus Probert 6d5acc698e Nicer labels in many places. 2018-05-15 14:12:38 +02:00
Linus Probert b88318097f Render texts after particles. 2018-05-15 11:20:52 +02:00
Linus Probert d6daf7b798 Nicer action texts 2018-05-15 11:16:56 +02:00
Linus Probert 524e10ac8f Adds camera shake.
Removed some old buildfiles that had accidentally made it into the repo.
2018-05-13 23:32:44 +02:00
Linus Probert 0576c47bb2 Fixed the frame sprites 2018-05-12 10:47:06 +02:00
Linus Probert 3e6976d2cc Adds texture creation of gui frames to reduce render time
Also enables leakchecking and removes leaks from hashtable tests and
some other leaks that were obvious. There are some X11 leaks still
present but I don't think these are caused by me.
2018-05-09 00:21:38 +02:00
Linus Probert 2122300f6e Prepare for texture streaming and locking.
The intention is to static stream the gui areas into one big texture.
2018-05-08 16:34:22 +10:00
Linus Probert 9d7669fd35 Some updates regarding asset management
Had an idea of self-cleaning the cache but it didn't hold. Leaving the
stuff I wrote that might not be useless in the future.
2018-05-06 13:27:29 +02:00
Linus Probert da75ccde23 Removed an unused timer on Projectiles 2018-05-06 07:33:00 +02:00
Linus Probert db21bb813f Removed clang warnings 2018-05-06 06:19:59 +02:00
Linus Probert efe062993b Always play sound when daggers hit/miss something 2018-05-05 21:36:16 +02:00
Linus Probert 3665c7ff66 Rotate daggers instead of using spritesheet
Don't know if this is bad for performance but it does make things
simpler.
2018-05-05 21:29:08 +02:00
Linus Probert 677a7d8b69 Changes to settings.c db queries
Sort of experimental. No harm but perhaps not an improvement.
2018-05-05 20:59:53 +02:00
Linus Probert f290a0dc1c Prepared for more skills 2018-05-04 18:14:44 +02:00
Linus Probert fcf1f24547 Fixed log prints in release mode and some better fail handling. 2018-05-04 01:22:40 +10:00
Linus Probert 5efef180a5 Fixes the release build 2018-04-28 19:10:49 +02:00
Linus Probert a350f66290 Removes some of the spammy logs.
Not as important now that there is an in game log.
2018-04-28 19:03:23 +02:00
Cong 6896308451 Use SDL to detect screen dimensions
Supports macOS, remove dependency on X11
2018-04-28 15:05:56 +10:00
Linus Probert 8647eaa7a4 Coloured, file, function and line referenced debug output. 2018-04-21 22:58:53 +02:00
Linus Probert 04a3691463 Removes some GCC warnings 2018-04-20 14:46:00 +02:00
Linus Probert cab3b501fc Borke out some of the settings sqlite code to it's own module. 2018-04-16 21:19:26 +02:00
Linus Probert 89e7f84870 Removes a minor warning 2018-03-29 20:32:44 +02:00
Linus_Probert cee584832e Fixed multiple pits in layout file 2018-03-26 13:53:45 +02:00
Linus Probert 0a21a2d915 Adds falling into pits
Monsters also avoid pits. Still need more pit layouts and
prevent monsters from "spawning"  in pits.
2018-03-25 23:30:26 +02:00
Linus Probert 1206ec8a2d Merge branch 'master' into feature/pits 2018-03-24 12:53:43 +01:00
Linus Probert 9a3dd410ab Particle sparcle when skill unlocks
Minor modification to dagger damage
2018-03-24 12:46:23 +01:00
Linus Probert 7386b3d582 Adds levelcaps to skills
Still need to add the sparkles when they activate
2018-03-23 22:03:34 +01:00
Linus Probert fa20d2a689 Merge branch 'master' into pit_implementation 2018-03-22 16:03:12 +01:00
Linus Probert 2204c7bade Safety fixes 2018-03-22 12:52:27 +01:00
Linus Probert 9feed28357 Initial addition of pits
Need more options, tile type to handle damage and death.
Prevent monsters from spawning in pits etc.
2018-03-20 21:54:57 +01:00
Linus_Probert 38a05e099d Removed coverity_scan badge. Fixed a warning 2018-03-20 07:33:02 +01:00
Linus_Probert c8386ee719 Adds prevention from passive monsters being "dodgy"
When player gets close to passive monsters they will stop moving now.
This should prevent annoying behaviour when trying to line up a strike.
2018-03-19 10:25:32 +01:00
Linus Probert 9b4de91e13 Toggle sound and music from everywhere 2018-03-17 09:03:29 +01:00
Linus Probert a53c8fe525 Don't commit the settings file 2018-03-17 00:21:46 +01:00
Linus Probert 2ca2a4f98c Added persistent settings 2018-03-17 00:04:26 +01:00
Linus Probert 8a2cb3b446 Embed sqlite3 2018-03-16 19:46:28 +01:00