Beispiel #1
0
    /// <summary>
    /// Spawns a projectile. Projectiles are fast, invunerable and self destructs on impact with the hero.
    /// </summary>
    void spawnProjectile()
    {
        this.colorModifier.FadeToDelected(this.attackFrequency / 3f);
        RadialPosition thisRadialPos = RotationUtils.XYToRadialPos(transform.position);

        this.projectile.SetRadialSpawnPosition(thisRadialPos.GetAngle(), thisRadialPos.GetRadius());
        this.enemySpawner.InstantiateEnemyPrefab(this.projectile);
    }
Beispiel #2
0
    public static Vector3 RadialPosToXY(RadialPosition radialPosition)
    {
        float angle = radialPosition.GetAngle();

        angle = MakePositiveAngle(angle);
        float radius = radialPosition.GetRadius();
        float x      = Mathf.Cos(Mathf.Deg2Rad * angle) * radius;
        float y      = Mathf.Sin(Mathf.Deg2Rad * angle) * radius;

        if (Mathf.Abs(x) < 0.001)
        {
            x = 0;
        }
        if (Mathf.Abs(y) < 0.001)
        {
            y = 0;
        }
        return(new Vector3(x, y));
    }