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