mirror of
https://github.com/photonstorm/phaser
synced 2024-11-27 07:01:20 +00:00
Fixed issue with CocoonJS detection in Device.
Fixed docs issue in Tilemap. Created landscape pointer test, confirmed working fine (issue #276)
This commit is contained in:
parent
43cd5e4b3f
commit
34ee2b0b20
11 changed files with 218 additions and 107 deletions
|
@ -362,6 +362,7 @@ Beyond version 2.2
|
||||||
* Look at HiDPI Canvas settings.
|
* Look at HiDPI Canvas settings.
|
||||||
* Multiple Camera support.
|
* Multiple Camera support.
|
||||||
* DragonBones support.
|
* DragonBones support.
|
||||||
|
* Cache to localStorage using If-Modified-Since. [See github request](https://github.com/photonstorm/phaser/issues/495)
|
||||||
|
|
||||||
|
|
||||||
Nadion
|
Nadion
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
|
|
||||||
var game = new Phaser.Game(800, 600, Phaser.CANVAS, 'phaser-example', { preload: preload, create: create, update: update, render: render });
|
var game = new Phaser.Game(800, 600, Phaser.CANVAS, '', { preload: preload, create: create, update: update, render: render });
|
||||||
|
|
||||||
function preload() {
|
function preload() {
|
||||||
|
|
||||||
game.load.image('pic', 'assets/pics/backscroll.png');
|
game.load.image('pic', '../assets/pics/questar.png');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,33 +12,26 @@ var bmd;
|
||||||
|
|
||||||
function create() {
|
function create() {
|
||||||
|
|
||||||
bmd = game.add.bitmapData(800, 600);
|
game.add.image(0, 0, 'pic');
|
||||||
bmd.fillStyle('rgba(255,0,0,0.2)');
|
|
||||||
// bmd.fillRect(0, 0, 300, 100);
|
|
||||||
// bmd.fillRect(0, 200, 300, 100);
|
|
||||||
|
|
||||||
image = game.add.image(0, 0, bmd);
|
console.log('pic?');
|
||||||
// image.anchor.set(0.5);
|
|
||||||
|
|
||||||
game.input.onDown.add(tint, this);
|
// bmd = game.add.bitmapData(800, 600);
|
||||||
|
// bmd.context.fillStyle = 'rgba(255,0,0,0.2)';
|
||||||
|
// bmd.context.fillRect(0, 0, 300, 100);
|
||||||
|
|
||||||
}
|
// image = game.add.image(0, 0, bmd);
|
||||||
|
|
||||||
function tint() {
|
|
||||||
|
|
||||||
image.tint = Math.random() * 0xFFFFFF;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function update() {
|
function update() {
|
||||||
|
|
||||||
bmd.fillStyle('rgba(255,0,0,0.2)');
|
// bmd.context.fillRect(game.input.x, game.input.y, 8, 8);
|
||||||
bmd.fillRect(game.input.x, game.input.y, 6, 6);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function render() {
|
function render() {
|
||||||
|
|
||||||
game.debug.renderText(game.input.x, 32, 32);
|
// game.debug.renderText(game.input.x, 32, 32);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
12
examples/wip/cocoon.html
Normal file
12
examples/wip/cocoon.html
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>phaser</title>
|
||||||
|
<script src="../../dist/phaser.js" type="text/javascript"></script>
|
||||||
|
<script src="bmd.js" type="text/javascript"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
95
examples/wip/cocoon.php
Normal file
95
examples/wip/cocoon.php
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
<?php
|
||||||
|
// Global
|
||||||
|
$files = dirToArray(dirname(__FILE__));
|
||||||
|
$total = 0;
|
||||||
|
|
||||||
|
foreach ($files as $key => $value)
|
||||||
|
{
|
||||||
|
if (is_array($value) && count($value) > 0)
|
||||||
|
{
|
||||||
|
$total += count($value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getFile() {
|
||||||
|
|
||||||
|
global $files, $dir, $filename, $title, $code;
|
||||||
|
|
||||||
|
if (isset($_GET['d']) && isset($_GET['f']))
|
||||||
|
{
|
||||||
|
$dir = urldecode($_GET['d']);
|
||||||
|
$filename = urldecode($_GET['d']) . '/' . urldecode($_GET['f']);
|
||||||
|
$title = urldecode($_GET['t']);
|
||||||
|
|
||||||
|
if (file_exists($filename))
|
||||||
|
{
|
||||||
|
$code = file_get_contents($filename);
|
||||||
|
$files = dirToArray($dir);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function dirToArray($dir) {
|
||||||
|
|
||||||
|
$ignore = array('.', '..', '_site', 'assets', 'gfx', 'states', 'book', 'filters', 'misc');
|
||||||
|
$result = array();
|
||||||
|
$root = scandir($dir);
|
||||||
|
$dirs = array_diff($root, $ignore);
|
||||||
|
|
||||||
|
foreach ($dirs as $key => $value)
|
||||||
|
{
|
||||||
|
if (is_dir($dir . DIRECTORY_SEPARATOR . $value))
|
||||||
|
{
|
||||||
|
$result[$value] = dirToArray($dir . DIRECTORY_SEPARATOR . $value);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (substr($value, -3) == '.js')
|
||||||
|
{
|
||||||
|
$result[] = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
function printJSLinks($dir, $files) {
|
||||||
|
|
||||||
|
$output = "";
|
||||||
|
|
||||||
|
foreach ($files as $key => $value)
|
||||||
|
{
|
||||||
|
$value2 = substr($value, 0, -3);
|
||||||
|
$file = urlencode($value);
|
||||||
|
|
||||||
|
$output .= "<a href=\"wip/index.php?f=$file\">$value2</a><br />";
|
||||||
|
}
|
||||||
|
|
||||||
|
return $output;
|
||||||
|
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>phaser</title>
|
||||||
|
<?php
|
||||||
|
if (isset($_GET['f']))
|
||||||
|
{
|
||||||
|
$f = $_GET['f'];
|
||||||
|
?>
|
||||||
|
<script src="../../dist/phaser.js" type="text/javascript"></script>
|
||||||
|
<script src="<?php echo $f?>" type="text/javascript"></script>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div id="phaser-example"></div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
31
examples/wip/index-fs.php
Normal file
31
examples/wip/index-fs.php
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="initial-scale=1 maximum-scale=1 user-scalable=0 minimal-ui" />
|
||||||
|
<title>phaser</title>
|
||||||
|
<base href="../" />
|
||||||
|
<?php
|
||||||
|
require('../../build/config.php');
|
||||||
|
|
||||||
|
if (isset($_GET['f']))
|
||||||
|
{
|
||||||
|
$f = $_GET['f'];
|
||||||
|
?>
|
||||||
|
<script src="wip/<?php echo $f?>" type="text/javascript"></script>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div id="phaser-example"></div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -64,7 +64,7 @@
|
||||||
$value2 = substr($value, 0, -3);
|
$value2 = substr($value, 0, -3);
|
||||||
$file = urlencode($value);
|
$file = urlencode($value);
|
||||||
|
|
||||||
$output .= "<a href=\"wip/index.php?f=$file\">$value2</a><br />";
|
$output .= "<tr><td><a href=\"wip/index.php?f=$file\">$value2</a></td><td><a href=\"wip/index-fs.php?f=$file\">(full screen)</a></td><td><a href=\"wip/cocoon.php?f=$file\">(cocoon)</a></td></tr>";
|
||||||
}
|
}
|
||||||
|
|
||||||
return $output;
|
return $output;
|
||||||
|
@ -110,9 +110,11 @@
|
||||||
|
|
||||||
<h2>work in progress examples</h2>
|
<h2>work in progress examples</h2>
|
||||||
|
|
||||||
|
<table>
|
||||||
<?php
|
<?php
|
||||||
echo printJSLinks('wip', $files);
|
echo printJSLinks('wip', $files);
|
||||||
?>
|
?>
|
||||||
|
</table>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -1,76 +1,3 @@
|
||||||
<?php
|
|
||||||
// Global
|
|
||||||
$files = dirToArray(dirname(__FILE__));
|
|
||||||
$total = 0;
|
|
||||||
|
|
||||||
foreach ($files as $key => $value)
|
|
||||||
{
|
|
||||||
if (is_array($value) && count($value) > 0)
|
|
||||||
{
|
|
||||||
$total += count($value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function getFile() {
|
|
||||||
|
|
||||||
global $files, $dir, $filename, $title, $code;
|
|
||||||
|
|
||||||
if (isset($_GET['d']) && isset($_GET['f']))
|
|
||||||
{
|
|
||||||
$dir = urldecode($_GET['d']);
|
|
||||||
$filename = urldecode($_GET['d']) . '/' . urldecode($_GET['f']);
|
|
||||||
$title = urldecode($_GET['t']);
|
|
||||||
|
|
||||||
if (file_exists($filename))
|
|
||||||
{
|
|
||||||
$code = file_get_contents($filename);
|
|
||||||
$files = dirToArray($dir);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
function dirToArray($dir) {
|
|
||||||
|
|
||||||
$ignore = array('.', '..', '_site', 'assets', 'gfx', 'states', 'book', 'filters', 'misc');
|
|
||||||
$result = array();
|
|
||||||
$root = scandir($dir);
|
|
||||||
$dirs = array_diff($root, $ignore);
|
|
||||||
|
|
||||||
foreach ($dirs as $key => $value)
|
|
||||||
{
|
|
||||||
if (is_dir($dir . DIRECTORY_SEPARATOR . $value))
|
|
||||||
{
|
|
||||||
$result[$value] = dirToArray($dir . DIRECTORY_SEPARATOR . $value);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (substr($value, -3) == '.js')
|
|
||||||
{
|
|
||||||
$result[] = $value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return $result;
|
|
||||||
}
|
|
||||||
|
|
||||||
function printJSLinks($dir, $files) {
|
|
||||||
|
|
||||||
$output = "";
|
|
||||||
|
|
||||||
foreach ($files as $key => $value)
|
|
||||||
{
|
|
||||||
$value2 = substr($value, 0, -3);
|
|
||||||
$file = urlencode($value);
|
|
||||||
|
|
||||||
$output .= "<a href=\"wip/index.php?f=$file\">$value2</a><br />";
|
|
||||||
}
|
|
||||||
|
|
||||||
return $output;
|
|
||||||
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
<!doctype html>
|
<!doctype html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
|
@ -93,8 +20,6 @@
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
font-family: Arial;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
|
@ -102,18 +27,5 @@
|
||||||
|
|
||||||
<div id="phaser-example"></div>
|
<div id="phaser-example"></div>
|
||||||
|
|
||||||
<input type="button" id="step" value="step" />
|
|
||||||
<input type="button" id="start" value="start" style="margin-left: 32px" />
|
|
||||||
|
|
||||||
<div style="padding: 32px">
|
|
||||||
|
|
||||||
<h2>work in progress examples</h2>
|
|
||||||
|
|
||||||
<?php
|
|
||||||
echo printJSLinks('wip', $files);
|
|
||||||
?>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
59
examples/wip/landscape-pointer.js
Normal file
59
examples/wip/landscape-pointer.js
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
|
||||||
|
var game = new Phaser.Game(1024, 672, Phaser.CANVAS, 'phaser-example', { init: init, preload: preload, create: create, update: update, render: render });
|
||||||
|
|
||||||
|
function init() {
|
||||||
|
|
||||||
|
game.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL;
|
||||||
|
game.scale.minWidth = 480;
|
||||||
|
game.scale.minHeight = 260;
|
||||||
|
game.scale.maxWidth = 1024;
|
||||||
|
game.scale.maxHeight = 768;
|
||||||
|
game.scale.forceOrientation(true, false);
|
||||||
|
game.scale.enterIncorrectOrientation.add(enterIncorrectOrientation, game);
|
||||||
|
game.scale.leaveIncorrectOrientation.add(leaveIncorrectOrientation, game);
|
||||||
|
game.scale.setScreenSize(true);
|
||||||
|
|
||||||
|
game.stage.backgroundColor = 0x004400;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function preload() {
|
||||||
|
|
||||||
|
game.load.spritesheet('mummy', 'assets/sprites/metalslug_mummy37x45.png', 37, 45, 18);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
var mummy;
|
||||||
|
var anim;
|
||||||
|
|
||||||
|
function create() {
|
||||||
|
|
||||||
|
mummy = game.add.sprite(300, 200, 'mummy', 5);
|
||||||
|
|
||||||
|
anim = mummy.animations.add('walk');
|
||||||
|
|
||||||
|
anim.play(20, true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function enterIncorrectOrientation () {
|
||||||
|
|
||||||
|
game.stage.backgroundColor = 0xff0000;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function leaveIncorrectOrientation () {
|
||||||
|
|
||||||
|
game.stage.backgroundColor = 0x000033;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function update() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function render() {
|
||||||
|
|
||||||
|
game.debug.renderPointer(game.input.activePointer);
|
||||||
|
|
||||||
|
}
|
|
@ -414,7 +414,7 @@ Phaser.Device.prototype = {
|
||||||
*/
|
*/
|
||||||
_checkFeatures: function () {
|
_checkFeatures: function () {
|
||||||
|
|
||||||
this.canvas = !!window['CanvasRenderingContext2D'] || this.iscocoonJS;
|
this.canvas = !!window['CanvasRenderingContext2D'] || this.cocoonJS;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
this.localStorage = !!localStorage.getItem;
|
this.localStorage = !!localStorage.getItem;
|
||||||
|
|
|
@ -998,11 +998,16 @@ Phaser.Tilemap.prototype = {
|
||||||
* @method Phaser.Tilemap#getTileWorldXY
|
* @method Phaser.Tilemap#getTileWorldXY
|
||||||
* @param {number} x - X position to get the tile from (given in pixels)
|
* @param {number} x - X position to get the tile from (given in pixels)
|
||||||
* @param {number} y - Y position to get the tile from (given in pixels)
|
* @param {number} y - Y position to get the tile from (given in pixels)
|
||||||
|
* @param {number} [tileWidth] - The width of the tiles. If not given the map default is used.
|
||||||
|
* @param {number} [tileHeight] - The height of the tiles. If not given the map default is used.
|
||||||
* @param {number|string|Phaser.TilemapLayer} [layer] - The layer to get the tile from.
|
* @param {number|string|Phaser.TilemapLayer} [layer] - The layer to get the tile from.
|
||||||
* @return {Phaser.Tile} The tile at the given coordinates.
|
* @return {Phaser.Tile} The tile at the given coordinates.
|
||||||
*/
|
*/
|
||||||
getTileWorldXY: function (x, y, tileWidth, tileHeight, layer) {
|
getTileWorldXY: function (x, y, tileWidth, tileHeight, layer) {
|
||||||
|
|
||||||
|
if (typeof tileWidth === 'undefined') { tileWidth = this.tileWidth; }
|
||||||
|
if (typeof tileHeight === 'undefined') { tileHeight = this.tileHeight; }
|
||||||
|
|
||||||
layer = this.getLayer(layer);
|
layer = this.getLayer(layer);
|
||||||
|
|
||||||
x = this.game.math.snapToFloor(x, tileWidth) / tileWidth;
|
x = this.game.math.snapToFloor(x, tileWidth) / tileWidth;
|
||||||
|
|
|
@ -293,6 +293,7 @@ Phaser.Utils.Debug.prototype = {
|
||||||
this.line('World X: ' + pointer.worldX + " World Y: " + pointer.worldY);
|
this.line('World X: ' + pointer.worldX + " World Y: " + pointer.worldY);
|
||||||
this.line('Screen X: ' + pointer.x + " Screen Y: " + pointer.y);
|
this.line('Screen X: ' + pointer.x + " Screen Y: " + pointer.y);
|
||||||
this.line('Duration: ' + pointer.duration + " ms");
|
this.line('Duration: ' + pointer.duration + " ms");
|
||||||
|
this.line('is Down: ' + pointer.isDown + " is Up: " + pointer.isUp);
|
||||||
this.stop();
|
this.stop();
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue