slick2d missiles

Posted by kirchhoff on Game Development See other posts from Game Development or by kirchhoff
Published on 2012-04-03T11:07:49Z Indexed on 2012/04/03 11:42 UTC
Read the original article Hit count: 285

Filed under:

Hey I'm making a game in java with slick2d and I want to create planes which shoots:

int maxBullets = 40;

static int bullet = 0;

Missile missile[] = new Missile[maxBullets];

I want to create/move my missiles in the most efficient way, I would appreciate your advises:

public void shoot() throws SlickException{
    if(bullet<maxBullets){
        if(missile[bullet] != null){
            missile[bullet].resetLocation(plane.getCentreX(), plane.getCentreY(), plane.image.getRotation());
        }else{
            missile[bullet] = 
            new Missile("resources/missile.png", plane.getCentreX(), plane.getCentreY(), plane.image.getRotation());
        }
    }else{
            bullet = 0;
            missile[bullet].resetLocation(plane.getCentreX(), plane.getCentreY(), plane.image.getRotation());
    }
    bullet++;
}

I created the method "resetLocation" in my Missile class in order to avoid loading again the resource. Is it correct?

In the update method I've got this to move all the missiles:

if(bullet > 0 && bullet < maxBullets){   
            float hyp = 0.4f * delta;
            if(bullet == 1){
                missile[0].move(hyp);
            }else{
                for(int x = 0; x<bullet; x++){
                    missile[x].move(hyp);
                }
            }       
}

© Game Development or respective owner

Related posts about slick2d