mirror of
https://github.com/wassname/phaser.git
synced 2026-06-27 16:10:15 +08:00
5d5c64d22f
After defining tiles that collide on a Tilemap, you need to call Tilemap.generateCollisionData(layer) to populate the physics world with the data required. Debug.renderPhysicsBody updated to take camera location and body rotation into account. Body movement functions put back to velocity :) Updated to latest dev version of pixi and latest p2.js Updated docs
1085 lines
23 KiB
HTML
1085 lines
23 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Phaser Source: tween/Easing.js</title>
|
|
|
|
<!--[if lt IE 9]>
|
|
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
<![endif]-->
|
|
<link type="text/css" rel="stylesheet" href="styles/sunlight.default.css">
|
|
|
|
|
|
<link type="text/css" rel="stylesheet" href="styles/site.cerulean.css">
|
|
|
|
</head>
|
|
|
|
<body>
|
|
<div class="container-fluid">
|
|
<div class="navbar navbar-fixed-top navbar-inverse">
|
|
<div class="navbar-inner">
|
|
<a class="brand" href="index.html">Phaser</a>
|
|
<ul class="nav">
|
|
|
|
<li class="dropdown">
|
|
<a href="namespaces.list.html" class="dropdown-toggle" data-toggle="dropdown">Namespaces<b
|
|
class="caret"></b></a>
|
|
|
|
<ul class="dropdown-menu ">
|
|
|
|
<li>
|
|
<a href="Phaser.html">Phaser</a>
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="dropdown">
|
|
<a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b
|
|
class="caret"></b></a>
|
|
|
|
<ul class="dropdown-menu ">
|
|
|
|
<li>
|
|
<a href="Phaser.Animation.html">Animation</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.AnimationManager.html">AnimationManager</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.AnimationParser.html">AnimationParser</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.BitmapData.html">BitmapData</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.BitmapFont.html">BitmapFont</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.BitmapText.html">BitmapText</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Button.html">Button</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Cache.html">Cache</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Camera.html">Camera</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Canvas.html">Canvas</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Circle.html">Circle</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Color.html">Color</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Device.html">Device</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.html">Easing</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Back.html">Back</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Bounce.html">Bounce</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Circular.html">Circular</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Cubic.html">Cubic</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Elastic.html">Elastic</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Exponential.html">Exponential</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Linear.html">Linear</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Quadratic.html">Quadratic</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Quartic.html">Quartic</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Quintic.html">Quintic</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Easing.Sinusoidal.html">Sinusoidal</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Ellipse.html">Ellipse</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Events.html">Events</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Filter.html">Filter</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Frame.html">Frame</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.FrameData.html">FrameData</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Game.html">Game</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.GameObjectFactory.html">GameObjectFactory</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Gamepad.html">Gamepad</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.GamepadButton.html">GamepadButton</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Graphics.html">Graphics</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Group.html">Group</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Image.html">Image</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Input.html">Input</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.InputHandler.html">InputHandler</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Key.html">Key</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Keyboard.html">Keyboard</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Line.html">Line</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.LinkedList.html">LinkedList</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Loader.html">Loader</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.LoaderParser.html">LoaderParser</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Math.html">Math</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Mouse.html">Mouse</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.MSPointer.html">MSPointer</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Net.html">Net</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Particles.html">Particles</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Particles.Arcade.Emitter.html">Emitter</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Physics.html">Physics</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Physics.Arcade.html">Arcade</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Plugin.html">Plugin</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.PluginManager.html">PluginManager</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Point.html">Point</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Pointer.html">Pointer</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Polygon.html">Polygon</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.QuadTree.html">QuadTree</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.RandomDataGenerator.html">RandomDataGenerator</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Rectangle.html">Rectangle</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.RenderTexture.html">RenderTexture</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.RequestAnimationFrame.html">RequestAnimationFrame</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Signal.html">Signal</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.SinglePad.html">SinglePad</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Sound.html">Sound</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.SoundManager.html">SoundManager</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Sprite.html">Sprite</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.SpriteBatch.html">SpriteBatch</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Stage.html">Stage</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.StageScaleMode.html">StageScaleMode</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.State.html">State</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.StateManager.html">StateManager</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Text.html">Text</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Tile.html">Tile</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Tilemap.html">Tilemap</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.TilemapLayer.html">TilemapLayer</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.TilemapParser.html">TilemapParser</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Tileset.html">Tileset</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.TileSprite.html">TileSprite</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Time.html">Time</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Timer.html">Timer</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.TimerEvent.html">TimerEvent</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Touch.html">Touch</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Tween.html">Tween</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.TweenManager.html">TweenManager</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Utils.html">Utils</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.Utils.Debug.html">Debug</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="Phaser.World.html">World</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="SignalBinding.html">SignalBinding</a>
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="dropdown">
|
|
<a href="global.html" class="dropdown-toggle" data-toggle="dropdown">Global<b
|
|
class="caret"></b></a>
|
|
|
|
<ul class="dropdown-menu ">
|
|
|
|
<li>
|
|
<a href="global.html#canUseNewCanvasBlendModes">canUseNewCanvasBlendModes</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="global.html#getBounds">getBounds</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="global.html#getNextPowerOfTwo">getNextPowerOfTwo</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="global.html#hex2rgb">hex2rgb</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="global.html#hitTest">hitTest</a>
|
|
</li>
|
|
|
|
<li>
|
|
<a href="global.html#rgb2hex">rgb2hex</a>
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
</li>
|
|
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row-fluid">
|
|
|
|
|
|
<div class="span12">
|
|
|
|
<div id="main">
|
|
|
|
|
|
|
|
<h1 class="page-title">Source: tween/Easing.js</h1>
|
|
|
|
<section>
|
|
<article>
|
|
<pre class="sunlight-highlight-javascript linenums">/* jshint curly: false */
|
|
|
|
/**
|
|
* @author Richard Davey <rich@photonstorm.com>
|
|
* @copyright 2014 Photon Storm Ltd.
|
|
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
|
|
*/
|
|
|
|
/**
|
|
* A collection of easing methods defining ease-in ease-out curves.
|
|
*
|
|
* @class Phaser.Easing
|
|
*/
|
|
Phaser.Easing = {
|
|
|
|
/**
|
|
* Linear easing.
|
|
*
|
|
* @class Phaser.Easing.Linear
|
|
*/
|
|
Linear: {
|
|
|
|
/**
|
|
* Ease-in.
|
|
*
|
|
* @method Phaser.Easing.Linear#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} k^2.
|
|
*/
|
|
None: function ( k ) {
|
|
|
|
return k;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Quadratic easing.
|
|
*
|
|
* @class Phaser.Easing.Quadratic
|
|
*/
|
|
Quadratic: {
|
|
|
|
/**
|
|
* Ease-in.
|
|
*
|
|
* @method Phaser.Easing.Quadratic#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} k^2.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return k * k;
|
|
|
|
},
|
|
|
|
/**
|
|
* Ease-out.
|
|
*
|
|
* @method Phaser.Easing.Quadratic#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} k* (2-k).
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return k * ( 2 - k );
|
|
|
|
},
|
|
|
|
/**
|
|
* Ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Quadratic#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( ( k *= 2 ) < 1 ) return 0.5 * k * k;
|
|
return - 0.5 * ( --k * ( k - 2 ) - 1 );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Cubic easing.
|
|
*
|
|
* @class Phaser.Easing.Cubic
|
|
*/
|
|
Cubic: {
|
|
|
|
/**
|
|
* Cubic ease-in.
|
|
*
|
|
* @method Phaser.Easing.Cubic#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return k * k * k;
|
|
|
|
},
|
|
|
|
/**
|
|
* Cubic ease-out.
|
|
*
|
|
* @method Phaser.Easing.Cubic#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return --k * k * k + 1;
|
|
|
|
},
|
|
|
|
/**
|
|
* Cubic ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Cubic#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( ( k *= 2 ) < 1 ) return 0.5 * k * k * k;
|
|
return 0.5 * ( ( k -= 2 ) * k * k + 2 );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Quartic easing.
|
|
*
|
|
* @class Phaser.Easing.Quartic
|
|
*/
|
|
Quartic: {
|
|
|
|
/**
|
|
* Quartic ease-in.
|
|
*
|
|
* @method Phaser.Easing.Quartic#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return k * k * k * k;
|
|
|
|
},
|
|
|
|
/**
|
|
* Quartic ease-out.
|
|
*
|
|
* @method Phaser.Easing.Quartic#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return 1 - ( --k * k * k * k );
|
|
|
|
},
|
|
|
|
/**
|
|
* Quartic ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Quartic#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( ( k *= 2 ) < 1) return 0.5 * k * k * k * k;
|
|
return - 0.5 * ( ( k -= 2 ) * k * k * k - 2 );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Quintic easing.
|
|
*
|
|
* @class Phaser.Easing.Quintic
|
|
*/
|
|
Quintic: {
|
|
|
|
/**
|
|
* Quintic ease-in.
|
|
*
|
|
* @method Phaser.Easing.Quintic#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return k * k * k * k * k;
|
|
|
|
},
|
|
|
|
/**
|
|
* Quintic ease-out.
|
|
*
|
|
* @method Phaser.Easing.Quintic#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return --k * k * k * k * k + 1;
|
|
|
|
},
|
|
|
|
/**
|
|
* Quintic ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Quintic#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( ( k *= 2 ) < 1 ) return 0.5 * k * k * k * k * k;
|
|
return 0.5 * ( ( k -= 2 ) * k * k * k * k + 2 );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Sinusoidal easing.
|
|
*
|
|
* @class Phaser.Easing.Sinusoidal
|
|
*/
|
|
Sinusoidal: {
|
|
|
|
/**
|
|
* Sinusoidal ease-in.
|
|
*
|
|
* @method Phaser.Easing.Sinusoidal#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return 1 - Math.cos( k * Math.PI / 2 );
|
|
|
|
},
|
|
|
|
/**
|
|
* Sinusoidal ease-out.
|
|
*
|
|
* @method Phaser.Easing.Sinusoidal#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return Math.sin( k * Math.PI / 2 );
|
|
|
|
},
|
|
|
|
/**
|
|
* Sinusoidal ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Sinusoidal#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
return 0.5 * ( 1 - Math.cos( Math.PI * k ) );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Exponential easing.
|
|
*
|
|
* @class Phaser.Easing.Exponential
|
|
*/
|
|
Exponential: {
|
|
|
|
/**
|
|
* Exponential ease-in.
|
|
*
|
|
* @method Phaser.Easing.Exponential#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return k === 0 ? 0 : Math.pow( 1024, k - 1 );
|
|
|
|
},
|
|
|
|
/**
|
|
* Exponential ease-out.
|
|
*
|
|
* @method Phaser.Easing.Exponential#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return k === 1 ? 1 : 1 - Math.pow( 2, - 10 * k );
|
|
|
|
},
|
|
|
|
/**
|
|
* Exponential ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Exponential#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( k === 0 ) return 0;
|
|
if ( k === 1 ) return 1;
|
|
if ( ( k *= 2 ) < 1 ) return 0.5 * Math.pow( 1024, k - 1 );
|
|
return 0.5 * ( - Math.pow( 2, - 10 * ( k - 1 ) ) + 2 );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Circular easing.
|
|
*
|
|
* @class Phaser.Easing.Circular
|
|
*/
|
|
Circular: {
|
|
|
|
/**
|
|
* Circular ease-in.
|
|
*
|
|
* @method Phaser.Easing.Circular#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return 1 - Math.sqrt( 1 - k * k );
|
|
|
|
},
|
|
|
|
/**
|
|
* Circular ease-out.
|
|
*
|
|
* @method Phaser.Easing.Circular#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
return Math.sqrt( 1 - ( --k * k ) );
|
|
|
|
},
|
|
|
|
/**
|
|
* Circular ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Circular#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( ( k *= 2 ) < 1) return - 0.5 * ( Math.sqrt( 1 - k * k) - 1);
|
|
return 0.5 * ( Math.sqrt( 1 - ( k -= 2) * k) + 1);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Elastic easing.
|
|
*
|
|
* @class Phaser.Easing.Elastic
|
|
*/
|
|
Elastic: {
|
|
|
|
/**
|
|
* Elastic ease-in.
|
|
*
|
|
* @method Phaser.Easing.Elastic#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
var s, a = 0.1, p = 0.4;
|
|
if ( k === 0 ) return 0;
|
|
if ( k === 1 ) return 1;
|
|
if ( !a || a < 1 ) { a = 1; s = p / 4; }
|
|
else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );
|
|
return - ( a * Math.pow( 2, 10 * ( k -= 1 ) ) * Math.sin( ( k - s ) * ( 2 * Math.PI ) / p ) );
|
|
|
|
},
|
|
|
|
/**
|
|
* Elastic ease-out.
|
|
*
|
|
* @method Phaser.Easing.Elastic#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
var s, a = 0.1, p = 0.4;
|
|
if ( k === 0 ) return 0;
|
|
if ( k === 1 ) return 1;
|
|
if ( !a || a < 1 ) { a = 1; s = p / 4; }
|
|
else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );
|
|
return ( a * Math.pow( 2, - 10 * k) * Math.sin( ( k - s ) * ( 2 * Math.PI ) / p ) + 1 );
|
|
|
|
},
|
|
|
|
/**
|
|
* Elastic ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Elastic#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
var s, a = 0.1, p = 0.4;
|
|
if ( k === 0 ) return 0;
|
|
if ( k === 1 ) return 1;
|
|
if ( !a || a < 1 ) { a = 1; s = p / 4; }
|
|
else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );
|
|
if ( ( k *= 2 ) < 1 ) return - 0.5 * ( a * Math.pow( 2, 10 * ( k -= 1 ) ) * Math.sin( ( k - s ) * ( 2 * Math.PI ) / p ) );
|
|
return a * Math.pow( 2, -10 * ( k -= 1 ) ) * Math.sin( ( k - s ) * ( 2 * Math.PI ) / p ) * 0.5 + 1;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Back easing.
|
|
*
|
|
* @class Phaser.Easing.Back
|
|
*/
|
|
Back: {
|
|
|
|
/**
|
|
* Back ease-in.
|
|
*
|
|
* @method Phaser.Easing.Back#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
var s = 1.70158;
|
|
return k * k * ( ( s + 1 ) * k - s );
|
|
|
|
},
|
|
|
|
/**
|
|
* Back ease-out.
|
|
*
|
|
* @method Phaser.Easing.Back#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
var s = 1.70158;
|
|
return --k * k * ( ( s + 1 ) * k + s ) + 1;
|
|
|
|
},
|
|
|
|
/**
|
|
* Back ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Back#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
var s = 1.70158 * 1.525;
|
|
if ( ( k *= 2 ) < 1 ) return 0.5 * ( k * k * ( ( s + 1 ) * k - s ) );
|
|
return 0.5 * ( ( k -= 2 ) * k * ( ( s + 1 ) * k + s ) + 2 );
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Bounce easing.
|
|
*
|
|
* @class Phaser.Easing.Bounce
|
|
*/
|
|
Bounce: {
|
|
|
|
/**
|
|
* Bounce ease-in.
|
|
*
|
|
* @method Phaser.Easing.Bounce#In
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
In: function ( k ) {
|
|
|
|
return 1 - Phaser.Easing.Bounce.Out( 1 - k );
|
|
|
|
},
|
|
|
|
/**
|
|
* Bounce ease-out.
|
|
*
|
|
* @method Phaser.Easing.Bounce#Out
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
Out: function ( k ) {
|
|
|
|
if ( k < ( 1 / 2.75 ) ) {
|
|
|
|
return 7.5625 * k * k;
|
|
|
|
} else if ( k < ( 2 / 2.75 ) ) {
|
|
|
|
return 7.5625 * ( k -= ( 1.5 / 2.75 ) ) * k + 0.75;
|
|
|
|
} else if ( k < ( 2.5 / 2.75 ) ) {
|
|
|
|
return 7.5625 * ( k -= ( 2.25 / 2.75 ) ) * k + 0.9375;
|
|
|
|
} else {
|
|
|
|
return 7.5625 * ( k -= ( 2.625 / 2.75 ) ) * k + 0.984375;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
* Bounce ease-in/out.
|
|
*
|
|
* @method Phaser.Easing.Bounce#InOut
|
|
* @param {number} k - The value to be tweened.
|
|
* @returns {number} The tweened value.
|
|
*/
|
|
InOut: function ( k ) {
|
|
|
|
if ( k < 0.5 ) return Phaser.Easing.Bounce.In( k * 2 ) * 0.5;
|
|
return Phaser.Easing.Bounce.Out( k * 2 - 1 ) * 0.5 + 0.5;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
</pre>
|
|
</article>
|
|
</section>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<div class="clearfix"></div>
|
|
<footer>
|
|
|
|
|
|
<span class="copyright">
|
|
Phaser Copyright © 2012-2014 Photon Storm Ltd.
|
|
</span>
|
|
<br />
|
|
|
|
<span class="jsdoc-message">
|
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-dev</a>
|
|
on Tue Feb 18 2014 03:01:16 GMT-0000 (GMT) using the <a href="https://github.com/terryweiss/docstrap">DocStrap template</a>.
|
|
</span>
|
|
</footer>
|
|
</div>
|
|
|
|
|
|
<br clear="both">
|
|
</div>
|
|
|
|
</div>
|
|
<script src="scripts/sunlight.js"></script>
|
|
<script src="scripts/sunlight.javascript.js"></script>
|
|
<script src="scripts/sunlight-plugin.doclinks.js"></script>
|
|
<script src="scripts/sunlight-plugin.linenumbers.js"></script>
|
|
<script src="scripts/sunlight-plugin.menu.js"></script>
|
|
<script src="scripts/jquery.min.js"></script>
|
|
<script src="scripts/jquery.scrollTo.js"></script>
|
|
<script src="scripts/jquery.localScroll.js"></script>
|
|
<script src="scripts/bootstrap-dropdown.js"></script>
|
|
<script src="scripts/toc.js"></script>
|
|
|
|
|
|
<script> Sunlight.highlightAll({lineNumbers:true, showMenu: true, enableDoclinks :true}); </script>
|
|
|
|
<script>
|
|
$( function () {
|
|
$( "#toc" ).toc( {
|
|
selectors : "h1,h2,h3,h4",
|
|
showAndHide : false,
|
|
scrollTo : 60
|
|
} );
|
|
$( "#toc>ul" ).addClass( "nav nav-pills nav-stacked" );
|
|
$( "#main span[id^='toc']" ).addClass( "toc-shim" );
|
|
|
|
} );
|
|
</script>
|
|
|
|
|
|
|
|
</body>
|
|
</html>
|