public void PhysDef() // { int npcId = BattleMechanics.SelectedNpc; NpcMonster npc = BattleMechanics.NpcList[npcId]; PlayerStats.PlayerBattlePhase(2, npc); if (npc.CurrentHp == 0 || PlayerStats.CurrentHp == 0) { BattleMechanics.WhoIsLoosing(npc); if (PlayerStats.CurrentHp == 0 || BattleMechanics.GameOver) { return; } } BattleMechanics.TurnPhase(); //BattleMechanics.PlayerMadeHisTurn = false; }
public void PhysAttack() // { Text logText = GameObject.Find("Log Field Text").GetComponent <Text>(); int npcId = BattleMechanics.SelectedNpc; NpcMonster npc = BattleMechanics.NpcList[npcId]; if (npc.CurrentHp == 0) { logText.text += npc.Name + " уже недееспособен. Выберите другого противника.\n\r"; return; } PlayerStats.PlayerBattlePhase(1, npc); if (npc.CurrentHp == 0 || PlayerStats.CurrentHp == 0) { BattleMechanics.WhoIsLoosing(npc); if (BattleMechanics.GameOver) { return; } } BattleMechanics.TurnPhase(); //BattleMechanics.PlayerMadeHisTurn = false; }
/* 1 - свиток маг атаки * 2 - свиток восстановления * 3 - свиток усиления хар. * 4 - свиток сна */ void ScrollMechanics(int option, int npcId) { Text logText = GameObject.Find("Log Field Text").GetComponent <Text>(); NpcMonster npc = BattleMechanics.NpcList[npcId]; if (npc.CurrentHp == 0 && (option == 1 || option == 4)) { logText.text += npc.Name + " уже недееспособен. Выберите другого противника.\n\r"; return; } PlayerStats.PlayerBattlePhase(3, npc); if (PlayerStats.CurrentHp == 0) { BattleMechanics.WhoIsLoosing(npc); return; } //BattleMechanics.PlayerSkillAndBuffCountersCheck(); switch (option) { case 1: PlayerStats.PlayerMagicAttack(npc, ScrollEffects.ScrollMult, ScrollEffects.ScrollDmg); break; case 2: ScrollEffects.HpScrollMechanic(ScrollEffects.ScrollHp); logText.text += "\n\rИспользован свиток лечения. ХП Героя возросло на " + ScrollEffects.ScrollHp + ", теперь у Героя " + PlayerStats.CurrentHp + " ХП.\n\r"; break; case 3: if (!PlayerStats.BuffIsActivated) { ScrollEffects.BoostScrollMechanic(ScrollEffects.ScrollBuff); logText.text += "\n\rИспользован свиток усиления характеристик на 3 хода. Характеристики возросли на " + ScrollEffects.ScrollBuff + ".\n\r"; } else { logText.text += "\n\rСвиток усиления характеристик уже действует. Эффект продлён до 3 ходов\n\r"; PlayerStats.BuffTurns = 3; } break; case 4: ScrollEffects.SleepScrollMechanic(npc); logText.text += "\n\rИспользован свиток сна. " + npc.Name + " засыпает на 2 хода\n\r"; break; } if (npc.CurrentHp == 0) //если боевой свиток убил моба { //if (BattleMechanics.eZombie) //{ // BattleMechanics.EnemySkillZombieDied(); // logText.text += "Магия убила зомби. Теперь на место зомби встал хозяин.\n\r"; // return; //} if (npc.Reincarnation) { npc.EnemyReincarnation(); } else { BattleMechanics.WhoIsLoosing(npc); } } //if (option != 1)//в методе PlayerBattlePhase уже есть атака монстра BattleMechanics.AfterPlayerAction(); }
public void UseSkillbyID() { Text logText = GameObject.Find("Log Field Text").GetComponent <Text>(); NpcMonster npc = BattleMechanics.NpcList[BattleMechanics.SelectedNpc]; if (npc.CurrentHp == 0) { logText.text += npc.Name + " уже недееспособен. Выберите другого противника.\n\r"; return; } switch (skillId) { //скилы, которые атакуют сразу //оружейные: case 2: //Удар в печень case 4: //Оружие вон case 6: //Саблезуб case 7: //Камикадзе case 15: //Стрела к олено case 16: //Рыцарский хук case 17: //Безумец case 18: //Разряд case 19: //Выпад case 20: //Тишина case 21: //Невозмутимость //щитовые: case 27: //Электро case 28: //Всем лежать! if (npc.CurrentHp == 0) { logText.text += npc.Name + " уже недееспособен. Выберите другого противника.\n\r"; return; } PlayerStats.PlayerSkillEffects(skillId, npc); //используем скил PlayerStats.PlayerBattlePhase(1, npc); break; //просто включают пассивки //оружейные: case 8: //Кровотечение case 9: //Вампир case 10: //Костолом case 11: //Дуэлянт case 22: //пассивка "Безумца" case 23: //Ярость case 24: //Пожиратель душ case 25: //Крушитель //щитовые: case 29: //Месть case 30: //Везунчик case 31: //Зеркало case 32: //Хранитель case 33: //Стратег case 34: //Дубовая голова //моментальное использование скила без проматывания хода //оружейные скилы: case 3: //Зверь case 5: //Берсерк //щитовые: case 12: //Шипы case 13: //Антимагия case 26: //Накопитель PlayerStats.PlayerSkillEffects(skillId, npc); //используем скил return; //BattleMechanics.PlayerBattlePhase(3, npc); //break; } if (npc.CurrentHp == 0 || PlayerStats.CurrentHp == 0) { BattleMechanics.WhoIsLoosing(npc); if (PlayerStats.CurrentHp == 0 || BattleMechanics.GameOver) { return; } } BattleMechanics.AfterPlayerAction(); //после использования скила монстр атакует в ответ }