private void SetSprites() { animations = new Dictionary <AnimationType, SpritenameAnimation>(); animations.Add(AnimationType.HELMET_IDLE_NORTH, new SpritenameAnimation(AnimationType.HELMET_IDLE_NORTH.ToString(), new string[] { "IdleBack" }, 0.7f, false)); animations.Add(AnimationType.HELMET_IDLE_EAST, new SpritenameAnimation(AnimationType.HELMET_IDLE_EAST.ToString(), new string[] { "IdleSide" }, 0.7f, false)); animations.Add(AnimationType.HELMET_IDLE_SOUTH, new SpritenameAnimation(AnimationType.HELMET_IDLE_SOUTH.ToString(), new string[] { "IdleFront" }, 0.7f, false)); animations.Add(AnimationType.HELMET_IDLE_WEST, new SpritenameAnimation(AnimationType.HELMET_IDLE_WEST.ToString(), new string[] { "IdleSide" }, 0.7f, false, true)); animations.Add(AnimationType.HELMET_WALK_NORTH, new SpritenameAnimation(AnimationType.HELMET_WALK_NORTH.ToString(), new string[] { "WalkBack1", "WalkBack2" }, 0.7f)); animations.Add(AnimationType.HELMET_WALK_EAST, new SpritenameAnimation(AnimationType.HELMET_WALK_EAST.ToString(), new string[] { "WalkSide1", "WalkSide2" }, 0.7f)); animations.Add(AnimationType.HELMET_WALK_SOUTH, new SpritenameAnimation(AnimationType.HELMET_WALK_SOUTH.ToString(), new string[] { "WalkFront1", "WalkFront2" }, 0.7f)); animations.Add(AnimationType.HELMET_WALK_WEST, new SpritenameAnimation(AnimationType.HELMET_WALK_WEST.ToString(), new string[] { "WalkSide1", "WalkSide2" }, 0.7f, true, true)); animations.Add(AnimationType.NOHELMET_IDLE_NORTH, new SpritenameAnimation(AnimationType.NOHELMET_IDLE_NORTH.ToString(), new string[] { "2IdleBack" }, 0.7f, false)); animations.Add(AnimationType.NOHELMET_IDLE_EAST, new SpritenameAnimation(AnimationType.NOHELMET_IDLE_EAST.ToString(), new string[] { "2IdleSide" }, 0.7f, false)); animations.Add(AnimationType.NOHELMET_IDLE_SOUTH, new SpritenameAnimation(AnimationType.NOHELMET_IDLE_SOUTH.ToString(), new string[] { "2IdleFront" }, 0.7f, false)); animations.Add(AnimationType.NOHELMET_IDLE_WEST, new SpritenameAnimation(AnimationType.NOHELMET_IDLE_WEST.ToString(), new string[] { "2IdleSide" }, 0.7f, false, true)); animations.Add(AnimationType.NOHELMET_WALK_NORTH, new SpritenameAnimation(AnimationType.NOHELMET_WALK_NORTH.ToString(), new string[] { "2WalkBack1", "2WalkBack2" }, 0.7f)); animations.Add(AnimationType.NOHELMET_WALK_EAST, new SpritenameAnimation(AnimationType.NOHELMET_WALK_EAST.ToString(), new string[] { "2WalkSide1", "2WalkSide2" }, 0.7f)); animations.Add(AnimationType.NOHELMET_WALK_SOUTH, new SpritenameAnimation(AnimationType.NOHELMET_WALK_SOUTH.ToString(), new string[] { "2WalkFront1", "2WalkFront2" }, 0.7f)); animations.Add(AnimationType.NOHELMET_WALK_WEST, new SpritenameAnimation(AnimationType.NOHELMET_WALK_WEST.ToString(), new string[] { "2WalkSide1", "2WalkSide2" }, 0.7f, true, true)); currentAnimationType = AnimationType.HELMET_IDLE_SOUTH; currentAnimation = animations[currentAnimationType]; prevFrameIndex = 0; }
public void AddAnimation(string state, List <string> spriteNames, float fps, bool looping) { animations.Add(state, new SpritenameAnimation(state, spriteNames.ToArray(), 1 / fps, looping)); currentAnimationState = state; currentAnimation = animations[currentAnimationState]; prevFrameIndex = 0; }
public FurnitureAnimation(Dictionary <string, SpritenameAnimation> incomingAnimations) { animations = incomingAnimations; if (string.IsNullOrEmpty(currentAnimationState)) { currentAnimationState = animations.Keys.First(); currentAnimation = animations[currentAnimationState]; prevFrameIndex = 0; } }
/// <summary> /// Add animation to furniture. First animation added will be default for sprites e.g. ghost image when placing furniture. /// </summary> public void AddAnimation(string state, List <string> spriteNames, float fps, bool looping, bool valueBased) { animations.Add(state, new SpritenameAnimation(state, spriteNames.ToArray(), 1 / fps, looping, false, valueBased)); // set default state to first state entered - most likely "idle" if (string.IsNullOrEmpty(currentAnimationState)) { currentAnimationState = state; currentAnimation = animations[currentAnimationState]; prevFrameIndex = 0; } }
/// <summary> /// Set the animation state. Will only have an effect if stateName is different from current animation stateName. /// </summary> public void SetState(string stateName) { if (animations.ContainsKey(stateName) == false) { Debug.ULogErrorChannel("Animation", "SetState tries to set " + stateName + " which doesn't exist."); return; } if (stateName != currentAnimationState) { currentAnimationState = stateName; currentAnimation = animations[currentAnimationState]; currentAnimation.Play(); ShowSprite(currentAnimation.CurrentFrameName); } }
/// <summary> /// Set the animation state. Will only have an effect if stateName is different from current animation stateName. /// </summary> public void SetState(string stateName) { if (animations.ContainsKey(stateName) == false) { return; } if (stateName == currentAnimationState) { return; } currentAnimationState = stateName; currentAnimation = animations[currentAnimationState]; currentAnimation.Play(); ShowSprite(currentAnimation.CurrentFrameName); }
/// <summary> /// Set the animation state. Will only have an effect if stateName is different from current animation stateName. /// </summary> public void SetState(string stateName) { if (stateName == currentAnimationState) { return; } SpritenameAnimation animation; if (animations.TryGetValue(stateName, out animation) == false) { return; } currentAnimationState = stateName; currentAnimation = animation; currentAnimation.Play(); ShowSprite(currentAnimation.CurrentFrameName); }
public void Update(float deltaTime) { int newAnimation = (int)character.CharFacing; if (character.IsWalking) { newAnimation += 10; } // TODO: What is the acceptable amount of O2 gas pressure? // Using .15 from Need.cs for now. if (character.CurrTile.GetGasPressure("O2") >= 0.15f) { newAnimation += 100; // Remove helmet } // check if we need to switch animations if (newAnimation != (int)currentAnimationType) { currentAnimationType = (AnimationType)newAnimation; currentAnimation = animations[currentAnimationType]; // Make sure we update the sprite prevFrameIndex = -1; if (currentAnimation.FlipX == true && renderer.flipX == false) { renderer.flipX = true; } else if (currentAnimation.FlipX == false && renderer.flipX == true) { renderer.flipX = false; } } currentAnimation.Update(deltaTime * character.MovementSpeed); if (prevFrameIndex != currentAnimation.CurrentFrame) { ShowSprite(currentAnimation.CurrentFrameName); prevFrameIndex = currentAnimation.CurrentFrame; } }
public SpritenameAnimation Clone() { SpritenameAnimation returnFA = new SpritenameAnimation(State, frames, delay, loops, FlipX, ValueBased); return(returnFA); }
public SpritenameAnimation Clone() { SpritenameAnimation returnFA = new SpritenameAnimation(State, frames, delay, loops); return(returnFA); }