/* public void Load(SpriteBatch spriteBatch,SpriteFont _damage) * { * this.spriteBatch = spriteBatch; * font_damage = _damage; * }*/ protected override void LoadContent() { CelCount celCount = new CelCount(3, 1); celAnimationManager.AddAnimation("my_ghost", "my_ghost", celCount, 10); frameheight = celAnimationManager.GetAnimationFrameHeight("my_ghost"); frameWidth = celAnimationManager.GetAnimationFrameWidth("my_ghost"); celAnimationManager.ToggleAnimation("my_ghost"); celAnimationManager.AddAnimation("Ghost_death", "Ghost_death", celCount, 10); frameheight = celAnimationManager.GetAnimationFrameHeight("Ghost_death"); frameWidth = celAnimationManager.GetAnimationFrameWidth("Ghost_death"); celAnimationManager.ToggleAnimation("Ghost_death"); }
/* public void Load(SpriteBatch spriteBatch,SpriteFont _damage) * { * this.spriteBatch = spriteBatch; * font_damage = _damage; * }*/ protected override void LoadContent() { CelCount celCount = new CelCount(8, 1); celAnimationManager.AddAnimation("Ramona_Swing", "Ramona_Swing", celCount, 10); celAnimationManager.PauseAnimation("Ramona_Swing"); celCount = new CelCount(8, 1); celAnimationManager.AddAnimation("Ramona_Slam", "Ramona_Slam", celCount, 10); celAnimationManager.PauseAnimation("Ramona_Slam"); celCount = new CelCount(8, 1); celAnimationManager.AddAnimation("Ramona_run", "Ramona_run", celCount, 10); frameheight = celAnimationManager.GetAnimationFrameHeight("Ramona_run"); frameWidth = celAnimationManager.GetAnimationFrameWidth("Ramona_run"); celAnimationManager.ToggleAnimation("Ramona_run"); }
public override void Update(GameTime gameTime) { if (!isDead) { if (inputHandler.KeyboardHandler.IsKeyDown(Keys.Right)) { celAnimationManager.ResumeAnimation("orc_right"); direction = Direction.Right; position.X += (speed * (float)gameTime.ElapsedGameTime.TotalSeconds); } else { celAnimationManager.PauseAnimation("orc_right"); } if (inputHandler.KeyboardHandler.IsKeyDown(Keys.Left)) { celAnimationManager.ResumeAnimation("orc_left"); direction = Direction.Left; position.X -= (speed * (float)gameTime.ElapsedGameTime.TotalSeconds); } else { celAnimationManager.PauseAnimation("orc_left"); } if (inputHandler.KeyboardHandler.IsKeyDown(Keys.Up)) { celAnimationManager.ResumeAnimation("orc_up"); direction = Direction.Up; position.Y -= (speed * (float)gameTime.ElapsedGameTime.TotalSeconds); } else { celAnimationManager.PauseAnimation("orc_up"); } if (inputHandler.KeyboardHandler.IsKeyDown(Keys.Down)) { celAnimationManager.ResumeAnimation("orc_down"); direction = Direction.Down; position.Y += (speed * (float)gameTime.ElapsedGameTime.TotalSeconds); } else { celAnimationManager.PauseAnimation("orc_down"); } if (inputHandler.KeyboardHandler.IsKeyDown(Keys.Space)) { atkTime = DateTime.Now; isAttacking = true; switch (direction) { case Direction.Down: celAnimationManager.ResumeAnimation("orc_slash_down"); break; case Direction.Up: celAnimationManager.ResumeAnimation("orc_slash_up"); break; case Direction.Left: celAnimationManager.ResumeAnimation("orc_slash_left"); break; case Direction.Right: celAnimationManager.ResumeAnimation("orc_slash_right"); break; default: break; } } else { atkTime = new DateTime(); isAttacking = false; } if (inputHandler.KeyboardHandler.IsKeyDown(Keys.LeftShift)) { switch (direction) { case Direction.Down: celAnimationManager.ResumeAnimation("orc_shield_down"); break; case Direction.Up: celAnimationManager.ResumeAnimation("orc_shield_up"); break; case Direction.Left: celAnimationManager.ResumeAnimation("orc_shield_left"); break; case Direction.Right: celAnimationManager.ResumeAnimation("orc_shield_right"); break; default: break; } } } int celWidth = celAnimationManager.GetAnimationFrameWidth("orc_left"); if (position.X > (Game.GraphicsDevice.Viewport.Width - celWidth)) { position.X = (Game.GraphicsDevice.Viewport.Width - celWidth); } if (position.X < 0) { position.X = 0; } base.Update(gameTime); }
public override void Update(GameTime gameTime) { if (health < 1) { isAttacking = false; } if (health > 0) { Vector2 dPos = playerPosition - position; if (Math.Sqrt(Math.Pow(dPos.X, 2) + Math.Pow(dPos.Y, 2)) <= 64) { collision = true; } else { collision = false; } dPos.Normalize(); if (Math.Abs(dPos.X) > Math.Abs(dPos.Y)) { if (dPos.X > 0) { direction = Direction.Right; } if (dPos.X < 0) { direction = Direction.Left; } } else { if (dPos.Y < 0) { direction = Direction.Up; } if (dPos.Y > 0) { direction = Direction.Down; } } if (!collision) { position.X += dPos.X; position.Y += dPos.Y; isAttacking = false; } else { if (collision) { isAttacking = true; atkTime = DateTime.Now; } else { } } int celWidth = celAnimationManager.GetAnimationFrameWidth("skeleton_right"); if (position.X > (Game.GraphicsDevice.Viewport.Width - celWidth)) { position.X = (Game.GraphicsDevice.Viewport.Width - celWidth); } if (position.X < 0) { position.X = 0; } } base.Update(gameTime); }