public override IEnumerator <YieldInstruction> Apply(GameEventOwner owner, Character ownerChar, Character character, MapStatus status, bool msg) { if (character != null) { yield break; } yield return(CoroutineManager.Instance.StartCoroutine(DungeonScene.Instance.RemoveMapStatus(status.ID))); ZoneManager.Instance.CurrentMap.Status.Add(status.ID, status); status.StartEmitter(DungeonScene.Instance.Anims); }
//public IEnumerator<YieldInstruction> DropItem(InvItem item, Loc loc) //public IEnumerator<YieldInstruction> DropItem(InvItem item, Loc loc, Loc start) //public IEnumerator<YieldInstruction> DropMoney(int amount, Loc loc, Loc start) //public IEnumerator<YieldInstruction> DropMapItem(MapItem item, Loc loc, Loc start) public void AddMapStatus(MapStatus status) { MapStatus statusToCheck; if (ZoneManager.Instance.CurrentGround.Status.TryGetValue(status.ID, out statusToCheck)) { } else { ZoneManager.Instance.CurrentGround.Status.Add(status.ID, status); status.StartEmitter(Anims); } }