public override void ShootMissile(ShipLeaf Ship) { ShipMan.InitializeBullet(); SoundMan.Play(SoundName.Shoot); // switch states Handle(Ship); }
public override void MoveRight(ShipLeaf pShip) { pShip.x += Nums.ShipSpeed; }
public override void Handle(ShipLeaf pShip) { pShip.SetState(ShipMan.StateName.Flying); }
public override void MoveLeft(ShipLeaf pShip) { pShip.x -= Nums.ShipSpeed; }
// strategy() public abstract void MoveRight(ShipLeaf pShip);
public abstract void MoveLeft(ShipLeaf pShip);
// state() public abstract void Handle(ShipLeaf pShip);
public abstract void ShootMissile(ShipLeaf pShip);
public override void ShootMissile(ShipLeaf pShip) { }
public override void MoveRight(ShipLeaf pShip) { }
public override void MoveLeft(ShipLeaf pShip) { }