Commit graph

557 commits

Author SHA1 Message Date
Sebastian Krzyszkowiak
9c414991dd SetupViewport: clear both backbuffer and fontbuffer on setup 2016-09-06 01:47:46 +02:00
Sebastian Krzyszkowiak
9c3d284a90 fix type warning on some platforms in screenshoting code 2016-09-06 01:47:12 +02:00
Sebastian Krzyszkowiak
c7741be51a streamline al_set_new_display_flags usage 2016-09-04 21:09:19 +02:00
Sebastian Krzyszkowiak
8bebe6c5e2 timeline: add new functions: TM_IsEmpty, TM_IsBackgroundEmpty, TM_SkipDelay 2016-09-04 03:06:26 +02:00
Sebastian Krzyszkowiak
26843776a2 gamestates: mark gamestate as started before launching Gamestate_Start
This change allows to stop the current gamestate from Gamestate_Start.
2016-09-04 01:26:41 +02:00
Sebastian Krzyszkowiak
3b6f79de29 update README 2016-09-02 01:30:41 +02:00
Sebastian Krzyszkowiak
96a33c1a37 make windowed display resizable and try to fix flickering border around the viewport 2016-09-02 00:07:43 +02:00
Sebastian Krzyszkowiak
2e1a7e73fd add IsOnCharacter helper function 2016-08-29 23:44:15 +02:00
Sebastian Krzyszkowiak
40cdf33bb8 add support for user events 2016-08-29 22:47:55 +02:00
Sebastian Krzyszkowiak
b4d9d01c01 don't dlclose gamestates when running on valgrind, so it can show its report correctly 2016-08-27 00:46:38 +02:00
Sebastian Krzyszkowiak
04db328028 refine Character API
BREAKING CHANGES: character->x and character->y now refer to position relative
to screen width and height (0.0,0.0 being top left; 1.0,1.0 being bottom right).
Use GetCharacterX and GetCharacterY to get position in pixels.
For consistency, it's also recommended to use GetCharacterAngle.
SetCharacterPosition/MoveCharacter still accept pixels.
To use relative positions, call SetCharacterPositionF/MoveCharacterF instead.

