Post by atrofeed on Oct 6, 2022 21:02:21 GMT
Hi there,
I am making a covershooter AI, basically recreating the AI - shootercover prefab with my own custom 3d model. I got everything working, except for when the enemy takes damage. When the bullet hits the enemy, I get the error below. If I look in the script vControleAIShooter, the error is related to the following method:
protected override void TryBlockAttack(vDamage damage)
{
if (shooterManager.CurrentWeapon != null) { isBlocking = false; }
else base.TryBlockAttack(damage);
}
{
if (shooterManager.CurrentWeapon != null) { isBlocking = false; }
else base.TryBlockAttack(damage);
}
What do I have to do to resolve this issue?
Error upon hitting the enemy with a bullet (vdefaultbullet from a vhandgun attached to a normal vshootermelee_inventory prefab, so nothing fancy in terms of player controller):
NullReferenceException: Object reference not set to an instance of an object
Invector.vCharacterController.AI.vControlAIShooter.TryBlockAttack (Invector.vDamage damage) (at Assets/Invector-AIController/Scripts/AI/AI Controllers/vControlAIShooter.cs:989)
Invector.vCharacterController.AI.vControlAICombat.TakeDamage (Invector.vDamage damage) (at Assets/Invector-AIController/Scripts/AI/AI Controllers/vControlAICombat.cs:308)
Invector.vDamageHelper.ApplyDamage (UnityEngine.GameObject receiver, Invector.vDamage damage) (at Assets/Invector-3rdPersonController/Basic Locomotion/Scripts/Generic/Health/vIDamageReceiver.cs:28)
Invector.vEventSystems.vIMeeleFighterHelper.ApplyDamage (UnityEngine.GameObject receiver, Invector.vDamage damage, Invector.vEventSystems.vIMeleeFighter attacker) (at Assets/Invector-3rdPersonController/Melee Combat/Scripts/MeleeWeapon/vIMeleeFighter.cs:52)
Invector.vCharacterController.vDamageReceiver.OnReceiveAttack (Invector.vDamage damage, Invector.vEventSystems.vIMeleeFighter attacker) (at Assets/Invector-3rdPersonController/Shooter/Scripts/Shooter/vDamageReceiver.cs:14)
Invector.vEventSystems.vIMeeleFighterHelper.ApplyDamage (UnityEngine.GameObject receiver, Invector.vDamage damage, Invector.vEventSystems.vIMeleeFighter attacker) (at Assets/Invector-3rdPersonController/Melee Combat/Scripts/MeleeWeapon/vIMeleeFighter.cs:48)
Invector.vShooter.vProjectileControl.Update () (at Assets/Invector-3rdPersonController/Shooter/Scripts/Weapon/vProjectileControl.cs:105)
Invector.vCharacterController.AI.vControlAIShooter.TryBlockAttack (Invector.vDamage damage) (at Assets/Invector-AIController/Scripts/AI/AI Controllers/vControlAIShooter.cs:989)
Invector.vCharacterController.AI.vControlAICombat.TakeDamage (Invector.vDamage damage) (at Assets/Invector-AIController/Scripts/AI/AI Controllers/vControlAICombat.cs:308)
Invector.vDamageHelper.ApplyDamage (UnityEngine.GameObject receiver, Invector.vDamage damage) (at Assets/Invector-3rdPersonController/Basic Locomotion/Scripts/Generic/Health/vIDamageReceiver.cs:28)
Invector.vEventSystems.vIMeeleFighterHelper.ApplyDamage (UnityEngine.GameObject receiver, Invector.vDamage damage, Invector.vEventSystems.vIMeleeFighter attacker) (at Assets/Invector-3rdPersonController/Melee Combat/Scripts/MeleeWeapon/vIMeleeFighter.cs:52)
Invector.vCharacterController.vDamageReceiver.OnReceiveAttack (Invector.vDamage damage, Invector.vEventSystems.vIMeleeFighter attacker) (at Assets/Invector-3rdPersonController/Shooter/Scripts/Shooter/vDamageReceiver.cs:14)
Invector.vEventSystems.vIMeeleFighterHelper.ApplyDamage (UnityEngine.GameObject receiver, Invector.vDamage damage, Invector.vEventSystems.vIMeleeFighter attacker) (at Assets/Invector-3rdPersonController/Melee Combat/Scripts/MeleeWeapon/vIMeleeFighter.cs:48)
Invector.vShooter.vProjectileControl.Update () (at Assets/Invector-3rdPersonController/Shooter/Scripts/Weapon/vProjectileControl.cs:105)