Example #1
0
    public GameObject SpawnCannedOnPlayer(CannedEffect can, Player player, Player other)
    {
        GameObject obj = Instantiate(prefabs[can.effect]);

        obj.transform.parent         = player.transform;
        obj.transform.localPosition  = can.pos;
        obj.transform.localPosition *= new Vector2(1, player.right_facing ? 1 : -1);
        obj.transform.localRotation  = player.right_facing ? Quaternion.identity : Quaternion.Euler(0f, 0f, 180f);
        obj.transform.localScale     = can.scale;
        activeEffects.Add(obj);

        return(obj);
    }
Example #2
0
    public GameObject SpawnEffectOnPlayer(string effect_name, Player player, Player other)
    {
        Debug.Log(effect_name);
        if (effect_name == "beam")
        {
            float        start  = player.right_facing ? 1f : -1f;
            float        end    = (other.transform.position - player.transform.position).x;
            float        center = (start + end) / 2;
            float        xscale = Mathf.Abs(end - start) * 20;
            CannedEffect can    = new CannedEffect(Effect.Fireball, new Vector2(center, 0), new Vector2(xscale, 3) / player.transform.localScale);

            return(SpawnCannedOnPlayer(can, player, other));
        }

        return(SpawnCannedOnPlayer(vfxLibrary[effect_name], player, other));
    }