Как сделать раннее возвращение ребенка в родительском классе в ООПC#

Место общения программистов C#
Anonymous
Как сделать раннее возвращение ребенка в родительском классе в ООП

Сообщение Anonymous »

Я студент -программист, и мы учимся использовать Unity. У меня есть эта проблема в C#.
, поэтому у меня есть класс оружия и чил с именем оружия.
On Weamon: < /p>
public override void PrimaryInteraction() {
if (transform.parent == null || transform.parent.name != "Hand")
{
Debug.LogWarning("Weapon is not being held by a player!");
return;
}
}
< /code>
on Gun: < /p>
public override void PrimaryInteraction()
{
base.PrimaryInteraction();
if (!_gunModel.Automatic && Time.time >= _nextTimeToFire) {
_nextTimeToFire = Time.time + 1f / _gunModel.FireRate;
Shoot();
return;
}
_isShooting=true;
}
< /code>
Первичная инвентация вызывается в другом файле, который обрабатывает ввод игрока с использованием полиморфизма.
Моя проблема заключается в том, что даже если я возвращаюсь на оружие, функция все еще выполняется на оружии, потому что возврат только для базы. Primary Internation Call Call или для остальной части функции. Интерфейс. < /P>
Спасибо за вашу помощь! < /P>
Я не знаю, какое решение я могу использовать. Я думал об исключениях для катеров, но если это возможно, я хочу более элегантное решение, если это не хорошая практика.

Подробнее здесь: https://stackoverflow.com/questions/795 ... ass-in-oop

Вернуться в «C#»