コード例 #1
0
ファイル: Exploitation.cs プロジェクト: leodar163/KWER
    private void GenererSlots()
    {
        bool tuileActuelleDuneAutreTribu = false;

        foreach (Revendication revendicateur in tuileExploitee.revendication.revendicateurs)
        {
            if (revendicateur.EstTribu && revendicateur != expedition.tribu.revendication)
            {
                Tribu tribu = (Tribu)revendicateur.parent;
                if (tuileExploitee == tribu.tuileActuelle)
                {
                    tuileActuelleDuneAutreTribu = true;
                    break;
                }
            }
        }

        if (expedition.tribu.tuileActuelle != tuileExploitee && !tuileActuelleDuneAutreTribu)
        {
            int nbrSlots = tuileExploitee.productionTuile.NbrSlot;
            for (int i = 0; i < nbrSlots; i++)
            {
                GameObject nvSlot = Instantiate(slot, zoneSlots.transform);
                nvSlot.SetActive(true);
                SlotExploit slotExploit = nvSlot.GetComponentInChildren <SlotExploit>();
                listeSlots.Add(slotExploit);
                slotExploit.exploitation = this;
            }
        }

        MiseAJourInterdictions();
    }
コード例 #2
0
ファイル: Exploitation.cs プロジェクト: leodar163/KWER
    private void GenererSlots(int nbrSlots)
    {
        bool tuileActuelleDuneAutreTribu = false;

        foreach (Revendication revendicateur in tuileExploitee.revendication.revendicateurs)
        {
            if (revendicateur.EstTribu && revendicateur != expedition.tribu.revendication)
            {
                Tribu tribu = (Tribu)revendicateur.parent;
                if (tuileExploitee == tribu.tuileActuelle)
                {
                    tuileActuelleDuneAutreTribu = true;
                    break;
                }
            }
        }

        if (expedition.tribu.tuileActuelle != tuileExploitee && !tuileActuelleDuneAutreTribu)
        {
            if (nbrSlots > 0) //si le nobre de slots à rajouter est positif, on instantie ces slots
            {
                for (int i = 0; i < nbrSlots; i++)
                {
                    GameObject nvSlot = Instantiate(slot, zoneSlots.transform);
                    nvSlot.SetActive(true);
                    SlotExploit slotExploit = nvSlot.GetComponentInChildren <SlotExploit>();
                    listeSlots.Add(slotExploit);
                    slotExploit.exploitation = this;
                }
            }
            else //sinon on supprime des slots
            {
                for (int i = 0; i < Math.Abs(nbrSlots); i++)
                {
                    if (listeSlots.Count > 1)
                    {
                        Destroy(listeSlots[listeSlots.Count - 1].gameObject);
                        listeSlots.RemoveAt(listeSlots.Count - 1);
                    }
                    else
                    {
                        Destroy(listeSlots[0].gameObject);
                        listeSlots.RemoveAt(0);
                    }
                }
            }
        }
    }