Exemplo n.º 1
0
    public void HandleHurt(HitBoxCollision hbc)
    {
        Debug.Log(hbc.toString());
        var stats = hbc.hitStats;

        /*
         * var kb = 30f;
         * //TODO: Calculate KB
         * knockback.x = kb * Mathf.Sin(Mathf.Deg2Rad * hbc.hitStats.angle);
         * knockback.y = kb * Mathf.Cos(Mathf.Deg2Rad * hbc.hitStats.angle);
         */
        var kb = EntityPhysics.CalculateKnockback(30f, stats.damage, weight, stats.baseKnockback, stats.knockBackGrowth);

        knockback = EntityPhysics.CalculateKnockbackComponents(kb, stats.angle);
        Debug.Log(knockback);
    }
Exemplo n.º 2
0
    /// <summary>
    /// Handles reported hitbox collisions
    /// </summary>
    /// <param name="hbc"></param>
    public new void HandleHurt(HitBoxCollision hbc)
    {
        Debug.Log("Handdleeee");
        velocity = new Vector3(0f, 0f, 0f);
        var stats = hbc.hitStats;

        damage += stats.damage;
        var kb = EntityPhysics.CalculateKnockback(damage, stats.damage, weight, stats.baseKnockback, stats.knockBackGrowth);

        hitstunFrames = EntityPhysics.CalculateHitstun(kb);
        isTumble      = hitstunFrames > 32;
        knockback     = EntityPhysics.CalculateKnockbackComponents(kb, stats.angle);


        hitData = hbc;
        //currentState = new StateHurt(this);
        SwitchState(stateHurt);
    }