void SpawnUnits() { List <General> mobs = CreateGeneralEnemy.CreateEnemy(levelName, 0); for (int i = 0; i < mobs.Count; i++) { GameObject go = Instantiate(mobs[i].prefab, spawnEnemy[i]); TurnEnemy tEnemy = go.GetComponent <TurnEnemy>(); if (tEnemy != null) { tEnemy.cellNum = i; tEnemy.general = mobs[i]; tEnemy.text.color = Colors.GreenColor; enemyes.Add(tEnemy); } } List <General> mobsU = new List <General>(); for (int i = 0; i < выбрГенерал.Count; i++) { if (выбрГенерал[i].general != null) { GameObject go = Instantiate(выбрГенерал[i].general.prefab, spawnPlayer[i]); TurnUnit tUnit = go.GetComponent <TurnUnit>(); tUnit.general = выбрГенерал[i].general; tUnit.cellNum = i; tUnit.text.color = Colors.GreenColor; tUnit.text.text = выбрГенерал[i].general.PARAMS[GENERAL_HP_CURRENT].ToString(); units.Add(tUnit); } } }
void UcVsEc() { float u; float e; if (unitsCurrent.Count > 0) { u = unitsCurrent[0].general.PARAMS[GENERAL_INITIATIVE_CURRENT]; } else { u = 0; } if (enemyesCurrent.Count > 0) { e = enemyesCurrent[0].general.PARAMS[GENERAL_INITIATIVE_CURRENT]; } else { e = 0; } if (u >= e && unitsCurrent.Count > 0 && enemyesCurrent.Count > 0) { selectedUnit = unitsCurrent[0]; if (selectedEnemy == null) { selectedEnemy = enemyesCurrent[0]; } selectedEnemy.Select(); selectedUnit.Select(); attack.interactable = true; WriteSkills(); } else if (u < e && unitsCurrent.Count > 0 && enemyesCurrent.Count > 0) { if (selectedEnemy != null) { selectedEnemy.UnSelected(); } if (selectedUnit != null) { selectedUnit.UnSelected(); } TurnEnemy(); } else if (unitsCurrent.Count > 0 && enemyesCurrent.Count == 0) { selectedUnit = unitsCurrent[0]; if (selectedEnemy == null) { selectedEnemy = enemyes[0]; } selectedEnemy.Select(); selectedUnit.Select(); attack.interactable = true; WriteSkills(); } else if (unitsCurrent.Count == 0 && enemyesCurrent.Count > 0) { selectedEnemy.UnSelected(); if (selectedUnit != null) { selectedUnit.UnSelected(); } TurnEnemy(); } else if (unitsCurrent.Count == 0 && enemyesCurrent.Count == 0) { for (int i = 0; i < units.Count; i++) { units[i].isEndTurn = false; } for (int i = 0; i < enemyes.Count; i++) { enemyes[i].isEndTurn = false; } unitsCurrent = units; enemyesCurrent = enemyes; Sort(); UcVsEc(); } }