public Racer(Texture2D spritesheet, Rectangle hitbox, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 0, 1, 41,41,0, new Vector2(20f,20f)); Speed = Vector2.Zero; }
public Hero(Texture2D spritesheet, Rectangle hitbox, Vector2 hitboxoffset) : base(spritesheet, hitbox, null, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 0, 1, 16,16,0, new Vector2(8f,16f)); _runAnim = new SpriteAnim(spritesheet, 1, 7, 16, 16, 60, new Vector2(8f,16f)); _runAnim.Play(); }
public Lunger(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 5, 6, 16, 16, 100, new Vector2(8, 8), false, false, 0); _idleAnim.Pause(); _hitAnim = new SpriteAnim(spritesheet, 11, 6, 16, 16, 100, new Vector2(8, 8), false, false, _idleAnim.CurrentFrame); _hitAnim.Pause(); }
public ManOWar(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 1, 4, 16, 16, 500, new Vector2(8, 8), true, false, Helper.Random.Next(4)); _idleAnim.Play(); _hitAnim = new SpriteAnim(spritesheet, 7, 4, 16, 16, 500, new Vector2(8, 8), true, false, _idleAnim.CurrentFrame); _hitAnim.Play(); Speed.X = Helper.RandomFloat(-0.1f, 0.1f); }
public void playAnimation(string name) { for (var i = 0; i < _animation.Count; i++) { if (((SpriteAnim)_animation[i]).name == name) { _currAnimation = (SpriteAnim)_animation[i]; } } }
public Gorger(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 3, 6, 16, 16, 100, new Vector2(8, 8), false, false, 0); _idleAnim.Pause(); _hitAnim = new SpriteAnim(spritesheet, 9, 6, 16, 16, 100, new Vector2(8, 8), false, false, _idleAnim.CurrentFrame); _hitAnim.Pause(); Speed.Y = Helper.RandomFloat(-0.2f, 0.2f); }
public static uint CreatePlayer() { int playerCount = ComponentManager.PlayerComponent.Count(); if (playerCount >= MAX_PLAYERS) return uint.MaxValue; uint playerID = IDManager.GetNewID(); Player player = new Player() { EntityID = playerID, PlayerID = (ushort)playerCount }; ComponentManager.PlayerComponent.Add(playerID, player); Position playerPosition = new Position() { EntityID = playerID, Center = new Vector3() }; ComponentManager.PositionComponent.Add(playerID, playerPosition); ComponentManager.PlaneComponent.Add(playerID); Movement playerMovement = new Movement() { EntityID = playerID, MoveDirection = Vector2.zero, Speed = BASE_SPEED }; ComponentManager.MovementComponent.Add(playerID, playerMovement); SpriteAnim playerAnim = new SpriteAnim() { EntityID = playerID, AnimArray = new List<Sprite>(), AnimIndex = 0, AnimType = SpriteType.Loop, FPS = 1.0f, FrameIncrement = 0, TimeLeft = 1.0f }; playerAnim = SpriteHelper.SetMageAnim(playerAnim.EntityID, SpriteHelper.AnimList.IdleDown); ComponentManager.SpriteAnimComponent.Add(playerID, playerAnim); RenderEntity playerRender = new RenderEntity() { EntityID = playerID }; ComponentManager.RenderComponent.Add(playerID, playerRender); return playerID; }
public Eyes(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 2, 4, 16, 16, 100, new Vector2(8, 8), true, true, 0); _idleAnim.Play(); _hitAnim = new SpriteAnim(spritesheet, 8, 4, 16, 16, 100, new Vector2(8, 8), true, true, _idleAnim.CurrentFrame); _hitAnim.Play(); Speed.X = Helper.RandomFloat(-0.3f, 0.3f); Speed.Y = Helper.RandomFloat(-0.2f, 0.2f); }
public Turret(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 4, 2, 16, 16, 200, new Vector2(8, 8), true, false, 0); _idleAnim.Play(); _hitAnim = new SpriteAnim(spritesheet, 10, 2, 16, 16, 200, new Vector2(8, 8), true, false, _idleAnim.CurrentFrame); _hitAnim.Play(); gunLoop = AudioController.CreateInstance("minigun"); gunLoop.IsLooped = true; gunLoop.Volume = 0f; gunLoop.Play(); gunLoop.Pause(); Speed.X = Helper.Random.Next(2) == 0 ? -0.1f : 0.1f; }
public Flyer(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 0, 1, 16, 16, 100, new Vector2(8, 8), false, false, 0); _idleAnim.Pause(); _hitAnim = new SpriteAnim(spritesheet, 6, 1, 16, 16, 100, new Vector2(8, 8), false, false, _idleAnim.CurrentFrame); _hitAnim.Pause(); _faceDir = Helper.Random.Next(2) == 0 ? -1 : 1; gunLoop = AudioController.CreateInstance("minigun"); gunLoop.IsLooped = true; gunLoop.Volume = 0f; gunLoop.Play(); gunLoop.Pause(); }
public void addAnimation(string name, int[] data, float speed) { for (var i = 0; i < _animation.Count; i++) { if (((SpriteAnim)_animation[i]).name == name) { _animation.RemoveAt(i); } } SpriteAnim anim = new SpriteAnim(); anim.name = name; anim.data = data; anim.speed = speed; _animation.Add(anim); }
public Boss(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { _idleAnim = new SpriteAnim(spritesheet, 0, 1, 32, 32, 0, new Vector2(16,16)); _hitAnim = new SpriteAnim(spritesheet, 5, 1, 32, 32, 0, new Vector2(16, 16)); _headGobAnim = new SpriteAnim(spritesheet, 1, 2, 32, 32, 0, new Vector2(16, 16)); _headGobAnimHit = new SpriteAnim(spritesheet, 6, 2, 32, 32, 0, new Vector2(16, 16)); _headEyeAnim = new SpriteAnim(spritesheet, 2, 6, 32, 32, 0, new Vector2(16, 16)); _headEyeAnimHit = new SpriteAnim(spritesheet, 7, 6, 32, 32, 0, new Vector2(16, 16)); _bodyAnim = new SpriteAnim(spritesheet, 3, 1, 32, 32, 0, new Vector2(16, 16)); _bodyAnimHit = new SpriteAnim(spritesheet, 8, 1, 32, 32, 0, new Vector2(16, 16)); _tailAnim = new SpriteAnim(spritesheet, 4, 1, 32, 32, 0, new Vector2(16, 16)); _tailAnimHit = new SpriteAnim(spritesheet, 9, 1, 32, 32, 0, new Vector2(16, 16)); laughLoop = AudioController.CreateInstance("boss"); laughLoop.Volume = 0f; laughLoop.Pause(); }
public Ship(Texture2D spritesheet, Rectangle hitbox, List<Vector2> hitPolyPoints, Vector2 hitboxoffset) : base(spritesheet, hitbox, hitPolyPoints, hitboxoffset) { Instance = this; engineLoop = AudioController.CreateInstance("boost"); engineLoop.Volume = 0f; engineLoop.IsLooped = true; engineLoop.Play(); engineLoop.Pause(); engineLoop.Volume = 0.3f; gunLoop = AudioController.CreateInstance("minigun"); gunLoop.IsLooped = true; gunLoop.Volume = 0f; gunLoop.Play(); gunLoop.Pause(); gunLoop.Volume = 0.3f; hitLoop = AudioController.CreateInstance("shiphit"); hitLoop.IsLooped = false; hitLoop.Volume = 1f; _idleAnim = new SpriteAnim(spritesheet, 0, 1, 16, 16, 100, new Vector2(8, 8)); _idleAnim.Play(); _upAnim = new SpriteAnim(spritesheet, 1, 2, 16, 16, 500, new Vector2(8, 8), false, false, 0); _upAnim.Pause(); _downAnim = new SpriteAnim(spritesheet, 2, 2, 16, 16, 500, new Vector2(8, 8), false, false, 0); _downAnim.Pause(); _idleHitAnim = new SpriteAnim(spritesheet, 3, 1, 16, 16, 100, new Vector2(8, 8)); _idleHitAnim.Play(); _upHitAnim = new SpriteAnim(spritesheet, 4, 2, 16, 16, 500, new Vector2(8, 8), false, false, 0); _upHitAnim.Pause(); _downHitAnim = new SpriteAnim(spritesheet, 5, 2, 16, 16, 500, new Vector2(8, 8), false, false, 0); _downHitAnim.Pause(); Active = true; }
// Use this for initialization void Start() { // if( m_MoveDir.x != 1 && m_MoveDir.y != 1 && m_MoveDir.z != 1 && m_MoveDir.x != -1 && m_MoveDir.y != -1 && m_MoveDir.z != -1 ) { Debug.LogWarning( "The MoveDir is invalid. Set it to default.", this ); m_MoveDir = Vector3.right; } UIEventTrigger trigger = this.transform.GetComponent<UIEventTrigger>(); if(trigger == null) { trigger = this.gameObject.AddComponent<UIEventTrigger>(); } EventDelegate.Add(trigger.onHoverOver,this.OnHoverIn); EventDelegate.Add(trigger.onHoverOut,this.OnHoverOut); m_SpriteAnim = this.GetComponent<SpriteAnim>(); if( m_SpriteAnim == null ) Debug.LogWarning( "This GameObject has not Component:'SpriteAnim'.", this ); else m_SpriteAnim.Pause(); // StartCoroutine( DelayInit() ); }
private static void ReplaceAnim(uint AnimEntityID, SpriteAnim newAnim) { SpriteAnim targetAnim = ComponentManager.SpriteAnimComponent[AnimEntityID]; }
public static SpriteAnim SetMageAnim(uint ownerID, AnimList anim) { SpriteAnim spriteAnim = new SpriteAnim() { EntityID = ownerID, AnimArray = new List<Sprite>(), FPS = 10, AnimIndex = 0, TimeLeft = 0, FrameIncrement = 1, AnimType = SpriteType.Loop }; switch (anim) { case AnimList.Left: { spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Left2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Left1)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Left2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Left3)); spriteAnim.AnimID = AnimList.Left; break; } case AnimList.Right: { spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Right2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Right1)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Right2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.Right3)); spriteAnim.AnimID = AnimList.Right; break; } case AnimList.Up: { spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Up2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Up1)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Up2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.Up3)); spriteAnim.AnimID = AnimList.Up; break; } case AnimList.Down: { spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Down2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Down1)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID,CharPosition.Down2)); spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.Down3)); spriteAnim.AnimID = AnimList.Down; break; } case AnimList.IdleUp: { spriteAnim.FrameIncrement = 0; spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.IdleUp)); spriteAnim.AnimID = AnimList.IdleUp; break; } case AnimList.IdleDown: { spriteAnim.FrameIncrement = 0; spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.IdleDown)); spriteAnim.AnimID = AnimList.IdleDown; break; } case AnimList.IdleLeft: { spriteAnim.FrameIncrement = 0; spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.IdleLeft)); spriteAnim.AnimID = AnimList.IdleLeft; break; } case AnimList.IdleRight: { spriteAnim.FrameIncrement = 0; spriteAnim.AnimArray.Add(SetMageSprite(ownerID, CharPosition.IdleRight)); spriteAnim.AnimID = AnimList.IdleRight; break; } default: { throw new UnityException("PlayerAnimList is null or does not exist"); } } return spriteAnim; }
void Start() { sprAnim = GetComponent <SpriteAnim>(); sprAnim.Play(0); }
void Update() { // Store the sprite anim component if we haven't already if (m_anim == null) { m_anim = GetComponent <SpriteAnim>(); } // If we're currently shooting, don't do anything else if (m_anim.IsPlaying(m_shoot)) { return; } // Handle movement // Check if we're pressing left/right, and set a direction variable if we are float direction = 0; if (Input.GetKey(KeyCode.LeftArrow)) { direction = -1; } if (Input.GetKey(KeyCode.RightArrow)) { direction = 1; } if (direction == 0) { // If there's no direction pressed, return to the idle animation if (m_anim.Clip != m_idle) // (check we're not already in the animation first though) { m_anim.Play(m_idle); } } else { // If direction is set, play the run animation (after checking we're not already playing it) if (m_anim.Clip != m_run) { m_anim.Play(m_run); } // Move the character in the chosen direction transform.Translate(new Vector3(direction * m_speed * Time.deltaTime, 0, 0)); if (transform.localScale.x != direction) { transform.localScale = new Vector3(direction, 1, 1); } } // Shooting stuff! // Choose weapon with the '1' or '2' keys if (Input.GetKeyDown(KeyCode.Alpha1)) { GetComponentInChildren <PlayRandomAnim>().SetClip(0); } if (Input.GetKeyDown(KeyCode.Alpha2)) { GetComponentInChildren <PlayRandomAnim>().SetClip(1); } // Start shooting animation with the spacebar if (Input.GetKeyDown(KeyCode.Space)) { m_anim.Play(m_shoot); } }