Example #1
0
    public static void projectile(Actor cardUser, float distanceFromUser, ProjectileBase preInstateatedProjectile, ProjectileStats stats)
    {
        Vector2 userPosition      = cardUser.get2dPostion();    //this can be changed to a muzzle location
        Vector2 aimVectorFromUser = cardUser.getNormalizedAim(userPosition);

        //setting projectile properties
        ProjectileBase projectile = preInstateatedProjectile;

        projectile.transform.position = userPosition + aimVectorFromUser * distanceFromUser;         //start projectile a little ways off of the user
        projectile.setVolocity(aimVectorFromUser * getProjectileSpeed(cardUser, stats.speed));
        projectile.setDamage(getProjectileDamage(cardUser, stats.damage, stats.damageType), stats.damageType, cardUser.Team);
        projectile.setProjectileColor(Color.yellow);
        projectile.setIgnoredColliders(new Collider2D [] { cardUser.collider });
    }