mirror of
https://github.com/wassname/phaser.git
synced 2026-08-12 12:20:38 +08:00
Sprite Sheets now parse and render correctly too.
This commit is contained in:
+3
-24
@@ -22,33 +22,12 @@
|
||||
|
||||
function create() {
|
||||
|
||||
//var texture = PIXI.TextureCache['skully.png'];
|
||||
|
||||
// PIXI.BaseTextureCache['monsters'] = new PIXI.BaseTexture(game.cache.getImage('monsters'));
|
||||
|
||||
// every image loaded should go into the BaseTextureCache, unique by URL (or maybe key)
|
||||
// var base = new PIXI.BaseTexture(game.cache.getImage('monsters'));
|
||||
|
||||
// Every FRAME needs a PIXI.Texture, related to the base (the source image) and the frame data
|
||||
// var texture = new PIXI.Texture(base, { x: 0, y: 0, width: 100, height: 100 });
|
||||
// var texture2 = new PIXI.Texture(base, { x: 0, y: 0, width: 100, height: 300 });
|
||||
|
||||
// PIXI.Sprite.fromFrame(key) pulls the texture from the TextureCache and returns a new Sprite made from it...
|
||||
// var texture = PIXI.TextureCache[frameId];
|
||||
|
||||
|
||||
// console.log(PIXI.TextureCache);
|
||||
|
||||
// console.log(game.cache.getFrameData('monsters'));
|
||||
|
||||
// This is created by the very act of loading a texture atlas in
|
||||
frameData = game.cache.getFrameData('monsters');
|
||||
|
||||
// bunny = new PIXI.Sprite(texture2);
|
||||
|
||||
// Both of these work - they look fugly I know, but they'll be hidden behind a Phaser Sprite anyway
|
||||
bunny = PIXI.Sprite.fromFrame(frameData.getFrame(0).uuid);
|
||||
// bunny = PIXI.Sprite.fromFrame(frameData.getFrameByName('skully.png').uuid);
|
||||
|
||||
// bunny = PIXI.Sprite.fromImage('monsters');
|
||||
|
||||
bunny.anchor.x = 0.5;
|
||||
bunny.anchor.y = 0.5;
|
||||
@@ -74,7 +53,7 @@
|
||||
|
||||
bunny.setTexture(PIXI.TextureCache[frameData.getFrame(f).uuid]);
|
||||
|
||||
n = game.time.now + 1000;
|
||||
n = game.time.now + 500;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<title>phaser.js - a new beginning</title>
|
||||
<?php
|
||||
require('js.php');
|
||||
?>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
(function () {
|
||||
|
||||
var game = new Phaser.Game(800, 600, Phaser.CANVAS, '', { preload: preload, create: create, update: update }, false, false);
|
||||
|
||||
var bunny;
|
||||
|
||||
function preload() {
|
||||
game.load.spritesheet('metalslug', 'assets/sprites/metalslug_monster39x40.png', 39, 40);
|
||||
}
|
||||
|
||||
function create() {
|
||||
|
||||
// This is created by the very act of loading a sprite sheet in
|
||||
frameData = game.cache.getFrameData('metalslug');
|
||||
|
||||
// Both of these work - they look fugly I know, but they'll be hidden behind a Phaser Sprite anyway
|
||||
bunny = PIXI.Sprite.fromFrame(frameData.getFrame(0).uuid);
|
||||
|
||||
bunny.anchor.x = 0.5;
|
||||
bunny.anchor.y = 0.5;
|
||||
|
||||
bunny.scale.x = 6;
|
||||
bunny.scale.y = 6;
|
||||
|
||||
bunny.position.x = game.world.centerX;
|
||||
bunny.position.y = game.world.centerY;
|
||||
|
||||
game.world.add(bunny);
|
||||
|
||||
n = game.time.now + 20;
|
||||
|
||||
}
|
||||
|
||||
var frameData;
|
||||
var f = 0;
|
||||
var n = 0;
|
||||
|
||||
function update() {
|
||||
|
||||
if (game.time.now > n)
|
||||
{
|
||||
f = game.math.wrapValue(f, 1, frameData.total);
|
||||
|
||||
bunny.setTexture(PIXI.TextureCache[frameData.getFrame(f).uuid]);
|
||||
|
||||
n = game.time.now + 40;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
})();
|
||||
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user