Guardar el viento
Parte de la sección Arquitectura de juegos en Unity del Journey de Unity de Coddy. Lección 26 de 64.
Una compilación carga todos los recursos tal como se compilaron cada vez que se inicia, así que el viento del jugador volvería a estar en 2. PlayerPrefs lo conserva y Start lo vuelve a escribir en el recurso.
Desafío
FácilConserva el viento del jugador para la siguiente partida.
- En
WindVane, cada vez que una flecha cambie el viento, llama aPlayerPrefs.SetFloat("Wind", wind.strength);. - En
Start, antes deShow(), siPlayerPrefs.HasKey("Wind"), establecewind.strengthenPlayerPrefs.GetFloat("Wind"). Un jugador nuevo conserva el 2 del recurso.
Pulsa «Jugar», cambia el viento, pulsa «Detener» y luego «Jugar»: el viento es el mismo. Después, pulsa «Comprobar».
Pruébalo tú mismo
using UnityEngine;
using UnityEngine.InputSystem;
using TMPro;
public class WindVane : MonoBehaviour
{
public TMP_Text windText;
public WindSettings wind;
void Start()
{
Show();
}
void Update()
{
if (Keyboard.current.upArrowKey.wasPressedThisFrame)
{
wind.strength = Mathf.Min(wind.strength + 1f, 5f);
Show();
}
if (Keyboard.current.downArrowKey.wasPressedThisFrame)
{
wind.strength = Mathf.Max(wind.strength - 1f, 0f);
Show();
}
}
void Show()
{
windText.text = "Wind: " + wind.strength;
}
}
Todas las lecciones de Arquitectura de juegos en Unity
1Componentes, no jerarquías
Componentes pequeñosUn script base para enemigosComponentes abstractosComponentes que trabajan juntosRepaso: torreta modularRepaso: cañón doble4Datos serializados
Clases serializablesListas en el InspectorEnumeraciones en el InspectorRepaso: tabla de botínRepaso: sortear el botín2Interfaces en Unity
IDamageableInterfaces y TryGetComponentGetComponentsRepaso: Tecla de interacciónRepaso: El más cercano al alcance5ScriptableObjects
Activos de datosEstadísticas de armasConfiguración compartidaGuardar el vientoOleadas como datosRepaso: base de datos de objetosRepaso: comprar en la tienda3Eventos
Eventos de C# en UnitySuscribirse en OnEnableCampos UnityEventLos eventos controlan la interfazRepaso: ventana emergente de logrosRepaso: temporizador de la ventana emergentePractica por tu cuenta: Playground de Unity