/*****************ISelectionnable*****************/ public override void onClick() { Joueur joueurLocal = JoueurUtils.getJoueurLocal(); if (null != joueurLocal) { TourJeuSystem systemTour = TourJeuSystem.getTourSystem(); //Si un joueur clique sur une carte capable d'attaquer puis sur une carte ennemie cela lance une attaque EventTask eventTask = EventTaskUtils.getEventTaskEnCours(); if (systemTour.getPhase(joueurLocal.netId) == TourJeuSystem.PHASE_ATTAQUE && null != joueurLocal.CarteSelectionne && joueurLocal.CarteSelectionne.JoueurProprietaire != JoueurProprietaire && joueurLocal.CarteSelectionne is IAttaquer && ((IAttaquer)joueurLocal.CarteSelectionne).isCapableAttaquer() && !(null != eventTask && eventTask is EventTaskChoixCible)) //On ne peut attaquer si choix de defense en cours //TODO vérifier l'emplacement sol { JoueurUtils.getJoueurLocal().CmdCreateTask(joueurLocal.CarteSelectionne.netId, joueurLocal.netId, this.IdISelectionnable, ConstanteIdObjet.ID_CONDITION_ACTION_ATTAQUE, NetworkInstanceId.Invalid, false); } else { base.onClick(); } } else { base.onClick(); } }
public override void onClick() { GameObject goJoueur = ClientScene.FindLocalObject(this.idJoueurPossesseur); if (null != goJoueur) { Joueur joueur = goJoueur.GetComponent <Joueur> (); if (isMovableByPlayer(joueur)) { EventTask eventTask = EventTaskUtils.getEventTaskEnCours(); if (this.etatSelectionnable == SelectionnableUtils.ETAT_SELECTIONNABLE && null != eventTask && eventTask is EventTaskChoixCible) { ((EventTaskChoixCible)eventTask).ListCibleChoisie.Add(this); } else if (joueur.CarteSelectionne is CarteBatimentMetier || joueur.CarteSelectionne is CarteDefenseMetier || listNomCarteExeption.Contains(joueur.CarteSelectionne.name)) { if (isCardCostPayable(joueur.RessourceMetal, joueur.CarteSelectionne)) { joueur.CmdPayerRessource(joueur.RessourceMetal.TypeRessource, ((CarteConstructionMetierAbstract)joueur.CarteSelectionne).getCoutMetal()); joueur.CarteSelectionne.deplacerCarte(this, joueur.netId, NetworkInstanceId.Invalid); } } else if (joueur.CarteSelectionne is CarteVaisseauMetier) { //TODO vaisseau en mode defense } } } }
/*******************ISelectionnable****************/ public void onClick() { EventTask eventTask = EventTaskUtils.getEventTaskEnCours(); if (this.etatSelectionne == 1 && null != eventTask && eventTask is EventTaskChoixCible) { ((EventTaskChoixCible)eventTask).ListCibleChoisie.Add(this); } }
/*******************ISelectionnable****************/ public void onClick() { //TODO selectionne EventTask eventTask = EventTaskUtils.getEventTaskEnCours(); if (this.etatSelectionnable == SelectionnableUtils.ETAT_SELECTIONNABLE && null != eventTask && eventTask is EventTaskChoixCible) { ((EventTaskChoixCible)eventTask).ListCibleChoisie.Add(this); } }
/*******************ISelectionnable****************/ public virtual void onClick() { EventTask eventTask = EventTaskUtils.getEventTaskEnCours(); if (this.etatSelectionne == 1 && null != eventTask && eventTask is EventTaskChoixCible) { ((EventTaskChoixCible)eventTask).ListCibleChoisie.Add(this); } else if (JoueurProprietaire.CarteSelectionne == this) { JoueurProprietaire.CarteSelectionne = null; //On deselectionne au second click } else { JoueurProprietaire.CarteSelectionne = this; } }
public override void onClick() { //TODO fonction en cours GameObject goJoueur = ClientScene.FindLocalObject(this.idJoueurPossesseur); if (null != goJoueur) { Joueur joueur = goJoueur.GetComponent <Joueur> (); if (isMovableByPlayer(joueur)) { EventTask eventTask = EventTaskUtils.getEventTaskEnCours(); if (this.etatSelectionnable == SelectionnableUtils.ETAT_SELECTIONNABLE && null != eventTask && eventTask is EventTaskChoixCible) { ((EventTaskChoixCible)eventTask).ListCibleChoisie.Add(this); } else if (joueur.CarteSelectionne is CarteVaisseauMetier && ((CarteVaisseauMetier)joueur.CarteSelectionne).isCapableAttaquer() && joueur.RessourceCarburant.StockWithCapacity >= ((CarteVaisseauMetier)joueur.CarteSelectionne).getConsomationCarburant()) { joueur.CmdPayerRessource(joueur.RessourceCarburant.TypeRessource, ((CarteVaisseauMetier)joueur.CarteSelectionne).getConsomationCarburant()); joueur.CarteSelectionne.deplacerCarte(this, joueur.netId, NetworkInstanceId.Invalid); //TODO doit on mettre tous de suite le bouton (si le déplacement est impossible? BoutonTour boutonJoueur = joueur.GoPlateau.GetComponentInChildren <BoutonTour> (); if (null != boutonJoueur) { boutonJoueur.CmdSetEtatBouton(BoutonTour.enumEtatBouton.attaque); } } else if (listNomCarteExeption.Contains(joueur.CarteSelectionne.name)) { //TODO carte en exception } } } }