Commit Graph

1678 Commits

Author SHA1 Message Date
vrld 6b51c5aadc Fix issue #724: Bezier curve rendering/eval crashes with empty curves. 2013-08-29 08:31:58 +02:00
Alex Szpakowski eb052d99e8 Added love.keyboard.setKeyRepeat and love.keyboard.hasKeyRepeat (resolves issue #717) 2013-08-29 03:20:27 -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 526ccb12ad Renamed love.window.isFullscreen to love.window.getFullscreen (resolves issue #721) 2013-08-28 19:15:00 -03:00
Alex Szpakowski 040defbbfe Renamed love.mouse.setGrab to love.mouse.setGrabbed (resolves issue #720) 2013-08-28 19:13:17 -03:00
Alex Szpakowski 1375aaccb5 Renamed BezierCurve:move to BezierCurve:translate (resolves issue #723) 2013-08-28 19:10:18 -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 51d3fe22fc Always recreate the GL context in love.window.setMode - SDL_GL_MakeCurrent can return success sometimes in Windows even when the context is trashed 2013-08-28 01:07:00 -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 63815d3b52 Changed Cursor:getType to only return one value 2013-08-26 02:47:06 -03:00
Alex Szpakowski 3f1221a7f9 Reverted commit bcb6336 2013-08-26 00:53:14 -03:00
Alex Szpakowski af1cf14b7f Changed love.system.getPowerInfo to return -1 for battery percent and seconds remaining instead of nil, if the value can't be determined 2013-08-26 00:47:27 -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 035130533b Updated love.window.checkMode to work when a windowflag table is used as the third parameter 2013-08-22 20:28:50 -03:00
Alex Szpakowski 713e050b56 Removed some ParticleSystem methods which existed but did nothing since version 0.5.0 or earlier 2013-08-22 00:30:58 -03:00
Alex Szpakowski 1b5912a461 Really fixed setScissor erroring when scissoring is disabled and x,y,w,h from getScissor is used (see issue #709) 2013-08-21 19:37:26 -03:00
Alex Szpakowski 394888bd13 Fixed love.graphics.setScissor and love.graphics.setColorMask to not error if a single nil argument is given (resolves issue #709) 2013-08-21 18:52:07 -03:00
vrld 983496238f [BezierCurve] Add getDerivative(), move(), rotate() and scale(). 2013-08-21 21:44:31 +02:00
Alex Szpakowski 5c0066332f love.math.noise now returns values in the range of [0, 1] instead of [-1, 1] 2013-08-19 19:57:55 -03:00
Alex Szpakowski f7ca9ef557 Fixed race condition in Source:play (thanks Boolsheet) 2013-08-19 16:05:43 -03:00
Alex Szpakowski acfce1bf47 love.graphics.printf errors if the wrap limit parameter is negative (resolves issue #706) 2013-08-18 13:17:53 -03:00
Alex Szpakowski 96a668ecf3 Renamed CompressedData:getType to CompressedData:getFormat 2013-08-17 14:30:23 -03:00
Alex Szpakowski 72068ba519 love.graphics.isSupported now errors if an invalid string is given (see issue #690) 2013-08-17 00:12:46 -03:00
Alex Szpakowski c230098642 Fixed Geometry:getVertexMap to return 1-based vertex indices and made it return the default vertex map instead of nil if no map is set. 2013-08-16 19:25:41 -03:00
Alex Szpakowski d815374a9b Renamed the 'ModelViewMatrix' and 'ModelViewProjectionMatrix' built-in shader variables to 'TransformMatrix' and 'TransformProjectionMatrix', respectively. 2013-08-16 03:17:55 -03:00
Alex Szpakowski 14ae39eec9 Images which are too large for the system they're loaded on use a checkerboard pattern instead of erroring 2013-08-15 23:40:32 -03:00
Alex Szpakowski 76565a3e11 Renamed love.window.setCaption to love.window.setTitle (resolves issue #703) 2013-08-14 11:16:41 -03:00
Alex Szpakowski 59712c344f Removed a potentially slow codepath in SpriteBatch:add 2013-08-14 11:07:56 -03:00
Alex Szpakowski 9834897372 Fixed Canvas:clear on GL3+ systems 2013-08-13 16:05:20 -03:00
Alex Szpakowski 4f6e956f85 Fixed ChainShape:getChildEdge crashing 2013-08-11 17:50:57 -03:00
Alex Szpakowski 2561ace2d6 Fixed Fixture:getType crashing 2013-08-11 17:32:12 -03:00
Alex Szpakowski 66a773d2a7 Renamed Decoder:getBits to Decoder:getBitDepth (see issue #636) 2013-08-11 04:15:42 -03:00
Alex Szpakowski daf50698b8 Added love.filesystem.getSourceBaseDirectory and changed love.filesystem.mount to allow mounting the path returned by love.filesystem.getSourceBaseDirectory in fused mode. 2013-08-10 20:11:50 -03:00
Alex Szpakowski 7e4e5e9c0b Resolved compiler warning 2013-08-08 22:06:11 -03:00
vrld 8b53bc385e Fix line drawing artefact with nearly parallel segments. 2013-08-08 21:37:11 +02:00
Alex Szpakowski 73e9f327dc Cleaned up boot.lua a tiny bit 2013-08-08 03:19:54 -03:00
vrld 0dea115abe Add missing Polyline.{h,cpp} 2013-08-08 08:11:18 +02:00
vrld be205544b3 Issue #659: Add line joins.
Added:

love.graphics.setLineJoin(linejoin)
linejoin = love.graphics.getLineJoin()

where linjoin is one of:

- none
- miter
- bevel

Bevel and miter drawing is slightly faster than the 0.8 default (miter), while
the `none` join mode will be slower when overdraw is enabled.
2013-08-07 21:48:21 +02:00
Alex Szpakowski fc3affb9b9 Removed 'release mode' and love.releaseerrhand, and added love.filesystem.isFused (resolves issue #579).
Games which are fused (either via appending the .love to the executable or with --fused) automatically have the changes which previously only applied to fused games in release mode.
2013-08-05 15:02:50 -03:00
Alex Szpakowski dc755ed375 Removed ParticleSystem:getX/getY (resolves issue #633) 2013-08-04 18:27:36 -03:00
Alex Szpakowski a60929e9b0 Merged bartbes/love-experiments/RandomGenerator-2 into default (resolves issue #692) 2013-08-04 17:28:33 -03:00
Alex Szpakowski 50504d83a5 Missed an uncaught exception in newRandomGenerator
--HG--
branch : RandomGenerator-2
2013-08-04 17:20:14 -03:00
Alex Szpakowski 674ad9247a Added some checks for invalid numbers to love.math.setRandomState
--HG--
branch : RandomGenerator-2
2013-08-04 17:04:52 -03:00
Alex Szpakowski 7a20bbc6c4 Added an optional search order enum ("first" or "last") to love.filesystem.setIdentity and love.filesystem.mount (resolves issue #694) 2013-08-04 00:32:23 -03:00
Alex Szpakowski 4d6bdf4857 Added Source:getType 2013-08-03 21:30:47 -03:00