//Startet das ausspielen eioner KreaturenKarte public void kreaturkartespielen(KreaturKarte karte) { //Überprüft ob der Spieler genug Mana hat if (karte.Player.Mana >= karte.kosten) { //Schaut ob der Spieler aktiv ist if (GetAktuellSpieler() == karte.Player) { //Überprüft ob es noch die Beschwörungsphase ist. if (getPhase() == 0) { //Wurde dieser Kreatur bereits ausgewählt wird sie wieder abgewählt if (moving != karte.Kreatur) { //War eine andere action am laufen wird diese beendet if (Spell != null || equip != null || moving != null) { actionend(); } //es wird nach der Hauptkreatur gesucht foreach (Feld element in Felder) { if (element.Kreatur != null) { if (element.Kreatur.Player == karte.Player && element.Kreatur.anfuehrer == true) { karte.Kreatur.Player = karte.Player; moving = karte.Kreatur; summon = karte; element.Beschwoerung(); } } } } else { actionend(); } } else { UIManagerController.s_instance.Meldungen((int)enMeldungen.Falsche_Phase); Debug.Log("Wrong Phase"); } } else { UIManagerController.s_instance.Meldungen((int)enMeldungen.Falscher_Spieler); Debug.Log("Wrong Player"); } } else { UIManagerController.s_instance.Meldungen((int)enMeldungen.Nicht_genug_Mana); Debug.Log("Nicht genug Mana"); } }
//Beendet eine bestehende aktion public void actionend() { Debug.Log("actionend"); allMoveEnd(); moving = null; Spell = null; equip = null; summon = null; chargeFeld = null; attackedField = null; }
//wird aufgerufen wenn eine Kreatur auf dem Feld zerstört wird public void Kreaturzerstört(KreaturKarte besiegt, KreaturChip chip) { GameManager.s_instance.letSoundPlay(Enumerations.enSfxAndPfx.KarteBewegen); List <AusruestungsKarte> templist = chip.removeequip(); foreach (AusruestungsKarte equip in templist) { Kartebewegen(feld, equip, ablagestapel); } Kartebewegen(feld, besiegt, ablagestapel); onCardDeath(besiegt); }