public IEnumerator OpenRoutine(PCEvent pc) { while (pc.GetComponent <MapEvent>().IsAnimating()) { yield return(null); } pc.GetComponent <BattleEvent>().unit.battle.Log(pc.unit + " found a chest...", true); pc.GetComponent <BattleEvent>().AnimateBump(); yield return(CoUtils.RunSequence(new IEnumerator[] { pc.GetComponent <BattleEvent>().FinishAnims(), doll.PlayOnceRoutine(), OnOpenRoutine(pc), })); }
private IEnumerator cs_playAnim(DynValue args) { string name = args.Table.Get(ArgName).String; float duration = FloatArg(args, ArgDuration, 0.5f); List <Sprite> sprites = new List <Sprite>(Resources.LoadAll <Sprite>(AnimPath + name)); SimpleSpriteAnimator animator = chara.animLayer.GetComponent <SimpleSpriteAnimator>(); animator.frames = sprites; animator.frameDuration = duration; yield return(animator.PlayOnceRoutine()); animator.frames.Clear(); chara.animLayer.sprite = null; }