using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Content; namespace CarFire { class AnimateMelee { //member variables private AnimatedTexture SpriteTexture; string[] fileNames = new string[] { "graphics/meleeAttack", "graphics/meleeDying", "graphics/meleeExplosion", "graphics/meleeStanding", "graphics/meleeWalking" }; private ContentManager contentManager; //private GraphicsDeviceManager graphics; //private SpriteBatch spriteBatch; private bool changedGraphic; private string lastPh; private string ph; private Vector2 position; private SpriteBatch character; Player Player; public void Update(TimeSpan timeSpan) { SpriteTexture.UpdateFrame(timeSpan); } //constructor(s) public AnimateMelee(ContentManager content, Player player) { SpriteTexture = new AnimatedTexture(Vector2.Zero, 0, 1.0f, 0.5f); contentManager = content; ph = fileNames[3]; position = Vector2.Zero; Player = player; changedGraphic = true; } //methods public void AttackLeft(SpriteBatch spriteBatch, Vector2 drawSpot) { ph = fileNames[0]; if (lastPh == ph) changedGraphic = false; else changedGraphic = true; lastPh = ph; //graphics = graphicsDeviceManager; //this.spriteBatch = spriteBatch; //character = new SpriteBatch(spriteBatch.GraphicsDevice); character = spriteBatch; Animate(drawSpot); // SpriteTexture.Load(graphics.GraphicsDevice, contentManager, "fileNames[0]", 8, 12, true, 1); } public void Animate(Vector2 drawSpot) { //character = new SpriteBatch(graphics.GraphicsDevice); // "character" is the name of the sprite asset in the project. Console.WriteLine(ph); if(changedGraphic) SpriteTexture.Load(character.GraphicsDevice, contentManager, ph, 8, 12, true, 1); //viewport = graphics.GraphicsDevice.Viewport; position = new Vector2(Player.Coordinates.X*Map.PixelsToUnitSquares, Player.Coordinates.Y*Map.PixelsToUnitSquares);//viewport.Width / 2, 0);//viewport.Height / 2f); Console.WriteLine(drawSpot); //character.Begin(); SpriteTexture.DrawFrame(character, drawSpot); //character.End(); } } }