コード例 #1
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    public void extra2(PionScript PionScript, Propriété pr)
    {
        bool p   = true;
        int  pos = -1;

        try
        {
            for (int i = 0; i < pions.Length && p == true; i++)
            {
                Debug.Log("xxx pr.getPropriétaire() = " + pr.getPropriétaire());
                Debug.Log("xxx pions[i] = " + pions[i]);
                if (pr.getPropriétaire() == pions[i].GetComponent <PionScript>())
                {
                    p   = false;
                    pos = i;
                }
            }
            PionScript.débiter(pr.getPrixLoyer());
            Debug.Log("xxx position = " + pos);
            pions[pos].GetComponent <PionScript>().crediter(pr.getPrixLoyer());
            Debug.Log("PionScript qui paye le loyer : " + PionScript);
            Debug.Log(" joeur qui reçoit le loyer " + pions[pos]);
        }
        catch (NullReferenceException)
        {
            Debug.Log("NullReferenceException 966");
        }
    }
コード例 #2
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    public void proprietéNappartenantAPersonne(PionScript PionScript)
    {
        Propriété pr = null;//= cases[PionScript.getPosition2()];

        try
        {
            if (cases[PionScript.getPosition2()].getCaseType().Equals(CaseType.Gare))
            {
                pr = (CaseGare)cases[PionScript.getPosition2()];
                extra(pr, PionScript);
            }
            else if (cases[PionScript.getPosition2()].getCaseType().Equals(CaseType.compagnie))
            {
                pr = (CaseCompagnie)cases[PionScript.getPosition2()];
                extra(pr, PionScript);
            }
            else if (cases[PionScript.getPosition2()].getCaseType().Equals(CaseType.Proprieté))
            {
                try
                {
                    pr = (Propriété)cases[PionScript.getPosition2()];
                    extra(pr, PionScript);
                }
                catch (InvalidCastException)
                {
                    Debug.Log("InvalidCastException 886");
                }
            }
        }
        catch (IndexOutOfRangeException)
        {
            Debug.Log("IndexOutOfRangeException 893");
        }
        //cette partie est dans le extra
    }
コード例 #3
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    public void proprietéAppartenantAUnePersonne(PionScript PionScript)
    {
        Propriété pr = null;//= cases[PionScript.getPosition2()];

        if (cases[PionScript.getPosition2()].getCaseType().Equals(CaseType.Gare))
        {
            pr = (CaseGare)cases[PionScript.getPosition2()];
            extra2(PionScript, pr);
        }
        else if (cases[PionScript.getPosition2()].getCaseType().Equals(CaseType.compagnie))
        {
            pr = (CaseCompagnie)cases[PionScript.getPosition2()];
            extra2(PionScript, pr);
        }
        else if (cases[PionScript.getPosition2()].getCaseType().Equals(CaseType.Proprieté))
        {
            try
            {
                pr = (Propriété)cases[PionScript.getPosition2()];
                extra2(PionScript, pr);
            }
            catch (InvalidCastException)
            {
                Debug.Log("caste a échouer 236");
            }
        }


        //cette partie est dans le extra2
    }
コード例 #4
0
 public Propriété(int p, CaseType type, typeProprieté t, long v, PionScript j, long pr, long h) : base(p, type)
 {
     typeP            = t;
     valeur           = v;
     propriétaire     = j;
     prixLoyer        = pr;
     valeurHypothéque = h;
 }