Also, DrawCharacter now casts the position to integer, effectively disabling
Allegro's subpixel precision. To disable casts, use DrawCharacterF.
2016-08-26 23:52:32 +02:00
Sebastian Krzyszkowiak
af6636009e make viewport configurable 2016-08-23 02:13:15 +02:00
Sebastian Krzyszkowiak
39eeeb44fd use al_resume_timer where appropriate 2016-08-21 21:58:47 +02:00
Sebastian Krzyszkowiak
b927a0c130 add a bunch of new gamestate lifecycle methods to simplify game pausing 2016-08-21 21:58:31 +02:00
Sebastian Krzyszkowiak
d9a1484084 Update README.md with links 2016-08-21 04:01:04 +02:00
Sebastian Krzyszkowiak
97d62e4c04 make showing loading screen on launch configurable 2016-08-20 03:32:32 +02:00
Sebastian Krzyszkowiak
63451eb858 add ChangeGamestate/ChangeCurrentGamestate API for replacing gamestates without unloading 2016-08-20 03:32:09 +02:00
Sebastian Krzyszkowiak
4aad8fabac add ability to manually register gamestate API 2016-08-20 03:02:39 +02:00
Sebastian Krzyszkowiak
1afc4a3f31 don't create and destroy bitmap on every PrintConsole call 2016-08-16 23:20:00 +02:00
Sebastian Krzyszkowiak
2dfc565178 fix gamestate lifecycle management when game logic frame takes longer than 1/60s and implement SwitchCurrentGamestate 2016-08-16 18:41:50 +02:00
Sebastian Krzyszkowiak
686514fba5 fix memory leaks and other mem-bugs 2016-08-16 18:01:12 +02:00
Sebastian Krzyszkowiak
51b08cee76 move SetupViewport to utils 2016-08-15 04:41:54 +02:00
Sebastian Krzyszkowiak
6bf5fc493b garbage collector for util functions returning strings that are usually used as function params
because why not :D
2016-08-15 04:37:27 +02:00
Sebastian Krzyszkowiak
0e159a40c1 update README 2016-08-13 22:41:51 +02:00
Sebastian Krzyszkowiak
cfb5cefff1 add UnloadAllGamestates function 2016-08-13 21:35:26 +02:00
Sebastian Krzyszkowiak
676ae31613 gamestates: handle unload/load and stop/start cycles in one tick correctly 2016-08-13 20:03:58 +02:00
Sebastian Krzyszkowiak
8087ad1afc loading screen fixes 2016-08-13 18:14:42 +02:00
Sebastian Krzyszkowiak
0b49342e39 fix character.h include 2016-08-12 06:56:06 +02:00
Sebastian Krzyszkowiak
e419df49a5 request OpenGL programmable pipeline, adjust cmake includes 2016-08-11 19:32:49 +02:00
Sebastian Krzyszkowiak
a82dfb16cf fixed OSX support 2016-07-05 01:30:06 +02:00
Sebastian Krzyszkowiak
fc44fd2d5a better symbol visibility handling 2016-07-04 01:12:55 +02:00
Sebastian Krzyszkowiak
617f9c0270 reorganize source files a bit 2016-07-04 00:56:45 +02:00
Sebastian Krzyszkowiak
c964f72d66 make it buildable by clang; adjust function visibility 2016-07-04 00:06:50 +02:00
Sebastian Krzyszkowiak
ffd44df08b split libsuperderpy function to _init, _run and _destroy 2016-07-03 22:38:36 +02:00
Sebastian Krzyszkowiak
f02caf73a2 fixed MinGW support 2016-07-03 20:34:31 +02:00
Sebastian Krzyszkowiak
90b00710fd cmake: link gamestates to common game library if such target is present 2016-07-03 01:54:31 +02:00
Sebastian Krzyszkowiak
b8008d2872 librarization clean up 2016-07-03 00:43:32 +02:00
Sebastian Krzyszkowiak
a8475eb99b librarify! 2016-07-02 23:23:08 +02:00
Sebastian Krzyszkowiak
0a6b70f72e clean up and generalize 2016-06-28 00:17:49 +02:00
Sebastian Krzyszkowiak
2544d94156 import Mediator codebase 2016-06-27 21:21:59 +02:00
Sebastian Krzyszkowiak
2e79fe8f7b import Tickle Monster codebase 2016-06-27 21:20:36 +02:00
Sebastian Krzyszkowiak
46827594b4 import Radio Edit codebase 2016-06-27 21:20:02 +02:00
Sebastian Krzyszkowiak
e92e4b6bec dodger: obstacle speed tweaks 2016-01-23 21:31:18 +01:00
Sebastian Krzyszkowiak
ed3b78224b Remove unnecessary supersampling. 2016-01-23 20:58:16 +01:00
Sebastian Krzyszkowiak
76cf21daeb dosowisko: put transparent pixels in checkerboard 2016-01-19 00:15:42 +01:00
Sebastian Krzyszkowiak
749da9203a menu: move bg mountain logic into logic pipeline 2015-04-18 18:07:50 +02:00
Sebastian Krzyszkowiak
25dcae6151 timeline: add TM_CleanQueue and TM_CleanBackgroundQueue functions 2015-03-18 02:48:56 +01:00
Sebastian Krzyszkowiak
937981a1df no more global timeline - from now on timelines can be instantiated! 2015-03-18 02:21:57 +01:00
Sebastian Krzyszkowiak
5172db6fe3 dosowisko: lock bitmap before generating checkerboard pattern 2015-03-16 14:32:20 +01:00
Sebastian Krzyszkowiak
feef69ce03 update docs 2015-03-15 20:51:56 +01:00