Sebastian Krzyszkowiak
40df27640c
character: add CharacterCallback macro for defininig animation callbacks
2018-06-27 19:30:35 +02:00
Sebastian Krzyszkowiak
12faed0921
timeline: add TM_Action macro for defining action callbacks
2018-06-27 19:30:18 +02:00
Sebastian Krzyszkowiak
1c66f219d8
timeline: expose the delta value to actions
2018-06-27 19:00:48 +02:00
Sebastian Krzyszkowiak
016c482154
convert bitmaps to video textures on every progress() when loading gamestate in threaded mode
2018-06-23 04:44:36 +02:00
Sebastian Krzyszkowiak
81488f9390
character: rework IsOnCharacter to work properly regardless of pivot, rotation and scale
2018-06-04 19:10:29 +02:00
Sebastian Krzyszkowiak
291e4c73d6
use al_reset_clipping_rectangle for clarity
2018-06-03 03:39:28 +02:00
Sebastian Krzyszkowiak
897aa8b52f
character: honor x/y values from frames when calculating animation size
2018-06-03 03:39:11 +02:00
Sebastian Krzyszkowiak
71ec8b396e
shader: auto rebuild and auto destroy shaders
2018-05-31 20:52:16 +02:00
Sebastian Krzyszkowiak
5fe62da08f
tween: add SYMBOL_EXPORT macros
2018-05-31 20:51:44 +02:00
Sebastian Krzyszkowiak
9182cabf79
Add abstraction for GPU shaders
2018-05-30 21:11:46 +02:00
Sebastian Krzyszkowiak
52883755f1
timeline: initial API change for handling time delta
2018-05-30 03:10:03 +02:00
Sebastian Krzyszkowiak
b0d2c59596
add SwitchSpritesheet
2018-04-26 14:34:00 +02:00
Sebastian Krzyszkowiak
396e07a0ce
DrawCenteredTintedScaled
2018-04-24 22:06:06 +02:00
Sebastian Krzyszkowiak
34a36c2038
DrawCenteredScaled
2018-04-24 05:01:59 +02:00
Sebastian Krzyszkowiak
80f59dd749
tween: add function to just interpolate the value, without using Tween object
2018-04-23 03:24:13 +02:00
Sebastian Krzyszkowiak
0f14629a15
Introducing the tweening engine.
2018-04-22 05:30:56 +02:00
Sebastian Krzyszkowiak
01ae741558
loading: call Gamestate_Logic in single thread mode as well
2018-04-21 01:08:39 +02:00
Sebastian Krzyszkowiak
a9c318dd78
loading: call Gamestate_Logic
2018-04-21 00:11:34 +02:00
Sebastian Krzyszkowiak
0af3d8b1d0
ResumeExecution: guard against open/link failure on live reload
2018-04-18 23:14:05 +02:00
Sebastian Krzyszkowiak
08d2e544b7
character: read width/height values from ini file
2018-04-18 23:13:31 +02:00
Sebastian Krzyszkowiak
3938a78503
live reloading
2018-04-16 01:06:58 +02:00
Sebastian Krzyszkowiak
60b960ab2c
character: use Spritesheet structs instead of strings with names in callbacks
2018-04-15 23:00:53 +02:00
Sebastian Krzyszkowiak
c77c91e570
character: add GetSpritesheet for getting struct by name
2018-04-15 23:00:17 +02:00
Sebastian Krzyszkowiak
c9efd7afe2
character: don't animate hidden characters
2018-04-15 22:59:42 +02:00
Sebastian Krzyszkowiak
c3adf398b1
character: support non-repeating animations (stopping at the last frame)
2018-04-13 03:00:54 +02:00
Sebastian Krzyszkowiak
4240b47380
DestroyCharacter: print to console when the destroyed character is shared
2018-04-10 14:05:03 +02:00
Sebastian Krzyszkowiak
d017956442
IsOnCharacter: support flipped characters
2018-04-10 05:18:29 +02:00
Sebastian Krzyszkowiak
88b4399cae
character: fix character placement and flipping when drawing
2018-04-08 01:35:31 +02:00
Sebastian Krzyszkowiak
a8b57934db
Fix the unfamous Fajer crashing issue
2018-04-08 01:34:43 +02:00
Sebastian Krzyszkowiak
d4b2e1c65a
utils: rename Clip to Clamp, add Wrap
2018-04-08 01:34:26 +02:00
Sebastian Krzyszkowiak
7f420f62ad
Fixes for spritesheet handling
2018-04-08 01:34:06 +02:00
Sebastian Krzyszkowiak
adb15a9caf
libsuperderpy: init video addon
2018-04-08 01:33:13 +02:00
Sebastian Krzyszkowiak
df536baa32
character: save transform to character struct for easier handling by auxiliary helpers
2018-03-21 02:15:34 +01:00
Sebastian Krzyszkowiak
d88162cab4
spritesheets: support for predecessors and reversed animations
2018-03-21 02:05:22 +01:00
Sebastian Krzyszkowiak
f097ddc54a
display frame duration along with the fps counter
2018-03-20 23:49:22 +01:00
Sebastian Krzyszkowiak
b31d093e8c
New spritesheets
2018-03-20 21:39:37 +01:00
Sebastian Krzyszkowiak
e58fbdb560
Add a few utils from Rumina
2018-03-20 21:38:50 +01:00
Sebastian Krzyszkowiak
8d0df727cb
fix gameplay speed
2018-03-20 21:38:34 +01:00
Sebastian Krzyszkowiak
c85381644c
rumina hacks 3
2018-03-15 00:46:52 +01:00
Sebastian Krzyszkowiak
aa1f7f3ab9
General Characters refactor
2018-03-15 00:42:24 +01:00
Sebastian Krzyszkowiak
f0417b09f6
rumina hacks 2
2018-03-15 00:42:24 +01:00
Sebastian Krzyszkowiak
ae70770f77
rumina hacks
2018-03-15 00:42:24 +01:00
Sebastian Krzyszkowiak
686dab729a
Remove ALLEGRO_RENDER_METHOD sanity check
...
See liballeg/allegro5#887
2018-03-03 20:50:50 +01:00
Sebastian Krzyszkowiak
bb9bb692fe
config: fix compilation on MinGW
2018-03-03 20:31:44 +01:00
Sebastian Krzyszkowiak
1ac8491396
DrawConsole: use deferred bitmap drawing to speed up text rendering
2018-02-03 03:54:01 +01:00
Sebastian Krzyszkowiak
fc37ec592e
Add bunch of debug output on launch
2018-02-03 03:53:52 +01:00
Sebastian Krzyszkowiak
52fbb86d2f
Add pre/post logic/draw handlers
2018-02-03 03:39:30 +01:00
Sebastian Krzyszkowiak
c6b71f1686
Add delta parameter to Gamestate_Logic calls
2018-02-03 03:37:44 +01:00
Sebastian Krzyszkowiak
749bb1ef50
character: add ability to set the size of the confines
...
Useful when the size of the canvas being drawn to is different
than the size of the viewport (default confine).
2018-02-03 03:17:36 +01:00
Sebastian Krzyszkowiak
cb4b9638c8
utils: add missing new lines to debug/error output
2018-01-21 03:18:51 +01:00
Sebastian Krzyszkowiak
0cfef4ddca
BSOD: fix placement of the second-last line
2018-01-20 02:51:37 +01:00
Sebastian Krzyszkowiak
e2d9d21f3f
BSOD: fix formatting and warnings
2018-01-20 02:45:06 +01:00
Sebastian Krzyszkowiak
18efca478e
FatalError: print the error message to stderr
...
Printing to console outputs it to stdout, but only if
debug mode is enabled. stderr seems better suited too.
2018-01-20 02:24:33 +01:00
suve
2848753083
Use left-align for the wrapped error messages
2017-12-17 15:00:02 +01:00
suve
af53d1378f
Wrap long messages in FatalError()
2017-12-17 14:58:03 +01:00
suve
705f84cbf1
Reduce code redundancy in FatalError()
2017-12-17 14:19:24 +01:00
Sebastian Krzyszkowiak
499e884a62
commit Fajer's legacy, so it won't be forgotten
2017-10-30 21:22:49 +01:00
Sebastian Krzyszkowiak
a4ec09d9cd
updated .gitignore, code-cosmetics
2017-10-30 21:17:47 +01:00
Sebastian Krzyszkowiak
977a03db1e
future-proof Android support by using ALLEGRO_FRAMELESS when fullscreen
2017-10-12 21:04:18 +02:00
Sebastian Krzyszkowiak
56ea82d526
GetDataFilePath: change order of lookup paths and remove "../data"
2017-09-20 18:13:49 +02:00
Sebastian Krzyszkowiak
a3cda7ba50
try to search for gamestates in directory with binary before resorting to LD_LIBRARY_PATHs
2017-09-20 18:11:29 +02:00
Sebastian Krzyszkowiak
c34c13739d
add SetCharacterPivotPoint function
2017-09-15 23:44:44 +02:00
Sebastian Krzyszkowiak
ca33fd7752
make usage of clang-tidy configurable
2017-09-10 22:53:41 +02:00
Sebastian Krzyszkowiak
8cfde8c55f
SUPPRESS_WARNING macro
2017-09-10 22:37:02 +02:00
Sebastian Krzyszkowiak
bf4aa069a4
don't use empty initializers (it's a GNU extension)
2017-09-10 22:07:02 +02:00
Sebastian Krzyszkowiak
2b1248ce14
clang-tidy support; clang-tidy and clang-format fixes
2017-09-10 21:35:14 +02:00
Sebastian Krzyszkowiak
0a4580a762
Android: honor tilde button for console toggling (you can attach a keyboard to Android device)
2017-09-09 02:46:07 +02:00
Sebastian Krzyszkowiak
a906b14e08
threaded screenshoting (now with gamestates redraw!)
2017-09-09 00:42:57 +02:00
Sebastian Krzyszkowiak
450e33b2e3
support of loading in separate thread; thread-safe console; various fixes from clang code model warnings
2017-09-09 00:11:43 +02:00
Sebastian Krzyszkowiak
4a2e2a3d25
try to create INT16 voice if FLOAT32 one fails
...
Seems to be some bug in Allegro, as it fails on OS X.
2017-09-05 03:01:18 +02:00
Sebastian Krzyszkowiak
f94930b5d5
PrintConsole: restore previous target bitmap instead of reseting to backbuffer
2017-09-04 16:02:49 +02:00
Sebastian Krzyszkowiak
9a6cbd2449
implement audio stream seeking in emscripten
2017-08-24 21:40:34 +02:00
Sebastian Krzyszkowiak
3581c6060c
full emscripten support, plus flac->ogg encoding for emscripten and android
2017-08-24 21:09:07 +02:00
Sebastian Krzyszkowiak
a955820e8f
emscripten support
2017-08-24 00:51:58 +02:00
Sebastian Krzyszkowiak
07d4c22199
init: call al_install_audio before al_init_acodec_addon
2017-08-19 01:27:34 +02:00
Sebastian Krzyszkowiak
b7346ea330
use leak sanitizer for debug build and break the build in case of unresolved symbols in libraries
2017-08-19 01:26:53 +02:00
Sebastian Krzyszkowiak
417d34ef1a
fix stuff reported by static analyzer
2017-08-16 01:47:07 +02:00
Sebastian Krzyszkowiak
7ab739db54
config: fix config file handling when custom file interface is in effect
2017-08-15 01:41:24 +02:00
Sebastian Krzyszkowiak
b4b0403a77
GetDataFilePath: add ability to mask data files with android specific versions
2017-08-08 00:16:03 +02:00
Sebastian Krzyszkowiak
d8b7e0ec6b
fix timeline removal and debug draw scaling on scaled viewports
2017-08-07 15:59:12 +02:00
Sebastian Krzyszkowiak
3fe7df2982
timeline: make debug draw optional and automatic
2017-08-07 02:26:36 +02:00
Sebastian Krzyszkowiak
b6eb181f1d
timeline: fix TM_DrawDebug scaling
2017-08-07 02:01:15 +02:00
Sebastian Krzyszkowiak
4652efd6a9
timeline: update queues during cleaning
...
...so destructors can safely do stuff like TM_AddAction
(unless they make an infinite loop with that :P)
2017-08-07 01:52:42 +02:00
Sebastian Krzyszkowiak
505de9086d
fix whitespace style
2017-07-22 21:01:29 +02:00
Sebastian Krzyszkowiak
e9bd4eefa5
update license to GPLv3+
2017-07-22 18:22:28 +02:00
Sebastian Krzyszkowiak
519a22c9ad
link to allegro5-video
2017-06-26 15:21:13 +02:00
Sebastian Krzyszkowiak
2dbabc502b
always require OpenGL context
2017-06-26 03:19:32 +02:00
Sebastian Krzyszkowiak
de7311dabf
fixed screen orientation support
2017-06-26 03:18:54 +02:00
Sebastian Krzyszkowiak
c97e163b31
don't require debug mode to be enabled in order to make a screenshot
2017-06-25 17:37:41 +02:00
Sebastian Krzyszkowiak
7241476886
use NotPreservedBitmap for game console
2017-06-13 14:21:17 +02:00
Sebastian Krzyszkowiak
d3f876097f
add CreateNotPreservedBitmap helper
2017-06-13 14:21:17 +02:00
Sebastian Krzyszkowiak
e0c422972b
add TM_DrawDebug: debug view for timelines
2017-03-16 22:05:22 +01:00
Sebastian Krzyszkowiak
e873e96194
fix compiler warning
2017-03-07 01:00:27 +01:00
Sebastian Krzyszkowiak
31f173f2a8
character: add support for repeating animation with successor
...
plus update README
2017-03-04 19:54:48 +01:00
Sebastian Krzyszkowiak
ca2f26e9ff
add DrawScaledCharacter(F)
2016-12-06 02:54:31 +01:00
Sebastian Krzyszkowiak
bd57582b01
enable joystick support
2016-12-05 23:56:41 +01:00
Sebastian Krzyszkowiak
098231269c
call Gamestate_Pause/Resume also on freezing
2016-11-11 20:17:02 +01:00
Sebastian Krzyszkowiak
fdd48433bc
gamestate reloading and fix for calling Gamestate_Pause/Gamestate_Resume
2016-11-11 19:38:26 +01:00
Sebastian Krzyszkowiak
4b53b59e05
proper gamestate freezing on suspending android activity
2016-11-09 00:40:13 +01:00
Sebastian Krzyszkowiak
4ecb7e71de
revamp letterbox and scaling code and add WindowCoordsToViewport util function
2016-11-08 23:28:28 +01:00
Sebastian Krzyszkowiak
625f202156
add ability to define game-specific global event handler
2016-11-08 22:11:10 +01:00
Sebastian Krzyszkowiak
a4ce032c8b
don't crash on devices with no touchscreen
2016-11-08 17:56:19 +01:00
Sebastian Krzyszkowiak
6ac268f50b
Revert "don't call al_get_touch_input_event_source on OSX, seems buggy"
...
This reverts commit d65873d63b
.
2016-11-08 17:43:10 +01:00
Sebastian Krzyszkowiak
4d749b3ad1
make screen rotation working on Android
...
libsuperderpy now requires Allegro 5.2.2 for Android
2016-11-08 17:42:23 +01:00
Sebastian Krzyszkowiak
d65873d63b
don't call al_get_touch_input_event_source on OSX, seems buggy
2016-11-08 11:17:27 +01:00
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
Sebastian Krzyszkowiak
f17b7bf100
initial full HD support
2012-12-10 12:44:22 +01:00
Sebastian Krzyszkowiak
1d1c62432e
return -1 instead of 0 on one of error conditions
2012-11-14 22:13:25 +01:00
Sebastian Krzyszkowiak
194a81fa55
correctly define functions that take no arguments
2012-11-13 16:49:18 +01:00
Sebastian Krzyszkowiak
32207926f3
fix dangerous use of pointer as value keeper in Obst_MoveUpDown
2012-10-02 14:03:10 +02:00
Sebastian Krzyszkowiak
8ced946622
various Mac OS X fixes
2012-09-30 10:02:07 +02:00
Sebastian Krzyszkowiak
bedba9deb5
cosmetics and docs
2012-09-29 03:44:36 +02:00
Sebastian Krzyszkowiak
986378ec53
add start event to timeline manager
2012-09-29 02:34:42 +02:00
Sebastian Krzyszkowiak
85ae970597
moonwalk is now timeline based
2012-09-29 01:58:34 +02:00
Sebastian Krzyszkowiak
c863dfe58c
load proper resources for each level, and add dummy resources for each level :D
2012-09-28 20:05:13 +02:00
Sebastian Krzyszkowiak
5083033a4b
more reorganization
2012-09-28 16:43:13 +02:00
Sebastian Krzyszkowiak
1f3f99936e
split each level to separate file
2012-09-28 03:53:43 +02:00
Sebastian Krzyszkowiak
8c24ebd982
implement progress bar on fulscreen toggling
2012-09-28 03:11:45 +02:00
Sebastian Krzyszkowiak
e67ffb821c
fix double fade out on failing level
2012-09-28 02:57:43 +02:00
Sebastian Krzyszkowiak
79ac41a085
fix restarting level background music on toggling fullscreen mode
2012-09-28 02:50:43 +02:00
Sebastian Krzyszkowiak
d62be104e8
general reorganization. again. levels have now another abstraction layer, yay! :D
2012-09-28 02:30:48 +02:00
Sebastian Krzyszkowiak
74bf535c07
show console when using speed cheats
2012-09-27 20:39:37 +02:00
Sebastian Krzyszkowiak
cd3fbbccf0
more level modularity
2012-09-27 15:06:33 +02:00
Sebastian Krzyszkowiak
8fa37d619c
cosmetics, TODOs and FIXMEs, docs
2012-09-27 02:59:56 +02:00
Sebastian Krzyszkowiak
c5e37bf9d5
refactor Level gamestate and introduce level modules
2012-09-27 02:48:45 +02:00
Sebastian Krzyszkowiak
2a80a3382f
fix Derpy being one pixel too high in pause screen :D
2012-09-26 23:38:54 +02:00
Sebastian Krzyszkowiak
03ba62b34e
make use from latest pausing functionality in TM to pause letter from Twilight
2012-09-26 23:34:27 +02:00
Sebastian Krzyszkowiak
533d53e535
fixup for last commit (pause, resume and draw events were always sent as draw)
2012-09-26 23:34:00 +02:00
Sebastian Krzyszkowiak
4ec5686aac
fix pausing timers in timeline manager
2012-09-26 23:28:16 +02:00
Sebastian Krzyszkowiak
0eacf9a67d
fix blinking on fading out occuring sometimes
2012-09-26 22:57:47 +02:00
Sebastian Krzyszkowiak
1caeb03ab4
fix infinite loop in about screen
2012-09-26 21:16:20 +02:00
Sebastian Krzyszkowiak
d0cadad936
implement timescaling cheats
2012-09-26 20:11:35 +02:00
Sebastian Krzyszkowiak
b2b95857cd
take advantage from recent refactoring in frame skipping cheat
2012-09-26 20:00:24 +02:00
Sebastian Krzyszkowiak
1ba89400d6
revamp pause functionality
2012-09-26 20:00:11 +02:00
Sebastian Krzyszkowiak
e99f1e5936
timeline: call destroy callback *after* item has been removed from main queue
2012-09-26 19:49:27 +02:00
Sebastian Krzyszkowiak
d6b68a3740
refactor first level and timeline
2012-09-26 18:48:36 +02:00
Sebastian Krzyszkowiak
cae92f0272
fix FPS being limited sometimes to 60
2012-09-26 03:19:10 +02:00
Sebastian Krzyszkowiak
e6fa44514e
refactored every gamestate for logic spearation except first level
2012-09-26 03:08:58 +02:00
Sebastian Krzyszkowiak
a6a02ba0c2
implement spritesheet successors
2012-09-21 14:47:34 +02:00
Sebastian Krzyszkowiak
042d29aff4
fix setting level number in command line
2012-09-21 14:47:14 +02:00
Sebastian Krzyszkowiak
ca94680674
implement input data convention for gamestates
2012-09-21 13:55:21 +02:00
Sebastian Krzyszkowiak
3b75879a1d
fix cmake warnings
2012-09-20 02:03:56 +02:00
Sebastian Krzyszkowiak
2a2f22750c
proper dependency handling support, for Windows and GNU/Linux for now
2012-09-20 01:46:29 +02:00
Sebastian Krzyszkowiak
ee023098d1
fix including application icon into windows executable
2012-09-19 01:37:00 +02:00
Sebastian Krzyszkowiak
3d60bac467
provide .desktop file and application icon
2012-09-19 01:20:24 +02:00
Sebastian Krzyszkowiak
d6d6038daa
update default config options
2012-09-03 02:36:08 +02:00
Sebastian Krzyszkowiak
4bbbd1958f
indentation fixes
2012-09-03 02:25:32 +02:00
Sebastian Krzyszkowiak
8420a5ca92
use correct paths for data files when game is installed
2012-09-03 02:08:12 +02:00
Sebastian Krzyszkowiak
8d99205e50
fixes for build system to work correctly on MinGW
2012-08-20 02:35:37 +02:00
Sebastian Krzyszkowiak
2d898363ef
switch to cmake
2012-08-19 03:04:55 +02:00
Sebastian Krzyszkowiak
c7a3f3d007
add SIGSEGV signal handler... because ponies.
2012-08-04 21:58:31 +02:00
Sebastian Krzyszkowiak
0ec111c197
letterbox implementation is now complete and enabled by default
2012-08-04 20:58:24 +02:00
Sebastian Krzyszkowiak
219fc714db
add code for letterboxing. this option is configurable and disabled by default for now, as it doesn't work correctly yet
2012-08-04 13:57:29 +02:00
Sebastian Krzyszkowiak
2078f2da29
fix displaying random first frame from memory left-overs right after game start on newer versions of Allegro
2012-08-04 12:56:24 +02:00
Sebastian Krzyszkowiak
533410baee
This is Super Derpy: Muffin Attack 0.1a
2012-07-13 14:16:25 +02:00
Sebastian Krzyszkowiak
3d9fb8c66a
fix crash on displaying letter from Twilight
2012-07-13 10:57:17 +02:00
Sebastian Krzyszkowiak
9a8264802a
add recording of Twilight's letter by Emichwan88
2012-07-12 18:54:32 +02:00
Sebastian Krzyszkowiak
4448776890
fix laggy glass effect on some shitty platforms
2012-07-10 19:08:12 +02:00
Sebastian Krzyszkowiak
aba469c174
preparing for release
2012-07-09 21:47:18 +02:00
Sebastian Krzyszkowiak
471f33b720
add command line option for selecting initial gamestate
2012-07-08 23:08:23 +02:00
Sebastian Krzyszkowiak
85056130ac
prepare for first release
2012-07-08 22:11:31 +02:00
Sebastian Krzyszkowiak
7667473206
don't allow loading GAMESTATE_PAUSE as primary game state
2012-07-08 16:21:08 +02:00
Sebastian Krzyszkowiak
da13fcb41c
add disclaimer screen about early development preview
2012-07-08 15:52:56 +02:00
Sebastian Krzyszkowiak
7842385b27
reset Derpy's angle when returning to running
2012-07-08 14:14:34 +02:00
Sebastian Krzyszkowiak
59fd82b9e3
add "Press enter to continue..." text to letter screen
2012-07-08 02:47:45 +02:00
Sebastian Krzyszkowiak
820a1fbe15
letter from Twilight: add proper text
2012-07-08 00:23:40 +02:00
Sebastian Krzyszkowiak
d75591af6b
add last animation from Anna Karlik to intro
2012-07-06 22:35:17 +02:00
Sebastian Krzyszkowiak
46c4ae08ed
implement screenshot taking
2012-07-04 00:15:49 +02:00
Sebastian Krzyszkowiak
2a174898a8
glass performance tweaks
2012-07-03 23:44:03 +02:00
Sebastian Krzyszkowiak
77ef62b413
add logo to main menu, with glass effect
2012-07-03 16:27:57 +02:00
Sebastian Krzyszkowiak
64d0e30135
fix uninitialized angle value of owl in intro
2012-06-19 17:27:05 +02:00
Sebastian Krzyszkowiak
86f9a3f819
make Derpy more controllable
2012-06-19 17:18:33 +02:00
Sebastian Krzyszkowiak
6fd0af0605
add jumping Derpy animation for intro from Anna Karlik
2012-05-27 00:58:15 +02:00
Sebastian Krzyszkowiak
5065f49b5a
update intro animations from Anna Karlik
2012-05-25 22:44:04 +02:00
Sebastian Krzyszkowiak
15e1822833
add cherries
2012-05-23 10:34:36 +02:00
Sebastian Krzyszkowiak
47b2903935
make loading progress bar on first level more accurate
2012-05-23 10:21:14 +02:00
Sebastian Krzyszkowiak
1d0ce78cb4
fix position of "Letter from Twilight" text
2012-05-22 21:46:51 +02:00
Sebastian Krzyszkowiak
06689721f0
lots of cosmetic things
2012-05-22 21:29:55 +02:00
Sebastian Krzyszkowiak
95e869baea
small tweaks for gameplay
2012-05-21 22:38:41 +02:00
Sebastian Krzyszkowiak
918877c472
add bitmap for a letter from Twilight
2012-05-21 22:27:49 +02:00
Sebastian Krzyszkowiak
484d227b3a
fix collision handling not working for some cases
2012-05-21 21:17:58 +02:00
Sebastian Krzyszkowiak
42c8473436
little animation at the end of the level
2012-05-21 20:56:16 +02:00
Sebastian Krzyszkowiak
db0ebca42d
some tweaks for obstacles
2012-05-21 19:50:42 +02:00
Sebastian Krzyszkowiak
bd2e62f651
more obstacles
2012-05-21 18:47:17 +02:00
Sebastian Krzyszkowiak
d0f2ab8575
rotating muffins
2012-05-21 14:00:42 +02:00
Sebastian Krzyszkowiak
2fc3ac1a9a
typo
2012-05-21 10:27:32 +02:00
Sebastian Krzyszkowiak
87dd644be6
moar documentation
2012-05-21 10:25:22 +02:00
Sebastian Krzyszkowiak
50e9bb8815
moar docs
2012-05-21 10:14:49 +02:00
Sebastian Krzyszkowiak
cd65b1d8e5
implement owl :D
2012-05-20 23:17:52 +02:00
Sebastian Krzyszkowiak
836eaedc41
hide muffin when eated, tweaks for level length and hardness
2012-05-20 20:05:03 +02:00
Sebastian Krzyszkowiak
fe8fbcb425
move timeline actions and obstacle callbacks to separate files
2012-05-20 18:07:24 +02:00
Sebastian Krzyszkowiak
c1aceaa473
fix possible cropping issues with animations in intro
2012-05-20 14:42:58 +02:00
Sebastian Krzyszkowiak
c62079d9d9
fix possible cropping issues with pigs
2012-05-20 14:41:49 +02:00
Sebastian Krzyszkowiak
7dc4dc7a73
PIGS!!!
2012-05-20 14:40:49 +02:00
Sebastian Krzyszkowiak
d98dcca2e4
log HP to console at the end of level (lol)
2012-05-20 00:16:55 +02:00
Sebastian Krzyszkowiak
5a846cea24
allow player to change Derpy speed with arrows
2012-05-19 22:38:13 +02:00
Sebastian Krzyszkowiak
e33c460896
fix spritesheet animations being off on some resolutions
2012-05-19 21:50:01 +02:00
Sebastian Krzyszkowiak
465e60dfa0
fix text in About screen
2012-05-19 20:00:27 +02:00
Sebastian Krzyszkowiak
160761e899
fine tune of collision handling
2012-05-19 18:48:29 +02:00
Sebastian Krzyszkowiak
c6e3707ab4
moar documentation
2012-05-19 18:28:19 +02:00
Sebastian Krzyszkowiak
5a6687e28b
moar documentation
2012-05-19 18:09:20 +02:00