public void InitPlayers() { Mario smallMario = new Mario(new Vector2(20, 16), null); displayPlayers.Add((new Mario(new Vector2(20, 16), null))); Mario bigMario = new Mario(new Vector2(20, 60), null); bigMario.SwitchToBigMario(false); displayPlayers.Add(bigMario); Mario fireMario = new Mario(new Vector2(20, 100), null); fireMario.SwitchToFireMario(false); displayPlayers.Add(fireMario); }
public static void HandleCollision(IPlayer marioPlayer, IEnemy enemy, Game1.Side side) { Mario mario = (Mario)marioPlayer; if (!mario.IsInSpecialAnimationState()) { if (mario.IsStarMario() && !side.Equals(Game1.Side.None)) { enemy.BeFlipped(); } else if (side.Equals(Game1.Side.Left) || side.Equals(Game1.Side.Right) || side.Equals(Game1.Side.Top)) { mario.TakeDamage(); } //case mario on enemy else if (side.Equals(Game1.Side.Bottom)) { int bounceVelocity = -4; // case enemy is goomba if (enemy is Goomba) { Goomba localGoomba = (Goomba)enemy; localGoomba.KillEnemy(); mario.SetVerticalVelocity(bounceVelocity); } if (enemy is Koopa) { Koopa localKoopa = (Koopa)enemy; localKoopa.KillEnemy(); mario.SetVerticalVelocity(bounceVelocity); } if (!WorldManager.spriteSet.players[0].GetTouchedGround()) { WorldManager.spriteSet.players[0].IncrementEnemyMultiplier(); } } } }
public bool ChangeStateAnimation(Mario mario) { bool finished = false; if (frameTimer < totalFrames) { frameTimer++; if (frameTimer == firstFrame) { if (mario.GetState().Equals((MarioState.LARGE))) { mario.state = new RightRunningBigMarioState(mario); mario.marioSprite = new RightRunningLargeMario(); } else if (mario.GetState().Equals((MarioState.FIRE))) { mario.state = new RightRunningFireMarioState(mario); mario.marioSprite = new RightRunningFireMario(); } else { mario.state = new RightRunningSmallMarioState(mario); mario.marioSprite = new RightRunningSmallMario(); } } mario.MoveX(walkingVelo); mario.marioSprite.Update(true); if (frameTimer == totalFrames) { finished = true; } } else { mario.location.X = offScreen; mario.location.Y = offScreen; } return(finished); }
public StarMario(Mario decoratedMario) { this.decoratedMario = decoratedMario; }
public RightJumpingSmallMarioState(Mario mario) { this.mario = mario; //construct sprite here }
public RightJumpingFireMarioState(Mario mario) { this.mario = mario; }
public LeftJumpingBigMarioState(Mario mario) { this.mario = mario; }
public MarioMovingManager(Mario mario) { this.mario = mario; }
public bool ChangeStateAnimation(Mario mario, IMarioSprite initialSprite, IMarioSprite finalSprite) { bool finished = false; int firstFrameChangeRotation = totalFrames * 1 / 5; int secondFrameChangeRotation = totalFrames * 2 / 5; int thirdFrameChangeRotation = totalFrames * 3 / 5; int fourthFrameChangeRotation = totalFrames * 4 / 5; if (frameTimer < totalFrames) { if (frameTimer < firstFrameChangeRotation) { if (frameTimer == 0) { mario.location.Y -= transformationDisplacement; } mario.SetIMarioSprite(finalSprite); mario.dimensions.Y = MarioUtility.marioNormalHeight; mario.dimensions.X = MarioUtility.marioNormalWidth; } else if (frameTimer < secondFrameChangeRotation) { if (frameTimer == firstFrameChangeRotation) { mario.location.Y += transformationDisplacement; } mario.SetIMarioSprite(initialSprite); mario.dimensions.Y = MarioUtility.marioSmallHeight; mario.dimensions.X = MarioUtility.marioSmallWidth; } else if (frameTimer < thirdFrameChangeRotation) { if (frameTimer == secondFrameChangeRotation) { mario.location.Y -= transformationDisplacement; } mario.SetIMarioSprite(finalSprite); mario.dimensions.Y = MarioUtility.marioNormalHeight; mario.dimensions.X = MarioUtility.marioNormalWidth; } else if (frameTimer < fourthFrameChangeRotation) { if (frameTimer == thirdFrameChangeRotation) { mario.location.Y += transformationDisplacement; } mario.SetIMarioSprite(initialSprite); mario.dimensions.Y = MarioUtility.marioSmallHeight; mario.dimensions.X = MarioUtility.marioSmallWidth; } else { if (frameTimer == fourthFrameChangeRotation) { mario.location.Y -= transformationDisplacement; } mario.SetIMarioSprite(finalSprite); mario.dimensions.Y = MarioUtility.marioNormalHeight; mario.dimensions.X = MarioUtility.marioNormalWidth; } frameTimer++; if (frameTimer == totalFrames) { finished = true; frameTimer = 0; } } return(finished); }
public RightRunningSmallMarioState(Mario mario) { this.mario = mario; }
public DeadMarioState(Mario mario) { Display.UpdateScore(0); this.mario = mario; //construc sprite here }