Jump to content
UnitySpain

Search the Community

Showing results for tags 'reference'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Inicio
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
  • Mesa de ayuda
    • Unity
    • Arte
    • Otras Especialidades
    • Builds & Dispositivos
  • Aportes de la Comunidad
    • Recursos
    • Eventos
    • Buenas Prácticas
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas
  • Post Antiguos
    • General (Antiguo)

Blogs

  • byGui
  • El Blog de Pioj

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Especialidad

Found 4 results

  1. Buenas a todos, después de ir solucionando varios problemas, me he topado con este. En este caso es un puntero hacia donde apuntar, de manera que si este se mueve, el proyectil le siga, pero nada más empezar ya he tenido problemas, ya que lo fácil sería poner una variable gameobject donde colocar el gameobject "Puntero" pero el prefab Proyectil no me deja colocar ningún gameobject ni transform en la casilla del inspector tras crear la variable (debe ser prefab para poder clonarlo luego al disparar) ... así que he tratado de buscar el objeto puntero una vez se desencadena el script, pero aquí salta el problema, ya que me dice: NullReferenceException: Object reference not set to an instance of an object Proyectil.Update () (at Assets/_Resources/Scripts/Proyectil.js:77) Gracias de antemano. var objVel : int = 10; //velocidad if(Sigue == true) { var Pg = GameObject.FindWithTag("Punterolaser"); //el gameobject, tambien he intentado buscarlo con Find directamente (mismo resultado) var Objetivo : Transform = Pg.transform; //esta es la línea 77 donde sale el error var Distancia = Vector3.Distance (transform.position , Objetivo.position); if(Distancia != DistanciaExplota) { var Haciaobj : Vector3 = Objetivo.position - transform.position; transform.LookAt(Objetivo); transform.Translate(Haciaobj * objVel * Time.deltaTime); } else { Instantiate(explosion, transform.position, Quaternion.identity); DestroyProyectil(); } }
  2. Tengo un pequeño problema cuando toco la pantalla y disparo, lo que pasa es que se activa el touch cuando muevo el joystick y dispara continuamente mientras lo muevo como podria hacerle para que no dispare con el joystick y si dispare cuando toco otra parte de la pantalla. Este metodo es el que utilizo para disparar: Touch myTouch = Input.GetTouch(0); Touch[] myTouches = Input.touches; for (int i = 0; i < Input.touchCount; i++) { Instantiate(disparo, arma1.position, disparo.rotation); Instantiate(disparo2, arma2.position, disparo2.rotation); Instantiate(disparo3, arma3.position, disparo3.rotation); AudioSource audio = GetComponent<AudioSource>(); audio.Play(); } Esto es lo que utilizo para mover la nave mediante un joystick: using UnityEngine; using System.Collections; using UnityStandardAssets.CrossPlatformInput; public class MoverNave : MonoBehaviour { float sense = 5; float vel = 15; // Use this for initialization void Start () { } // Update is called once per frame void Update () { transform.Translate (new Vector3 (0, CrossPlatformInputManager.GetAxis ("Vertical")) * Time.deltaTime * vel); float y = CrossPlatformInputManager.GetAxis("Mouse X") * sense; transform.Rotate(0,y,0); transform.Translate (new Vector3 (CrossPlatformInputManager.GetAxis ("Horizontal"),0) * Time.deltaTime * vel); float x = CrossPlatformInputManager.GetAxis("Mouse X") * sense; transform.Rotate(x,0,0); } } Qué podria hacer al respecto?Si me pudieran ayudar se los agradeceria mucho.
  3. Tengo en mi codigo script disparo. if (other.gameObject.tag == "roca1") { Vector3 reset =new Vector3(Random.Range(-10.0f, 10.0f), Random.Range(-10.0f, 10.0f), Random.Range(30.0f, 70.0f)); other.transform.position = reset; Instantiate(explosion, transform.position, transform.rotation); Destroy(gameObject); //Sumamos un punto al GameState game.transform.GetComponent<scriptGameState>().AddScore(); //esta es la linea 131 game2.transform.GetComponent<GameStateSurvival>().AddScore(); game3.transform.GetComponent<GameStateSurvival1>().AddScore(); game4.transform.GetComponent<GameStateSurvival2>().AddScore(); game5.transform.GetComponent<GameStateSurvival3>().AddScore(); game6.transform.GetComponent<GameStateSurvival4>().AddScore(); game7.transform.GetComponent<GameStateSurvivalInfinito>().AddScore(); game8.transform.GetComponent<scriptGameState100>().AddScore(); game9.transform.GetComponent<scriptGameState200>().AddScore(); game10.transform.GetComponent<scriptGameState300>().AddScore(); game11.transform.GetComponent<scriptGameState400>().AddScore(); game12.transform.GetComponent<scriptGameState500>().AddScore(); game13.transform.GetComponent<scriptGameState600>().AddScore(); game14.transform.GetComponent<scriptGameState700>().AddScore(); game15.transform.GetComponent<scriptGameState800>().AddScore(); game16.transform.GetComponent<scriptGameState900>().AddScore(); game17.transform.GetComponent<scriptGameState1000>().AddScore(); game18.transform.GetComponent<scriptGameStateER1>().AddScore(); game19.transform.GetComponent<scriptGameStateER2>().AddScore(); }pero cuando pongo play al momento de colisionar el disparo con la roca me manda esto:NullReferenceException: Object reference not set to an instance of an objectscriptDisparo OnTriggerEnter (UnityEngine.Collider other) (at Assets/GAMENORMAL/scriptsGAMENORMAL/scriptDisparo.cs:131)y esto en mi script GameState que hace referencia al error.game.transform.GetComponent<scriptGameState>().AddScore(); Este es mi GameState script: using UnityEngine; using System.Collections; using UnityEngine.SceneManagement; public class scriptGameState : MonoBehaviour { static int puntos = 0; static int vida = 10; static float timer = 60; //Tiempo de juego void Start() { InvokeRepeating("Timer", 1.0f, 1.0f); puntos = 0; timer = 60; vida = 10; } void Update() { if (vida <= 0) { } if (timer <= 0 && puntos >= 50) { } if (timer <= 0 && puntos < 50) { } print("Puntuacion: " + puntos); print("Vidas: " + vida); } //Establecemos el tiempo de juego y los restamos public void Timer() { if (--timer == 0) { CancelInvoke(); } } public void SumaTimer() { timer += 10; } public void PasarPuntos() { PlayerPrefs.SetInt("Puntuacion", puntos); } public void AddScore() { puntos += 1; } public void AddScore2() { puntos += 2; } public void DestroyEnemy() { puntos += 5; } public void AddScore3() { puntos += 3; } //Sumamos Vidas public void SumarVidas() { vida += 1; } //Restamos Vidas public void RestarVidas() { vida -= 1; } void OnGUI() { GUI.Label(new Rect(35, 60, 100, 20), "Puntuacion: " + puntos); GUI.Label(new Rect(175, 60, 100, 20), "Vidas: " + vida); GUI.Label(new Rect(345, 60, 100, 20), "Tiempo: " + timer); } } Quiero llamar al metodo AddScore cuando el disparo colisione las rocas... Como puedo solucionar el problema?
  4. I have been trying to call a function of c# to my JavaScript GameState: this function: with this variables: bool _isWon; bool _isLost; void Update () { if (LevelManager.Instance.IsLevelRunning && (_isWon || _isLost)) { Assert.IsTrue(LevelManager.IsActive, "Please ensure that you have a LevelManager component added to your scene."); Assert.IsTrue(GameOver.IsActive, "Please ensure that you have a GameOver component added to your scene, or are using one of the default GameOver prefabs."); LevelManager.Instance.LevelFinished(); GameOver.Instance.Show(_isWon); } } or void Update () { if (LevelManager.Instance.IsLevelRunning && (_isWon || _isLost)) { Assert.IsTrue(LevelManager.IsActive, "Please ensure that you have a LevelManager component added to your scene."); Assert.IsTrue(GameOver.IsActive, "Please ensure that you have a GameOver component added to your scene, or are using one of the default GameOver prefabs."); LevelManager.Instance.LevelFinished(); GameOver.Instance.Show(_isLost); } } everything to call that Game is Over or Game is Won but in my GameState JavaScript I have the functionally of GAME the only that I want is call these function to my part: function Update () { if(vida <=0) { here when is Lost } if(timer <=0 && puntos >= 50) { here when is Won } if(timer <=0 && puntos < 50) { here when is Lost } print("Puntuacion: "+puntos); print ("Vidas: "+vida); } someone can help me in these part.??? I have been searching but not have found the solution for my problem....
×
×
  • Create New...