Beispiel #1
0
    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
                }
            }
        }
    }
Beispiel #2
0
    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
                }
            }
        }
    }