1) playerObject с прикрепленным скриптом sc_player(наследуется от Монобихевиор)
2) enemyObject с прикрепленным скриптом sc_enemy_skeleton (наследуется от sc_enemy)
3) sc_enemy - базовый скрипт для всех врагов.
На объекты добавлены триггеры. Поэтому можем отслеживать столкновение игрока с противником
Код внутри sc_player.
Синтаксис:
Используется csharp
viod OnTriggerEnter(Collider col){
//Кешируем ссылку на скрипт sc_enemy_skeleton, используя полиморфизм
sc_enemy scEnemy = col.gameObject.GetComponent<sc_enemy>();
//Здесь затруднение. Пытаемся получить доступ к данным из sc_enemy_skeleton
scEnemy.
//Но никаких переменных и методов не видно
//Видны только данные базового скрипта sc_enemy
}
//Кешируем ссылку на скрипт sc_enemy_skeleton, используя полиморфизм
sc_enemy scEnemy = col.gameObject.GetComponent<sc_enemy>();
//Здесь затруднение. Пытаемся получить доступ к данным из sc_enemy_skeleton
scEnemy.
//Но никаких переменных и методов не видно
//Видны только данные базового скрипта sc_enemy
}
В чем тут ошибка? Вывел принтом переменную scEnemy в консоль - пишет что это sc_enemy_skeleton. Т.е. нужный скрипт. Но к данным доступа нет. Данные публичные.