private IEnumerator MinionDeath_C(float waitTime) { yield return(new WaitForSeconds(waitTime)); if (!enemy) { MinionObject temp = this; for (int i = num; i < MinionField.instance.minionNum - 1; i++) { MinionField.instance.minions[i] = MinionField.instance.minions[i + 1]; } MinionField.instance.minions[MinionField.instance.minionNum - 1] = this; MinionField.instance.minionNum--; } else { MinionObject temp = this; for (int i = num; i < EnemyMinionField.instance.minionNum - 1; i++) { EnemyMinionField.instance.minions[i] = EnemyMinionField.instance.minions[i + 1]; } EnemyMinionField.instance.minions[EnemyMinionField.instance.minionNum - 1] = this; EnemyMinionField.instance.minionNum--; } MinionManager.instance.DeathMinionAbility(this); MinionRemoveProcess(); }
private IEnumerator GotoHand_EnemyMinion() { animator.SetTrigger("GoHand"); DragCardObject.instance.GotoHandEffect(transform.position, minion_name, true); while (!animator.GetCurrentAnimatorStateInfo(0).IsName("하수인소환안됨")) { GameEventManager.instance.EventSet(1f); yield return(new WaitForSeconds(0.001f)); } abilityList.Clear(); buffList.Clear(); taunt = false; stealth = false; MinionObject temp = this; for (int i = num; i < EnemyMinionField.instance.minionNum - 1; i++) { EnemyMinionField.instance.minions[i] = EnemyMinionField.instance.minions[i + 1]; } EnemyMinionField.instance.minions[EnemyMinionField.instance.minionNum - 1] = temp; EnemyMinionField.instance.minionNum--; if (EnemyCardHand.instance.nowHandNum < 10) { EnemyCardHand.instance.nowHandNum++; EnemyCardHand.instance.nowCard.Add(temp.minion_name); EnemyCardHand.instance.CardMove(EnemyCardHand.instance.nowHandNum - 1, transform.position, EnemyCardHand.instance.defaultSize, 180); CardViewManager.instance.UpdateCardView(); } yield return(new WaitForSeconds(0.001f)); }
public void AddMinion(int n, string name, bool cardHandSpawn, int spawnAni = 0) { if (minionNum == 7) { return; } if (cardHandSpawn) { GameEventManager.instance.EventAdd(2f); } MinionObject temp = minions[6]; for (int i = 5; i >= n; i--) { minions[i + 1] = minions[i]; } minions[n] = temp; minions[n].minion_name = name; minions[n].InitTrigger = true; minionNum++; //새로운 미니언 위치 지정 float minX = minionDistance * (minionNum - 1) / 2f; Vector3 v = new Vector3(transform.position.x - minX + minionDistance * n, transform.position.y, minions[n].transform.position.z); minions[n].transform.position = v; if (cardHandSpawn && spawnAni != 2) { DragCardObject.instance.ShowDropEffectMinion(Camera.main.WorldToScreenPoint(v), 0); } else if (cardHandSpawn && spawnAni == 2) { EffectManager.instance.FireField(); } StartCoroutine(MinionDrop(n, spawnAni, cardHandSpawn)); }