Пример #1
0
    void Splitters(AllData allData)
    {
        if (allData.split.filters.Length > 0)
        {
            string[] filts = allData.split.filters;
            float[]  stats = allData.split.stats;
            int      num   = allData.split.numStats;
            for (int i = 0; i < allData.split.filters.Length; i++)
            {
                Splitter sp = Instantiate(splitterPrefab, Vector3.zero, Quaternion.identity);
                sp.GetComponent <Price>().byPass = true;
                sp.transform.position            = new Vector3(stats[(i * num)], stats[(i * num) + 1], 0);
                sp.transform.rotation            = Quaternion.Euler(0, 0, stats[(i * num) + 2]);
                sp.fireForce = Mathf.RoundToInt(stats[(i * num) + 3]);

                sp.typeName = filts[i];
            }
        }
    }
Пример #2
0
    public void Split()
    {
        GameObject enemyspawn1 = GameObject.Instantiate(Resources.Load("Prefabs/MainCanvas/Enemy")) as GameObject;

        Destroy(enemyspawn1.GetComponent <Enemy>());
        Splitter split = enemyspawn1.AddComponent <Splitter>() as Splitter;

        enemyspawn1.transform.SetParent(Dial.spawnLayer, false);
        GameObject enemyspawn2 = GameObject.Instantiate(Resources.Load("Prefabs/MainCanvas/Enemy")) as GameObject;

        Destroy(enemyspawn2.GetComponent <Enemy>());
        Splitter split2 = enemyspawn2.AddComponent <Splitter>() as Splitter;

        enemyspawn2.transform.SetParent(Dial.spawnLayer, false);

        split.groupAddedToBonus  = groupAddedToBonus;
        split2.groupAddedToBonus = groupAddedToBonus;

        split.size  = size - 1;
        split2.size = size - 1;
        if (size == 3)
        {
            split.SetSrcFileName("splitter2");
            split2.SetSrcFileName("splitter2");
            split.SetTrackLane(1);
            split2.SetTrackLane(-1);
            split.imtheleftone = true;
        }
        else if (size == 2)
        {
            split.SetSrcFileName("splitter3");
            if (imtheleftone)
            {
                split.SetTrackLane(1);
                split2.SetTrackLane(0);
                split2.OverrideMoverLane(-2f);
                split.imtheleftone = true;
            }
            else
            {
                split.SetTrackLane(0);
                split2.SetTrackLane(-1);
                split.OverrideMoverLane(2f);
                split.imtheleftone = true;
            }
            split2.SetSrcFileName("splitter3");
        }
        split.InitializePartnersForSomeReason();
        split2.InitializePartnersForSomeReason();

        foreach (Splitter s in partners)
        {
            if (s == this)
            {
                continue;
            }
            s.AddPartner(split);
            s.AddPartner(split2);
            split.AddPartner(s);
            split2.AddPartner(s);
        }
        AddPartner(split);
        AddPartner(split2);
        split.AddPartner(split2);
        split2.AddPartner(split);

        //split.SetProgress(progress);
        //split2.SetProgress(progress);
        split.SetTrackID(trackID);
        split2.SetTrackID(trackID);

        /*if(imtheleftone){
         *      split.talktome = true;
         *      split2.talktome = true;
         * }*/
        split.GetComponent <RectTransform>().anchoredPosition  = rt.anchoredPosition;
        split2.GetComponent <RectTransform>().anchoredPosition = rt.anchoredPosition;
        split.StartMoving();
        split2.StartMoving();
        split.justStarted  = true;
        split2.justStarted = true;
        //split.Bounce (true);
        //split2.Bounce (false);

        PlayDead();
    }