Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Argo214

#16
[quote author=juanma_teso" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="35322" data-ipsquote-contentcommentid="127821">Hazte una función y llámala antes de empezar cualquiera de las dos acciones, en esta función miras la ubicación de los toques respecto a la pantalla, si está en la zona del scroll, ejectuas esta parte, sino ejecutas la del movimiento, así lo hice yo, si por casualidad no borré el proyecto en el que tenía ese script te lo paso por aquí.En una búsqueda rápida he encontrado el (uno de tantos) proyecto abandonado, te dejo la función que es muy simple pero cumple:
//Zona del menubool ZonaBotonera(Vector2 v)
    {
        if (v.y < alturaMenuBotones)
 //constante, el valor lo asignaba con la otra función en el start()
            return true;
        else
            return false;
    }
Te dejo también la altura de la "botonera" jaja, recuerdo que al probar en diferentes tamaños de pantalla a veces fallaba, hasta que implementé estas líneas:
public float AlturaBotonera()
    {
        return (boton.sizeDelta.y * boton.lossyScale.y);
    }
No sé cómo funcionará el panel, pero supongo que será igual, cambia los valores 'Y' por 'X' y ya lo tienes, esta última función estaba en otro script donde manejaba toda la interfaz, pero eso ya como tu lo organices.[/quote]Pues no lo consigo. Mi panel lateral con texto y botones está situado a la derecha y ocupa 250 px de ancho. Cómo lo tengo que hacer? Dónde tengo que colocar el script?
#17
Muchas gracias!! Voy a mirarlo.
#18
Buenos días! A ver si me podéis ayudar. Estoy desarrollando un juego para Android donde tengo un mapa de fondo que lo puedo encuadrar tocando en la pantalla con el dedo (tipo Google Maps) y un panel lateral con un texto en scroll. El problema es que al pasar el dedo para hacer scroll en el texto, el encuadre del mapa se mueve. Cómo podría independizar las 2 cosas para que cuando toque la pantalla para hacer scroll no se me mueva el mapa?? Muchas gracias!! 
#19
Muchas gracias! Voy a intentarlo, a ver si me sale bien.
#20
[quote author=hammer" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="35151" data-ipsquote-contentcommentid="127115">MmmmhhhhhTe creas un u prefab de un GameObject y a este gameobject le creas un script que contenga el DontDestroyOnLoad() para que se mantenga "vivo" cuando cambias de nivel.Bueno te lo escribo que me sera mas facil que explicarlo xD no vale copiar y pegar, miratelo y tal.
public float maxPlayTime = 120f;private float startPlay;
private float currentPlayTime;
public float restTimePlayGUI;
void Start(){

   DontDestroyOnLoad(gameObject);
   startPlay = Time.time;
}
void Update(){

   currentPlayTime = Time.time - startPlay;

   restTimePlayGUI = maxPlayTime - currentPlayTime;

   if(currentPlayTime >= maxPlayTime){
   
      Application.LoadLevel("GameOver");
      Destroy(gameObject);

   }
}
Algo asi .Instancias el prefab cuando cargues el primer nivel y ya esta. Pongo en public maxPlayTime para que puedas cambiar el tiempo cuando lo instancies segun necesites y el restTimePlayGUI por si necesitas una cuenta atras que mostrar en la pantalla Cheers! [/quote]El problema es que el player puede volver a niveles en los que ya ha estado, con lo que se duplicaría ese Gameobject.
#21
Buenas! Estoy con un juego en el que quiero crear una cuenta atrás de tiempo que se vaya manteniendo al pasar por varias escenas y que cuando llegue a cero salte a una pantalla de Gameover. Lo estoy haciendo con Playerprefs no me funciona porque al pasar de una escena a otra, en vez de comenzar partiendo del tiempo consumido en la anterior, me lleva directamente a la pantalla de Gameover. Me podéis ayudar? Dejo abajo el código que estoy utilizando:using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class Tiempo : MonoBehaviour {

    public Text timeText;
    public float timer = 120.0f;

    void Start ()
    {
        
        timer = PlayerPrefs.GetFloat ("timer");
        timeText.text = "" + timer.ToString ("00:00");

    }

    void Update () {
        timer -= Time.deltaTime;
        timeText.text = "" + timer.ToString ("00:00");


        if (timer <= 0) {

            PlayerPrefs.SetFloat("timer", timer);
            Application.LoadLevel("Gameover");

        }
    }
}
#22
Buenas! Estoy con un juego en el que quiero crear una cuenta atrás de tiempo que se vaya manteniendo al pasar por varias escenas y que cuando llegue a cero salte a una pantalla de Gameover. Lo estoy haciendo con Playerprefs no me funciona porque al pasar de una escena a otra, en vez de comenzar partiendo del tiempo consumido en la anterior, me lleva directamente a la pantalla de Gameover. Me podéis ayudar? Dejo abajo el código que estoy utilizando:using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class Tiempo : MonoBehaviour {

    public Text timeText;
    public float timer = 120.0f;

    void Start ()
    {
        
        timer = PlayerPrefs.GetFloat ("timer");
        timeText.text = "" + timer.ToString ("00:00");

    }

    void Update () {
        timer -= Time.deltaTime;
        timeText.text = "" + timer.ToString ("00:00");


        if (timer <= 0) {

            PlayerPrefs.SetFloat("timer", timer);
            Application.LoadLevel("Gameover");

        }
    }
}
#23
[quote author=leocub58" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="35023" data-ipsquote-contentcommentid="126564 date=1453935598]Más información!muestra material, prefab todo lo que puedas![/quote]Abajo dejo unas capturas del prefab. Los círculos blancos me han aparecido al bakear la iluminación y curiosamente sólo salen en la ventana "Scene", pero no en la "Game"


#24
Buenas! He creado un terreno con árboles y me aparecen estos círculos blancos en el lugar de los árboles. Alguien sabe lo que pasa y cómo solucionarlo?
#25
Soy bastante novato en todo esto y estoy aprendiendo. La variable "puntuación" la tengo configurada como static porque se mantiene en todas las escenas del juego.
He sustituido puntuacion por PuntosPistas.puntuacion como dices, pero sigue dando errores. Supongo que no lo estaré haciendo bien. Te agradecería mucho que me ayudaras a encontrar una solución. Gracias!!using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class GuardarCargar : MonoBehaviour {
    
    GameObject Player;
    
    
    void Start () 
    {
        Player = GameObject.FindGameObjectWithTag("Player");
        if (CargarPartida.Cargando)
        {
            Player.transform.position = new Vector3(PlayerPrefs.GetFloat("Player x"), 0, PlayerPrefs.GetFloat("Player z"));
            Player.GetComponent<PuntosPistas>().PuntosPistas.puntuacion = PlayerPrefs.GetInt("puntuacion");
        }
    }
    
    
    public void Guardar()
    {
        PlayerPrefs.SetFloat("Player x", Player.transform.position.x);
        PlayerPrefs.SetFloat("Player z", Player.transform.position.z);
        PlayerPrefs.SetInt("puntuacion", Player.GetComponent<PuntosPistas>().PuntosPistas.puntuacion);
        
        PlayerPrefs.Save();
    }
    public void Borrar() 
    {
        PlayerPrefs.DeleteKey("Player x");
        PlayerPrefs.DeleteKey("Player z");
        PlayerPrefs.SetInt ("puntuacion", Player.GetComponent<PuntosPistas>().PuntosPistas.puntuacion);
    }
    
}
 
#26
Buenas! Estoy intentando añadir un sistema de guardado y cargado de la posición y puntuación del player de mi juego, pero me salta este error. ¿Cómo puedo solucionarlo?"Static member `PuntosPistas.puntuacion' cannot be accessed with an instance reference, qualify it with a type name instead"Este es el código que tengo:using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class GuardarCargar : MonoBehaviour {
    
    GameObject Player;

    
    void Start () 
    {
        Player = GameObject.FindGameObjectWithTag("Player");
        if (CargarPartida.Cargando)
        {
            Player.transform.position = new Vector3(PlayerPrefs.GetFloat("Player x"), 0, PlayerPrefs.GetFloat("Player z"));
            Player.GetComponent<PuntosPistas>().puntuacion = PlayerPrefs.GetInt("puntuacion");
        }
    }


    public void Guardar()
    {
        PlayerPrefs.SetFloat("Player x", Player.transform.position.x);
        PlayerPrefs.SetFloat("Player z", Player.transform.position.z);
        PlayerPrefs.SetInt("puntuacion", Player.GetComponent<PuntosPistas>().puntuacion);
        
        PlayerPrefs.Save();
    }
    public void Borrar() 
    {
        PlayerPrefs.DeleteKey("Player x");
        PlayerPrefs.DeleteKey("Player z");
        PlayerPrefs.SetInt ("puntuacion", Player.GetComponent<PuntosPistas>().puntuacion);
    }

}
 Y la variable "puntuación" está en esta otra script:using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class PuntosPistas : MonoBehaviour {
    
    public static int puntuacion;
    public Text TextoContador;

    private int pista1;
    private int pista2;
    private int pista3;
    private int pista4;
    
    void Start ()
    {
        pista1 = PlayerPrefs.GetInt("pista1");
        pista2 = PlayerPrefs.GetInt("pista2");
        pista1 = PlayerPrefs.GetInt("pista3");
        pista2 = PlayerPrefs.GetInt("pista4");

        TextoContador.text = "" + puntuacion;
    }
    
    void OnTriggerEnter(Collider other)
    {
        
        if (other.gameObject.tag == "pista1"){
            other.gameObject.SetActive(false);
        if (pista1 == 1)
            return;

            puntuacion = puntuacion + 5;
            TextoContador.text = "" + puntuacion;
            PlayerPrefs.SetInt("pista1", 1);
        }
.................  
#27
Muchas gracias! Voy a mirar el enlace que comentas.
#28
Buenas! Estoy preparando un juego para Android y necesito que me orientéis o me indiquéis sobre algún tutorial que me proporcione las pautas para conseguir una iluminación optimizada para esta plataforma. Sistema de renderizado (deferred, forward...), uso de baked o realtime GI, posibilidad de usar light probes, etc. Sé que el tema es amplio y por eso recurro a vosotros para que me orientéis.  La ambientación general será bastante oscura y quiero resaltar puntualmente los objetos que se van a ir recogiendo como si emitieran luz. Gracias!!
#29
Ya lo he conseguido. Muchas gracias! El código estaba correcto pero otra parte del inventario al que pertenecían los objetos no me dejaba ejecutar la corrutina. 
#30
Alguien que me eche una mano, por favor.