示例#1
0
    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
    }
示例#2
0
    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
    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));
    }
示例#4
0
    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);
        }
    }
示例#5
0
    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();
    }