No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Movimiento del jugador

10/40
Recursos

Aportes 17

Preguntas 12

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

驴Qu茅 extensiones manejas en Visual studio?
Ya que en mi visual no me autocompleta ni colorea las funciones de Unity.

dato curioso,
puedes declarar la variable speed con PUBLIC y tambi茅n sera accesible en el inspector de unity, la diferencia entre SERIALIZE y PUBLIC es que con PUBLIC la variable es accesible para cualquier componente o clase que creemos y con SERIALIZE solo es accesible dentro del inspector

una recomendaci贸n que aplica no s贸lo para C# sino para cualquier lenguaje de programaci贸n es nunca nombrar tus variables con una sola letra, siempre utilizar palabras que den claridad de a qu茅 se refiere la variable: inputX, inputVertical, etc.

En Unity, ya hay funciones que nos permiten resolver el input del teclado del usuario.

Lo que hacemos, es que al vector de moveDirection, le multiplicamos el deltaTime, que var铆a seg煤n cada equipo, pero que al multiplicarse con moveDirection, normaliza el tiempo en un promedio casi exacto para todos los equipos.

El tiempo Delta, es el tiempo que transcurre entre frameoworks, (diferencia entre distancias), por lo que si hacemos uso de esta propiedad, podemos ajustar el movimiento para que sea el mismo en cualquier entorno, sin importar que tan bueno sea el equipo.

Para acceder a la informaci贸n del teclado, hacemos uso del m茅todo GetAxis, de objeto Input: Input.GetAxis("Vertical") o Input.GetAxis("Horizontal"); si queremos el eje horixontal, estos dos valores, los sumamos a las propiedades el objeto: moveDirection, m谩s espec铆ficamente a las propiedades de X and Y.

馃 Para los que en Visual Studio no les reconoce el autocompletado sigan estos pasos:

En unity: Pesta帽a edit >> preferences >> External Tools
y en External Script Editor seleccionan a Visual Studio.

Cierra Visual y lo vuelven a abrir dando doble click al script y van a ver una diferencia en c贸mo se acomoda todo dentro del IDE. Saludos! 馃

Estas clases son increibles y Carlos explica muy bien

El componente transform, es el 煤nico componente que tienen todos los GameObject.

Para agregar a alguna variable a nuestro inspector y queremos darle un campo para editarla, entonces solo basta para que le a帽adamos el atributo: [SerializeField], que a帽ade a nuestro inspector un campo para editar el objeto y su valor.

El Delta time es el tiempo transcurrido entre el frame actual y el anterior.

cual es la diferencia de usar [serializeField] float var y public float var ?

le agregue al sistema de movimiento un sistema de stamina

    int speed = 3;
    int walk = 3;
    int run = 6;
    float stamina = 1000;
    float minstamina = -500;
    float maxstamina = 1000;
...
    void Update()
    {

        if (Input.GetKey(KeyCode.LeftShift))
        {
            if(stamina > 0)
            {
                print("corriendo");
                speed = run;
                stamina = Mathf.Floor(stamina -= 1 * Time.deltaTime);
            }
            else
            {
                speed = walk;
                if (stamina == 0)
                {
                    print("seteando cansancion");
                    stamina = minstamina;
                }
                else
                {
                    print("cansado");
                    stamina += Mathf.Ceil(Mathf.Abs( 1 * Time.deltaTime));
                }
            }
        }
        else
        {
            speed = walk;
            print("caminando");
            if (stamina < maxstamina)
            {
                print("recuperando stamina");
                stamina += Mathf.Ceil(Mathf.Abs(1 * Time.deltaTime));

            }
        }
        print(stamina);
        h = Input.GetAxis("Horizontal");
        v = Input.GetAxis("Vertical");
        position.x = h;
        position.y = v;
        transform.position += position * Time.deltaTime * speed;
    }

por que cuando escribo mi input no me colorea ni me autocompleta???

Genial

Excelente explicacion en este video, muy claro todo!