Exemple #1
0
    /// <summary>
    /// Questo metodo serve per cambiare l'immagine del cursore. 
    /// </summary>
    /// <param name="numeroLayer"></param>
    /// <param name="miaClasse"></param>
    public static void CambiaCursore(int numeroLayer, classiPersonaggi miaClasse)
    {
        switch (numeroLayer)
        {
            case (10)://layer Toccare: se è un oggetto cliccabile e vuoi che spunti la mano col dito.
                me.immagineCursore = me.immagineToccare;
                break;

            case (12)://layer Raccogliere: l'immagine è di una mano quasi chiusa come se devi raccogliere qualcosa.
                me.immagineCursore = me.immagineRaccogliere;
                break;

            case (11)://layer EssereVivente: l'immagine può essere un fumetto se si è amici o una spadina se si è nemici.
                if (!Statici.multigiocatoreOn)
                {
                    if (Statici.dizionarioDiNemici[Statici.personaggio.miaClasse].Contains(miaClasse))
                        me.immagineCursore = me.immagineCombattere;
                    else
                        me.immagineCursore = me.immagineParlare;
                }
                else
                {      //immagine combattere perchè nel death match sono tutti contro tutti, e comunque le amicizie in multiplayer dovrebbero eventualmente essere decise dal server.
                        me.immagineCursore = me.immagineCombattere;

                }
                break;

            default://altri layer : l'immagine è quella di default cioè una freccia dorata.
                me.immagineCursore = me.immagineNormale;
                break;
        }
    }
 private void Start()
 {
     if (!Statici.inGioco)
         return;
     datiPersonaggio = GetComponent<DatiPersonaggio>();
     if (datiPersonaggio != null)
     {
         miaClasse = GetComponent<DatiPersonaggio>().miaClasse;
         luceSelezioneGO = transform.FindChild("luceSelezione").gameObject;
     }
 }
    // Use this for initialization
    void Start()
    {
        if (!Statici.inGioco)
            return;
        minimappa = GameObject.Find("Minimappa").GetComponent<Minimappa>();
        switch (gameObject.layer)
        {
            case (14):
                spriteOggetto = minimappa.spritePortale;
                misuraSprite = minimappa.misuraSpritePortale;
                sonoUnEssereVivente = false;
                break;
            case (11):
                datiPersonaggio = gameObject.GetComponent<DatiPersonaggio>();
                miaClasse = datiPersonaggio.miaClasse;
                giocabile = datiPersonaggio.Giocabile;
                if (!Statici.multigiocatoreOn)
                {
                    classePlayer = Statici.PersonaggioPrincipaleT.GetComponent<DatiPersonaggio>().miaClasse;
                    spriteOggetto = minimappa.spriteAmico;
                    misuraSprite = minimappa.misuraSpriteAmico;
                }
                else
                {
                    //per ora messi tutti nemici perchè se sono multiplayer le amicizie vanno decise sul server mentre i non giocabili non li visualizzo.
                    if (giocabile)
                    {
                        spriteOggetto = minimappa.spriteNemico;
                        misuraSprite = minimappa.misuraSpriteNemico;
                    }
                    else
                        return;//se è multiplayer e non giocabile disattivo il personaggio AI per cui non deve vedersi il suo marcatore.

                }
                sonoUnEssereVivente = true;

                break;
            default:
                Debug.LogError("l'oggetto " + gameObject.name + " non appartiene ad un layer preso in considerazione dalla minimappa.");
                break;
        }

        Marcatore = new GameObject("Marcatore");
        imageMarcatore = Marcatore.AddComponent<Image>();
        if (Statici.multigiocatoreOn && giocabile)
        {
            DatiMarcatoreMulti datiMarcatoreMultiutente = Marcatore.AddComponent<DatiMarcatoreMulti>();
            datiMarcatoreMultiutente.idUtente = datiPersonaggio.Utente;
            minimappa.listaUserIdMarcati.Add(datiMarcatoreMultiutente);
        }

        Marcatore.transform.SetParent(minimappa.transform);
        imageMarcatore.sprite = spriteOggetto;
        imageMarcatore.rectTransform.localPosition = Vector3.zero;
        imageMarcatore.rectTransform.localScale = Vector3.one;
        imageMarcatore.rectTransform.sizeDelta = new Vector2(misuraSprite, misuraSprite);
        playerT = minimappa.PlayerT;
    }
    public List<int> trovaPercorsiDaPersonaggio(classiPersonaggi classe)
    {
        List<int> elenco = new List<int>();

        for (int i = 0; i < Count; i++)
            for (int ii = 0; ii < percorsi[i].classi.Count; ii++)
            {
                if (classe == percorsi[i].classi[ii]) elenco.Add(i);
                break;
            }

        return elenco;
    }