コード例 #5
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    private void sortirDePrison(PionScript j)
    {
        int réponse = -1;

        if (j.getNombreCarteLibererPrisonChance() + j.getNombreCarteLibererPrisonCommunauté() > 0)
        {
            Debug.Log("voulez vous utilisez la carte sortire de prison ? si oui tapez 1");
            réponse = int.Parse(Console.ReadLine());
            if (réponse == 1)
            {
                if (j.getNombreCarteLibererPrisonChance() > 0)
                {
                    j.utiliserCarteLibererPrisonChance();
                    CaseChance c = (CaseChance)cases[7];
                    c.rendreCarteSortireDePrison();
                }
                else if (j.getNombreCarteLibererPrisonCommunauté() > 0)
                {
                    j.utiliserCarteLibererPrisonCommunauté();
                    CaseCommunauté c = (CaseCommunauté)cases[2];
                    c.rendreCarteSortireDePrison();
                }
            }
        }
        else
        {
            Debug.Log("si voulez faire pour sortir de prison ?");
            Debug.Log("1 : payer 50$ ");
            Debug.Log("2 : attendre 3 tours");
            réponse = 1;
            if (réponse == 1)
            {
                j.débiter(50);
                j.setEtat(etatJoueur.libre);
            }
            else
            {
                j.setNombreTourPourSortirDePrison();

                if (j.getNombreTourPourSortirDePrison() == 3)
                {
                    j.setEtat(etatJoueur.libre);
                    j.setNombreTourPourSortirDePrison(0);
                }
            }
        }
        Debug.Log(j);
    }
コード例 #6
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    private void extra(Propriété pr, PionScript PionScript)
    {
        int i;

        Debug.Log("voulez vous acheter la proprieté qui coute " + pr.getValeur() + " ? si oui taper 1");
        i = 1;

        if (i == 1)//oui il veut acheter
        {
            PionScript.acheterPropriété(pr);
            Debug.Log("PionScript.getPosition2() = " + PionScript.getPosition2() + " pr.getValeur()= " + pr.getValeur() + " pr.getType =" + pr.GetType());
            Debug.Log(PionScript);
        }

        else
        {
            enchére(pr);
        }
    }
コード例 #7
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    public IEnumerator Goto(GameObject objectPion, int c)
    {
        PionScript pion = objectPion.GetComponent <PionScript>();

        cases[pion.getPosition2()].isGone(objectPion);
        int     trancheC = tranche(c);
        Vector3 newPionPosition;
        int     tranchePos = tranche(pion.getPosition2());


        while (trancheC != tranchePos)
        {
            tranchePos = (tranchePos + 1) % 4;

            pion.seDeplacer(tranchePos * 10 % 40);

            // pion.position ==0 ajouter 100

            newPionPosition = cases[pion.getPosition2()].getNewPionPositionPassage();
            while (objectPion.transform.localPosition != newPionPosition)
            {
                objectPion.transform.localPosition = Vector2.MoveTowards(objectPion.transform.localPosition,
                                                                         newPionPosition, pion.speed * Time.deltaTime);
                yield return(new WaitForEndOfFrame());
            }
        }

        newPionPosition = cases[c].getNewPionPosition(objectPion);
        while (objectPion.transform.localPosition != newPionPosition)
        {
            objectPion.transform.localPosition = Vector2.MoveTowards(objectPion.transform.localPosition,
                                                                     newPionPosition, pion.speed * Time.deltaTime);
            yield return(new WaitForEndOfFrame());
        }
        yield return(new WaitForEndOfFrame());

        yield return(affichercarte(c));
    }
