Commit graph

3926 commits

Author SHA1 Message Date
Paul
fb9eab76e7 Utils - cleanup
- Updated linked documentation

- Also updated `removeRandomItem` per the contract and for consistency with
  `getRandomItem`.
2014-12-01 23:19:32 -08:00
Paul
bdacef8170 ArrayUtils - minor corrections
- Corrected off-by-one issue; the effect is the same but it is arguably
  more correct.

- Fixed getRandomItem; it would previously return null for false'y values
  (false/''/0) which was against the defined contract.

- Updated documentation / documented types
2014-12-01 23:06:06 -08:00
Paul
cc8c2944fa jsdoc - namealias fix
Corrected the namealias jsdoc plugin to not include PIXI-from-YUI docs.

This is because they lack corresponding javascript code and need the
'name' property to remain intact.
2014-12-01 17:09:19 -08:00
Richard Davey
152b26a668 Merge pull request #1378 from pnstickne/wip-minor-updatelogic-fix
Minor logic fix for Sprite life update
2014-12-01 12:07:56 +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
Richard Davey
83f4eb4134 Merge pull request #1385 from pnstickne/wip-jsdoc-core2
jsdoc core/plugins
2014-12-01 12:06:18 +00:00
Richard Davey
d19a2ab8d5 Merge pull request #1389 from pnstickne/wip-event-signal-redux2
Event-Signal object count optimization
2014-12-01 12:00:55 +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
bedab931a9 Documentation - Signal 2014-11-30 15:56:20 -08:00
Paul
b66a32e3a1 Documentation - number refinement
Changed some {number} types to {integer} where such is trivially
verifiable.
2014-11-30 15:22:39 -08:00
Paul
fa95c53631 Documentation - Group
- Merged in group doc updates

- Added a DisplayObject stub type for better link-out across documentation
2014-11-30 15:13:55 -08:00
Paul
5645690174 General docs - reverting src/pixi changes
(Because outside of control, really.)
2014-11-30 13:04:02 -08:00
Paul
8b1c7625d4 Documentation - typo fix 2014-11-30 04:05:23 -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
Paul
d99044a782 Documentation templates - edited resource entries
Added Game and Particle entries.
2014-11-30 04:03:34 -08:00
photonstorm
cfbad72881 Documentation - general
Updated some documentation for formatting, consistency, and minor
corrections.
2014-11-30 04:02:45 -08:00
Paul
bf16b97bdf jsdoc - namealias fix
Fixed issue with namealias and class doclects without names.
2014-11-30 03:06:28 -08:00
Paul
c8b0052743 jsdoc - sourceproxy docs and cleanup 2014-11-30 02:32:29 -08:00
Paul
2f6c109901 jsdoc - short/friendly @link plugin
Added support for short `{@link #member}` markup. This makes interlinking
much cleaner and shorter; similar short-link support was available in
previous versions of jsdoc.
2014-11-30 02:32:10 -08:00
Paul
352d53802f jsdoc - added namealias
The namealias plugin gets jsdoc to detect lots of documentation it was not
correctly picking up due to the application of the `name` property. This
can be read about in
https://github.com/jsdoc3/jsdoc/issues/804#event-195287680 - this results
in _much_ more complete documentation generation, especially when
properties are defined in constructors.
2014-11-30 02:32:09 -08:00
Paul
6203ae0722 jsdoc - PIXI documentation filtering
Added the filterpixi.js jsdoc plugin which marks some PIXI
interaction-related methods and properties as private. This ensures that
they do not show up in the final Phaser documentation.
2014-11-30 02:31:55 -08:00
Paul
3299588326 Sprite - removed comment
The comment was no longer valid after the previos changes.
2014-11-29 14:12:14 -08:00
photonstorm
0744dddbc0 Small defs fix. 2014-11-29 19:40:50 +00:00
photonstorm
d5dfa464c0 Added alpha setting to getContext. 2014-11-29 19:40:50 +00:00
photonstorm
af4e3b1cb5 Added optional 'no physics' flags. 2014-11-29 19:40:50 +00:00
photonstorm
a012d8caa2 jsdoc update 2014-11-29 19:40:50 +00:00
Paul
dfe7279090 Minor logic fix for Sprite life update
The substraction of `physicsElapsedMS` needs to be done for all individual
updates. (When current FPS ~ target FPS this is a 1-1 mapping, but catchup
updates can throw off the calculations.)

Also renamed `Game#updateNumber` (a poor initial name on my part) to
`currentUpdateID`. This matches the naming of
`Stage#currentRenderOrderID`.
2014-11-28 23:02:31 -08:00
Richard Davey
157fce81a9 Merge pull request #1374 from pnstickne/wip-time-quibs
Time/Time - documentation updates and minor cleanup
2014-11-28 18:25:17 +00:00
Paul
e8da5e73f8 Loader - IE9 XDR used for all XHR when requested
Previously XHD was special-cased for 'json' file assets, but not all JSON
requests. Now it is used for all XHR transfers when `useXDomainRequest` is
enabled.

