Beispiel #1
0
    void updateArrowType()
    {
        if (toy.rune.runetype == RuneType.Sensible && toy.rune.get(EffectType.Diffuse) > 0)
        {
            current_arrow_name = new ArrowName(ArrowType.Diffuse);
        }
        else if (toy.rune.runetype == RuneType.Vexing && toy.rune.get(EffectType.Focus) > 0)
        {
            current_arrow_name = new ArrowName(ArrowType.Focus);
        }
        else if (toy.rune.runetype == RuneType.Vexing && toy.rune.get(EffectType.RapidFire) > 0)
        {
            current_arrow_name = new ArrowName(ArrowType.RapidFire);
        }
        else if (toy.rune.runetype == RuneType.Vexing && toy.rune.get(EffectType.Critical) > 0)
        {
            current_arrow_name = new ArrowName(ArrowType.Critical);
        }
        else
        {
            current_arrow_name = new ArrowName(default_arrow_type);
        }


        return;
    }
Beispiel #2
0
    public static Arrow MakeArrow(ArrowName type, Vector3 origin, Vector3 arrow_target, StatSum arrow_stats, float speed, Firearm _firearm, bool play_sound)
    {
        Arrow a = _MakeArrow(type, origin, arrow_stats, speed, _firearm, play_sound);

        a.InitArrow(arrow_stats, arrow_target, speed, _firearm);
        return(a);
    }
Beispiel #3
0
    void InitColors()
    {
        arrow_name = new ArrowName(ArrowType.Sparkle);
        float a = 0.66f;
        float b = 0.33f;

        colors = new Color[7];
        int i = 0;

        colors[i++] = Color.white;

        colors[i] = Color.red * a + Color.white * b;  colors[i++].a = 1f;
        colors[i] = Color.blue * a + Color.white * b; colors[i++].a = 1f;
        colors[i] = Color.cyan * a + Color.white * b; colors[i++].a = 1f;
        colors[i] = Color.yellow * a + Color.white * b; colors[i++].a = 1f;
        colors[i] = Color.green * a + Color.white * b; colors[i++].a = 1f;
        colors[i] = Color.magenta * a + Color.white * b; colors[i++].a = 1f;
    }
Beispiel #4
0
    private static Arrow _MakeArrow(ArrowName type, Vector3 origin, StatSum arrow_stats, float speed, Firearm _firearm, bool play_sound)
    {
        GameObject newMissile = Peripheral.Instance.zoo.getObject(type.name, false);

        // Debug.Log("Making arrow " + arrow_name + "\n");
        origin.z = 0f;
        newMissile.transform.position = origin;
        newMissile.transform.SetParent(Peripheral.Instance.arrows_transform);

        newMissile.tag = "PlayerArrow";

        Arrow arrow = newMissile.GetComponent <Arrow>();

        arrow.arrow_type = type.type;
        if (play_sound && Noisemaker.Instance != null)
        {
            Noisemaker.Instance.Play("arrow_fired");
        }

        return(arrow);
    }