Exemple #1
0
 private void SetHitBoxesForEnemie(EnemieElementsComponent enemie)
 {
     foreach (var rb in enemie.ragdollsRigidbodies)
     {
         HitBoxComponent hitBox = rb.gameObject.AddComponent <HitBoxComponent>();
         hitBox.enemieElements = enemie;
     }
 }
Exemple #2
0
 public void ChangeEnemieRagdollState(EnemieElementsComponent enemie, bool activateRagdoll)
 {
     foreach (var rb in enemie.ragdollsRigidbodies)
     {
         rb.isKinematic = !activateRagdoll;
         rb.useGravity  = activateRagdoll;
     }
     enemie.animator.enabled = !activateRagdoll;
 }
Exemple #3
0
    public void ApplyForceToEnemie(EnemieElementsComponent enemieElementsComponent, Vector3 positionOfForce)
    {
        var   hips       = enemieElementsComponent.animator.GetBoneTransform(HumanBodyBones.Hips);
        float forcePower = UnityEngine.Random.Range(config.GetValue(EGameValue.minPowerOfBulletsExplosion),
                                                    config.GetValue(EGameValue.maxPowerOfBulletsExplosion));
        Vector3 forceDirection = (hips.position - positionOfForce).normalized;
        var     rb             = hips.GetComponent <Rigidbody>();

        rb.AddForce(forcePower * forceDirection, ForceMode.VelocityChange);
    }