Классы — это шаблоны для объектов. Наследование помогает экономить время.
Представь, что ты строишь домики из кубиков. Класс — это набор инструкций, как сложить кубики. Наследование — когда ты берёшь готовый домик и добавляешь к нему крышу или окно, не перестраивая всё заново. В Unity так можно делать с объектами: взять базовый класс (например, «Персонаж») и создать на его основе «Воина» или «Мага», добавив особые умения.
Шаг 1. Создаём базовый класс
Открой Unity, создай новый C#‑скрипт (через контекстное меню в Assets → Create → C# Script). Назови его, например,
Character.Отредактируй скрипт:
using UnityEngine;
public class Character : MonoBehaviour
{
public int health = 100;
public float speed = 5f;
public virtual void TakeDamage(int damage)
{
health -= damage;
Debug.Log("Урон получен! Здоровье: " + health);
}
}
Что тут есть:
-
public int health = 100 — здоровье персонажа (число).-
public float speed = 5f — скорость движения (дробное число).-
TakeDamage — метод, который уменьшает здоровье при получении урона.Шаг 2. Создаём класс‑наследник
Создай ещё один скрипт, назови его
Warrior.Отредактируй скрипт:
using UnityEngine;
public class Warrior : Character
{
public int shield = 20;
public override void TakeDamage(int damage)
{
int finalDamage = damage - shield;
if (finalDamage > 0)
{
health -= finalDamage;
}
Debug.Log("Воин получил урон! Здоровье: " + health + ", щит: " + shield);
}
}
Что изменилось:
-
public class Warrior : Character — говорим, что Warrior наследует Character.-
public int shield = 20 — добавили щит (новое свойство).-
override void TakeDamage — переопределили метод, чтобы учитывать щит.Шаг 3. Проверяем в Unity
1. Создай пустой GameObject на сцене (правый клик в иерархии → Create Empty).
2. Прицепи к нему скрипт
Warrior (перетащи скрипт на объект в инспекторе).3. Запусти игру и посмотри в Console — при вызове
TakeDamage ты увидишь логи с учётом щита.Важные моменты
Наследуй, чтобы не писать код заново.