Menu
CoddyTech

Datos de torres

Lección 14 de 25 del curso Juego de Unity: Defensa de torres de Coddy.

Se acerca una segunda torre, el Cañón, con sus propios valores. Al igual que con los enemigos, las estadísticas se trasladan a un recurso, TowerData, uno por tipo: el proyecto tiene ArrowData (coste 50, daño 2, alcance 4.5, fireRate 1.5). El prefab conserva el aspecto de la torre, y su script Tower apunta a su recurso.

[CreateAssetMenu] encima de una clase ScriptableObject la incluye en el menú Create de Unity, para que se puedan crear nuevos recursos en el Editor. El recurso de los enemigos tiene uno:

[CreateAssetMenu(fileName = "NewEnemy", menuName = "Tower Defense/Enemy Data")]
public class EnemyData : ScriptableObject
challenge icon

Desafío

Intermedio

Mueve las estadísticas de cada torre a un recurso TowerData.

  1. En TowerData.cs, añade [CreateAssetMenu] y los campos públicos towerName (una cadena), cost y damage (enteros), range y fireRate (números de punto flotante).
  2. En Tower, sustituye esos cuatro campos por public TowerData data; y lee data.range, data.damage y data.fireRate.
  3. En BuildManager, paga towerPrefab.data.cost.

Pulsa «Jugar»: la torre Arrow combate como antes, ahora desde ArrowData. Después, «Comprobar».

Pruébalo tú mismo

using UnityEngine;

// Más adelante: las estadísticas de un tipo de torre, como un recurso.
public class TowerData : ScriptableObject
{
}

Todas las lecciones de Juego de Unity: Defensa de torres

Practica por tu cuenta: Playground de Unity