コード例 #8
0
ファイル: plateau.cs プロジェクト: Karim211/Monopoly
    public IEnumerator quandCestVotreTour(GameObject pion)
    {
        PionScript j    = pion.GetComponent <PionScript>();
        int        cmpt = 0;
        int        c;
        bool       p = true;

        do
        {
            if (j.getEtat().Equals(etatJoueur.prisonnier))
            {
                sortirDePrison(j);
            }
            if (j.getEtat().Equals(etatJoueur.libre))
            {
                cmpt++;
                realDe1.GetComponent <lancerdes>().startAnimation();
                realDe2.GetComponent <lancerdes>().startAnimation();

                yield return(new WaitForSeconds(3));

                dé.lancerDé();

                c = PlayerPrefs.GetInt("des1") + PlayerPrefs.GetInt("des2");
                c = (c + j.getPosition2()) % 40;

                p = dé.isDouble();
                yield return(Goto(pion, c));

                j.setPosition2(c);
                Console.WriteLine("cmpt= " + cmpt + " isDouble= " + p + " valeurDe= " + dé.getValeurDé());

                ///////////////////////////////////////////////////////////////
                Console.WriteLine("voulez vous construire ?? (si oui tapez 1)");
                int réponse = 0; //int.Parse(Console.ReadLine());
                if (réponse == 1)
                {
                    Console.WriteLine("ou voulez vous construire??(tapez le nombre)");
                    j.afficherProprieté();
                    int réponse1 = int.Parse(Console.ReadLine());

                    Console.WriteLine("que voulez vous construire ?? (maison tapez 1 hotel tapez 2)");
                    réponse = int.Parse(Console.ReadLine());
                    if (réponse == 1)
                    {
                        CaseTerrain t = (CaseTerrain)cases[réponse1];
                        j.construireMaison(t);
                        Console.WriteLine("loyer : " + t.getPrixLoyer() + " maison: " + t.getNombreDeMaison() + " hotel:" + t.isHotelHere());
                    }
                    else
                    {
                        CaseTerrain t = (CaseTerrain)cases[réponse1];
                        j.construireHotel(t);
                        Console.WriteLine("loyer : " + t.getPrixLoyer() + " maison: " + t.getNombreDeMaison() + " hotel:" + t.isHotelHere());
                    }
                }

                if (cases[j.getPosition2()].getCaseType().Equals(CaseType.Proprieté))
                {
                    Propriété pr = (Propriété)cases[j.getPosition2()];
                    if (pr.getTypeProprieté().Equals(typeProprieté.libre))
                    {
                        proprietéNappartenantAPersonne(j);
                    }
                    else
                    {
                        if (j != pr.getPropriétaire())
                        {
                            proprietéAppartenantAUnePersonne(j);
                        }
                    }
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.Gare))
                {
                    CaseGare pr = (CaseGare)cases[j.getPosition2()];
                    if (pr.getTypeProprieté().Equals(typeProprieté.libre))
                    {
                        proprietéNappartenantAPersonne(j);
                    }
                    else
                    {
                        if (j != pr.getPropriétaire())
                        {
                            proprietéAppartenantAUnePersonne(j);
                        }
                    }
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.compagnie))
                {
                    CaseCompagnie pr = (CaseCompagnie)cases[j.getPosition2()];
                    if (pr.getTypeProprieté().Equals(typeProprieté.libre))
                    {
                        proprietéNappartenantAPersonne(j);
                    }
                    else
                    {
                        if (j != pr.getPropriétaire())
                        {
                            proprietéAppartenantAUnePersonne(j);
                        }
                    }
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.AllezPrison))
                {
                    cases[j.getPosition2()].isGone(pion);
                    pion.transform.localPosition = cases[10].getNewPionPosition(pion);
                    j.allezEnPrison();
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.Impot))
                {
                    j.débiter(200);
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.Taxe))
                {
                    j.débiter(100);
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.Chanse))
                {
                    CaseChance cc = (CaseChance)cases[j.getPosition2()];
                    cc.tirerCarte(j);
                }
                else if (cases[j.getPosition2()].getCaseType().Equals(CaseType.Cmmunaute))
                {
                    CaseCommunauté cc = (CaseCommunauté)cases[j.getPosition2()];
                    cc.tirerCarte(j, pions, cases[7]);
                }
            }
        } while (p == true && cmpt < 3);


        if (cmpt == 3)
        {
            cases[j.getPosition2()].isGone(pion);
            pion.transform.localPosition = cases[10].getNewPionPosition(pion);
            j.allezEnPrison();
        }

        Debug.Log(j);
        jouerSuivant();
    }
コード例 #9
0
 public CaseCompagnie(int p, CaseType type, typeProprieté t, long v, PionScript j, long pr, long h) : base(p, type, t, v, j, pr, h)
 {
 }
