Jump to content

States for some reason not working


2000ko
 Share

Recommended Posts

I have a game I am working on in different states but for some reason the game hasn't been working; I think it is because the states aren't changing but I don't know what to do. Each page is in a different colour and all help will be greatly appreciated.

 

<!DOCTYPE html>
 
<html>
 
<head>
<title>Alien Invasion</title>
<script type="text/javascript" src="phaser.js"></script>
<script src = "AI_preload.js"> </script>
<script src = "AI_menu.js"> </script>
<script src = "AI_game.js"> </script>
</head>
 
<body>
<script src = "AI_main.js"> </script>
</body>
 
</html>
 
var AI = AI || {};
 
AI.game = new Phaser.Game(900, 800, Phaser.AUTO, '');
 
var Number1 = 0;
var timer = 0;
var TimeBetweenSpawns = 1500;
var GamePaused = false;
var crash1;
var pew1;
var score = 0;
var Lives = 5;
 
AI.game.state.add('Preload', AI.Preload);
AI.game.state.add('MainMenu', AI.MainMenu);
AI.game.state.add('Game', AI.Game);
 
AI.game.state.start('Preload');
 
var AI = AI || {};
 
AI.Preload = function() {};
 
AI.Preload.prototype = {
preload: function() {
this.load.image('Shooter1', 'assets/Shooter1.png');
this.load.image('Rocket1', 'assets/Rocket1.png');
this.load.image('Monster1', 'assets/Monster1.png');
this.load.image('Monster2', 'assets/Monster3.png');
Monsters = game.add.group();
Monsters.enableBody = true;
 
    this.load.audio('crash', 'assets/crash1.mp3');
    this.load.audio('pew', 'assets/pew3.mp3');
    };
    create: function() {
    this.state.start('MainMenu');
    }
};
 
var AI = AI || {};
 
AI.MainMenu = function() {};
 
AI.MainMenu.prototype = {
create: function() {
 
player = game.add.sprite(200, 450, 'Shooter1');
Rocket1 = game.add.sprite(200, 450, 'Rocket1');
Rocket1.visible = false;
 
 
game.physics.startSystem(Phaser.Physics.ARCADE);
game.physics.arcade.enable(player);
game.physics.arcade.enable(Rocket1);
 
player.enableBody = true;
player.body.bounce.y = 0.2;
    player.body.gravity.y = 150;
    player.body.collideWorldBounds = true;
 
    Rocket1.enableBody = true;
    
    player.body.collideWorldBounds = true;
    
 
    scoreText = game.add.text(16, 16, 'Score: 0', { fontSize: '32px', fill: '#980000' });
    score = 0;
 
    LivesText = game.add.text(700, 16, 'Lives: 5', { fontSize: '32px', fill: '#980000' });
    Lives = 5;
    
    crash1 = game.add.audio('crash');
    pew1 = game.add.audio('pew');
}
 
this.game.state.start('Game');
}

 

var AI = AI || {};
 
AI.Game = function() {};
 
AI.Game.prototype = {
 
update: function() {
player.body.velocity.x = 0;
player.body.velocity.y = 0;
Rocket1.body.velocity.y = 0;
//Lines Above Prevent the gravity and bounce from working
 
game.physics.arcade.collide(Rocket1, Monsters, collisionHandler, null, this);
 
Rocket1.body.velocity.y -= 600;
    
    if (game.input.keyboard.isDown(Phaser.Keyboard.LEFT))
    {
        player.body.velocity.x -= 200;
        //score += 1;
        //scoreText.text = 'Score: ' + score;
    }
    else if (game.input.keyboard.isDown(Phaser.Keyboard.RIGHT))
    {
        player.body.velocity.x += 200;
    }
 
    if (game.input.keyboard.isDown(Phaser.Keyboard.UP))
    {
        player.body.velocity.y -= 200;
    }
    else if (game.input.keyboard.isDown(Phaser.Keyboard.DOWN))
    {
        player.body.velocity.y += 200;
    }
    
 
    if (game.input.keyboard.isDown(Phaser.Keyboard.SPACEBAR))
    {
        if (Rocket1.visible == false)
        {
        Rocket1.x = player.x + 21.5;
        Rocket1.y = player.y;
        Rocket1.visible = true;
        Rocket1.exists = true;
            pew1.play();
 
        }
        
    }
 
    if (Rocket1.y <= 0)
    {
    Rocket1.visible = false;
    }
 
    Monsters.forEach(function(Item)
    {
    if (Item.y >= 800)
    {
    Lives -= 1;
    LivesText.text = 'Lives: ' + Lives;
    Item.destroy();
            
            
    }
    });
 
    if (game.time.now > timer && GamePaused == false)
    {
    SpawnMonsters();
    }
 
    
}
 
SpawnMonsters: function() {
this.loop = true;
this.delay = 50;
var RandomN = Monsters.create(game.rnd.integerInRange(0, 850), 0, 'Monster1');
RandomN.name = 'Monster' + RandomN;
RandomN.body.velocity.y = 80;
game.physics.arcade.enable(RandomN);
timer = game.time.now + TimeBetweenSpawns;
 
}
 
collisionHandler: function(Rocket1, Monsters)
{
if (Rocket1.visible == true){
score += 1;
    scoreText.text = 'Score: ' + score;
    crash1.play();
Monsters.destroy();
Rocket1.body.velocity.y = 0;
Rocket1.visible = false;
Rocket1.exists = false;
TimeBetweenSpawns -= 20;
 
}
 
 
}
}
Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...