/// <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; }