Sebastian Krzyszkowiak
51590d9788
fix blinking borders outside clipping rectangle
2016-11-08 10:34:32 +01:00
Sebastian Krzyszkowiak
c3fb2e06f1
more robust Android support
2016-11-07 01:45:12 +01:00
Sebastian Krzyszkowiak
4c09151dae
basic Android support
2016-11-06 03:10:43 +01:00
Sebastian Krzyszkowiak
ce4b474b5a
fix aspect ratio letterboxing on automatic resolution
2016-10-21 12:49:24 +02:00
Sebastian Krzyszkowiak
fc9317d215
add DrawWrappedTextWithShadow
2016-09-08 01:42:48 +02:00
Sebastian Krzyszkowiak
f7362d3d74
added DrawWrappedText, some clean up
2016-09-08 00:32:57 +02:00
Sebastian Krzyszkowiak
655cce6abe
Timeline Manager: run next action in main queue immediatelly after the last one ended
2016-09-06 01:48:30 +02:00
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
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
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
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
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
Sebastian Krzyszkowiak
8e3b1dd6d9
dosowisko: don't use FadeGamestate
2015-03-15 20:45:10 +01:00
Sebastian Krzyszkowiak
98968591fc
dosowisko: don't leak target bitmap on fadeout
2015-03-15 06:01:53 +01:00
Sebastian Krzyszkowiak
34f01d0336
dosowisko: different ending
2015-03-15 05:58:02 +01:00
Sebastian Krzyszkowiak
c2df1fc036
dosowisko: don't use TM to blink the cursor
2015-03-15 05:47:28 +01:00
Sebastian Krzyszkowiak
b746ecbebd
dosowisko: destroy all the things
2015-03-15 05:43:39 +01:00
Sebastian Krzyszkowiak
145727658f
intro: fix moving animation speed to be independent of viewport size
2015-03-15 05:38:51 +01:00
Sebastian Krzyszkowiak
e4553576ce
add dosowisko.net intro logo
2015-03-15 05:38:15 +01:00
Sebastian Krzyszkowiak
b983eac305
tweaks for character positions
2013-06-06 10:08:31 +02:00
Sebastian Krzyszkowiak
f73b9abd26
make TM_AddToArgs variadic function
2013-06-05 23:59:02 +02:00
Sebastian Krzyszkowiak
001ed62181
lots of level 1 tweaks
2013-06-05 23:20:55 +02:00
Sebastian Krzyszkowiak
d0ac545e4b
fix possible delay when displaying loading screen
2013-06-04 01:44:17 +02:00
Sebastian Krzyszkowiak
f0c72edfd5
make level 1 compilable... of course it doesn't work yet :D
2013-06-04 01:37:50 +02:00
Sebastian Krzyszkowiak
ced56209c1
move shared placeholder level code to separate file
2013-06-03 13:41:03 +02:00
Sebastian Krzyszkowiak
69966ada03
working all moonwalk levels, compiling dodger module (not usable yet), some small tweaks and fixes
2013-06-03 00:42:33 +02:00
Sebastian Krzyszkowiak
e85fcdf8a6
tweaks and estetics for level2/moonwalk code
2013-02-26 00:59:20 +01:00
Sebastian Krzyszkowiak
91d3bb0d59
bring back level 2 with its moonwalk
2013-02-26 00:42:26 +01:00
Sebastian Krzyszkowiak
840202f758
AdvanceLevel implementation; sprintf hardening
2013-02-25 01:39:41 +01:00
Sebastian Krzyszkowiak
3ba92508e2
giant refactoring... and giant breakage :P
2013-02-25 01:23:27 +01:00
Sebastian Krzyszkowiak
9a43132af3
unload loading screen on exit
2012-12-28 03:46:27 +01:00
Sebastian Krzyszkowiak
c8356b815b
bring back loading screen
2012-12-28 03:42:59 +01:00
Sebastian Krzyszkowiak
c39fea9c98
make fonts sharper (integer positioning)
2012-12-28 03:08:36 +01:00
Sebastian Krzyszkowiak
dd29fc6f5b
Blue Screen of Death
2012-12-28 02:55:52 +01:00
Sebastian Krzyszkowiak
b39ec719be
bring back support for loading progress
2012-12-28 00:00:37 +01:00
Sebastian Krzyszkowiak
3d44b4abbf
[Intro] restart intro properly after Stop/Start gamestate sequence
2012-12-27 21:14:37 +01:00
Sebastian Krzyszkowiak
7293ed191a
bring back Menu gamestate
2012-12-27 21:05:28 +01:00
Sebastian Krzyszkowiak
08c9506aeb
[Intro] better animation scaling
2012-12-27 19:38:43 +01:00
Sebastian Krzyszkowiak
00dd653a10
don't send events to gamestates that correspond to debug functions
2012-12-27 01:02:47 +01:00
Sebastian Krzyszkowiak
5d3bb2d0d7
bring back Map gamestate
2012-12-27 00:46:23 +01:00
Sebastian Krzyszkowiak
1e901cf51b
bring back Intro gamestate
2012-12-26 23:48:05 +01:00
Sebastian Krzyszkowiak
632be33eaa
bring back About gamestate
2012-12-26 20:02:40 +01:00
Sebastian Krzyszkowiak
91c49e927f
move building gamestates to separate CMakeLists file
2012-12-26 19:00:29 +01:00
Sebastian Krzyszkowiak
725918e3b4
merge Keydown methods with ProcessEvent
2012-12-26 15:15:02 +01:00
Sebastian Krzyszkowiak
3934ca696b
exit from the game when last gamestate is unloaded
2012-12-26 13:38:15 +01:00
Sebastian Krzyszkowiak
3daa3c714f
pass pointer to data structure to/from gamestates functions
2012-12-26 13:24:34 +01:00
Sebastian Krzyszkowiak
232cc6a204
initial support of run-time loading gamestates as dynamic libraries
2012-12-26 02:25:56 +01:00
Sebastian Krzyszkowiak
b36c5e8ed4
basic implementation of gamestates handling
2012-12-25 00:22:03 +01:00
Sebastian Krzyszkowiak
e29382b5dc
Remove everything!
...
Engine should be now clean from gamestate dependences.
The next thing will be implementing dynamic gamestate loading.
2012-12-24 19:41:12 +01:00
Sebastian Krzyszkowiak
5baf800f34
Remove all gamestates except Menu and Loading.
...
Those two are a starting point for refactoring.
Others will be restored later.
2012-12-24 01:48:36 +01:00
Sebastian Krzyszkowiak
d98817ecbd
globals are evul
2012-12-23 14:29:54 +01:00
Sebastian Krzyszkowiak
b0b26461be
Fix vaporizing Owlicious
2012-12-15 02:06:43 +01:00
Sebastian Krzyszkowiak
aba6cc3a0f
Aspect ratio tweaks for About screen
2012-12-15 01:58:48 +01:00
Sebastian Krzyszkowiak
6a8d7d0d8a
Aspect ratio teaks in levels
2012-12-15 01:45:14 +01:00
Sebastian Krzyszkowiak
b0e3a09e6a
disable letterbox by default and implement rotation of the screen if height > width (enabled by default)
2012-12-14 23:30:49 +01:00
Sebastian Krzyszkowiak
f2f66ff1e3
Aspect ratio fixes for Map
2012-12-14 23:10:09 +01:00
Sebastian Krzyszkowiak
0dbaf9c679
Updated a bit graphics and sprite positions in Intro
2012-12-14 21:01:59 +01:00
Sebastian Krzyszkowiak
6ddf347f8f
aspect ratio tweaks
2012-12-11 02:04:31 +01:00
Sebastian Krzyszkowiak
4792af13ec
fix segfault on resuming from letter screen
2012-12-10 13:09:33 +01:00