コード例 #10
0
    public void tirerCarte(PionScript j)
    {
        Debug.Log(carteChance[curseur]);

        if (vérif && curseur == 3)
        {
            curseur++;
        }

        if (curseur == 0)
        {
            j.crediter(50);
        }
        else if (curseur == 1)
        {
            j.setPosition2(39);
        }
        else if (curseur == 2)
        {
            j.seDeplacer(-3);
        }
        else if (curseur == 3)
        {
            j.setNombreCarteLibererPrisonChance(1);
            vérif = true;
        }
        else if (curseur == 4)
        {
            j.débiter(j.getNomberMosain() * 25 + j.getNomberHotel() * 100);
        }
        else if (curseur == 5)
        {
            j.crediter(100);
        }
        else if (curseur == 6)
        {
            j.débiter(15);
        }
        else if (curseur == 7)
        {
            j.crediter(150);
        }
        else if (curseur == 8)
        {
            j.débiter(150);
        }
        else if (curseur == 9)
        {
            j.setPosition2(24);
        }
        else if (curseur == 10)
        {
            j.allezEnPrison();
        }
        else if (curseur == 11)
        {
            j.débiter(j.getNomberMosain() * 40 + j.getNomberHotel() * 115);
        }
        else if (curseur == 12)
        {
            j.débiter(20);
        }
        else if (curseur == 13)
        {
            j.setPosition2(15);
        }
        else if (curseur == 14)
        {
            j.setPosition2(0);
        }
        else if (curseur == 15)
        {
            j.setPosition2(11);
        }

        curseur = (curseur + 1) % 16;
    }
コード例 #11
0
    public void tirerCarte(PionScript j, GameObject[] tabJoueur, Case Case)
    {
        Debug.Log(carteCaisseComunauté[curseur]);

        if (vérif && curseur == 11)
        {
            curseur++;
        }

        if (curseur == 0)
        {
            j.débiter(500);
        }
        else if (curseur == 1)
        {
            for (int i = 0; i < tabJoueur.Length; i++)
            {
                if (j != tabJoueur[i].GetComponent <PionScript>())
                {
                    j.crediter(10);
                    tabJoueur[i].GetComponent <PionScript>().débiter(10);
                }
            }
        }
        else if (curseur == 2)
        {
            CaseChance cas = (CaseChance)Case;
            int        répons;

            Debug.Log("que voulez vous faire ? tapez le numéro");
            Debug.Log("1- payez 100 euro");
            Debug.Log("2- tirer carte chance");
            répons = 1;//int.Parse(Console.ReadLine());

            if (répons == 1)
            {
                j.débiter(10);
            }
            else
            {
                cas.tirerCarte(j);
            }
        }
        else if (curseur == 3)
        {
            j.crediter(200);
        }
        else if (curseur == 4)
        {
            j.crediter(25);
        }
        else if (curseur == 5)
        {
            j.crediter(50);
        }
        else if (curseur == 6)
        {
            j.crediter(100);
        }
        else if (curseur == 7)
        {
            j.retourner(1);
        }
        else if (curseur == 8)
        {
            j.allezEnPrison();
        }
        else if (curseur == 9)
        {
            j.crediter(10);
        }
        else if (curseur == 10)
        {
            j.setPosition2(0);
        }
        else if (curseur == 11)
        {
            j.setNombreCarteLibererPrisonCommunauté(1);
            vérif = true;
        }
        else if (curseur == 12)
        {
            j.débiter(100);
        }
        else if (curseur == 13)
        {
            j.crediter(20);
        }
        else if (curseur == 14)
        {
            j.crediter(100);
        }
        else if (curseur == 15)
        {
            j.débiter(50);
        }

        curseur = (curseur + 1) % 16;
    }
コード例 #12
0
 public CaseTerrain(int positionCarte, CaseType type, string nom, typeProprieté t, long prixProprieté, PionScript j, long prixLoyer, couleur cl, long hypothéque, long prixMaison, long prixHotel) : base(positionCarte, type, t, prixProprieté, j, prixLoyer, hypothéque)
 {
     nombreMaisons   = 0;
     couleur         = cl;
     this.prixMaison = prixMaison;
     this.prixHotel  = prixHotel;
     this.casPos     = positionCarte;
     this.nom        = nom;
 }
コード例 #13
0
 public void setPropriétaire(PionScript p)
 {
     propriétaire = p;
 }