Bart van Strien
715cab4f6f
Fix love.joystick.setGamepadMapping suffix overwriting bug
...
Previously, if "leftx" was mapped before "x", the latter mapping would overwrite
the former, or in general if any mapping was a suffix of another, it needed to
be mapped first.
2015-03-15 15:53:48 +01:00
Alex Szpakowski
2f419c1c83
Replaced most cases of type bits and type name strings in love's Lua wrapper code with type id's.
...
--HG--
branch : minor
2015-03-01 18:32:41 -04:00
Alex Szpakowski
5932c39c86
Removed some redundant code.
...
--HG--
branch : minor
2015-02-21 21:54:13 -04:00
Alex Szpakowski
ebc68023a7
Fix many warnings about implicit integer conversions when compiling for 64 bits.
...
--HG--
branch : minor
2015-02-20 01:20:08 -04:00
Alex Szpakowski
c7b45b3505
Updated copyright for the new year
2014-12-31 19:32:43 -04:00
Alex Szpakowski
195d41d1d9
Ignore lines starting with "#" when parsing the mappings string given to love.joystick.loadGamepadMappings.
2014-11-03 16:34:18 -04:00
Alex Szpakowski
0d28135465
Fixed love.joystick.loadGamepadMappings to work properly if a FileData object is passed to it.
2014-11-03 16:24:28 -04:00
Alex Szpakowski
b9271ed25a
Don't throw an error if the mappings passed to love.joystick.loadGamepadMappings contain mappings for other platforms but no mappings for the currently running platform.
2014-11-03 16:19:47 -04:00
Alex Szpakowski
e26abb417e
Fixed indentation.
2014-08-27 01:04:58 -03:00
Alex Szpakowski
1e8c9e18c3
Fixed love.joystick.setGamepadMapping: the generated SDL controller mapping string is no longer invalid, and joystick hats are now properly converted to the SDL representation.
2014-08-27 00:58:42 -03:00
Alex Szpakowski
da7cd267ea
Changed luax_pushtype to retain the pushed object itself, but only if the object isn't in the Lua state already.
...
Previously, calling e.g. love.graphics.getFont() 10,000 times would retain the object 10,000 times (and release it 10,000 times when the Font object was garbage-collected in the Lua state.) Now it will only retain it once and release it once.
2014-08-09 16:04:59 -03:00
Alex Szpakowski
d52bab4221
Updated the new module changes to use more compile/link-time checking rather than runtime checking.
2014-07-21 15:12:01 -03:00
Alex Szpakowski
014b9a46e5
Updated the Lua wrapper code for modules to account for cases where the module's instance is removed from memory completely and recreated during the program's lifetime.
2014-07-21 14:52:01 -03:00
Alex Szpakowski
ddb9997ead
Replaced Joystick:saveGamepadMapping with love.joystick.saveGamepadMappings, which saves all gamepad mappings from both recently-used joysticks and recently-modified mappings. saveGamepadMappings returns a string of newline-separated mappings and takes an optional filename argument which writes it to a file.
2014-06-05 00:25:34 -03:00
Alex Szpakowski
10e0d4b900
Moved the love.joystick Lua wrapper code from modules/joystick/sdl/ to modules/joystick/.
2014-06-04 16:23:39 -03:00
Alex Szpakowski
4cd4d35739
Fixed some logic
2014-06-04 16:06:36 -03:00
Alex Szpakowski
42a565a0eb
Fixed love.joystick.loadGamepadMappings to properly enable currently connected Joysticks as Gamepads when necessary.
2014-06-04 16:03:02 -03:00
Alex Szpakowski
79b453653a
Added love.joystick.loadGamepadMappings (resolves issue #842 ), and Joystick:saveGamepadMapping.
...
The latter returns a mapping string, and the former loads a newline-separated list of mapping strings.
2014-06-04 15:50:06 -03:00
Alex Szpakowski
dfa319e01a
Replaced the EXCEPT_GUARD macro for converting love exceptions into Lua errors with the new luax_catchexcept function, which takes lambda function arguments.
2014-06-03 19:27:00 -03:00
Alex Szpakowski
036f6eb8cb
Added an optional duration argument to Joystick:setVibration.
2014-05-10 16:52:40 -03:00
Alex Szpakowski
e4dc533bb2
Minor code cleanup
2014-05-01 14:12:21 -03:00
Alex Szpakowski
fda005c5ff
love.graphics.getScissor now has a proper C++ module method
2014-01-09 22:49:00 -04:00
Alex Szpakowski
3120a0e650
Goodbye 2013, hello 2014!
2014-01-03 17:28:58 -04:00
Alex Szpakowski
44d87212b7
Fixed Joystick:isDown to accept 1-based instead of 0-based button indices
2013-12-23 00:28:03 -04:00
Alex Szpakowski
71dd15838e
Workaround for SDL_HAPTIC_INFINITY failing in Windows is no longer needed (patched in SDL as of 2 months ago)
2013-12-17 04:03:04 -04:00
Alex Szpakowski
25caa188ba
Fixed Joystick:getName to be more consistent
2013-10-05 04:07:39 -03:00
Alex Szpakowski
8b7f151a4d
Added joystick vibration support for most common controllers (resolves issue #159 ).
...
Added Joystick:setVibration(left, right), Joystick:getVibration, and Joystick:isVibrationSupported.
left and right are numbers between 0 and 1 which correspond to the strength of the gamepad's left and right rumble motors, if it has them.
2013-10-05 01:54:41 -03:00
Alex Szpakowski
95eedcd1be
Using auto for some iterators for less dense-looking code
2013-09-30 02:35:10 -03:00
Alex Szpakowski
d9cd10e29c
love.joystick now scans for connected joysticks when the module is initialized instead of only relying on joystick add events
2013-09-16 02:42:50 -03:00
Alex Szpakowski
06f80d5c08
Fixed undefined behaviour when love exceptions are converted into Lua errors (resolves issue #729 )
2013-09-05 23:17:29 -03:00
Alex Szpakowski
3ac0710544
Renamed Joystick:getProductGUID back to Joystick:getGUID
2013-08-30 23:50:29 -03:00
Alex Szpakowski
deba2926ce
Prefer the Joystick name rather than the GameController name for Joystick:getName
2013-08-29 01:39:21 -03:00
Alex Szpakowski
ec9dec6b80
Replaced luax_newtype with luax_pushtype (and added luax_rawnewtype for the old functionality of luax_newtype.)
...
luax_pushtype keeps the object in a weak table and checks the table before creating a new userdata, so it re-uses the object's existing wrapper userdata if it can, whenever the object is pushed to Lua.
This fixes some subtle issues with love objects, where using them as keys in tables would not always work as expected (https://love2d.org/forums/viewtopic.php?f=4&t=39398&p=112388#p112415 ). It also decreases the amount of new Lua objects created, saving the garbage collector some work.
2013-08-29 00:40:06 -03:00
Alex Szpakowski
3f6b280d54
Joystick:getID now returns the Joystick's instance id as a second argument, if the Joystick is connected.
...
The Joystick gets a new unique instance id every time it's connected.
2013-08-28 05:23:02 -03:00
Alex Szpakowski
4fcf47a427
Renamed Joystick:getGUID to Joystick:getProductGUID for greater clarity
2013-08-28 04:21:08 -03:00
Alex Szpakowski
390a47099e
Removed some dead/useless joystick code
2013-08-26 18:18:07 -03:00
Alex Szpakowski
6ade6225df
Replaced love.joystick.getJoystick with love.joystick.getJoysticks (returns a table of all connected joysticks), and renamed Joystick:getIndex to Joystick:getConnectedIndex
2013-08-26 17:37:59 -03:00
Alex Szpakowski
75eb34379c
Changed Joystick:getID to be 1-based instead of 0-based
2013-08-26 17:35:10 -03:00
Alex Szpakowski
db1e8e762a
Joystick:getIndex now returns nil instead of -1 if the joystick isn't connected
2013-08-26 13:27:19 -03:00
Alex Szpakowski
113ed1cfe7
Merged SDL2 changes from bartbes/love-experiments/SDL2 into default.
...
- Added love.system module, including clipboard functions.
- Added custom hardware cursors (love.mouse.newCursor, love.mouse.setCursor.)
- Revamped love.joystick:
-- added Joystick objects and moved love.joystick functions which operated on individual joysticks to methods on the Joystick objects.
-- Added love.joystick.getJoystick and love.joystick.getJoystickCount.
-- Added events for when joysticks are connected and disconnected.
-- Added 'Gamepad' methods to Joystick objects: Joystick:isGamepad, Joystick:getGamepadAxis, and Joystick:isGamepadDown. They're a common abstraction for xbox controller-like joystick across operating systems.
- Added monitor choosing support and "fullscreen desktop" mode to love.window.
- Moved unicode text input events to their own callback function (love.textinput), removed the key repeat functions from love.keyboard and made the second argument of love.keypressed a boolean saying whether the keypress was a repeat.
- liblove now works with love.window and love.graphics in OS X
2013-08-25 16:51:42 -03:00
Alex Szpakowski
3b3c5c3711
Removed love.joystick.getBall and love.joystick.getBallCount (issue #648 )
2013-06-30 16:59:28 -03:00
Alex Szpakowski
63404f7097
Added love.graphics.getRendererInfo(infotype). Useful for creating more informative error reports and advanced debugging.
...
Returned string can be highly system-dependent, so don't rely on its output!
infotype can be "name", "version", "vendor", or "device"
2013-05-05 16:47:42 -03:00
Alex Szpakowski
4c616e409b
Renamed ParticleSystem:count, Channel:count, and all getNum* functions to get*Count (issue #602 )
2013-05-03 04:04:44 -03:00
Alex Szpakowski
4ae126ac44
Fixed some potential instability or crash issues
2013-03-03 20:23:40 -04:00
Alex Szpakowski
96161c66f6
Updated copyright text for the new year
2013-02-05 05:32:49 -04:00
Bart van Strien
7793e7f02f
CRLF to LF
2012-07-04 14:40:24 +02:00
rude
81c38e22d0
Applied the new style guidelines.
...
Well, sort of. Lot's more to be done, but this is a start.
2012-06-28 23:52:33 +02:00
Bart van Strien
8211b8f93f
Add love.joystick.reload, remove love.joystick.open and friends. (issue #392 )
...
Reload originates from love-experiments, as noted in the ticket.
2012-05-18 19:42:46 +02:00
Bart van Strien
07bd386d4e
Apply the 1-indexed joysticks patch from issue #391 .
...
Submitted by: Alexander Szpakowski
2012-03-10 14:11:20 +01:00
Bill Meltsner
be55579a22
Happy New Year, have an enormous diff
2012-01-09 02:41:11 -06:00