package com.example.android.firstflixelgame;
import java.util.ArrayList;
import java.util.Arrays;
import org.flixel.FlxEmitter;
import org.flixel.FlxG;
import org.flixel.FlxSprite;
public class Enemy extends FlxSprite
{
protected static final float VELOCITY = 100;
protected int maxXMovement = 0;
protected int startX = 0;
protected FlxEmitter gibs = null;
public Enemy(int x, int y, int maxXMovement)
{
super(x, y, R.drawable.enemy, true);
this.y -= this.height;
this.maxXMovement = maxXMovement - this.width;
this.startX = x;
this.velocity.x = VELOCITY;
addAnimation("idle", new ArrayList(Arrays.asList(new Integer[] {0,1})),12);
play("idle");
this.gibs = FlxG.state.add(
new FlxEmitter(0, 0, -1.5f)
.setXVelocity(-150.0f, 150.0f)
.setYVelocity(-200.0f, 0.0f)
.setRotation(-720, 720)
.setGravity(400)
.createSprites(R.drawable.enemygibs));
}
public void update()
{
super.update();
if (this.x - startX >= maxXMovement || this.x <= startX)
{
this.velocity.x = -this.velocity.x;
}
}
public void kill()
{
FlxG.play(R.raw.enemy);
super.kill();
this.gibs.x = this.x + (this.width>>1);
this.gibs.y = this.y + (this.height>>1);
this.gibs.restart();
}
}
|