If XDR is used outside of IE 9 then a warning is emitted to the console.
The `useXDomainRequest` property has also been deprecated

This may address consistency issues as mentioned in
https://github.com/photonstorm/phaser/issues/1361
2014-11-28 04:21:17 -08:00
Paul
83cbbf1d21 Text - font component cleanup
Some minor cleanup of font component handling and comments.

Also adds a warning if an "unparsable font" string is encountered. Might
save someone some trouble.
2014-11-28 03:50:52 -08:00
Paul
bf3d5aa22e Text - consistency updates
Added `cssFont`, `fontStyle`, and `fontVariant` properties for better
consistency and control.
2014-11-28 02:56:44 -08:00
Paul
8eb7594b29 Text - font size/weight can be specified as style
Fulfills: https://github.com/photonstorm/phaser/issues/1370

This allows `fontSize` and `fontWeight` to be specified as part of the
style as supplied to the Text constructor (and `setStyle` method). In
addition the `fontStyle` and `fontVariant` properties can also be set -
although these are not exposed later.

This also fixes edge cases that could be caused if `Text#fontSize` was
used without `Text#fontWeight`, where the applied style defaults would be
overwritten/reset.
2014-11-28 02:20:18 -08:00
Paul
5fbbeca7ab Text - documentation updates 2014-11-28 00:12:10 -08:00
Paul
fb5a1b9946 TimerEvent - tabs to spaces
Converted tabs to spaces, for consistency
2014-11-27 23:57:42 -08:00
Paul
c5381f96ef Time/Time - documentation updates and minor cleanup
- Removed `Time.pausedTime`

  Time.pausedTime has not been used / updated since
  b255fea85f in Feb 2014.

  There might be a case to re-explore how pause time is
  reported/observable, possibly with a distinction of 'current' and 'last'
  and the semantics of such. For instance, pause duration is only updated
  after the resume occurs and reflects the duration-of-the-last-pause..

- Removed `Time` _i and _len properties These are better suited by local
  variables.

- General documentation updates.

- Marked several methods such as `Timer.order` as protected - there are
  advanced use-cases for them, but different user-facing methods and
  documentations are likely in order. Also marked `Timer.sortHandler` as
  private; but did not change any interfaces.
2014-11-27 23:54:42 -08:00
Paul
ad08c7dff2 Merge remote-tracking branch 'upstream/dev' into wip-loader 2014-11-27 22:19:24 -08:00
photonstorm
8ffd686fe1 Phaser 2.2.0-RC12 Release 2014-11-27 21:33:21 +00:00
photonstorm
30d2d1973a readme update. 2014-11-27 21:33:21 +00:00
Richard Davey
c3fc3ec089 Merge pull request #1373 from clark-stevenson/dev
Small Updates
2014-11-27 19:25:06 +00:00
Clark Stevenson
977f576c11 Small Updates 2014-11-27 16:01:02 +00:00
Richard Davey
42066f20dd Merge pull request #1372 from pnstickne/wip-tileset-non-even
Tilemap - Tiled image size calculation
2014-11-27 13:10:04 +00:00
Paul
47c49b18cf Tilemap - Tiled image size calculation
Addresses https://github.com/photonstorm/phaser/issues/1371 - where Tiled
used floor calculations and Phaser used round calculations.

There are no breaking changes with the demos; however, if there was code
that relied on behavior that _deviated_ from the defactor Tilemap behavior
then may be prone to "incorrect results" if using tileset images that are
not correctly aligned to tilesize multiples.

This also adds/corrects some warnings:
- A warning when the tileset size is not an even multiple (it was
  suppressed due to using `round` prior to the checks.
- A warning if loading an image changes the cols/rows of a Tileset
- A specific warning for Tileset Image Collections which are not yet
  supported
2014-11-26 19:50:07 -08:00
photonstorm
2488359277 RC12 Prep. 2014-11-26 13:13:50 +00:00
photonstorm
471ad20b4a Added Time.physicsElapsedMS and used in Sprite lifespan and Tweens. 2014-11-26 13:13:25 +00:00
photonstorm
fb733ddcca onPreRenderCallback wasn't being cleared on a State swap. 2014-11-26 13:12:51 +00:00
photonstorm
fc457f5aca Added missing docs. 2014-11-26 04:16:52 +00:00
Richard Davey
4f88ec06c5 Merge pull request #1364 from pnstickne/wip-doc-fixes
yuidoc-to-jsdoc - bug fix and jsobj-like mapping
2014-11-26 00:44:37 +00:00
photonstorm
667d477a16 P2.BodyDebug always lagged behind the position of the Body it was tracking by one frame, which became visible at high speeds. It now syncs its position in the Body.postUpdate which prevents this from happening (thanks @valueerror) 2014-11-25 22:21:11 +00:00
photonstorm
3d3920efab Various jsdoc fixes. 2014-11-25 21:13:25 +00:00
Richard Davey
9880ccbfe6 Merge pull request #1369 from clark-stevenson/dev
Fixed #1368
2014-11-25 19:15:01 +00:00