Quote (error111)
то копай в сторону функции OnTriggerEnter(),
Эх.
1. Создаешь коллайдер на враге. Тут объяснять не буду, стандартная процедура, потрудись прочесть на официальных страницах как это сделать. ( Не
2. Поставь своим врагам тэг enemy.
3.
Дальше техник десятки, приведу самую простую.
Работать будем от ИГРОКА.
Допускаю, что у твоего игрока уже есть скрипт из разряда player, а у врага что-то типо enemie
Итак. Скрипт игрока.
Code
void Start(){
StartCoroutine(coUpdate());
}
IEnumerator coUpdate(){
while(true){
if (Input.GetMouseButtonDown(0)){
Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray,out hit,Mathf.Infinity)){
if (hit.collider.CompareTag("enemy")){
enemyScript _enScript = hit.collider.gameObject.GetComponent<enemyScript>(); // добавляем во временную переменную скрипт врага где enemyScript назваине скрипта на твоих противниках
_enScript.hp -= 10;
}
}
}
yield return 0;
}
}
В скрипт врага добавляешь публичную переменную hp ( чтобы все к ней могли обратиться.
Вот и вся база, тут могут быть ошибки в синтаксисе, однако думаю ты разберешься при усердии.
Читай документацию апи Юнити на предмет Physics.Raycast
Данный скрипт будет работать если ты будешь кликать на своего врага.