Commit graph

36 commits

Author SHA1 Message Date
Wayward Heart
a73f9ccc1f Prevent memory leaks from rb_raise
rb_raise calls longjmp, which bypasses C++ destructors, and also keeps the error for catch blocks from being unallocated if passed by reference, which we do for exceptions.

Some of the calls I left can still jump out of try blocks, which you're not supposed to do, but there shouldn't be any objects with destructors initialized at those points so it's probably fine.
2024-08-02 09:26:51 -05:00
Amaryllis Kulla
fae7fa9c4e
Update ancurio's copyright notice (#29) 2023-10-04 15:07:34 -04:00
Struma
ee8dc7e0fa make Input time functions return the correct type 2023-05-28 20:24:27 -04:00
Struma
0072c19371 Multiple changes
+ Time is now measured in fractions of a second, not microseconds
+ Viewports in RGSS1 will now only retain weak references to their children
+ Invalid Sprite bitmaps found during Graphics.update will be treated as null
+ Bitmap#mega? and Bitmap#animated? are properly rescued
2023-05-03 23:00:06 -04:00
Snowdream
843e54de2e deal with a couple warnings, make sure xcode project still builds 2022-07-22 13:12:29 -04:00
Snowdream
a2f9eb08ad Actually bind Input::Controller.pressex? 2022-07-09 23:46:47 -04:00
Struma
8484945539 raw_key_states shouldn't return button states 2022-07-09 04:27:21 -04:00
Struma
f839001be9 Finish moving to GameController API, other stuff
Namely:
- moved raw input states from System to Input
- Input.raw_key_states returns Array<Boolean> now
- the Joystick hash has become an entire module
- added manual input handling for controller buttons
- Raw controller states for both buttons and axes can be polled
- mouse and raw keys are now captured between Input updates
2022-07-04 04:53:52 -04:00
Struma
5f4b644bd0 switch to a (mostly) functioning GameController API 2022-07-03 21:36:48 -04:00
Struma
342f30069f Add Mouse4, Mouse5 and scroll wheel bindings 2022-07-03 11:53:40 -04:00
Struma
84f95966ea Clean up videos some more, make them skippable
Also, revert a change I made to the button names internally
a long time ago, when the intent behind mkxp-z was possibly going to be
different.
2022-01-23 01:46:13 -05:00
Struma
9920de87f8 Make json config accessible from System::CONFIG 2021-06-22 18:32:39 -04:00
Struma
69a89cf87f sync thread access to text input buffer 2021-03-08 06:20:43 -05:00
Struma
db919e9f29 Make sure all Ruby strings are created as UTF-8 2021-03-02 03:26:51 -05:00
Struma
02c06be88a Add Ruby-accessible delta clocks (microseconds) 2021-02-25 21:29:21 -05:00
Struma
653eb0118b Remove haptic code 2021-02-23 17:25:07 -05:00
Struma
1d508b048a Input.count, Input.repeatcount, System.user_name 2021-02-22 18:36:53 -05:00
Struma
1163ee9df5 Implement Input.release? and Input.releaseex? 2021-02-19 15:33:06 -05:00
Struma
0179e6a75b Revert "Remove haptics code"
Some part of this completely breaks the frame limiter.
I do not know which part
2020-12-25 19:41:16 -05:00
Struma
d565650975 Remove haptics code
It never worked anyway, as far as anyone knew, and is probably
not a feature anyone particularly needs.
2020-12-25 12:01:41 -05:00
Struma
0e278c3e5c Drop ObjFW as a dependency 2020-11-22 03:48:03 -05:00
Struma
f98b1e031f Reorganize src dir 2020-11-21 01:36:24 -05:00
Struma
1605bfa6d6 move key detect by scancode name to ex functions
Because VX Ace already uses symbols, apparently.
2020-04-12 11:45:30 -04:00
Struma
94e063c6c0 OLD_RUBY -> RAPI_MAJOR/RAPI_MINOR/RAPI_TEENY/RAPI_FULL 2020-02-26 12:44:37 -05:00
Struma
dd0f3ade91 Allow specifying ruby install manually 2020-02-25 05:35:30 -05:00
Inori
d1fc07422b Change default face button bindings 2019-09-19 04:53:07 -04:00
Inori
7af4026999 Play nice with Marin's experiments 2019-09-19 03:32:50 -04:00
Inori
582eee853b Test controller rumble support 2019-09-19 01:33:04 -04:00
Inori
8175a98cc2 Update mkxp.conf dataPathOrg/dataPathApp description 2019-09-18 23:08:15 -04:00
Inori
2a0e4be24f I'm so tired 2019-09-18 22:53:39 -04:00
Inori
bfa60cc065 Accept scancodes with Input.press?/Input.trigger?/Input.repeat? 2019-09-18 22:50:28 -04:00
Inori
939c601aea Add Input.joystick 2019-09-16 23:10:46 -04:00
Inori
904cfa20d4 Add Input.clipboard property 2019-09-06 03:32:43 -04:00
Inori
ac28861587 Add text input functionality to Input module 2019-09-05 23:57:10 -04:00
Inori
ffec65b98f Add Input.pressex?, Input.repeatex?, Input.triggerex? 2019-09-02 11:16:38 -04:00
Inori
7f3a548755 Remove mruby and null bindings 2019-07-31 08:47:44 -04:00
Renamed from binding-mri/input-binding.cpp (Browse further)