Exemple #1
0
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////////////////////////////////////////////////////

    void Start()
    {
        _material     = new Material(material);
        line.material = _material;

        if (MainCamera != null)
        {
            CameraLink = true;
            CA_Amount  = MainCamera.GetComponent <CAScript>();
            Ripple     = MainCamera.GetComponent <RippleScript>();
            Blur       = MainCamera.GetComponent <BlurScript>();
        }

        LaserElectricityMaterial      = new Material(LaserElectricity);
        LaserElectricitySharpMaterial = new Material(LaserElectricity);
        LaserElectricityMaterial.SetTexture("_MainTex", LaserElectricityTexture);
        LaserElectricitySharpMaterial.SetTexture("_MainTex", LaserChargeUpTexture);

        LaserLineGameObjects = new GameObject[numOfLines];
        LaserLines           = new LineRenderer[numOfLines];
        for (int i = 0; i < numOfLines; ++i)
        {
            LaserLineGameObjects[i] = new GameObject("LaserLine" + i, typeof(LineRenderer));
            LaserLines[i]           = LaserLineGameObjects[i].GetComponent <LineRenderer>();
            LaserLines[i].material  = LaserElectricityMaterial;
            LaserLines[i].enabled   = false;
            LaserLineGameObjects[i].transform.SetParent(this.transform);
        }

        LaserLineChargeUpGameObjects = new GameObject[numOfChargeLines];
        LaserChargeUpLines           = new LineRenderer[numOfChargeLines];
        for (int i = 0; i < numOfChargeLines; ++i)
        {
            LaserLineChargeUpGameObjects[i] = new GameObject("LaserChargeLine" + i, typeof(LineRenderer));
            LaserChargeUpLines[i]           = LaserLineChargeUpGameObjects[i].GetComponent <LineRenderer>();
            LaserChargeUpLines[i].material  = LaserElectricitySharpMaterial;
            LaserChargeUpLines[i].enabled   = false;
            LaserLineChargeUpGameObjects[i].transform.SetParent(this.transform);
        }


        LaserParticleSuckIn.Stop();
        LaserParticleGiantSuckIn.Stop();
        LaserParticleGiantBlowOut.Stop();
        LaserParticleGenerate.Stop();
        LaserParticleStreak.Stop();
        LaserParticleSparks.Stop();

        LaserParticleSuckIn.Clear();
        LaserParticleGiantSuckIn.Clear();
        LaserParticleGiantBlowOut.Clear();
        LaserParticleGenerate.Clear();
        LaserParticleStreak.Clear();
        LaserParticleSparks.Clear();

        line         = gameObject.GetComponent <LineRenderer>();
        line.enabled = true;
        hitTriggers  = QueryTriggerInteraction.Ignore;
    }
Exemple #2
0
    void Init()
    {
        GameManager managerScript = manager.GetComponent <GameManager>();

        managerScript.AddNode(gameObject);

        switch (nodeColour)
        {
        case NodeColour.WHITE:
            actualNodeColour = NodeWhite;
            break;

        case NodeColour.RED:
            actualNodeColour = NodeRed;
            break;

        case NodeColour.BLUE:
            actualNodeColour = NodeBlue;
            break;

        case NodeColour.YELLOW:
            actualNodeColour = NodeYellow;
            break;

        case NodeColour.PURPLE:
            actualNodeColour = NodePurple;
            break;

        case NodeColour.GREEN:
            actualNodeColour = NodeGreen;
            break;

        case NodeColour.ORANGE:
            actualNodeColour = NodeOrange;
            break;
        }

        // initialize ripples
        for (int i = 0; i < numberOfRipples; i++)
        {
            GameObject ripple = (GameObject)Instantiate(rippleTemplate, transform.position, transform.rotation);
            ripple.transform.parent = this.gameObject.transform;

            RippleScript script = ripple.GetComponent <RippleScript>();
            script.SetParent(gameObject);
            script.ScalingSpeed  = RippleSpeed;
            script.MaxScaleValue = RippleMaxScaleValue;
            script.SetColour(actualNodeColour);
        }

        if (isEndNode)
        {
            // initialize koi
            for (int i = 0; i < WinningRipplesNeeded; i++)
            {
                GameObject koi = (GameObject)Instantiate(fishTemplate, transform.position, transform.rotation);
                koi.transform.parent = this.gameObject.transform;

                FishScript fishy = koi.GetComponent <FishScript>();
                fishy.FishInitialize(Random.Range(0, 360.0f), i % 2 == 0, i * 0.28f);
            }
        }

        //GameObject ripple = (GameObject)Instantiate(rippleTemplate, transform.position, transform.rotation);
        //ripple.transform.parent = this.gameObject.transform;

        //RippleScript script = ripple.GetComponent<RippleScript>();
        //script.lifetime = RippleLifetime;
        //script.ScalingSpeed = RippleSpeed;

        //gameObject.GetComponentsInChildren<RippleScript>();

        //RippleScript script = RippleObject.GetComponent<RippleScript>();
        //script.SetColour(actualNodeColour);

        isAdded = true;

        DetermineType();

        //ChangeTheme (Theme.FOOD);
    }