Переназначение не подходит, потому как будет срабатывать только дочерний метод
Синтаксис:
Используется csharp
public class ClassObject : MonoBehaviour{
public virtual void Damage(float _damage){
Debug.Log("DamageParent");
}
}
public class ClassDoor : ClassObject {
public override void Damage(float _damage){
Debug.Log("DamageChild");
}
}
public virtual void Damage(float _damage){
Debug.Log("DamageParent");
}
}
public class ClassDoor : ClassObject {
public override void Damage(float _damage){
Debug.Log("DamageChild");
}
}
Единственное решение которое пришло в голову, это создать второй метод, но это похоже на костыли, может кто знает как это сделать по уму?
Синтаксис:
Используется csharp
public class ClassObject : MonoBehaviour{
public void Damage(float _damage){
Debug.Log("DamageParent");
DamageChild(_damage);
}
public virtual void DamageChild(float _damage){
}
}
public class ClassDoor : ClassObject {
public override void DamageChild(float _damage){
Debug.Log("DamageChild");
}
}
public void Damage(float _damage){
Debug.Log("DamageParent");
DamageChild(_damage);
}
public virtual void DamageChild(float _damage){
}
}
public class ClassDoor : ClassObject {
public override void DamageChild(float _damage){
Debug.Log("DamageChild");
}
}