public Koopa(Vector2 initLocation) { location = initLocation; koopaHealth = KoopaHealth.Normal; koopaState = new KoopaLeftMovingState(this); koopaSprite = new KoopaLeftMovingSprite(); }
public void BeginRecover() { if (Health != KoopaHealth.Recovering) { Health = KoopaHealth.Recovering; } }
public void KillKoopa() { ShouldCollide = false;//now that there is a flipped state this can be removed. MarioSoundBoard.Instance.PlayMarioKick(); Health = KoopaHealth.Flipped; countToDeath = 0; Physics.YVelocity = Physics.YMaxVelocity; }
public KoopaStateMachine(Vector2 location) { Collided = false; Location = location; health = KoopaHealth.Normal; Sprite = UniversalSpriteFactory.Instance.CreateSprite("MovingKoopa", Location); Velocity = new Vector2(XWalkVelocity, 0); }
public void BeShelled() { Physics.XVelocity = 0.0; Physics.YVelocity = 0.0; if (Health != KoopaHealth.Shelled) { Health = KoopaHealth.Shelled; } }
public void FullyRecover() { if (Health != KoopaHealth.Normal) { Physics.XVelocity = PhysicsUtilites.EnemyInitVelocity; if (!MovingLeft) { Physics.XVelocity = Physics.XVelocity * -1; } Physics.GravityCoef = PhysicsUtilites.GlobalGravityCoef; Health = KoopaHealth.Normal; } }
public void Update() { if (Game1.nightmare && count == 0 && isAlive == false) { int dx = 100; newLocation = WorldManager.spriteSet.players[0].GetLocation(); location.X = newLocation.X; location.X -= dx; count++; this.koopaHealth = KoopaHealth.Normal; this.koopaState = new KoopaNightmareState(this); } koopaSprite.Update(); koopaState.Update(); }
public void BeStomped() { koopaHealth = KoopaHealth.Stomped; isAlive = false; koopaState.BeStomped(); }
public void SetKoopaHealth(KoopaHealth kh) { this.koopaHealth = kh; }
public void BeFlipped() { health = KoopaHealth.Flipped; Sprite = UniversalSpriteFactory.Instance.CreateSprite("FlippedKoopa", Location); Velocity = new Vector2(0, 0); }
public void BeStomped() { health = KoopaHealth.Stomped; Sprite = UniversalSpriteFactory.Instance.CreateSprite("ShellKoopa", Location); Velocity = new Vector2(XShellVelocity, Velocity.Y); }