Jump to content

Phaser velocity


nothing
 Share

Recommended Posts

Console gives me this error Velocity undefined in "bullet.body.velocity.x = 400; and bullet.body.velocity.y = -400;"

function create() { //create sprites and other things

    game.physics.startSystem(Phaser.Physics.ARCADE); // nastavuje fyziku
    //            Hráč 
    ball = game.add.sprite(game.world.width * 0.5, game.world.height - 30, 'ball'); // umístění hráče a určování názvu jeho objektu
    ball.anchor.set(0.5); // složité na vysvětlení a také nedůležité
    game.physics.enable(ball, Phaser.Physics.ARCADE); // nastasvování fyziku hráče
    ball.body.collideWorldBounds = true; // hráč neprojde zdí
    ball.body.bounce.set(1); // nemám ponětí co to je 
    ball.body.gravity.y = 1000; // nastavuje gravitaci pro hráč
    //            Platformy
    platforms = game.add.physicsGroup(); // vytvoří skupinu platforem
    /*platforms.create(500, 150, 'platform'); //%%%%%%%%%%%%%%%%%%%%%%%%%%%
    platforms.create(200, 300, 'platform'); //% Rendruje platformy        %
    platforms.create(400, 400, 'platform');*/ //%%%%%%%%%%%%%%%%%%%%%%%%%%%
    platforms.setAll('body.immovable', true); // platformy jsou nepohyblivé (lze odstranit, ale platformy budou odjíždět od hráče jakmile do nich narazí)
    //            Platformy 2
    
    
    bullet = game.add.group();
    bullet.enableBody = true;
    bullet.physicsBodyType = Phaser.Physics.ARCADE;
    bullet.createMultiple(30, 'bullet');
    bullet.setAll('anchor.x', 0.5);
    bullet.setAll('anchor.y', 1);
    bullet.setAll('outOfBoundsKill', true);
    bullet.setAll('checkWorldBounds', true);
    game.physics.arcade.enable(bullet)
    
    //game.physics.enable(bullet, Phaser.Physics.ARCADE);

    
    platforms2 = game.add.physicsGroup(); // vytvoří skupinu platforem 2
    //                                            %%%%%%%%%%%%%%%%%%%%%%%%%%% 
    platforms2.create(800, 375, 'platform2'); //% Rendruje platformy 2    %
    platforms2.create(900, 375, 'platform2'); //%%%%%%%%%%%%%%%%%%%%%%%%%%%
    platforms2.setAll('body.immovable', true); // platformy 2 jsou nepohyblivé (lze odstranit, ale platformy budou odjíždět od hráče jakmile do nich narazí)
    
    
    
    //            Podlaha
    floar = game.add.sprite(game.world.width * 0.5, game.world.height - 10, 'floar'); // přidá sprite podlaha
    floar.anchor.set(0.5, 1); // složité na vysvětlení a také nedůležité
    game.physics.enable(floar, Phaser.Physics.ARCADE); // podlaha je nastavena jako objekt se základními vlastnostmi herní fyziky
    floar.body.immovable = true; // s podlahou nelze hýbat
    game.physics.enable(floar, Phaser.Physics.ARCADE); // nastavuje fyziku
    cursors = game.input.keyboard.createCursorKeys();


    /*key2 = game.input.keyboard.addKey(Phaser.Keyboard.SPACEBAR);
    key2.onDown.add(moveup, this);*/

    /*key3 = game.input.keyboard.addKey(Phaser.Keyboard.THREE);
    key3.onDown.add(moveright, this);*/
    jumpButton = game.input.keyboard.addKey(Phaser.Keyboard.SPACEBAR);
    fireButton1 = game.input.keyboard.addKey(Phaser.KeyCode.ONE);
}

function update() { //cyklus
    game.physics.arcade.collide(ball, floar); // objekt ball nemůže procházet objektem floar 
    game.physics.arcade.collide(ball, platforms); // // objekt ball nemůže procházet objektem platforms
    game.physics.arcade.collide(ball, platforms2); // // objekt ball nemůže procházet objektem platforms2
    //================================================================
    //=                        Ovládání                                 =
    //================================================================
    if (ball.body.onFloor() || ball.body.touching.down) { //tato podmínka určuje zda je hráč ve vzduchu || pokud ano tak
        ball.body.velocity.x = 0; //                                                                        |
        if (cursors.left.isDown) { //    
            facing = "left";
            ball.body.velocity.x = -250; //                                                                    |
        } else if (cursors.right.isDown) { // pokud ne tak normální ovládání    
            facing = "right";
            ball.body.velocity.x = 250;
        }
    } else {
        if (ball.body.velocity.x < 0) {
            if (cursors.right.isDown && -20 > ball.body.velocity.x) { // pokud ne tak normální ovládání    
                facing = "right";
                ball.body.velocity.x = ball.body.velocity.x + 5;
            } else if (cursors.left.isDown) {
                facing = "left";
                ball.body.velocity.x = ball.body.velocity.x - 5;
            }
        } else if (ball.body.velocity.x != 0) {
            if (cursors.left.isDown && ball.body.velocity.x > 20) {
                facing = "left";
                ball.body.velocity.x = ball.body.velocity.x - 5;
            } else if (cursors.right.isDown) { // pokud ne tak normální ovládání    
                facing = "right";
                ball.body.velocity.x = ball.body.velocity.x + 5;
            }
        }
    }
    if(fireButton1.isDown){
        if(facing == "left"){
            bullet = bullets.getFirstExists(false);
            bullet.reset(ball.x, ball.y + 8);
            bullet.body.velocity.y = -400;
        }else{
            bullet.create(ball.x - 10, ball.y - 10, 'bullet')
            bullet.body.velocity.x = 400;
        }
    }
    /*else if (ball.body.velocity.x == 0) {
        
        }*/
    if (jumpButton.isDown && (ball.body.onFloor() || ball.body.touching.down)) { // SKÁKÁNÍ
        ball.body.velocity.y = -500;
    } else if (ball.body.onFloor() || ball.body.touching.down) {
        ball.body.velocity.y = 0;
    }
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

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