Richard Davey
2b533d9870
Renamed file
2018-03-28 15:03:54 +01:00
orblazer
d0e1320cbe
Add generic types and fix types on Input and Structs
2018-03-27 15:59:49 +02:00
Richard Davey
0ef92e1172
Merge branch 'pr/3439'
2018-03-21 16:06:56 +00:00
orblazer
439df07fd5
Fix "object" type on GameObjects and Input
2018-03-21 12:19:31 +01:00
Richard Davey
db613c793a
Merge branch 'master' of https://github.com/photonstorm/phaser
2018-03-21 03:17:00 +00:00
Richard Davey
8a3f06c898
Todo note
2018-03-21 03:16:55 +00:00
orblazer
7fba122321
Fix "any" types
2018-03-20 17:15:49 +01:00
orblazer
dca7996179
Fix multiple types on Physics, Texture and Input
2018-03-20 16:10:19 +01:00
orblazer
b4a30b8e43
Add callbacks on GameObjects
2018-03-19 22:27:16 +01:00
orblazer
41d7c4b715
Add callbacks on Input and Geom
2018-03-19 22:12:11 +01:00
Richard Davey
d0d05fa76e
Added descriptions and fixed some types
2018-03-19 13:22:30 +00:00
orblazer
0b1078fdb8
Update JSDoc on Input
2018-03-19 13:43:19 +01:00
Richard Davey
cc0998660e
Updated jsdocs
2018-03-18 13:43:37 +00:00
Richard Davey
b6b03b85bd
The InputPlugin.processOverOutEvents method wasn't correctly working out the total of the number of objects interacted with, which caused input events to be disabled in Scenes further down the scene list if something was being dragged in an upper scene. Fix #3399
2018-03-16 14:57:19 +00:00
Richard Davey
ee1e4f1e90
InputManager.hitTest will now factor the game resolution into account, stopping the tests from being offset if resolution didn't equal 1. #3376
2018-03-16 12:49:02 +00:00
Richard Davey
77357dbde0
jsdoc fix #3377
2018-03-16 12:39:39 +00:00
José Maria
128691b50d
set default gamepad button threshold to 1
...
this.threshold = 0 was making all gamepad buttons to be always pressed down (this.pressed = true).
this.threshold = 1 will correct the issue and in the case of analogue buttons it will only emit the event when the 'pressure' is at max.
2018-03-12 14:04:04 -03:00
Richard Davey
f94ad4bbc6
InputPlugin.update now takes the totals from the drag and pointerup events into consideration when deciding to fall through to the Scene below. Fix #3333
2018-03-05 21:49:00 +00:00
Richard Davey
af212a1837
Merge pull request #3279 from squaresun/master
...
Fix KeyboardManager keydown events keeps firing
2018-03-05 12:21:39 +00:00
Richard Davey
4d16b0c00a
eslint fixes
2018-03-05 01:45:28 +00:00
Richard Davey
1f8d0c80f9
Fixed array access
2018-03-01 04:13:30 +00:00
Richard Davey
acc4922027
Fixes to the InputPlugin re: drop zones and addition of setInteractive argument.
2018-03-01 02:46:17 +00:00
Richard Davey
550e53b81b
Fixed InputManager.updateBounds
so it factors in the document element position.
...
Also added `InputManager.resize` method, as the scale wouldn't ever be updated in the update loop if no interactive objects exist.
2018-02-28 14:27:28 +00:00
dominic
af7d619dc3
Simplify global key down emit check
2018-02-25 21:16:05 +08:00
squaresun
9af8cdcea6
Fix key.repeats not increased when key holding down
2018-02-25 21:03:58 +08:00
squaresun
c5514bcab7
Fix KeyboardManager keydown events keeps firing #3239
2018-02-24 18:20:36 +08:00
Richard Davey
b57ab091c1
The KeyCode FORWAD_SLASH
had a typo and has been changed to FORWAD_SLASH
. Fix #3271 (thanks @josedarioxyz)
2018-02-22 01:59:32 +00:00
Richard Davey
50dac412be
eslint fixes and console removal
2018-02-16 19:08:50 +00:00
Richard Davey
d23688c3e4
Added eslint fixes and overrides
2018-02-16 18:44:07 +00:00
Richard Davey
86f00eeb52
eslint fixes
2018-02-16 18:17:51 +00:00
Richard Davey
512c8df232
Updated jsdocs
2018-02-13 01:13:12 +00:00
Richard Davey
2813ac8162
Moved PluginManager and merged configs into single root file for easier changing.
2018-02-12 23:03:48 +00:00
Richard Davey
d1f5f8a82b
Added jsdocs
2018-02-12 16:01:21 +00:00
Richard Davey
c9742b6f8a
Added jsdocs
2018-02-10 02:08:53 +00:00
Richard Davey
40689d1e35
Updated jsdocs.
2018-02-07 15:27:21 +00:00
Richard Davey
2a86400a28
Added in jsdocs
2018-01-31 13:54:44 +00:00
Richard Davey
a802914243
Added in destroy methods for all managers and invoked them from Game
2018-01-31 03:38:10 +00:00
Richard Davey
a6dbacbc20
Added jsdocs.
2018-01-26 12:43:51 +00:00
Richard Davey
fabaa493ef
jsdoc work
2018-01-26 06:55:15 +00:00
Richard Davey
cb2891db8a
Added jsdocs to the Device inspector, removed out-dated properties and changed case of Device access
2018-01-25 17:03:35 +00:00
Richard Davey
cb3166850e
Fixed issue with Keyboard events for single key presses. Added new KeyMap.
2018-01-23 14:37:32 +00:00
Richard Davey
eb3c9fe341
Fix for the read-only DOMRect issue flagged in #3176
2018-01-22 12:04:14 +00:00
Richard Davey
d9da905230
Added XBox360 Controller config ( closes #3175 )
2018-01-20 14:25:28 +00:00
Richard Davey
05b45f1f9c
Added keycodes ( closes #3174 )
2018-01-20 14:22:41 +00:00
Richard Davey
4e05ad0655
The Input system will now order input based on the scenes from top to bottom
...
If the global top only flag is on and a scene consumes an input event then they won't flow any further down the scene list. This is optional (but on by default), allowing you to now correctly create a UI Scene above a game scene without the input events polluting one to the other.
2018-01-20 04:44:54 +00:00
Richard Davey
2deb9edc9e
Plugins now check to see if the Scene is already booted and adapt accordingly.
2018-01-18 14:00:31 +00:00
Richard Davey
5a333bc2fd
Updated to new Plugin format, removed injection and mapping
2018-01-18 05:18:09 +00:00
Richard Davey
e017a71f32
Game emits a boot event, which its managers listen for
2018-01-18 05:16:52 +00:00
Richard Davey
dbfd73dea1
Pointer.reset no longer resets the isDown
state or buttons
2018-01-18 00:59:38 +00:00
Richard Davey
ad49a01271
Fixed rogue input reference and hitTest signature
2018-01-16 23:50:01 +00:00
Richard Davey
f9a7939812
Lots of work migrating to the new plugin system, fixing references and exposing on the namespace
2018-01-16 22:28:29 +00:00
Dan Flettre
36de5e8805
Pass event to ProcessKeyCombo
2018-01-16 11:24:40 -06:00
Richard Davey
26fd3ee661
Renamed input manager files and refs.
2018-01-16 16:14:21 +00:00
Richard Davey
b4a01bb877
Moved file.
2018-01-16 16:02:11 +00:00
Richard Davey
08f3e70b6d
Merged Input Manager source and updated paths.
2018-01-16 16:00:37 +00:00
Richard Davey
2c5405b7e3
Moved GIM
2018-01-16 15:47:53 +00:00
Richard Davey
42409762e9
Merged Input Manager source.
2018-01-16 15:46:49 +00:00
Richard Davey
696643051a
Fixed drag events
2018-01-14 21:26:14 +00:00
Richard Davey
f9a1e27334
Removed un-used event files and references.
2018-01-12 17:20:16 +00:00
Richard Davey
874a174af7
Fixed lint issue.
2018-01-12 17:20:00 +00:00
Richard Davey
c625b8735b
Updated to using Event Emitter for all key managers and game objects. Events are now dispatched directly using arguments instead of Event objects, all managers updated to emit directly.
2018-01-12 17:09:21 +00:00
Richard Davey
296efe0e07
Removed input callbacks as all handled via events now.
2018-01-12 17:09:20 +00:00
Dan Flettre
16b672e291
set data to KeyCombo for KeyComboMatchEvent
2018-01-11 18:14:45 -06:00
Richard Davey
d8f1ba03e9
Moved repository location
2018-01-09 21:43:56 +00:00
Richard Davey
0d90f75b5f
Splitting the dev branch up into versions.
2016-11-22 01:36:56 +00:00
Richard Davey
13d8f332f4
Drag events.
2016-11-10 00:53:29 +00:00
Richard Davey
fb8da7ac08
Fixed transform look-up.
2016-11-10 00:41:15 +00:00
Richard Davey
89885dcb7c
Refactored the Input Manager.
2016-11-10 00:10:39 +00:00
photonstorm
1e15012a91
PIXI.CanvasPool has been moved into the Phaser utils
folder, and renamed to Phaser.CanvasPool
. All references to PIXI.CanvasPool have been updated to match the new namespace.
2016-09-28 12:53:04 +01:00
photonstorm
ad0e4aca2e
Large batch of jshint fixes.
2016-08-25 13:03:41 +01:00
photonstorm
04e70e820c
Updated KeyCode docs placement #2653
2016-08-18 15:35:43 +01:00
photonstorm
94498fcd32
The InputHandler.flagged property has been removed. It was never used internally, or exposed via the API, so was just overhead.
2016-07-11 14:17:41 +01:00
photonstorm
ee202667ed
Huge docs update for all of the Game Object events.
2016-07-08 11:28:30 +01:00
photonstorm
cb0861d881
The canvas created by Phaser.Debug for use when displaying debug data is no longer stored in the CanvasPool, and is instead a stand-alone canvas, free from ever being re-used by another game object.
2016-07-04 12:56:52 +01:00
photonstorm
b24de1e561
Polygon.contains would only work with non-flattened Polygon objects. It now works with both flat and non-flat Polygons.
...
Graphics objects enabled for input would fail to do anything if a Phaser Polygon was given to the Graphics object (which it was in nearly all cases), as it wouldn't detect input correctly with flattened polygons (thanks @symbiane #2591 )
2016-06-27 14:51:25 +01:00
Richard Davey
cd8bb5a216
Removed keyCode modifier ( #2542 )
2016-06-09 22:03:09 +01:00
Richard Davey
57642afc24
Fixed keyboard issue.
2016-06-09 20:55:21 +01:00
photonstorm
88f47e2497
Keyboard now uses a new internal method getKeyCode
to normalize the key code value based on browser support. It first checks for event.key
, then event.keyIdentifier
and finally event.keyCode
(thanks @SVasilev #2542 )
2016-06-09 16:37:32 +01:00
photonstorm
a65f9c7e4b
Group.onChildInputDown is a new Signal that you can listen to. It will be dispatched whenever any immediate child of the Group emits an onInputDown
signal itself. This allows you to listen for a Signal from the Group, rather than every Sprite within it.
...
Group.onChildInputUp is a new Signal that you can listen to. It will be dispatched whenever any immediate child of the Group emits an `onInputUp` signal itself. This allows you to listen for a Signal from the Group, rather than every Sprite within it.
Group.onChildInputOver is a new Signal that you can listen to. It will be dispatched whenever any immediate child of the Group emits an `onInputOver` signal itself. This allows you to listen for a Signal from the Group, rather than every Sprite within it.
Group.onChildInputOut is a new Signal that you can listen to. It will be dispatched whenever any immediate child of the Group emits an `onInputOut` signal itself. This allows you to listen for a Signal from the Group, rather than every Sprite within it.
2016-06-09 16:19:11 +01:00
photonstorm
c64749fef2
Added missing properties.
2016-06-09 14:54:39 +01:00
photonstorm
92d3a5efa8
Adds a callback that is fired every time 'Pointer.processInteractiveObjects' is called.
...
The purpose of `processInteractiveObjects` is to work out which Game Object the Pointer is going to
interact with. It works by polling all of the valid game objects, and then slowly discounting those
that don't meet the criteria (i.e. they aren't under the Pointer, are disabled, invisible, etc).
Eventually a short-list of 'candidates' is created. These are all of the Game Objects which are valid
for input and overlap with the Pointer. If you need fine-grained control over which of the items is
selected then you can use this callback to do so.
The callback will be sent 3 parameters:
1) A reference to the Phaser.Pointer object that is processing the Items.
2) An array containing all potential interactive candidates. This is an array of `InputHandler` objects, not Sprites.
3) The current 'favorite' candidate, based on its priorityID and position in the display list.
Your callback MUST return one of the candidates sent to it.
2016-06-09 14:49:10 +01:00
photonstorm
7c2d1d4ab8
Pointer.interactiveCandidates is a new Array that is erased and re-populated every time this Pointer is updated. It contains references to all of the Game Objects that were considered as being valid for processing by this Pointer, during the most recent update. To be valid they must have suitable a priorityID
, be Input enabled, be visible and actually have the Pointer over them. You can check the contents of this array in events such as onInputDown
, but beware: it is reset every update.
...
Pointer.swapTarget allows you to change the `Pointer.targetObject` object to be the one provided. This allows you to have fine-grained control over which object the Pointer is targeting.
2016-06-09 14:36:15 +01:00
photonstorm
fa43bec19f
PIXI.DisplayObjectContainer.ignoreChildInput is a new property. If true
then the children will _not_ be considered as valid for Input events. Because this has been applied to DisplayObjectContainer
it means it's available in Group, Sprite and any other display level object. Using this boolean you can disable input events for all children in an entire Group, without having to iterate anything or deep-set flags.
...
InputHandler._pointerOverHandler and _pointerOutHandler have new arguments `silent` - if `true` then they will not dispatch any Signals from the parent Sprite.
2016-06-09 14:32:56 +01:00
photonstorm
e8e7e27184
The DisplayObject.renderOrderID
used to run in reverse. I.e. in a display list with 10 sprites on it, the first sprite (at the bottom of the list, rendering behind all the others) would have a renderOrderID
of 9, where-as the top-most sprite, rendering above all others, would have a renderOrderID
of 0. While this didn't cause any side-effects internally, it's arguably illogical. So the process has been reversed, and renderOrderID
s are now accumulative, starting at zero each frame, and increasing as it iterates down the display list. So the higher the ID, the more "on-top" of the output the object is.
...
`InputHandler.validForInput` and `Pointer.processInteractiveObjects` have been updated to reflect the new `renderOrderID` sequence (see above).
2016-06-09 12:32:37 +01:00
Richard Davey
1956d3584e
InputHandler.dragStopBlocksInputUp is a boolean that allows you to control what happens with the input events. If false
(the default) then both the onInputUp
and onDragStop
events will get dispatched when a Sprite stops being dragged. If true
then only the onDragStop
event is dispatched, and the onInputUp
is skipped.
2016-06-07 02:21:12 +01:00
Richard Davey
913936f080
jshint fix.
2016-06-07 01:50:38 +01:00
Richard Davey
66b846cbdb
InputHandler.dragDistanceThreshold gives you more fine control over when a Sprite Drag event will start. It allows you to specify a distance, in pixels, that the pointer must have moved before the drag will begin.
...
InputHandler.dragTimeThreshold gives you more fine control over when a Sprite Drag event will start. It allows you to specify a time, in ms that the pointer must have been held down for, before the drag will begin.
InputHandler.downPoint is a new Point object that contains the coordinates of the Pointer when it was first pressed down on the Sprite.
2016-06-07 01:28:06 +01:00
Richard Davey
8da3395407
Merge pull request #2471 from cwleonard/gamepad
...
Gamepad problems in Google Chrome
2016-06-02 15:46:03 +01:00
photonstorm
9b9e398c73
InputHandler.checkPointerDown had an incorrect single pipe character |, instead of an OR check ||, and an isDown
check, causing Button Over events to fail (thanks @pengchuan #2486 )
2016-05-23 13:03:11 +01:00
photonstorm
74af2079b6
Swap to use worldScale instead of worldTransform.
2016-05-11 16:37:31 +01:00
photonstorm
9649f714bb
InputHandler.checkPointerDown and checkPointerOver will now test the worldTransform scale property of a Sprite. If zero it will fast return, where-as before it would incorrectly report an up event (thanks @jaapaurelio #2466 )
2016-05-11 12:25:35 +01:00
Casey Leonard
9ede913609
gamepad bugs in Chrome
...
fixes issues with being unable to connect a gamepad in Chrome and losing
the gamepad when focus is lost to the game
2016-05-07 19:07:16 -04:00
photonstorm
45118e7a60
Docs fix.
2016-05-04 23:34:15 +01:00
photonstorm
16378713b4
JSDocs update ( #249 )
2016-04-27 12:57:41 +01:00
photonstorm
7d9c817373
Dragging a Sprite while the camera was moving would slowly cause the Sprite position to become out of sync the further the camera moved. A Sprite being dragged now tracks the camera position during the drag update and adjusts accordingly (thanks @jeroenverfallie #1044 )
2016-04-19 01:54:24 +01:00
photonstorm
787111c12c
A Game Object with fixedToCamera = true
that was then set for Input, and enabled for dragging from its center (input.enableDrag(true)
) would throw an error upon being dragged (thanks @solusipse #2367 )
2016-04-07 00:44:53 +01:00
photonstorm
f40cfbe2ae
2015 - 2016.
2016-04-04 22:16:16 +01:00
photonstorm
d6942991bc
Docs update (in light of browser extensions causing us grief)
2016-04-04 22:06:15 +01:00
zeterain
a948dab895
Check for sprite destruction in onInputDown event.
...
This sprite might have been destroyed during the onInputDown event. Check to see if it was.
Also, set the pointer's dirty flag before the altered if-block just in case the function returns.
2016-03-22 15:54:41 -06:00
Stoneman1
4d587d3e40
Fixed issue with not removing mouseoutglobal eventlistener
2016-02-19 15:15:31 +02:00
Richard Davey
74fd042749
If the Mouse was over a Sprite and you then clicked it, it would dispatch another Over event. This is now surpressed if the Over event has already been dispatched previously (thanks @McFarts #2133 )
...
InputHandler.pointerOver could fail to return anything in some instances, now always returns a boolean.
2016-02-17 02:07:07 +00:00
Richard Davey
83a35e41d6
ctrl + click is now only considered a right-click if event.buttons = 1, this should allow you to use ctrl as a key modifier on Windows (and any device with a multi-button mouse attached) and still use ctrl + click on OS X / trackpads for a right-click (thanks @yuvalsv #2167 )
2016-02-17 01:46:55 +00:00
Richard Davey
1932515f56
Fixed a really nasty bug in Chrome OS X where a ctrl + click (i.e. simulated right-click) on a trackpad would lock up the Pointer leftButton, causing future clicks to fail. This is now handled by way of a mouseout listener on the window object, sadly the only way to force a mouseup in Chrome (thanks @KyleU #2286 )
2016-02-17 01:26:35 +00:00
Richard Davey
818c64291a
SinglePad.onDownCallback has been moved to the end of the method, so that DeviceButton.start is now called before the callback fires, meaning if you check the status of the button in the onDownCallback it will now be fully activated (thanks @suicidepills #2159 )
2016-02-04 22:46:18 +00:00
photonstorm
829b1e7ad1
Events.onDragUpdate has a new 6th property fromStart
which is a boolean. You can determine if the event was the result of the start of a drag movement or not by polling it ( #2155 )
2016-02-04 17:00:30 +00:00
photonstorm
882c8b8d40
InputHandler.consumePointerEvent has been removed, as it was never used internally anyway, so was misleading (thanks @GregoryAveryWeir #2227 )
2016-02-04 16:46:35 +00:00
puzzud
c31d8dc78a
Reinstated fix for #1285 , regarding setting Phaser.SinglePad.callbackContext in addCallbacks method.
2015-10-24 20:13:49 -04:00
puzzud
492fdc98eb
Phaser.SinglePad.addCallbacks now sets member callbackContext to the first parameter, context.
2015-10-24 20:01:44 -04:00
Paul
531cd49f06
Created Phaser.KeyCode enumeration / pseudo-type
...
- Impact: none/foward-migration; fully backwards compatible
- Moves the key code constants in Keyboard to a KeyCode type.
- Duplicates the KeyCodes in the Keyboard object for backward
compatiblity.
- KeyCode properties are listed in documentation
- Updates documentaion to refer to Phaser.KeyCode
- Adds in future 'keycode' expansion capabilities,
as indicated by the KeyCode documentation, if the constants
are used in code.
Closes #2031
2015-09-29 17:59:26 -07:00
Richard Davey
c1d0ec0f34
Local vars to reduce file size.
2015-09-29 16:06:44 +01:00
Richard Davey
d0930bc161
Keyboard.addCallbacks didn't check to see if the arguments were null
, only if they were undefined
making the jsdocs misleading.
2015-09-23 23:18:36 +01:00
photonstorm
2633f8ce6d
InputHandler.validForInput now checks if the game object has input.enabled
set to false
and doesn't validate it for input if that's the case.
2015-09-22 15:20:23 +01:00
Richard Davey
9f08442304
Merge pull request #2103 from pnstickne/wip-2062
...
Fixes #2062 and forward-support for pointer modes
2015-09-22 17:14:32 +03:00
photonstorm
27457c2b0f
Touch.addTouchLockCallback has a new argument onEnd
which allows the callback to fire either on a touchstart or a touchend event.
2015-09-22 11:46:08 +01:00
Paul
31e5202eff
Fixes #2062 and forward-support for pointer modes
...
Impact:
- *none for touch devices*
- *low* / 'expected behavior' for mouse devices
Adds a PointerMode enumeration value for better simple input
discrimination in the future.
The added Button#justReleasedPreventsOver controls if a just-release event
on a pointer prevents it from being able to trigger an over event.
The default value is PointerMode.CONTACT which means this 'release guard'
applies only to touch inputs.
It should fix #2062 as Mouse (PointerMode.CURSOR) input is not caught in the default.
Also expands Button#forceOut to accept a PointerMode value such that it
can be controlled per-input mode.
This is a configurable partial revert of a possibly rogue commit in 2.1.3
and the behavior persists through 2.4.3.
2015-09-22 01:12:43 -07:00
Richard Davey
f8ef567641
Merge pull request #2081 from pnstickne/wip-inputhandler-docs2
...
Fixes incorrect "Pointer" type documentation and parameter names in InputHandler
2015-09-14 13:15:08 +03:00
Paul
4474b8fde3
Fixes incorrect type and parameter names
...
- Impact: none; documentation and local variable names only
- Incorrect documentation that claimed to take a Pointer when they really
took a Pointer ID is fixed
- Also updates parameter names for consistenct/clarity
2015-09-12 17:32:40 -07:00
Richard Davey
96dae9bf2e
Merge pull request #2055 from pmcmonagle/dev
...
Added useCapture flags to removeEventListener where approriate
2015-09-10 00:03:19 +03:00
Richard Davey
6c9e43ad36
DeviceButton was setting a duration
property on itself, which went against the read only getter of duration (thanks @winstonwolff)
2015-09-09 21:58:50 +01:00
Paul McMonagle
ad38fff083
Reordered removeEventListener calls to match addEventListener order
2015-09-04 17:11:50 -04:00
Paul McMonagle
c2bf22ef7c
Added useCapture flags to removeEventListener where approriate
...
Event listeners added with true passed in as the useCapture flag are only removed when true is also passed into the removeEventListener call. Adding this flag to the stop method where appropriate fixes a memory leak in IE where events on window are never removed.
See https://msdn.microsoft.com/en-us/library/ff975250(v=vs.85).aspx
2015-09-02 14:36:49 -04:00
photonstorm
99fbf35236
* Pointer.withinGame is no longer automatically set to 'false' in the Pointer.stop method - it will check if the Pointer actually is within the stage bounds and only set withinGame
to false if it's outside the bounds.
...
* MSPointer now has an `onPointerUpGlobal` handler for when the pointer is released outside of the canvas, but still within the browser window. This means that in IE11 a Sprites `onInputUp` event will now trigger even when outside the canvas (thanks @bvargish #2000 )
* MSPointer now has handles for the pointer being over and outside of the canvas element, which sets the Pointer.withinGame booleans accordingly. It also triggers the Mouse.mouseOutCallback and Mouse.mouseOverCallback callbacks respectively.
* The MSPointer event listeners have been renamed to all lower-case, i.e. 'pointerDown' is now 'pointerdown'.
2015-08-20 12:47:50 +01:00
photonstorm
50516e3d34
Testing CanvasPool.
2015-08-03 14:33:12 +01:00
Richard Davey
a56cd31638
jsdoc updates.
2015-07-31 18:39:37 +01:00
photonstorm
1393c8a98b
InputHandler.pointerOver would get stuck in an 'isOver' state if the Sprite changed its visibility during an onUp callback (thanks @Cristy94 #1955 )
2015-07-30 14:45:34 +01:00
photonstorm
a4321e56e3
* Pointer.isDown was reset before the Input.onUp event, meaning you couldn't get the Pointer.duration from within the event.
...
* Pointer.isDown was reset before the Input tap calculations, meaning onTap wouldn't dispatch (thanks @stovenator #1953 )
2015-07-30 14:08:26 +01:00
photonstorm
962066102c
Pointer fixes for Linux FireFox ( #1932 #1944 )
2015-07-28 14:18:36 +01:00
photonstorm
fd6c29e451
Pointer.move would accidentally reset the isDown
status of the Pointer on touch devices, which broke things like Sprite input events when built to native apps or run locally ( #1932 #1943 )
2015-07-27 13:34:06 +01:00
Richard Davey
2e12cd70ed
DeviceButton would try to set altKey
, shiftKey
and ctrlKey
even for Joypads (thanks @zatch #1939 )
2015-07-26 13:01:24 +01:00
Richard Davey
aeda044143
Safari on OSX wouldn't recognise button presses on trackpads (thanks JakeCake)
2015-07-23 20:54:59 +01:00
photonstorm
f15fe6706c
All undefined argument checks were changed from if (typeof x === 'undefined')
to if (x === undefined)
removing the typeof check and saving some bytes across the codebase in the process.
2015-07-22 10:37:15 +01:00
photonstorm
92486f85d9
Removed console.log.
2015-07-20 14:01:45 +01:00
photonstorm
cf74eaa396
MSPointer now checks the pointerType
property of the DOM event and if it matches 'mouse' it will update Input.mousePointer
, rather than Input.pointer1
(or whatever the next free Pointer was).
2015-07-20 14:01:21 +01:00
photonstorm
7ffbeb8a2a
Added Mouse consts back in ( #1903 )
2015-07-20 12:38:41 +01:00
photonstorm
b470601faf
Tidying up docs.
2015-07-17 17:50:53 +01:00
photonstorm
c2812a7b5c
jshint fixes and renamed float to padFloat.
2015-07-17 14:11:11 +01:00
photonstorm
5d0788b47d
Consolidated all Pointer buttons into the new DeviceButton class.
2015-07-17 13:52:09 +01:00
photonstorm
32ea5bee03
Fixes #1916 - but am now working on the DeviceButton class to tidy it all up.
2015-07-17 12:24:08 +01:00
Richard Davey
8b165b9225
Reduce booleans.
2015-07-12 16:19:23 +01:00
Richard Davey
41d702b485
Pointer.isUp and isDown are now set in the updateButtons method based on the state of ANY button on the device, jsdocs also updated to reflect this ( #1902 )
2015-07-12 11:56:25 +01:00
Richard Davey
b0a8d3d78c
Mouse.button and MSPointer.button properties removed and jsdocs expanded to explain the correct path to now take ( #1903 )
2015-07-12 11:47:20 +01:00
Richard Davey
03e2f1a2b5
On trackpads Pointer.updateButtons now checks for the ctrlKey being pressed and sets rightButton to true as a result.
2015-07-09 19:26:00 +01:00
photonstorm
89c87bc9db
Updated addKeys to take an object instead of 2 arrays - it's just cleaner and reads easier in code.
2015-07-09 14:28:58 +01:00
photonstorm
a19479d948
jsdocs update.
2015-07-07 16:58:41 +01:00
photonstorm
157df30696
Pointer button handling has been given an overhaul. It has the following new boolean properties: leftButton
, rightButton
, middleButton
, backButton
, forwardButton
and eraserButton
. So you can now easily check which buttons are active and build right or middle click support into your games. The Pointer object normalises these properties for you, regardless if they came from a MouseEvent or PointerEvent (thanks @youssefdetovernickr for the idea #1848 )
2015-07-07 16:53:56 +01:00
photonstorm
ab092c5c14
Keyboard.addKeys is a practical way to create an object containing user selected hotkeys. For example: addKeys( [Phaser.Keyboard.W, Phaser.Keyboard.S, Phaser.Keyboard.A, Phaser.Keyboard.D], [ 'up', 'down', 'left', 'right' ] );
would return an object containing the properties up
, down
, left
and right
that you could poll just like a Phaser.Key object. (thanks @Mourtz #1857 )
2015-07-02 14:15:06 +01:00
Richard Davey
755a247e31
Merge pull request #1857 from Mourtz/master
...
Implemented Keyboard.AddKeys function.
2015-07-02 13:54:18 +01:00
photonstorm
102c74e121
Deprecated the following:
...
* Camera.screenView
* ScaleManager.maxIterations
* ScaleManager.enterPortrait (see onOrientationChange)
* ScaleManager.enterLandscape (see onOrientationChange)
* ScaleManager.enterFullScreen (see onFullScreenChange)
* ScaleManager.leaveFullScreen (see onFullScreenChange)
* ScaleManager.fullScreenFailed (see onFullScreenError)
* ScaleManager.checkResize
* ScaleManager.checkOrientation
* ScaleManager.setScreenSize (see updateLayout)
* ScaleManager.setSize (see reflowCanvas)
* ScaleManager.checkOrientationState (see reflowCanvas)
* ScaleManager.orientation (see screenOrientation)
* Gamepad.disabled (see enabled)
* Input.currentPointers (see totalActivePointers)
* Input.disabled (see enabled)
* Keyboard.disabled (see enabled)
* Mouse.disabled (see enabled)
* Mouse.mouseMoveCallback (see Input.addMoveCallback)
* MSPointer.disabled (see enabled)
* Touch.disabled (see enabled)
* Cache.getUrl (see getURL)
* Math.truncate (see Math.trunc)
* Math.snapToInArray (see Phaser.ArrayUtils.findClosest)
* Math.interpolateFloat (see Math.linear)
* Math.normalizeLatitude (use Phaser.Math.clamp(lat, -90, 90))
* Math.normalizeLongitude (use Phaser.Math.wrap(lng, -180, 180))
* Math.chanceRoll (use Phaser.Utils.chanceRoll)
* Math.numberArray (use Phaser.ArrayUtils.numberArray)
* Math.numberArrayStep (use Phaser.ArrayUtils.numberArrayStep)
* Math.limitValue (use Phaser.Math.clamp)
* Math.randomSign (use Phaser.Utils.randomChoice(-1, 1))
* Math.angleLimit (use Phaser.Math.clamp)
* Math.getRandom (use Phaser.ArrayUtils.getRandomItem)
* Math.removeRandom (use Phaser.ArrayUtils.removeRandomItem)
* Math.floor (use Math.trunc)
* Math.ceil (use Phaser.Math.roundAwayFromZero)
* Math.shift (use Phaser.ArrayUtils.rotate)
* Math.shuffleArray (use Phaser.ArrayUtils.shuffle)
* Math.distanceRounded (do the rounding locally)
* Canvas.getOffset (see Phaser.DOM.getOffset)
* Canvas.getAspectRatio (see Phaser.DOM.getAspectRatio)
* TilemapLayer.tileColor (use TilemapLayer.debugSettings.missingImageFill)
* Phaser.ArrayList alias removed, now use Phaser.ArraySet
* Utils.transposeArray (see Phaser.ArrayUtils.transposeMatrix)
* Utils.rotateArray (see Phaser.ArrayUtils.rotateMatrix)
* Utils.shuffle (see Phaser.ArrayUtils.shuffle)
2015-06-17 03:14:31 +01:00
Alex Mourtziapis
7252666e9a
fixed minor jshint warnings.
2015-06-15 04:35:06 +03:00
Alex Mourtziapis
9d16e3e9a0
Update Keyboard.js
2015-06-15 04:33:40 +03:00
Alex Mourtziapis
4cc3777d36
Fixed some Travis CI errors.
2015-06-15 00:41:37 +03:00
Alex Mourtziapis
565d8e6e4a
Implemented Keyboard.AddKeys function.
2015-06-14 23:35:38 +03:00
photonstorm
2b0abb67dd
onDragUpdate is a new signal that is dispatched whenever a Game object enabled for input and drag is moved by a pointer (i.e. during a drag event). See the Phaser.InputHandler.enableDrag
docs for parameter details and the new Phaser Example.
2015-06-04 20:58:00 +01:00
photonstorm
fcb2dc8306
Added snapPoint value (currently unused)
2015-05-26 20:01:57 +01:00
photonstorm
5278c16acc
Swapped to using touchlock object.
2015-05-05 17:03:27 +01:00
photonstorm
4a91d97812
Input.addMoveCallback used to return the index of the callback entry in the internal moveCallbacks
array. However as callbacks were removed the indexes became invalid, potentially causing a future Input.deleteMoveCallback
to remove the wrong callback entirely or error. Input.deleteMoveCallback now takes the original callback and context as its parameters to ensure deletion safety.
2015-05-05 16:53:02 +01:00
photonstorm
f265f98eb4
Input.Touch.addTouchLockCallback allows you to add a callback that will be invoked automatically upon a touchstart event. This is used internally by the SoundManager and Video objects to handle mobile device unlocking, but is exposed publicly as well.
2015-05-05 16:24:49 +01:00
photonstorm
f032578f27
Removed Input.moveCallback
and Input.moveCallbackContext
as neither are used any longer. Use Input.addMoveCallback
.
2015-05-05 16:09:22 +01:00
photonstorm
b645b277aa
jsdoc fix.
2015-04-27 16:22:36 +01:00
photonstorm
8bca406889
Console update.
2015-04-13 11:58:44 +01:00
photonstorm
67039df214
jsdoc fixes.
2015-03-27 10:47:25 +00:00
photonstorm
ca752cc59c
jsdoc updates.
2015-03-23 08:13:59 +00:00
photonstorm
5a9b509b44
ArraySet.removeAll allows you to remove all members of an ArraySet and optionally call destroy
on them as well.
...
GameObject.input.dragStartPoint now stores the coordinates the object was at when the drag started. This value is populated when the drag starts. It can be used to return an object to its pre-drag position, for example if it was dropped in an invalid place in-game.
2015-03-19 00:51:13 +00:00
photonstorm
a69e53f901
Copyright date change.
2015-02-25 03:36:23 +00:00
photonstorm
f613e5882e
Allowed Keyboard and Gamepad to be optional.
2015-02-19 05:00:41 +00:00
photonstorm
8483eac6aa
Removing all use of _cache from all Game Objects.
2015-02-16 17:22:51 +00:00
photonstorm
9670c8aa86
InputHandler.enableDrag with a boundsRect set now takes into account the Sprites anchor when limiting the drag (thanks @unindented #1593 )
...
InputHandler.enableDrag with a boundsSprite set now takes into account both the Sprites anchor and the boundsSprite anchor when limiting the drag.
2015-02-16 15:49:46 +00:00
photonstorm
ae198e9364
InputHandler was using the wrong property in checkBoundsSprite
when fixedToCamera (thanks @yig #1613 )
2015-02-14 19:10:06 +00:00
photonstorm
aa2df803b7
Pointer.stop would call event.preventDefault
if Pointer._stateReset
was true
, which is always true
after a State has changed and before Pointer.start has been called. However this broken interacting with DOM elements in the case where the State changes and you immediately try to use the DOM element without first having clicked on the Phaser game. An additional guard was added so preventDefault
will now only be called if both _stateReste
and Pointer.withinGame
are true (thanks @satan6 #1509 )
2015-02-11 16:03:24 +00:00
photonstorm
c891d617d9
Swapped back to 2.2.2 expected setting.
2015-02-08 21:57:09 +00:00
photonstorm
9cdcdc7bc5
Device.touch checks if window.navigator.maxTouchPoints
is >= 1
rather than > 1, which now allows touch events to work properly in Chrome mobile emulation.
2015-02-05 06:12:20 +00:00
photonstorm
5bd231d532
JSDoc fixes.
2015-02-05 05:13:22 +00:00
photonstorm
8dec37107e
MSPointer.capture allows you to optionally event.preventDefault the pointer events (was previously always on)
...
MSPointer.event now stores the most recent pointer event.
MSPointer.pointerDownCallback, pointerMoveCallback and pointerUpCallback all allow you to set your own event based callbacks.
2015-02-05 05:12:00 +00:00
photonstorm
f55ba6755f
jsdoc fix
2015-02-03 21:32:39 +00:00
photonstorm
3eba508382
Sprite.events.onDragStart has 2 new parameters x
and y
which is the position of the Sprite before the drag was started. The full list of parameters is: (sprite, pointer, x, y)
. This allows you to retain the position of the Sprite prior to dragging should dragFromCenter
have been enabled (thanks @vulvulune #1583 )
2015-02-03 21:32:39 +00:00
Richard Davey
a2854d21fd
Merge pull request #1580 from integricho/fix#1551
...
fix #1551 - detect mouseup on tilesprites
2015-02-03 21:16:33 +00:00
photonstorm
7003b65df6
Added missing properties to the InputHandler prototype, reducing hidden class modifications.
2015-02-03 20:28:18 +00:00
Andrean Franc
b52b765c53
fix #1551 - detect mouseup on tilesprites
2015-01-28 19:31:36 +01:00
photonstorm
d6ea8fb956
jsdoc updates (spelling mistakes, code formatting, etc)
2015-01-28 17:18:33 +00:00
photonstorm
c1eb456ed2
Mouse.mouseMoveCallback is flagged as deprecated.
2015-01-02 04:14:44 +00:00
Richard Davey
81f356c235
Merge pull request #1386 from pnstickne/wip-docs-1130
...
Assorted documentation/consistency updates
2014-12-01 12:07:10 +00:00
Paul
d15037e283
Event-Signal object count optimization
...
There are a bunch of signals added for Sprites; more when input is
enabled. However, very few of these signals are ever actually used. While
the previous performance update related to Signals addressed the size of
each Signal object, this update is to reduce the number of Signal objects
as used by the Events type.
As a comparison the "Particle: Random Sprite" demo creates 3200+ Signals;
with this change there less than 70 signals created when running the same
demo. (Each Event creates at 8 signals by default, and there is an Event
for each of the 400 particles.) While this is an idealized scenario, a
huge amount (of albeit small) object reduction should be expected.
It does this by creating a signal proxy property getter and a signal
dispatch proxy. When the event property (eg. `onEvent`) is accessed a new
Signal object is created (and cached in `_onEvent`) as required. This
ensures that no user code has to perform an existance-check on the event
property first: it just continues to use the signal property as normal.
When the Phaser game code needs to dispatch the event it uses
`event.onEvent$dispath(..)` instead of `event.onEvent.dispatch(..)`. This
special auto-generated method automatically takes care of checking for if
the Signal has been created and only dispatches the event if this is the
case. (If the game code used the `onEvent` property itself the event
deferal approach would be defeated.)
This approach is designed to require minimal changes, not negatively
affect performance, and reduce the number of Signal objects and
corresponding Signal/Event resource usage.
The only known user-code change is that code can add to signal (eg.
onInput) events even when input is not enabled - this will allow some
previously invalid code run without throwing an exception.
2014-11-30 21:39:25 -08:00
Paul
dab8772de0
Documentation - consistency updates
...
- Updated `readOnly` doclet to `readonly`
- `array` refined to `type[]`, where such information was immediately
determinable.
- Updated {Any}/{*} to {any}; {...*} is standard exception
- Udated {Object} to {object}
2014-11-30 04:03:35 -08:00
photonstorm
a012d8caa2
jsdoc update
2014-11-29 19:40:50 +00:00
photonstorm
c4b81ff6ea
jsdoc fixes.
2014-11-25 00:24:28 +00:00
photonstorm
69b57073f2
Added missing duration parameter.
2014-11-20 21:19:09 +00:00
photonstorm
7e4a494f13
Keyboard.justPressed has bee renamed to Keyboard.downDuration which is a much clearer name for what the method actually does.
...
Keyboard.justReleased has bee renamed to Keyboard.upDuration which is a much clearer name for what the method actually does.
Keyboard.downDuration, Keyboard.upDuration and Keyboard.isDown now all return `null` if the Key wasn't found in the local keys array.
2014-11-20 20:55:51 +00:00
Geoff Gaudreault
dbde5ee913
Keyboard.js does not reflect Phaser.Key changes
...
Calling justPressed or justReleased on Phaser.Keyboard throws an exception. Changed to reflect new method names in Phaser.Key
I imagine you'd want these methods renamed as well, but it appears to be called by a few other classes and I didn't want a huge pull-request.
2014-11-20 11:23:43 -08:00
Richard Davey
5fa06a241b
Merge pull request #1325 from pnstickne/wip-collections
...
ArrayList/LinkedList updates
2014-11-16 18:54:24 +00:00
photonstorm
527934d909
Key.justPressed has bee renamed to Key.downDuration which is a much clearer name for what the method actually does. See Key.justDown for a nice clean alternative.
...
Key.justReleased has bee renamed to Key.upDuration which is a much clearer name for what the method actually does. See Key.justUp for a nice clean alternative.
Key.justDown allows you to test if a Key has just been pressed down or not. You can only call justDown once per key press. It will only return `true` once, until the Key is released and pressed down again. This allows you to use it in situations where you want to check if this key is down without using a Signal, such as in a core game loop (thanks @pjbaron #1321 )
Key.justUp allows you to test if a Key has just been released or not. You can only call justUp once per key press. It will only return `true` once, until the Key is pressed down and released again. This allows you to use it in situations where you want to check if this key is up without using a Signal, such as in a core game loop (thanks @pjbaron #1321 )
2014-11-13 13:01:58 +00:00
Richard Davey
5dc6a8a8c5
Merge pull request #1321 from pjbaron/dev
...
justDown property indicates if a key has been newly pressed since last time you checked
2014-11-13 12:39:24 +00:00
Paul
aa3c21ade7
ArraySet/LinkedList - minor updates
...
- Renamed ArrayList to ArraySet
- Added ArrayList is a deprecated proxy for compatibility
- Updated internal code to use ArraySet
- ArraySet can be constructed with an array; if the caller is willing to
accept some responsibility this can remove the O(n^2) behavior of
repeatedly calling `add`.
- Updated Group.filter to take advantage of this
- ArraySet.total is read-only proxy for for list.length
- Fixes ArraySet.setAll where it would only set properties with truthy
values
- Updated documentation
2014-11-13 01:41:08 -08:00
Pete Baron
d1a8ecf3e6
Added justDown access to _justDown internal boolean. Records whether the key has been pressed since the last time it was checked. Resets to false only when it is read. Used for anything that needs to know when a key is first pressed with no autorepeat, without using closures or callbacks.
2014-11-13 18:34:36 +13:00
Paul
7004d68cbd
Mouse Scroll Events - device separation
...
- The wheel event type is now determined in by Device
- The various input checking in Device have been moved to a new function
2014-11-12 13:24:03 -08:00
Paul
a0dcc61df2
Mouse Scroll Events - quibbles
2014-11-12 04:01:50 -08:00
Paul
796b2a7f2f
Mouse Scroll Events - added support for WheelEvent, fixes
...
- Added support for the Wheel Event, which is the DOM3 spec.
- Wheel Scroll Event (old non-FF) and DOM Mouse Wheel (old FF) are
supported via a non-exported reused wrapper object, WheelEventProxy.
The proxy methods are generated one-time dynamically; future changes
to the Mouse class (such as requiring an opt-in for mouse scroll events)
could bypass secondary stub generation.
- FIX: Only ONE of the mouse wheel events is listened too, newest standard first.
This fixes a bug in FF where it would use the default DOMMouseWheel.
2014-11-12 03:53:26 -08:00
photonstorm
1352b526c7
Merged final Pixi v2.1.0 release.
2014-11-11 23:24:50 +00:00
photonstorm
0a86a7ef51
Time.now can no longer be relied upon to contain a timestamp value. If the browser supports requestAnimationFrame then Time.now
will contain the high resolution timer value that rAf generates. Otherwise it will contain the value of Date.now. If you require the actual time value (in milliseconds) then please use Time.time
instead. Note that all Phaser sub-systems that used to rely on Time.now
have been updated, so if you have any code that extends these please be sure to check it.
2014-11-08 20:01:10 +00:00
Richard Davey
f4237b3130
Merge pull request #1272 from pnstickne/wip-1246b
...
Button - bug fixes, issue #1246 (try number two)
2014-11-04 23:51:46 +00:00
Richard Davey
a4870a7e62
Merge pull request #1283 from pnstickne/wip-pointer-mgmt
...
Input - Minor Pointer refactor and documentation updates
2014-11-02 12:24:50 +00:00
photonstorm
30159691fa
Fixed onClickTrampoline jsdocs.
2014-11-02 12:20:19 +00:00
Richard Davey
21a47faaed
Merge pull request #1282 from pnstickne/wip-trampoline-click
...
Click Trampolines - support to trampoline pointer events into 'click' events
2014-11-02 12:15:37 +00:00
Richard Davey
5a23b77ec9
Merge pull request #1257 from pnstickne/wip-1191
...
Input "enabled/disabled" API and documentation consistency updates
2014-11-02 12:12:19 +00:00
photonstorm
e57c700816
The Gamepad.addCallbacks context parameter was never actually remembered, causing the callbacks to run in the wrong context (thanks @englercj #1285 )
2014-11-02 11:04:02 +00:00
Paul
2f460aaf8a
Browser incompatibility fix - MAX_SAFE_INTEGER
...
- Number.MAX_SAFE_INTEGER is only defined in ES6 and not currently cross-browser
2014-11-01 09:50:28 -07:00
Paul
5ec14929de
Input - Minor Pointer refactor and documentation updates
...
- `pointerN` are aliases to backed `pointers[N-1]` array.
This simplifies (and increases the efficiency of) looping through all the pointers when applicable; also eliminates pointer-existance checks
Removes various hard-coded limits (added MAX_POINTERS); changed `maxPointers` default
- Removed some special-casing from cases where it did not matter
- Removed `=== false/true`, `==` usage for consistency, changed missing value check to `typeof`, etc.
- Updated documentation for specificty; added `@public\@protected`
- `@deprecated` currentPointers due to odd set pattern; `totalCurrentPointers` is more appropriate.
2014-11-01 09:45:12 -07:00
Paul
31061775d7
Pointe - removed extra whitespace
2014-11-01 01:25:01 -07:00
Paul
14002ca02d
Pointer - minor documentation update for click trampolines
2014-11-01 01:11:26 -07:00
Paul
3005419435
Click Trampolines - support to trampoline pointer events into 'click' events
...
- This is needed to support Fullscreen on IE11 because IE only trusts 'click' events for this operation; click trampolines as a general solution, although they are only required in some "special" cases.
2014-11-01 01:04:17 -07:00
Paul
136af47064
Merge remote-tracking branch 'upstream/dev' into wip-1246b
2014-10-29 18:09:04 -07:00
Paul
5d04c62b33
Button - bug fixes, issue #1246
...
- Fix incorrect passing of "was clicked" to processInteractiveObjects
- Button would not return to Over/Out state because of strict too check to catch `undefined`
- Removed [undocumented] property usage from processInteractiveObjects and slight reformatting
- Update Button state frames/sounds to remove duplication
- Updated documentation in Button for consistency
2014-10-28 23:26:35 -07:00
Paul
2a933093d9
Comment fix
...
- Added `@private`
2014-10-28 22:47:44 -07:00
Paul
100b69eb99
Fix for Key.enabled issue #1190
...
- Added `enabled` getter; this resets the key (soft) and then disables they key
- Added `_enabled` property and updated internal usage
- Updated document for `reset`.
2014-10-28 22:45:30 -07:00
Paul
84363d9f36
Updated documentation per current Phaser tag usage
2014-10-28 21:46:33 -07:00
Paul
9a16448021
API / documentation consistency updates
...
- The `disabled` property of various input classes has been inverted to `enabled`.
Direct/internal usage of `disabled` has been transformed to `!enabled`.
- A `disabled` get/set property has been added to wrap `enabled`, and marked as @deprecated
This ensures current API compatibility.
2014-10-26 17:25:03 -07:00
photonstorm
0430cf8a6a
jsdoc fix
2014-10-23 12:27:07 +01:00
photonstorm
96fd0ade74
JSDoc fixes.
2014-10-21 22:43:42 +01:00
photonstorm
b580746cb8
Input.hitTest now accurately detects hits on the extreme edges of a display object (thanks InsaneHero)
2014-10-20 14:28:09 +01:00
photonstorm
6b2dbed96b
Fixed Input.getLocalPosition.
...
Updated Input.hitTest so it supports Phaser.Graphics objects.
2014-10-20 01:25:58 +01:00
photonstorm
35d29170d0
Lots of small jsdoc fixes and DocGen updates.
2014-10-20 00:54:56 +01:00
Bobby Wilson
0482684dc8
changed all typeof comparisons from == to ===
2014-10-10 21:52:06 -06:00
Victor Bjelkholm
81c0a53ef2
Add PLUS and MINUS to list of keyboard keys
2014-10-03 20:59:29 +02:00
photonstorm
2ee50d0c29
InputHandler now uses localToGlobal conversion for scaled responsive layers.
2014-09-29 12:27:28 +01:00
photonstorm
319146292b
First pass at scale handling on drag. Enable with: sprite.input.scaleLayer = true;
2014-09-25 17:01:27 +01:00
photonstorm
d18f523d93
jsdoc fixes.
2014-09-18 16:58:25 +01:00
photonstorm
20551f9129
Lots of jsdocs fixes ready for the new doc generator.
2014-09-16 17:35:08 +01:00
photonstorm
67f14713af
Removed Gestures stuff as it was all commented-out anyway.
2014-09-05 01:07:16 +01:00
photonstorm
4d14119a57
Removed console.log.
2014-09-05 00:14:22 +01:00
photonstorm
d5ffe1f971
Phaser.Mouse will now add a listener to the window
to detect mouseup
events. This is used to detect if the player releases the mouse while outside of the game canvas. Previously Pointer objects incorrectly thought they were still pressed when you returned the mouse over the canvas ( #1167 )
2014-09-04 23:29:43 +01:00
photonstorm
5fb8c7eb85
ScaleManager window.resize handler would constantly dispatch enterPortrait and enterLandscape events on window resizing, regardless if it actually entered that orientation or not.
...
Stage.offset has been moved to ScaleManager.offset
Stage.bounds has been removed, you can access it via Stage.getBounds.
Stage.checkOffsetInterval has been moved to ScaleManager.trackParentInterval
ScaleManager.hasResized signal has been removed. Use ScaleManager.setResizeCallback instead.
2014-09-01 01:02:48 +01:00
Richard Davey
b08bfec372
Fixed Key jsdocs #1157
2014-08-31 19:05:31 +01:00
photonstorm
004deff508
Note: This commit will break all input, don't pull it down until I finish this work off later today please!
...
Moved the DOM offset from Stage to ScaleManager (a more logical location for it) and updated Pointer to use that.
Moved the Pointer offset check to look at the ScaleManager.
Used getBoundingClientRect(), will see if that works better than Phaser.Canvas.getOffset.
2014-08-31 12:17:07 +01:00
Dan Cox
46c8fe3a09
CocoonJS doesn't support mouse wheel
...
CocoonJS hasn't implemented the "DOMMouseScroll" and "mousewheel" events.
2014-08-29 22:45:52 -04:00
photonstorm
719b81c6e3
GamepadButton.justPressed and justReleased now correctly report if the button has just been pressed or released (thanks @padpadpad #1019 )
2014-08-29 16:08:38 +01:00
photonstorm
7b9c1a561e
GamePad and SinglePad onAxisCallback parameters have changed. You are now sent: this (a reference to the SinglePad that caused the callback), the axis index and the axis value in that order.
...
GamePad axis detection now works again properly in Firefox (#1035 )
2014-08-29 15:55:05 +01:00
photonstorm
9055fc7e01
The Pointer move callbacks are now sent an extra parameter: fromClick
allowing your callbacks to distinguish between the Pointer just moving, or moving as a result of being pressed down (thanks @iforce2d #1055 )
2014-08-29 14:19:47 +01:00
photonstorm
dd9e7e6297
Pointer.dirty is a new boolean that is set by the InputHandler. It tells the Pointer to re-check all interactive objects it may be over on the next update, regardless if it has moved position or not. This helps solve issues where you may have a Button that on click generates a pop-up window that now obscures the Button (thanks @jflowers45 #882 )
2014-08-29 00:47:49 +01:00
photonstorm
83619ba81e
InputHandler docs updated to avoid Pointer data-type confusion ( #1097 )
2014-08-28 04:07:24 +01:00
photonstorm
ec687868de
Input.setMoveCallback has been removed due to deprecation.
...
BitmapData.refreshBuffer has been removed and replaced with BitmapData.update.
BitmapData.drawSprite has been removed due to deprecation. Use BitmapData.draw instead.
Pointer.moveCallback has been removed due to deprecation.
SinglePad.addButton has been removed due to deprecation.
P2.Body.loadData has been removed due to deprecation.
P2.World.defaultFriction and defaultRestitution have been removed due to deprecation.
Canvas.create noCocoon parameter has been removed due to deprecation.
Color.getColorInfo, RGBtoHexstring, RGBtoWebstring and colorToHexstring has been removed due to deprecation.
2014-08-28 03:40:59 +01:00
photonstorm
6e2cd37776
ScaleManager.destroy now removes the window and document event listeners, which are no longer created anonymously (thanks @eguneys #1092 )
...
Input.Gamepad.destroy now destroys all connected SinglePads and clears event listeners.
SinglePad.destroy now clears all associated GamepadButton objects and signals.
2014-08-28 03:31:47 +01:00
photonstorm
ccc8369f43
InputHandler.checkBoundsRect was incorrectly assigning a property in Sprites fixed to the camera being dragged left (thanks @CraigBeswetherick #1093 )
2014-08-28 01:29:23 +01:00
photonstorm
33c52eaf09
BitmapData alpha option added.
...
Pointer return type added.
pixi manifest updated to remove need for geom classes.
2014-08-27 21:26:29 +01:00
photonstorm
aabdf6f97a
Resolves issue with pixel perfect click / over detection on Sprites that used trimmed image atlases for animations or frames > 0.
2014-08-01 17:46:51 +01:00
photonstorm
afeeeecbe0
Keyboard.processKeyPress now checks if the Keyboard Input handler is disabled or not before processing the key callbacks.
2014-07-16 00:12:59 +01:00
photonstorm
538425193a
World.wrap when using the bounds of the object wouldn't adjust the bounds correctly, meaning wrapping outside the camera failed (thanks @jackrugile #1020 )
2014-07-15 14:22:24 +01:00
photonstorm
64000dfcb6
Fixed small boolean check error.
2014-07-15 11:49:05 +01:00
photonstorm
f78a527ad5
Prevented objects with pixel perfect checks from over-riding other higher priority ID items ( #983 )
...
Rebuilt the way items are polled for Pointer events (drag, click, move). Now faster and more efficient, especially when some items in the stack require pixel perfect checks.
2014-07-15 11:20:57 +01:00
Jeroen Verfallie
01a761b77f
Fixed pixel perfect dragging, this was still using the old property 'pixelPerfect' instead of the new 'pixelPerfectClick'
2014-07-11 09:58:38 +02:00
photonstorm
2293b64c94
Removing debug / console.log output.
2014-07-09 05:49:13 +01:00
photonstorm
79bd7c400b
Key.duration wasn't set to zero after a Key.reset (thanks @DrHackenstein, #932 )
2014-07-01 16:57:55 +01:00
Richard Davey
de270908de
Merge pull request #958 from renatodarrigo/patch-2
...
Fix rawpad button array to support win and linux
2014-07-01 15:59:06 +01:00
Wouter Commandeur
a863482439
Add constants for wheel up and down
2014-06-29 14:23:09 +02:00
Wouter Commandeur
7b8f08d5f9
appease travis
2014-06-29 13:49:45 +02:00
Wouter Commandeur
c716709f66
Add mouse wheel support
2014-06-29 13:45:39 +02:00
renatodarrigo
149016093c
Fix rawpad button array to support win and linux
...
On Linux, rawpad button array doesn't get populated with GamepadButton objects, so I made a check to verify if it is an object or a number, then pass the correct value to appropriate function.
Also, uncommented the axischange lines.
2014-06-28 04:11:55 -03:00
Lewis Lane
187387126d
Fix checkPointerDown method
...
checkPointerDown method was a verbatim duplication of checkPointerOver - added pointer.isDown check to passed pointer and altered wording of associated docs to make it clearer what the method is doing.
2014-06-22 23:03:15 +01:00
photonstorm
c0b34eddda
Fixed PS3 mappings.
2014-06-11 14:37:58 +01:00
photonstorm
69525799d7
New build files for testing.
2014-06-11 12:46:49 +01:00
photonstorm
907ba55478
Huge number of gamepad updates to get it working properly on Chrome again. Firefox debugging tomorrow.
2014-06-11 04:25:30 +01:00
photonstorm
0587d944b3
Added PlayStation 3 controller button mappings to Phaser.Gamepad (thanks @wayfu #887 )
2014-06-11 00:25:58 +01:00
JeanDavidDaviet
89f860ad46
Updated doc for Input#deleteMoveCallback
2014-06-04 20:36:56 +10:00
photonstorm
1d428a7ca4
Recoded Gamepad detection to stop it breaking on FF.
2014-06-02 00:48:44 +01:00
photonstorm
0c675f741f
Wrapped all events that CocoonJS doesn't support in conditional checks to avoid Cocoon Warnings.
2014-05-29 22:25:40 +01:00
photonstorm
8d94b4a91c
Swapped keypress callback order.
2014-05-27 11:32:18 +01:00
photonstorm
890d90af4d
Keyboard.addCallbacks now has a new parameter for keypress event capture.
...
Keyboard.pressEvent stores the most recent DOM keypress event.
Keyboard.processKeyDown now runs the callback after all the objects have been created and/or updated.
Keyboard.processKeyUp now runs the callback after all the objects have been created and/or updated.
Phaser.Keyboard.lastChar will return the string value of the last key pressed.
Phaser.Keyboard.lastKey will return the most recently pressed Key object.
2014-05-27 04:26:37 +01:00
photonstorm
f007a77f3d
Fixed Gamepad issue that incorrectly checked non-webkit prefix gamepads.
2014-05-26 22:02:53 +01:00
photonstorm
7b876d5fc4
ScaleManager.bounds is a Rectangle object that holds the exact size of the game canvas, taking DOM offset and game scale into account.
...
Pointer.withinGame is now accurate based on game scale and updated as the Pointer moves.
Stage.bounds is now updated if the game canvas offset changes position. Note that it gives the un-scaled game dimensions.
2014-05-19 18:49:59 +01:00
photonstorm
c9656e48de
Group.hasProperty fixed to not use hasOwnProperty, but a series of in
checks (thanks @mgiuffrida for the idea, #829 )
2014-05-19 13:11:58 +01:00
Richard Davey
ee30dd634a
Merge pull request #831 from woutercommandeur/dev
...
Add movement data for pointerlocked mouse
2014-05-19 11:48:25 +01:00
Wouter Commandeur
ce34da80c6
Only update movement when mouse is locked
2014-05-17 12:01:40 +02:00
Wouter Commandeur
e041eea968
whitespace adjustments
2014-05-17 11:32:11 +02:00
Wouter Commandeur
449c7ebfb0
Add mouse movement to pointer. This should be used with pointerLock.
2014-05-17 11:27:31 +02:00
photonstorm
3f3655a138
jshint fix
2014-05-15 15:38:28 +01:00
Richard Davey
21011c3d03
mouseout handler
2014-05-14 22:56:42 +01:00
photonstorm
5d8a11ae29
Input.addMoveCallback allows you to bind as many callbacks as you like to the DOM move events (Input.setMoveCallback is now flagged as deprecated)
...
Input.deleteMoveCallback will remove a previously set movement event callback.
2014-05-14 03:01:24 +01:00
photonstorm
b90bcc442c
If an object was drag enabled with bringToTop, the onDragStop event wouldn't fire until the mouse was next moved (thanks @alpera, fix #813 )
2014-05-14 02:42:55 +01:00
photonstorm
0bfa249ed5
Key.justPressed and justReleased incorrectly set the delay value to 2500ms. Now defaults to 50ms (thanks @draklaw, fix #797 )
2014-05-14 00:24:09 +01:00
photonstorm
bac618e842
jsdoc updates.
2014-05-09 16:39:45 +01:00
photonstorm
c94e842c75
InputManager.minPriorityID lets you set the minimum priority level an object needs to be to be checked by a Pointer. Useful for UI layer stacking.
2014-05-07 00:11:28 +01:00
photonstorm
2b40c8a7c7
Pointer.type and Pointer.exists properties added.
...
QuadTree.retrieve can now accept either a Sprite with a physics body or a Phaser.Rectangle as its parameter.
ArcadePhysics.getObjectsUnderPointer will return all children from a Group that overlap with the given Pointer.
2014-05-06 02:45:10 +01:00
photonstorm
ad7e2aff1f
Input.getPointerFromId will return a pointer with a matching pointerId value, if any. pointerId is a value set by the browser in the DOM event.
2014-05-02 12:21:57 +01:00
photonstorm
842abb82d3
Pointer.pointerId added which is set by the DOM event (if present in the browser). Note that browsers can and do recycle pointer IDs.
2014-05-02 12:14:05 +01:00
photonstorm
4466b3cd5d
Input.getPointerFromIdentifier docs update to reflect where the identifier comes from. Pointer properties now set to give it fixed defaults (thanks @JirkaDellOro, #793 )
2014-05-01 23:35:40 +01:00
photonstorm
54b71ddc23
Phaser.ArrayList is a new iterative object, similar in principal to a linked list but operating on a single array without modifying the object structure.
...
Input and Pointer now use the new ArrayList instead of a LinkedList, which resolve list item removable during callback issues.
Input.reset no longer resets every interactive item it knows of, because they are removed during the destroy phase and can now persist between States if needed.
2014-04-25 15:11:54 +01:00
photonstorm
0b1fb5a637
Destroying an object with an input handler during its onDown event would throw Signals dispatch errors (thanks @jflowers45, fix #746 )
...
InputHandler._setHandCursor private var wasn't properly set, meaning the hand cursor could sometimes remain (during destroy sequence for example)
All Game Objects have a new property: destroyPhase (boolean) which is true if the object is in the process of being destroyed, otherwise false.
The PIXI.AbstractFilter is now included in the Phaser Pixi build by default, allowing for easier use of external Pixi Filters.
2014-04-22 01:43:22 +01:00
Richard Davey
bf10cfa58f
Added ghosting info to Keyboard docs.
2014-04-20 01:57:32 +01:00
photonstorm
6979103634
Fix for #732 (Timer.onComplete not firing).
...
jsdoc updates across Math and InputHandler.
2014-04-16 18:50:54 +01:00
photonstorm
a7f6165e39
InputManager.resetLocked - If the Input Manager has been reset locked then all calls made to InputManager.reset, such as from a State change, are ignored.
...
Keyboard.reset has a new `hard` parameter which controls the severity of the reset. A soft reset doesn't remove any callbacks or event listeners.
Key.reset has a new `hard` parameter which controls the severity of the reset. A soft reset doesn't remove any callbacks or event listeners.
2014-04-14 21:53:08 +01:00
photonstorm
a01cc2e1ca
Objects with an InputHandler now deactivate it when the object is removed from a Group but not destroyed ( fix #672 )
...
Lots of jsdoc fixes in Body and World.
Removed un-used events from World (such as onImpact).
2014-04-11 00:06:22 +01:00
photonstorm
01ccbd97c0
Key.enabled boolean allows you to toggle if a Key processes its update method or dispatches any events without deleting and re-creating it.
2014-04-09 02:29:41 +01:00
photonstorm
8fc2a465cd
New Phaser package, small docs updates and preparing P2.World for new bounds code and v0.5.0 migration.
2014-04-08 03:31:13 +01:00
photonstorm
01eec6cef5
Keyboard.stop nulls the function references after removing the event listeners (thanks @bmceldowney, #691 )
2014-04-07 12:29:26 +01:00
photonstorm
a4ed94e039
Key.reset now clears any callbacks associated with the onDown and onUp events and nulls the onHoldCallback if set. Key.reset is called by Keyboard.reset when changing state.
2014-04-01 04:41:43 +01:00
Kimmo Salmela
a23c6ee6fd
Added positionUp to Pointer
2014-03-31 20:36:51 +03:00
photonstorm
5b73bb21bb
Sprite would glitch if it had an ArcadePhysics Body that was re-positioned out of loop.
...
Sprite would "fly off" if it had an ArcadePhysics Body that was re-positioned during an input handler.
Newly generated docs
2014-03-28 01:42:49 +00:00
Christian Wesselhoeft
ebad4c1d38
Fix jshint issues in src/input
2014-03-25 14:56:05 -07:00
Christian Wesselhoeft
61f18b675c
Trim trailing whitespace.
2014-03-25 14:56:04 -07:00
photonstorm
2d08fab48e
When creating a Sprite (via Group.create or directly) with exists = false and a P2 body, the body is not added to the world.
...
Every Input class now checks to see if it has already been started. If so it doesn't add the listeners again unless they have been nulled.
2014-03-19 13:22:04 +00:00
photonstorm
5d40365b87
InputHandler.dragFromCenter will now work regardless of the anchor point of the Sprite.
2014-03-19 05:21:26 +00:00
photonstorm
11fdd62436
World.destroy incorrectly clashed with the Group.destroy method it over-rode, renamed to World.shutdown and updated StateManager accordingly.
...
World.shutdown now removes all children iteratively, calling destroy on each one, ultimately performing a soft reset of the World.
Objects with a scale.x or y of 0 are no longer considered valid for input (fix #602 )
InputHandler will set the browser pointer back to default if destroyed while over (fix #602 )
Group.destroy has a new parameter: `soft`. A soft destruction won't remove the Group from its parent or null game references. Default is `false`.
InputHandler.validForInput is a new method that checks if the handler and its owner should be considered for Pointer input handling or not.
Group.replace will now return the old child, the one that was replaced in the Group.
2014-03-19 00:54:49 +00:00
photonstorm
928b883c17
Swapped the order of the _pollGamepads gamepads check, to stop the Chrome 'webkitGamepads is deprecated' error in the console.
2014-03-18 00:10:43 +00:00
photonstorm
901a7f13d1
Updated docs for 2.0 release and updated README.
2014-03-14 06:36:05 +00:00
photonstorm
c8e63582a4
Lots of small tweaks to pass jshint.
2014-03-13 16:49:52 +00:00
photonstorm
c2d38fe16b
jshint passed all the p2 physics and fixed Debug.spriteBounds.
2014-03-13 16:16:14 +00:00
photonstorm
94448d2497
P2 postBroadphase example and handler done. Group.enableBodyDebug added. Sprites no longer remove bodies from the world if exists = false, instead they set safeDestroy to true, which removes the body on the next preUpdate, to avoid mid-step destruction issues.
2014-03-13 07:29:23 +00:00
qdrj
d1aa302b79
add missing Keyboard.removeKey method
2014-03-12 22:29:32 +04:00
photonstorm
081c083176
InputHandler.enableSnap now correctly assigns the snap offset parameters ( fixes #515 )
2014-03-06 16:45:29 +00:00
photonstorm
3e93f24583
New split physics system is implemented. Still tidying-up, but ArcadePhysics, P2 and Ninja Physics are in and configured. Lots more examples required, and tilemap collision mostly broken in Arcade at the moment. Time to implement in Ninja.
2014-03-06 06:29:19 +00:00
photonstorm
502d74ee39
Keyboard.event now stores the most recent DOM keyboard event.
2014-03-03 11:18:56 +00:00
photonstorm
6f513042c1
Tween no longer copies all the object properties into the _valuesStart
object on creation.
...
Fixed shadow bug in Debug.text
Fixed tween examples.
2014-03-03 02:40:59 +00:00
photonstorm
76040d303e
Added in the Gestures support contribution for testing.
2014-03-03 01:42:11 +00:00
photonstorm
442e6bb776
Events.onInputUp would be dispatched twice if the Sprite had drag enabled, now only dispatched once (thanks Overbryd, fixes #502 )
...
Changed webfont URI back to //
2014-03-02 11:31:26 +00:00
photonstorm
664d5b3e2c
Fixed issue where Image, Sprite, etc wouldn't call preUpdate or postUpdate of its children.
...
Fixed issue where renderOrderID wasn't being assigned correctly, causing the Input Handler to be unable to select the "top" item on a display list (would all default to zero)
Fixed issue where Stage would assign renderOrderIDs in reverse, should be in sequence.
Fixed issue where objects where checking World for the currentRenderOrderID by mistake instead of Stage.
Basically, input handling works a lot better now for Groups and nested objects :)
2014-02-28 19:45:15 +00:00
photonstorm
13c99f3491
Phaser.StageScaleMode has been renamed to ScaleManager and moved from the system folder to the core folder. It's still available under game.scale.
...
If your game references the old Phaser.StageScaleMode consts like SHOW_ALL you need to update them to Phaser.ScaleManager, i.e. Phaser.ScaleManager.SHOW_ALL.
All of the Project Templates have been updated to reflect the above change.
2014-02-25 14:46:48 +00:00
photonstorm
b255fea85f
Time.advancedTiming is a new boolean property. If true Time.fps, fpsMin, fpsMax, frames, msMin and msMax will be calculated, otherwise they remain at their defaults.
2014-02-25 04:05:28 +00:00
photonstorm
415342d986
Vastly improved visibility API support + pageshow/pagehide + focus/blur. Working across Chrome, IE, Firefox, iOS, Android (also fixes #161 )
2014-02-25 02:59:24 +00:00
photonstorm
d9cadc70ac
The Keyboard class has had a complete overhaul. Phaser.Key objects are created automatically, there are fixes against duration and keys reset properly on visibility loss.
...
Keyboard.removeKey has been removed. The way the new keyboard manager works means it's no longer required.
Fixes issue #462
2014-02-24 15:58:02 +00:00
photonstorm
46e85c8394
Updated version to 2.0.0 (fixes npm install issue #476 )
2014-02-24 12:00:28 +00:00
photonstorm
e37188d168
Phaser.Input.Key isUp now defaults to 'true' ( #474 )
2014-02-24 00:18:12 +00:00
photonstorm
57796a60be
TileSprites can now receive full Input events, dragging, etc and be positioned in-world and fixed to cameras ( fixes #321 )
2014-02-21 19:21:00 +00:00
photonstorm
3ead8aee7b
Updated Mouse to use event.button not event.which, so the const references are correct ( fix #464 )
2014-02-21 15:47:00 +00:00
photonstorm
251b819bdb
Fixed InputHandler group check #463
2014-02-21 10:06:53 +00:00
photonstorm
f07c10e38e
Fix typo for Phaser.InputHandler#pointerDragged for docs #451
2014-02-19 19:05:54 +00:00
photonstorm
95b3872508
Fixing documentation errors #450
2014-02-19 16:59:27 +00:00
photonstorm
08e5f18257
Fixed some doc typos.
...
You can now pass a physicsConfig object with the game constructor that is given to p2.World, allowing you to set the broadphase, etc.
2014-02-19 03:51:48 +00:00
photonstorm
d057a9fe11
Device, Canvas and GamePad classes all updated for better CocoonJS support (thanks Videlais)
2014-02-19 02:45:42 +00:00
photonstorm
24f2e2a46d
BitmapText updated and bought in-line with the new Text class. Moved to use the new Bitmap Text XML loader which should work fine on CocoonJS now and also supports multiple bitmap fonts per cache.
2014-02-14 03:34:35 +00:00
photonstorm
e9fb8f6389
Updates across the board moving Stage.canvas to Game.canvas
2014-02-13 12:55:58 +00:00
photonstorm
0786e86ee5
Stage.scale has been moved to Game.scale. The same game scaling properties exist as before, but now accessed via Game.scale instead.
...
Stage.aspectRatio has been moved to StageScaleMode.sourceAspectRatio (so now game.scale.sourceAspectRatio)
Stage.scaleMode has been moved to StageScaleMode.scaleMode (so now game.scale.scaleMode)
Stage.fullScreenScaleMode has been moved to StageScaleMode.fullScreenScaleMode (so now game.scale.fullScreenScaleMode)
Stage.canvas has been removed. It was only ever an alias for Game.canvas anyway, so access it via that instead.
2014-02-13 12:50:10 +00:00
photonstorm
62aa0fc570
Remove some debug info.
2014-02-12 08:24:47 +00:00
photonstorm
ab5c07dfe8
Updated to Pixi 1.5 final.
...
InputHandler.pixelPerfectOver - performs a pixel perfect check to see if any pointer is over the current object (warning: very expensive!)
InputHandler.pixelPerfectClick - performs a pixel perfect check but only when the pointer touches/clicks on the current object.
2014-02-12 01:25:36 +00:00
photonstorm
da878b2181
Updated the Gruntfile. Also:
...
InputHandler.pixelPerfectOver - performs a pixel perfect check to see if any pointer is over the current object (warning: very expensive!)
InputHandler.pixelPerfectClick - performs a pixel perfect check but only when the pointer touches/clicks on the current object.
Previously using a Pixel Perfect check didn't work if the Sprite was rotated or had a non-zero anchor point, now works under all conditions + atlas frames.
2014-02-11 13:23:54 +00:00
photonstorm
ae74cb02dd
Fixes #382 Error when using InputHandler#onInputUp & sprite destroys itself during the event.
2014-02-10 02:14:59 +00:00
photonstorm
bf13c7b569
Updated Sprite to use the new smaller, leaner code. Farewell insane cache objects and multiple point processing!
2014-02-07 18:44:58 +00:00
photonstorm
dd43d59cce
InputManager.getLocalPosition(displayObject, pointer, output) will return the local coordinates of the specified displayObject and pointer.
...
InputManager.hitTest will test for pointer hits against a Sprite/Image, its hitArea (if set) or any of its children.
2014-02-07 18:01:58 +00:00
photonstorm
bc3a3fd43d
You can now use the hitArea property on Sprites and Image objects. hitArea can be a geometry object (Rectangle, Circle, Polygon, Ellipse) and is used in pointerOver checks.
2014-02-07 17:14:10 +00:00
photonstorm
0896c2fac7
Updating copyright year and README.
2014-02-05 16:54:59 +00:00
photonstorm
128c7143d5
Lots more physics tests and updates.
...
PLEASE DO NOT upgrade to this release if you need your game working and it uses any of the physics functions, as they're nearly all broken here.
Just pushing up so I can share it with someone.
2014-01-20 20:14:34 +00:00
photonstorm
754219a978
Fixed some documentation typos.
2014-01-09 01:23:23 +00:00
photonstorm
d1cd1df9a5
Lots of fixes and updates to the Button class, InputHandler for snap offsets, Sound looping and Stage scaling.
2013-12-31 17:03:09 +00:00
photonstorm
3b87ce9fc9
Brand new Gamepad API support fully implemented (thanks to Karl Macklin), with examples to show use.
2013-12-31 01:45:30 +00:00
photonstorm
29d7cc36a0
Merge branch 'gamepadsupport' of https://github.com/karlmacklin/phaser into karlmacklin-gamepadsupport
...
Conflicts:
README.md
2013-12-31 00:44:11 +00:00
photonstorm
ce4cf531d4
Added class constructors, fixed Stripshader, added relative Tween example and updated Tween source.
2013-12-30 16:54:00 +00:00
photonstorm
fdbdd81b7b
Updated some docs, added the new renderHidden parameter for Canvas and updated the RenderTexture examples as a result.
2013-12-27 00:26:21 +00:00
Richard Davey
923a10ee81
Input no longer sets cursor to default if already set to none
2013-12-26 00:52:01 +00:00
photonstorm
63d90a0176
Sprites that are fixedToCamera can now be input dragged regardless of world position.
2013-12-22 03:46:08 +00:00
photonstorm
dd7ae12271
ArcadePhysics.overlap and collide now recognise TileSprites in the collision checks.
2013-12-17 16:48:03 +00:00
photonstorm
a361a18616
Updated IE11 check, forces IE11 to use Canvas renderer even in AUTO mode.
2013-12-13 14:04:14 +00:00
photonstorm
42c0bed502
Fixed World.scale and Group.scale.
2013-12-03 02:13:57 +00:00
photonstorm
a9a46bfbbf
Lots of documentation updates and new Loader examples.
2013-11-27 16:33:49 +00:00
photonstorm
141337bed9
Heavily optimised PixiShader.
2013-11-26 05:13:56 +00:00
photonstorm
06a17b4b26
Fixed an issue in Text. Fixed the background color issue with Canvas games. Updated the Examples viewer so the side-by-side focuses the iframe now. Added new "Extend Group" example.
2013-11-25 13:12:03 +00:00
photonstorm
299115ca5d
The entire Phaser library has been updated to match the new JSHint configuration.
2013-11-25 04:40:04 +00:00
photonstorm
13a2cc2feb
Updating all files to adhere to the JSHint settings and fixing lots of documentation errors on the way.
2013-11-25 03:13:04 +00:00
photonstorm
155c863d69
New Timer class and scale event updates.
2013-11-24 11:04:58 +00:00
photonstorm
a5f2d65d23
Fixing a few more Pixi issues.
2013-11-17 12:31:57 +00:00
Richard Davey
6a24d6116b
Lots of renderTexture updates and examples added
2013-11-13 06:49:24 +00:00
photonstorm
1eca16a948
ArcadePhysics.updateMotion applies the dt to the velocity calculations as well as position now (thanks jcs)
2013-11-05 16:14:24 +00:00
photonstorm
2e576fa9a7
Input Handler updates, orientation screen and World visibility
2013-11-04 20:44:32 +00:00
photonstorm
19ddad8095
Mouse handler updates.
2013-11-04 20:44:32 +00:00
wKLV
8678373754
fix typo
2013-11-04 00:18:59 +01:00
wKLV
e8bac6c8c7
Check type uses the static values
2013-11-04 00:16:36 +01:00
KLV
4593a42a5b
Mouse property to say what button is being clicked
...
It follows the convention that already was in the
file 0 for left, 1 for middle and 2 for right.
It also changes to -1 when mouseUp.
2013-11-03 23:43:47 +01:00
photonstorm
3c164b466c
* Updated: event.preventDefault() has been added to all Mouse event handlers.
...
* Updated: Sprite.deltaX/Y removed due to non-use. prevX/Y values moved to Sprite._cache.prevX/Y.
* Updated: Due to missing extends parameter the Sprite prototype was picking up functions from classes it never meant to (Button, TilemapLayer), now fully isolated.
2013-11-01 02:07:21 +00:00
photonstorm
01eab3aeb1
Fixed issue 141 - If a Sprite is dragged and you release the Pointer while not over the Sprite, it will think it's still over it (thanks Paratron)
2013-10-31 16:27:10 +00:00
photonstorm
b6efdff286
Adding the key capture to addCursors.
2013-10-25 19:13:00 +01:00
photonstorm
2921a6de2e
Pixel Perfect click detection now works even if the Sprite is part of a texture atlas.
2013-10-25 05:40:46 +01:00
photonstorm
1469663ea5
Button fixes and Input coordinate fixes.
2013-10-25 02:19:16 +01:00
photonstorm
1f28d328a7
Commit before refactoring Sprite guts.
2013-10-24 21:21:00 +01:00
photonstorm
a6fac64248
Loads of issues reported on Github resolved (sprite crop, music resume, etc).
2013-10-24 04:27:28 +01:00
photonstorm
dd695e066f
More tilemap tweaks.
2013-10-14 19:37:52 +01:00
photonstorm
574f4f351b
Github Issue #101 fixed. Plus more Tilemap updates.
2013-10-11 20:02:12 +01:00
photonstorm
ebc4e5dc3d
New examples HTML page added.
2013-10-08 12:52:20 +01:00
Richard Davey
54f073e5cb
Testing some new Camera tricks.
2013-10-03 23:20:24 +01:00
Richard Davey
868ae81bab
Input, Loader and Math docs tidied up.
2013-10-02 15:05:55 +01:00
Richard Davey
1a2dc05609
Input and keyboard docs.
2013-10-02 13:18:58 +01:00
Richard Davey
ca113b85aa
More docs coming on.
2013-10-01 16:39:39 +01:00
Richard Davey
9b4b267e7a
Working through building the docs.
2013-10-01 16:15:45 +01:00
Richard Davey
305b12d76b
Adding docs.
2013-10-01 15:01:46 +01:00
Richard Davey
8668b82ef6
* Fixed issue causing Keyboard.justPressed to always fire (thanks stemkoski)
...
* Added Keyboard.addKey() which creates a new Phaser.Key object that can be polled for updates, pressed states, etc. See the 2 new examples showing use.
2013-10-01 01:18:29 +01:00
Richard Davey
16b1913de1
* Fixed issue in Sound.play where if you gave a missing marker it would play the whole sound sprite instead.
...
* Button.setFrames will set the current frame based on the button state immediately.
* InputHandler now creates the _pointerData array on creation and populates with one empty set of values, so pointerOver etc all work before a start call.
* Added Canvas.setUserSelect() to disable touchCallouts and user selections within the canvas.
* When the game boots it will now by default disable user-select and touch action events on the game canvas.
* Loaded.setPreloadSprite now rounds the width/height values and starts from 1. This fixes canvas draw errors in IE9/10 and Firefox.
2013-09-30 17:12:22 +01:00
Webeled
903b11b730
Groups examples and some boolean checks corrected
2013-09-27 13:27:15 +01:00
Richard Davey
d1ea96fd83
Input updates
2013-09-21 13:07:06 +01:00
Richard Davey
45426be0bc
Assets update
2013-09-20 23:21:12 +01:00
Richard Davey
70233b7508
Updating examples with new runner and menu system.
2013-09-13 17:48:47 +01:00
Richard Davey
7c6e6df91a
State swap example done and working.
2013-09-13 05:44:04 +01:00
Richard Davey
fd0a071cb3
Added Sprite.centerOn(x,y) and fixed the InputHander snap as a result.
2013-09-13 04:37:06 +01:00
Richard Davey
fba731e740
Added optional "pixel perfect" input checks and tested against static sprites, animated sprites, physics sprites and sprites positioned outside the screen (needing camera shift to appear).
2013-09-11 16:25:46 +01:00
Richard Davey
f260108433
Tidying up source code for release. Also refactored World to use a Group instance, rather tha duplicate functions.
2013-09-11 13:21:07 +01:00
Richard Davey
e41e35fd09
Fixed an error that stopped 2 tweens from being able to run on the same object. Also refactored a lot of the classes to remove prototype properties and move them to local instance properties.
2013-09-10 20:40:34 +01:00
Richard Davey
a486bf6b4a
Phaser now running on iOS. Also fixed a legacy bug where a pending sound wouldn't play once it was touch unlocked. Also fixed Input not working on WebGL contexts. Added WebGL texture updates to the Group/World swap functions.
2013-09-10 16:46:39 +01:00
Richard Davey
2ba6b4ff67
Added support for Pointer Lock API.
2013-09-09 19:59:31 +01:00
Richard Davey
30fc4099c6
Out of bounds and Sprite events hooked up
2013-09-09 13:29:33 +01:00
Richard Davey
c904475ae6
Added in the game scaling handler and updated Stage
2013-09-09 12:35:09 +01:00
Richard Davey
13d6ab512b
Fixed the Button frame issue and Down states now work properly
2013-09-09 10:30:01 +01:00
Richard Davey
50624c1552
Input Handler working. Dragging, sliding, click detection, multi-touch. Appears to be an issue with bringToTop but it's most likely a problem with the swapChild function rather than Input.
2013-09-08 22:58:15 +01:00
Richard Davey
ebda1f99e3
Input Handler 90% there.
2013-09-08 22:38:19 +01:00
Richard Davey
abe344b408
More work on the pointer handlers, nearly there!
2013-09-08 17:39:23 +01:00
Richard Davey
90b1946c25
Input Handler mostly restored
2013-09-08 13:23:21 +01:00
Richard Davey
78598ae54a
Implemented my own LinkedList class to make the new Input Handler easier to work with. And also just generally useful to have too.
2013-09-08 11:24:41 +01:00
Richard Davey
f4dab1847e
Working on Linked List node swapping.
2013-09-04 21:03:39 +01:00
Richard Davey
22847f6ade
DebugUtils converted, re-name spaced the Input classes and started on Camera culling.
2013-08-31 21:50:34 +01:00
Richard Davey
70ee753859
The complete Phaser Input Manager suite is now ported across. Not tested in earnest yet, but all the grunt work is at least done.
2013-08-31 13:54:59 +01:00