Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите со скриптами на си шарп

F F Ученик (97), открыт 1 неделю назад
Помогите пожалуйста! мне нужен скрипт на врага который будет следовать за игроком , наносить ему урон при столкновении и получать урон . И если можно то скрипт на оружие ближнего боя которое будет наносить ему урон
1 ответ
Исмагил Рустемович Профи (663) 1 неделю назад
Для создания скрипта на врага и на оружие ближнего боя в Unity на C# вам понадобятся два скрипта. Один для врага (Enemy) и один для оружия ближнего боя (MeleeWeapon).

Скрипт для врага (Enemy):
csharp
using UnityEngine;

public class Enemy : MonoBehaviour
{
public int health = 100;
public int damage = 10;

void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.tag == "Player")
{
Player player = collision.gameObject.GetComponent<Player>();
if(player != null)
{
player.TakeDamage(damage);
}
}
}

public void TakeDamage(int damage)
{
health -= damage;
if (health <= 0)
{
Die();
}
}

void Die()
{
// Действия при смерти врага
Destroy(gameObject);
}
}


Скрипт для оружия ближнего боя (MeleeWeapon):
csharp
using UnityEngine;

public class MeleeWeapon : MonoBehaviour
{
public int damage = 20;

void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.tag == "Enemy")
{
Enemy enemy = collision.gameObject.GetComponent<Enemy>();
if(enemy != null)
{
enemy.TakeDamage(damage);
}
}
}
}


В этих скриптах предполагается, что у вас есть еще скрипт для игрока (Player), который имеет метод TakeDamage для получения урона. В скрипте Enemy определен метод Die для выполнения действий при уничтожении врага.

Не забудьте добавить теги "Player" и "Enemy" к соответствующим объектам в вашем проекте.

Эти скрипты можно прикрепить к объектам Enemy и MeleeWeapon в вашей игре.
Исмагил РустемовичПрофи (663) 1 неделю назад
Отступы допишешь
F F Ученик (97) Исмагил Рустемович, ошибка вылезла что он не может найти обьект с именем Player хотя тегы и имя обьекта стоят Player , что делать
F FУченик (97) 1 неделю назад
спасибо большое!
Похожие вопросы