Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

NullReferenceException: Object reference not set to an instance of an object

Iniciado por Pedro Lazaro, Noviembre 05, 2016, 10:19:52 PM

Tema anterior - Siguiente tema
Noviembre 05, 2016, 10:19:52 PM Ultima modificación: Noviembre 08, 2016, 11:14:53 AM por Pedro Lazaro
En realidad esto seria en Scripts de Unity pero no se como ponerlo alli.
 
Estoy haciendo una script para hacer misiones. Y quiero cuando el jugador entre en el collider del NPC muestre el mensaje de que tiene que pulsar E para ver la mision.
 
Aqui esta la Script
 

using UnityEngine;
using System.Collections;
public class QuestGUI2 : MonoBehaviour {
    public static bool activarQuest = false;
    private bool mediumQuest = false;
    private bool finishQuest = false;
    
    private bool _activar = false;
    
    public Rect firstQuest = new Rect (20, 20, 300, 350);
    
    public string nomMision = "";
    public string textMisionIncompleta = "";
    public string textMisionCompleta = "";
    public string textMision = "";
    public Texture2D rostroMis;
        
    public GUISkin miSkin;
    
    void OnGUI(){
        GUI.skin = miSkin;
        
        if(activarQuest){
            firstQuest = GUI.Window(, firstQuest, Quest, "Segunda Mision - " + nomMision);
        }
        
        if(mediumQuest){
            firstQuest = GUI.Window(, firstQuest, Quest_Incompleta, "Segunda en proceso");
        }
        
        if(finishQuest){
            firstQuest = GUI.Window(, firstQuest, Quest_Completa, "Segunda Completada - " + nomMision);
        }
        if(Input.GetKeyDown(KeyCode.E)){
            activarQuest = true;
        }
    }
    
    void Quest(int WindowID){
        GUI.Label(new Rect(50, 100, 200, 165), textMision, "Box");
        GUI.DrawTexture(new Rect(220, 55, 60, 60), rostroMis);
        
        if(GUI.Button(new Rect(150, 255, 100, 20), "Continuar")){
            activarQuest = true;
            mediumQuest = false;
            finishQuest = false;
            Mision2.misionSegunda = true;
        }
        if(GUI.Button(new Rect(50, 255, 100, 20), "Cancelar")){
            activarQuest = false;
            mediumQuest = false;
            finishQuest = false;
            Mision2.misionSegunda = false;
        }
    }
    
    void Quest_Incompleta(int WindowID){
        GUI.Label(new Rect(50, 100, 200, 165), textMisionIncompleta, "Box");
        GUI.DrawTexture(new Rect(220, 55, 60, 60), rostroMis);
        
        if(GUI.Button(new Rect(150, 255, 100, 20), "Continuar")){
            activarQuest = false;
            mediumQuest = true;
            finishQuest = false;
            Mision2.misionSegunda = true;
        }
        if(GUI.Button(new Rect(50, 255, 100, 20), "Cancelar")){
            activarQuest = false;
            mediumQuest = false;
            finishQuest = false;
            Mision2.misionSegunda = false;
        }
    }
    
    void Quest_Completa(int WindowID){
        GUI.Label(new Rect(50, 100, 200, 165), textMisionCompleta, "Box");
        GUI.DrawTexture(new Rect(220, 55, 60, 60), rostroMis);
        
        if(GUI.Button(new Rect(150, 255, 100, 20), "Continuar")){
            activarQuest = false;
            mediumQuest = false;
            finishQuest = true;
            Mision2.misionSegunda = false;
        }
        if(GUI.Button(new Rect(-150, 255, 100, 20), "Cancelar")){
            activarQuest = false;
            mediumQuest = false;
            finishQuest = false;
            Mision2.misionSegunda = false;
        }
    }
    
    
    void OnTriggerEnter(){
        
        GetComponentInChildren<GUIText>().enabled = true;
                
        if(Mision2.misionSegunda && Opciones2.Diamond < 6){
            finishQuest = false;
            activarQuest = false;
            mediumQuest = true;
            Mision2.misionSegunda = true;
        }
        
        if(Mision2.misionSegunda && Opciones2.Diamond == 6){
            finishQuest = true;
            activarQuest = false;
            mediumQuest = false;
            Mision2.misionSegunda = false;
        }
        if(Mision2.misionSegunda && Opciones2.Diamond > 6){
            finishQuest = true;
            activarQuest = false;
            mediumQuest = false;
            Mision2.misionSegunda = false;
        }
        
    }
    
    void OnTriggerExit(){
        
        GetComponentInChildren<GUIText>().enabled = false;
        finishQuest = false;
        activarQuest = false;
        mediumQuest = false;
    }
}

 
Esto me sucede en esta linea:
 



   
        void OnTriggerEnter(){
                 GetComponentInChildren<GUIText>().enabled = true;
   

[/quote]
 
 

Tema bloqueado. No te has leído las normas...
 
Por favor, preséntate ante el resto de usuarios en el foro de Presentaciones. En cuanto lo hagas, desbloquearé este tema y lo moveré a la sección adecuada.

Etiquetas: