Esempio n. 1
0
        private void CreateMap(Bitmap input, ShaderProgram prog)
        {
            Color[] data = new Color[input.Height * input.Width];
            map = new bool[input.Width, input.Height];
            for (int w = 0; w < input.Width; w++)
            {
                for (int h = 0; h < input.Height; h++)
                {
                    map[w, h] = input.GetPixel(w, h).R >= 128;
                    data[w * input.Height + h] = input.GetPixel(w, h);
                }
            }

            foreach (GameObject gameObject in objects)
            {
                gameObject.Destroy();
            }

            objects = TileCreator.CreateTileMap(TileCreator.CreateObject_Box, data, input.Width, input.Height, 3, 4,
                                                new Vector2(input.Width * 4, input.Height * 4), prog);
            foreach (GameObject gameObject in objects)
            {
                Add(gameObject);
            }

            groundObj?.Destroy();

            Vector3 scale = new Vector3(input.Width * 4, 2, input.Height * 4 + 50) / 2;
            Size    size  = new Size(input.Width, input.Height);

            groundObj = CreateGround(input, scale, size);
            Add(groundObj);
        }
 public void BasicDestroyTest()
 {
     GameObject test = new GameObject();
     test.Destroy();
     Assert.True(test == null);
     Object.DestroyImmediate(test);
 }
    public void DestroyPostProcessVolume()
    {
        GameObject objectToDestroy = PostProcessInfo?.PostProcessObjectsContainer ?? PostProcessInfo?.Volume.gameObject;

        objectToDestroy?.Destroy();
        PostProcessInfo = null;
    }
Esempio n. 4
0
 public override void Begin()
 {
     Mouse.IsCursorVisible = true;
     pelaajanpaikka = 'l';//portti jonka vierestä aloitetaan
     HeittoVeitsienMaara = 20;
     Level.BackgroundColor = Color.Black;
     GameObject logonaytto = new GameObject(Screen.Width / 2, Screen.Height / 2);
     logonaytto.Image = logo;
     //Add(logonaytto);
     //MediaPlayer.Play("chipjungle");
     //MediaPlayer.IsRepeating = true; //turha?
     Level.BackgroundColor = Color.LightBlue;
     logonaytto.Destroy();
     Valikko();
 }
Esempio n. 5
0
    IEnumerator Start()
    {
        GameObject UnityObjA = new GameObject();
        UnityObjA.hideFlags = HideFlags.DontSave;
        GameObject UnityObjB = new GameObject();
        UnityObjB.hideFlags = HideFlags.DontSave;

        Debug.Log(string.Format("[Start|TestReferenceEqual] UnityObjA == UnityObjB: {0}", UnityObjA == UnityObjB));
        Debug.Log(string.Format("[Start|TestReferenceEqual] ReferenceEquals(UnityObjA, UnityObjB): {0}", ReferenceEquals(UnityObjA, UnityObjB)));

        yield return new WaitForSeconds(1);

        CpuProfilerBegin("��׼����...");
        for (int i = 0; i < 10000 * 1000; ++i) {
            ;
        }
        CpuProfilerEnd();

        yield return new WaitForSeconds(1);

        bool equal = true;
        CpuProfilerBegin("==����...");
        for (int i = 0; i < 10000 * 1000; ++i) {
            equal = (UnityObjA == UnityObjB);
        }
        CpuProfilerEnd();

        yield return new WaitForSeconds(1);

        CpuProfilerBegin("ReferenceEquals����...");
        for (int i = 0; i < 10000 * 1000; ++i) {
            equal = ReferenceEquals(UnityObjA, UnityObjB);
        }
        CpuProfilerEnd();

        if (equal) {
        }

        UnityObjA.Destroy();
        UnityObjB.Destroy();
    }
Esempio n. 6
0
 private static void _Unload()
 {
     GameObject.Destroy(Loader.Load);
 }
Esempio n. 7
0
 void miss()
 {
     Debug.Log("Miss cube!");
     GameObject.Destroy(this.gameObject);
 }
Esempio n. 8
0
 public void Disable(IHandController ctl)
 {
     GameObject.Destroy(touch);
     GameObject.Destroy(grab);
 }
Esempio n. 9
0
        private static void CreateInventionAndAddToInventory(InventionData data, Sim Actor, bool isCheapToy, out GameObject invention)
        {
            Simulator.ObjectInitParameters initData = null;
            InventingSkill skill = Actor.SkillManager.GetSkill<InventingSkill>(SkillNames.Inventing);
            bool isImprovedWidget = false;
            if (data.InventType == InventionType.Widget)
            {
                Widget.Awesomeness standard = Widget.Awesomeness.Standard;
                if (skill.OppMasterInventorCompleted)
                {
                    standard = Widget.Awesomeness.Masterful;
                }
                else if (skill.OppWidgetWonderCompleted)
                {
                    standard = Widget.Awesomeness.Improved;
                }
                else
                {
                    float chance = 0f;
                    if (skill.SkillLevel >= InventionWorkbench.kLevelCanMakeImprovedWidget)
                    {
                        chance += InventionWorkbench.kChanceOfImprovedWidget;
                        if (Actor.HasTrait(TraitNames.Eccentric))
                        {
                            chance += InventionWorkbench.kChanceOfImprovedWidgetEccentric;
                        }
                        if (RandomUtil.RandomChance01(chance))
                        {
                            standard = Widget.Awesomeness.Improved;
                        }
                    }
                }
                isImprovedWidget = standard == Widget.Awesomeness.Improved;
                initData = new WidgetInitParameters(standard, Actor.SimDescription, data.InventType, data.MedatorName);
            }

            if ((data.InventType == InventionType.Invention) || (data.InventType == InventionType.Toy))
            {
                initData = new CraftedToyInitParameters(skill.OppMasterInventorCompleted, Actor.SimDescription, data.InventType, isCheapToy);
            }

            invention = GlobalFunctions.CreateObject(data.MedatorName, data.ProdVersion, Vector3.OutOfWorld, 0x0, Vector3.UnitZ, null, initData) as GameObject;
            if (invention != null)
            {
                skill.RegisterInventionMade(data);
                if (data.PutInFamilyInventory)
                {
                    if (!Actor.Household.SharedFamilyInventory.Inventory.TryToAdd(invention))
                    {
                        invention.Destroy();
                        invention = null;
                    }
                }
                else if (!Inventories.TryToMove(invention, Actor))
                {
                    invention.Destroy();
                    invention = null;
                }
                if (invention != null)
                {
                    EventTracker.SendEvent(new CreatedInventionEvent(EventTypeId.kCreatedInvention, Actor, invention, data.InventType, isImprovedWidget));
                    if (data.InventType == InventionType.Widget)
                    {
                        EventTracker.SendEvent(EventTypeId.kInventorMadeWidget, Actor);
                    }
                    if (invention is TimeMachine)
                    {
                        EventTracker.SendEvent(EventTypeId.kInventorMadeTimeMachine, Actor);
                    }
                }
            }
        }
Esempio n. 10
0
 override public void AFDestroy()
 {
     GameObject.Destroy(_startButton);
     GameObject.Destroy(_cameraGameObject);
     base.Destroy();
 }
Esempio n. 11
0
 public void DestroyTimer()
 {
     GameObject.Destroy(countdownObj);
 }
Esempio n. 12
0
 public virtual void Destroy()
 {
   GameObject.Destroy(gameObject);
 }
Esempio n. 13
0
    // }}}

    public void Destroy() // {{{
    {
        GameObject.Destroy(gameObject);
    }
Esempio n. 14
0
    void Start()
    {
        GameScene gameSceneScript = new GameScene();

        //Sound
        BGMSESwitch bgm = new BGMSESwitch();

        bgm.StopSEVolume();
        bgm.StopKassenBGMVolume();

        //Taiko
        StartCoroutine("taikoMusic");

        //Kill Prevous BGM
        KillOtherBGM kill = new KillOtherBGM();

        kill.Start();

        //Giveup button
        bool isAttackedFlg = PlayerPrefs.GetBool("isAttackedFlg");

        if (isAttackedFlg)
        {
            GameObject.Find("GiveupBtn").SetActive(false);
        }

        //Auto button
        bool Auto2Flg = PlayerPrefs.GetBool("Auto2Flg");

        if (Auto2Flg)
        {
            GameObject.Find("AutoBtn").transform.FindChild("Num").GetComponent <Text>().text = "2";
            GameObject.Find("AutoBtn").GetComponent <AutoAttack>().speed = 2;
        }

        //Dinamic Map
        activeKuniId  = PlayerPrefs.GetInt("activeKuniId");
        activeStageId = PlayerPrefs.GetInt("activeStageId");
        GameObject wall = Instantiate(wallPrefab);

        wall.name = "wall";
        kaisenWeatherHandling(map);

        //Get Minus Status
        float rainMinusRatio = PlayerPrefs.GetFloat("rainMinusStatus", 0);
        float snowMinusRatio = PlayerPrefs.GetFloat("snowMinusStatus", 0);

        /*Player Setting*/
        int        jinkei      = PlayerPrefs.GetInt("jinkei", 0);
        List <int> myBusyoList = new List <int>();

        if (jinkei == 1)
        {
            soudaisyo = PlayerPrefs.GetInt("soudaisyo1");
            if (PlayerPrefs.HasKey("1map1"))
            {
                int mapId = 1;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map2"))
            {
                int mapId = 2;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map7"))
            {
                int mapId = 7;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map8"))
            {
                int mapId = 8;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map11"))
            {
                int mapId = 11;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map12"))
            {
                int mapId = 12;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map13"))
            {
                int mapId = 13;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map14"))
            {
                int mapId = 14;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map17"))
            {
                int mapId = 17;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map18"))
            {
                int mapId = 18;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map21"))
            {
                int mapId = 21;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("1map22"))
            {
                int mapId = 22;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
        }
        else if (jinkei == 2)
        {
            soudaisyo = PlayerPrefs.GetInt("soudaisyo2");

            if (PlayerPrefs.HasKey("2map3"))
            {
                int mapId = 3;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map4"))
            {
                int mapId = 4;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map5"))
            {
                int mapId = 5;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map7"))
            {
                int mapId = 7;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map8"))
            {
                int mapId = 8;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map11"))
            {
                int mapId = 11;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map12"))
            {
                int mapId = 12;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map17"))
            {
                int mapId = 17;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map18"))
            {
                int mapId = 18;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map23"))
            {
                int mapId = 23;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map24"))
            {
                int mapId = 24;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("2map25"))
            {
                int mapId = 25;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
        }
        else if (jinkei == 3)
        {
            soudaisyo = PlayerPrefs.GetInt("soudaisyo3");

            if (PlayerPrefs.HasKey("3map3"))
            {
                int mapId = 3;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map7"))
            {
                int mapId = 7;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map8"))
            {
                int mapId = 8;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map9"))
            {
                int mapId = 9;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map11"))
            {
                int mapId = 11;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map12"))
            {
                int mapId = 12;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map14"))
            {
                int mapId = 14;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map15"))
            {
                int mapId = 15;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map16"))
            {
                int mapId = 16;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map20"))
            {
                int mapId = 20;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map21"))
            {
                int mapId = 21;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("3map25"))
            {
                int mapId = 25;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
        }
        else if (jinkei == 4)
        {
            soudaisyo = PlayerPrefs.GetInt("soudaisyo4");

            if (PlayerPrefs.HasKey("4map1"))
            {
                int mapId = 1;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map2"))
            {
                int mapId = 2;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map7"))
            {
                int mapId = 7;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map8"))
            {
                int mapId = 8;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map12"))
            {
                int mapId = 12;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map13"))
            {
                int mapId = 13;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map14"))
            {
                int mapId = 14;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map18"))
            {
                int mapId = 18;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map19"))
            {
                int mapId = 19;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map20"))
            {
                int mapId = 20;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map24"))
            {
                int mapId = 24;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
            if (PlayerPrefs.HasKey("4map25"))
            {
                int mapId = 25;
                myBusyoList.Add(getStsAndMakeInstance(jinkei, mapId, rainMinusRatio, snowMinusRatio));
            }
        }

        //Saku
        BusyoInfoGet info     = new BusyoInfoGet();
        StatusGet    sts      = new StatusGet();
        GameObject   content  = GameObject.Find("Content").gameObject;
        string       slotPath = "Prefabs/Saku/Slot";
        Saku         saku     = new Saku();

        foreach (Transform n in content.transform)
        {
            GameObject.Destroy(n.gameObject);
        }

        foreach (int busyoId in myBusyoList)
        {
            List <string> sakuList = new List <string>();
            sakuList = saku.getSakuInfo(busyoId);

            if (saku.getSakuShipFlg(int.Parse(sakuList[0])))
            {
                GameObject slot     = Instantiate(Resources.Load(slotPath)) as GameObject;
                string     sakuPath = "Prefabs/Saku/saku" + sakuList[0];
                GameObject sakuIcon = Instantiate(Resources.Load(sakuPath)) as GameObject;
                sakuIcon.transform.SetParent(slot.transform);
                sakuIcon.transform.localScale            = new Vector2(0.45f, 0.45f);
                sakuIcon.GetComponent <Button>().enabled = false;

                slot.transform.SetParent(content.transform);
                slot.transform.localScale = new Vector2(1, 1);

                slot.GetComponent <Saku>().sakuId     = int.Parse(sakuList[0]);
                slot.GetComponent <Saku>().sakuEffect = int.Parse(sakuList[4]);

                if (sakuList[0] == "3")
                {
                    //hukuhei
                    //Heisyu
                    slot.GetComponent <Saku>().sakuHeisyu = info.getHeisyu(busyoId);
                    //Hei Status
                    string heiId   = "hei" + busyoId.ToString();
                    string chParam = PlayerPrefs.GetString(heiId, "0");
                    if (chParam == "0" || chParam == "")
                    {
                        StatusGet statusScript  = new StatusGet();
                        string    chParamHeisyu = statusScript.getHeisyu(busyoId);
                        chParam = chParamHeisyu + ":1:1:1";
                        PlayerPrefs.SetString(heiId, chParam);
                        PlayerPrefs.Flush();
                    }

                    char[]   delimiterChars = { ':' };
                    string[] ch_list        = chParam.Split(delimiterChars);
                    slot.GetComponent <Saku>().sakuHeiSts  = float.Parse(ch_list[3]);
                    slot.GetComponent <Saku>().sakuBusyoId = busyoId;

                    //Busyo Speed
                    int   sakuBusyoLv = PlayerPrefs.GetInt(busyoId.ToString());
                    float adjSpd      = (float)sts.getSpd(busyoId, sakuBusyoLv) / 10;
                    slot.GetComponent <Saku>().sakuBusyoSpeed = adjSpd;
                }
            }
        }

        //Nanban
        string        nanbanString = PlayerPrefs.GetString("nanbanItem");
        List <string> nanbanList   = new List <string>();

        char[] delimiterChars3 = { ',' };
        nanbanList = new List <string>(nanbanString.Split(delimiterChars3));

        for (int i = 0; i < nanbanList.Count; i++)
        {
            int qty = int.Parse(nanbanList[i]);
            if (qty != 0)
            {
                if (i == 0 || i == 1)
                {
                    GameObject slot = Instantiate(Resources.Load(slotPath)) as GameObject;

                    string nanbanPath = "";
                    if (i == 0)
                    {
                        nanbanPath = "Prefabs/Saku/saku8";
                    }
                    else if (i == 1)
                    {
                        nanbanPath = "Prefabs/Saku/saku9";
                    }

                    GameObject sakuIcon = Instantiate(Resources.Load(nanbanPath)) as GameObject;
                    sakuIcon.transform.SetParent(slot.transform);
                    sakuIcon.transform.localScale            = new Vector2(0.45f, 0.45f);
                    sakuIcon.GetComponent <Button>().enabled = false;

                    slot.transform.SetParent(content.transform);
                    slot.transform.localScale = new Vector2(1, 1);

                    if (i == 0)
                    {
                        slot.GetComponent <Saku>().sakuId = 8;
                    }
                    else if (i == 1)
                    {
                        slot.GetComponent <Saku>().sakuId = 9;
                    }
                    else if (i == 2)
                    {
                        slot.GetComponent <Saku>().sakuId = 10;
                    }

                    int      temp   = i + 1;
                    ItemInfo item   = new ItemInfo();
                    string   itemCd = "nanban" + temp.ToString();
                    int      effect = item.getItemEffect(itemCd);
                    slot.GetComponent <Saku>().sakuEffect = effect;
                }
            }
        }


        /*エネミー配置*/
        int linkNo = PlayerPrefs.GetInt("activeLink", 0);

        enemySoudaisyo = PlayerPrefs.GetInt("enemySoudaisyo");

        if (PlayerPrefs.HasKey("emap1"))
        {
            int mapId = 1;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap2"))
        {
            int mapId = 2;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap3"))
        {
            int mapId = 3;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap4"))
        {
            int mapId = 4;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap5"))
        {
            int mapId = 5;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap6"))
        {
            int mapId = 6;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap7"))
        {
            int mapId = 7;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap8"))
        {
            int mapId = 8;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap9"))
        {
            int mapId = 9;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap10"))
        {
            int mapId = 10;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap11"))
        {
            int mapId = 11;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap12"))
        {
            int mapId = 12;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap13"))
        {
            int mapId = 13;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap14"))
        {
            int mapId = 14;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap15"))
        {
            int mapId = 15;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap16"))
        {
            int mapId = 16;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap17"))
        {
            int mapId = 17;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap18"))
        {
            int mapId = 18;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap19"))
        {
            int mapId = 19;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap20"))
        {
            int mapId = 20;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap21"))
        {
            int mapId = 21;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap22"))
        {
            int mapId = 22;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap23"))
        {
            int mapId = 23;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap24"))
        {
            int mapId = 24;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }
        if (PlayerPrefs.HasKey("emap25"))
        {
            int mapId = 25;
            getEnemyStsAndMakeInstance(linkNo, mapId, rainMinusRatio, snowMinusRatio);
        }

        /*Dynamic Enemy Setting Finish*/
        //合戦開始エフェクト
        string     pathBack = "Prefabs/PreKassen/backGround";
        GameObject back     = Instantiate(Resources.Load(pathBack)) as GameObject;

        back.transform.localScale = new Vector2(30, 15);

        string     pathLight = "Prefabs/PreKassen/lightning";
        GameObject light     = Instantiate(Resources.Load(pathLight)) as GameObject;

        light.transform.localScale = new Vector2(10, 10);
    }
Esempio n. 15
0
 public override IEnumerator TearDown()
 {
     GameObject.Destroy(cube);
     return(base.TearDown());
 }
Esempio n. 16
0
    /// <summary>
    /// 组合SkinnedMeshRenderers并且共享同一个骨骼
    /// 并且整合材质减少drawcall,但会增加贴图大小和内存大小)
    /// </summary>
    /// <param name="skeleton"></param>
    /// <param name="meshes"></param>
    /// <param name="combine"></param>
    public static void CombineObject(GameObject skeleton, SkinnedMeshRenderer[] meshes, bool combine = false)
    {
        // Fetch all bones of the skeleton
        List <Transform> transforms = new List <Transform>();

        transforms.AddRange(skeleton.GetComponentsInChildren <Transform>(true));

        List <Material>        materials        = new List <Material>();        //the list of materials
        List <CombineInstance> combineInstances = new List <CombineInstance>(); //the list of meshes
        List <Transform>       bones            = new List <Transform>();       //the list of bones

        // Below informations only are used for merge materilas(bool combine = true)
        List <Vector2[]> oldUV         = null;
        Material         newMaterial   = null;
        Texture2D        newDiffuseTex = null;

        // Collect information from meshes
        for (int i = 0; i < meshes.Length; i++)
        {
            SkinnedMeshRenderer smr = meshes[i];
            materials.AddRange(smr.materials); // Collect materials
            // Collect meshes
            for (int sub = 0; sub < smr.sharedMesh.subMeshCount; sub++)
            {
                CombineInstance ci = new CombineInstance();
                ci.mesh         = smr.sharedMesh;
                ci.subMeshIndex = sub;
                combineInstances.Add(ci);
            }
            // Collect bones
            for (int j = 0; j < smr.bones.Length; j++)
            {
                int tBase = 0;
                for (tBase = 0; tBase < transforms.Count; tBase++)
                {
                    if (smr.bones[j].name.Equals(transforms[tBase].name))
                    {
                        bones.Add(transforms[tBase]);
                        break;
                    }
                }
            }

            Object.Destroy(smr.gameObject);
        }

        // merge materials
        if (combine)
        {
            newMaterial = new Material(materials[0].shader);
            oldUV       = new List <Vector2[]>();
            // merge the texture
            List <Texture2D> Textures = new List <Texture2D>();
            for (int i = 0; i < materials.Count; i++)
            {
                Textures.Add(materials[i].GetTexture(sConst.combineDiffuseTexture) as Texture2D);
            }

            newDiffuseTex = new Texture2D(sConst.combineTextureMax, sConst.combineTextureMax, TextureFormat.ETC_RGB4, false);
            Rect[] uvs = newDiffuseTex.PackTextures(Textures.ToArray(), 0);
            for (int i = 0; i < Textures.Count; ++i)
            {
                Resources.UnloadAsset(Textures[i]);
                GameObject.Destroy(materials[i]);
            }
            newMaterial.mainTexture = newDiffuseTex;

            // reset uv
            Vector2[] uva, uvb;
            for (int j = 0; j < combineInstances.Count; j++)
            {
                uva = (Vector2[])(combineInstances[j].mesh.uv);
                uvb = new Vector2[uva.Length];
                for (int k = 0; k < uva.Length; k++)
                {
                    uvb[k] = new Vector2((uva[k].x * uvs[j].width) + uvs[j].x, (uva[k].y * uvs[j].height) + uvs[j].y);
                }
                oldUV.Add(combineInstances[j].mesh.uv);
                combineInstances[j].mesh.uv = uvb;
            }
        }

        // Create a new SkinnedMeshRenderer
        SkinnedMeshRenderer r = skeleton.GetComponent <SkinnedMeshRenderer>();

        r.sharedMesh = new Mesh();
        r.sharedMesh.CombineMeshes(combineInstances.ToArray(), combine, false); // Combine meshes
        r.bones = bones.ToArray();                                              // Use new bones

        r.receiveShadows       = false;
        r.useLightProbes       = false;
        r.reflectionProbeUsage = UnityEngine.Rendering.ReflectionProbeUsage.Off;

        if (combine)
        {
            r.material = newMaterial;
            for (int i = 0; i < combineInstances.Count; i++)
            {
                combineInstances[i].mesh.uv = oldUV[i];
            }
        }
        else
        {
            r.materials = materials.ToArray();
        }
    }
Esempio n. 17
0
 public void HandleBeingEaten()
 {
     GameObject.Destroy(gameObject);
 }
Esempio n. 18
0
    void Update()
    {
        Newtopcard_a = -1;
        Newtopcard_b = -1;
        for (int i = 0; i <= 103; i++)
        {
            if ((gameplayManager.A_active[i] != 0))
            {
                Newtopcard_a = Newtopcard_a + 1;
            }
            if ((gameplayManager.B_active[i] != 0))
            {
                Newtopcard_b = Newtopcard_b + 1;
            }
        }
        gameplayManager.TOPCARD_A = Newtopcard_a;
        gameplayManager.TOPCARD_B = Newtopcard_b;
//		Debug.Log(Newtopcard_a);
//		Debug.Log(Newtopcard_b);
        if ((Newtopcard_a != topcard_a) || (Newtopcard_b != topcard_b))
        {
            //destroy old cards
            foreach (Transform a_card in transform)
            {
                GameObject.Destroy(a_card.gameObject);
            }
            foreach (Transform b_card in transform)
            {
                GameObject.Destroy(b_card.gameObject);
            }
            topcard_a = Newtopcard_a;
            topcard_b = Newtopcard_b;

            switch (gameplayManager.A_active[topcard_a])
            {
            case 2:
                a_card = heart_2;
                break;

            case 3:
                a_card = heart_3;
                break;

            case 4:
                a_card = heart_4;
                break;

            case 5:
                a_card = heart_5;
                break;

            case 6:
                a_card = heart_6;
                break;

            case 7:
                a_card = heart_7;
                break;

            case 8:
                a_card = heart_8;
                break;

            case 9:
                a_card = heart_9;
                break;

            case 10:
                a_card = heart_10;
                break;

            case 11:
                a_card = heart_11;
                break;

            case 12:
                a_card = heart_12;
                break;

            case 13:
                a_card = heart_13;
                break;

            case 14:
                a_card = heart_14;
                break;

            default:
                Debug.Log("Active Deck A ERROR");
                break;
            }

            switch (gameplayManager.B_active[topcard_b])
            {
            case 2:
                b_card = spades_2;
                break;

            case 3:
                b_card = spades_3;
                break;

            case 4:
                b_card = spades_4;
                break;

            case 5:
                b_card = spades_5;
                break;

            case 6:
                b_card = spades_6;
                break;

            case 7:
                b_card = spades_7;
                break;

            case 8:
                b_card = spades_8;
                break;

            case 9:
                b_card = spades_9;
                break;

            case 10:
                b_card = spades_10;
                break;

            case 11:
                b_card = spades_11;
                break;

            case 12:
                b_card = spades_12;
                break;

            case 13:
                b_card = spades_13;
                break;

            case 14:
                b_card = spades_14;
                break;

            default:
                Debug.Log("Active Deck B ERROR");
                break;
            }
            var child_a0 = Instantiate(a_card, new Vector3(1, -1, -1), a_card.transform.rotation);
            child_a0.transform.parent = transform;
            var child_a1 = Instantiate(a_card, new Vector3(1, 1, -1), a_card.transform.rotation);
            child_a1.transform.parent = transform;
            var child_b0 = Instantiate(b_card, new Vector3(-1, -1, -1), b_card.transform.rotation);
            child_b0.transform.parent = transform;
            var child_b1 = Instantiate(b_card, new Vector3(-1, 1, -1), b_card.transform.rotation);
            child_b1.transform.parent = transform;
        }
    }
Esempio n. 19
0
 void noBtnClicked()
 {
     PlayerPrefs.SetInt(GameConstants.SOCIAL_COUNT_STRING, 0);
     GameObject.Destroy(popup);
 }
Esempio n. 20
0
        /// <summary>
        /// RECEIVE FUNCTION
        /// </summary>

        public IEnumerator TCPRecv()
        {
            while (true)
            {
                try
                {
                    TCPCon.BeginReceive(TCPbuffer, 0, 1024, 0, new System.AsyncCallback(TCPRecvCallback), this);
                }
                catch (System.Exception e)
                {
                    //If this goes south, disconnec this connection.
                    MyCore.Disconnect(PlayerId);
                    //Debug.Log("Recv error: " + e.ToString());
                }
                //Wait to recv messages
                yield return(new WaitUntil(() => TCPDidRecieve));

                TCPDidRecieve = false;
                string responce = TCPsb.ToString();
                if (responce.Trim(' ') == "")
                {
                    //We do NOT want any empty strings.  It will cause a problem.
                    MyCore.Disconnect(PlayerId);
                }
                //Parse string
                string[] commands = responce.Split('\n');
                for (int i = 0; i < commands.Length; i++)
                {
                    if (commands[i].Trim(' ') == "")
                    {
                        continue;
                    }
                    if (commands[i].Trim(' ') == "OK" && MyCore.IsClient)
                    {
                        Debug.Log("Client Recieved OK.");
                        //Do nothing, just a heartbeat
                    }
                    else if (commands[i].StartsWith("PlayerID"))
                    {
                        if (MyCore.IsClient)
                        {
                            try
                            {
                                //This is how the client get's their player id.
                                //All values will be seperated by a '#' mark.
                                //PLayerID#<NUM> will signify the player ID for this connection.
                                PlayerId             = int.Parse(commands[i].Split('#')[1]);
                                MyCore.LocalPlayerId = PlayerId;
                            }
                            catch (System.FormatException)
                            {
                                Debug.Log("Got scrambled Message: " + commands[i]);
                            }
                        }
                        else
                        {//Should never happne
                        }
                    }
                    else if (commands[i].StartsWith("DISCON#"))
                    {
                        if (MyCore.IsServer)
                        {
                            try
                            {
                                int badCon = int.Parse(commands[i].Split('#')[1]);
                                MyCore.Disconnect(badCon);
                                Debug.Log("There are now only " + MyCore.Connections.Count + " players in the game.");
                            }
                            catch (System.FormatException)
                            {
                                Debug.Log("We received a scrambled message+ " + commands[i]);
                            }
                            catch (System.Exception e)
                            {
                                Debug.Log("Unkown exception: " + e.ToString());
                            }
                        }
                        else
                        {//If client
                            MyCore.LeaveGame();
                        }
                    }
                    else if (commands[i].StartsWith("CREATE"))
                    {
                        if (MyCore.IsClient)
                        {
                            string[] arg = commands[i].Split('#');
                            try
                            {
                                int        o    = int.Parse(arg[2]);
                                int        n    = int.Parse(arg[3]);
                                Vector3    pos  = new Vector3(float.Parse(arg[4]), float.Parse(arg[5]), float.Parse(arg[6]));
                                int        type = int.Parse(arg[1]);
                                GameObject Temp;
                                if (type != -1)
                                {
                                    Temp = GameObject.Instantiate(MyCore.SpawnPrefab[int.Parse(arg[1])], pos, Quaternion.identity);
                                }
                                else
                                {
                                    Temp = GameObject.Instantiate(MyCore.NetworkPlayerManager, pos, Quaternion.identity);
                                }
                                Temp.GetComponent <NetworkID>().Owner = o;
                                Temp.GetComponent <NetworkID>().NetId = n;
                                Temp.GetComponent <NetworkID>().Type  = type;
                                MyCore.NetObjs[n] = Temp.GetComponent <NetworkID>();
                                lock (MyCore._masterMessage)
                                {   //Notify the server that we need to get update on this object.
                                    MyCore.MasterMessage += "DIRTY#" + n + "\n";
                                }
                            }
                            catch
                            {
                                //Malformed packet.
                            }
                        }
                    }
                    else if (commands[i].StartsWith("DELETE"))
                    {
                        if (MyCore.IsClient)
                        {
                            try
                            {
                                string[] args = commands[i].Split('#');
                                if (MyCore.NetObjs.ContainsKey(int.Parse(args[1])))
                                {
                                    GameObject.Destroy(MyCore.NetObjs[int.Parse(args[1])].gameObject);
                                    MyCore.NetObjs.Remove(int.Parse(args[1]));
                                }
                            }
                            catch (System.Exception e)
                            {
                                Debug.Log("ERROR OCCURED: " + e);
                            }
                        }
                    }
                    else if (commands[i].StartsWith("DIRTY"))
                    {
                        if (MyCore.IsServer)
                        {
                            int id = int.Parse(commands[i].Split('#')[1]);
                            if (MyCore.NetObjs.ContainsKey(id))
                            {
                                foreach (NetworkComponent n in MyCore.NetObjs[id].gameObject.GetComponents <NetworkComponent>())
                                {
                                    n.IsDirty = true;
                                }
                            }
                        }
                    }
                    else
                    {
                        //We will assume it is Game Object specific message
                        //string msg = "COMMAND#" + myId.netId + "#" + var + "#" + value;
                        string[] args = commands[i].Split('#');
                        int      n    = int.Parse(args[1]);
                        if (MyCore.NetObjs.ContainsKey(n))
                        {
                            MyCore.NetObjs[n].Net_Update(args[0], args[2], args[3]);
                        }
                    }
                }

                TCPsb.Length  = 0;
                TCPsb         = new StringBuilder();
                TCPDidRecieve = false;
                yield return(new WaitForSeconds(.05f));
            }
        }
Esempio n. 21
0
 // ********************************************************************
 // Function:	UnloadLoadingScene()
 // Purpose:		Destroys the loading scene
 // ********************************************************************
 public static void UnloadLoadingScene()
 {
     GameObject.Destroy(instance.gameObject);
 }
Esempio n. 22
0
    void OnServerCharacterCreate(NetworkMessage netMsg)
    {
        print("OnServerCharacterCreate " + netMsg.conn);
        CharacterCreateMsg message = netMsg.ReadMessage <CharacterCreateMsg>();

        // only while in lobby (aka after handshake and not ingame)
        if (lobby.ContainsKey(netMsg.conn))
        {
            // allowed character name?
            if (IsAllowedCharacterName(message.name))
            {
                // not existant yet?
                string account = lobby[netMsg.conn];
                if (!Database.CharacterExists(message.name))
                {
                    // not too may characters created yet?
                    if (Database.CharactersForAccount(account).Count < characterLimit)
                    {
                        // valid class index?
                        List <Player> classes = GetPlayerClasses();
                        if (0 <= message.classIndex && message.classIndex < classes.Count)
                        {
                            // create new character based on the prefab.
                            // -> we also assign default items and equipment for new characters
                            // -> skills are handled in Database.CharacterLoad every time. if we
                            //    add new ones to a prefab, all existing players should get them
                            // (instantiate temporary player)
                            print("creating character: " + message.name + " " + message.classIndex);
                            Player prefab = GameObject.Instantiate(classes[message.classIndex]).GetComponent <Player>();
                            prefab.name               = message.name;
                            prefab.account            = account;
                            prefab.className          = classes[message.classIndex].name;
                            prefab.transform.position = GetStartPositionFor(prefab.className).position;
                            for (int i = 0; i < prefab.inventorySize; ++i)
                            {
                                // add empty slot or default item if any
                                prefab.inventory.Add(i < prefab.defaultItems.Length ? new ItemSlot(new Item(prefab.defaultItems[i])) : new ItemSlot());
                            }
                            for (int i = 0; i < prefab.equipmentInfo.Length; ++i)
                            {
                                // add empty slot or default item if any
                                EquipmentInfo info = prefab.equipmentInfo[i];
                                prefab.equipment.Add(info.defaultItem != null ? new ItemSlot(new Item(info.defaultItem)) : new ItemSlot());
                            }
                            prefab.health = prefab.healthMax; // after equipment in case of boni
                            prefab.mana   = prefab.manaMax;   // after equipment in case of boni

                            // addon system hooks
                            Utils.InvokeMany(typeof(NetworkManagerMMO), this, "OnServerCharacterCreate_", message, prefab);

                            // save the player
                            Database.CharacterSave(prefab, false);
                            GameObject.Destroy(prefab.gameObject);

                            // send available characters list again, causing
                            // the client to switch to the character
                            // selection scene again
                            CharactersAvailableMsg reply = MakeCharactersAvailableMessage(account);
                            netMsg.conn.Send(CharactersAvailableMsg.MsgId, reply);
                        }
                        else
                        {
                            print("character invalid class: " + message.classIndex);
                            ClientSendPopup(netMsg.conn, "character invalid class", false);
                        }
                    }
                    else
                    {
                        print("character limit reached: " + message.name);
                        ClientSendPopup(netMsg.conn, "character limit reached", false);
                    }
                }
                else
                {
                    print("character name already exists: " + message.name);
                    ClientSendPopup(netMsg.conn, "name already exists", false);
                }
            }
            else
            {
                print("character name not allowed: " + message.name);
                ClientSendPopup(netMsg.conn, "character name not allowed", false);
            }
        }
        else
        {
            print("CharacterCreate: not in lobby");
            ClientSendPopup(netMsg.conn, "CharacterCreate: not in lobby", true);
        }
    }
Esempio n. 23
0
        bool UnloadResource(ResInfo info, Object obj, bool forceUnload)
        {
            System.Type type;
            if (_assetbundleList.Contains(info.ResName))
            {
                type = typeof(AssetBundle);
                _assetbundleList.Remove(info.ResName);
            }
            else
            {
                type = obj.GetType();
            }

            UnloadDependencyAssetBundle(info.ResName);

            ///如果是卸载的图集,需要判断所有引用都卸载了,再卸载图集
            if (_altasReference.ContainsKey(info.ResName))
            {
                --_altasReference[info.ResName];

                if (_altasReference[info.ResName] == 0)
                {
                    if (DevelopSetting.IsLoadAB)
                    {
                        AssetBundle res = _objPool[type][info.ResName] as AssetBundle;
                        res.Unload(true);
                        _objPool[type].Remove(info.ResName);
                    }

                    if (_altasPool.ContainsKey(info.ResName))
                    {
                        _altasPool.Remove(info.ResName);
                    }
                    _altasReference.Remove(info.ResName);

                    Resources.UnloadUnusedAssets();
                }
                return(true);
            }
            else if (CheckPool(info.ResName, type))
            {
                if (NeedObjectPool(info.type) && forceUnload == false)
                {
                    return(RecycleObject(info.ResName, obj as GameObject));
                }
                else if (type == typeof(GameObject))
                {
                    GameObject.Destroy(obj);
                    if (_gameObjectRefCount.ContainsKey(info.ResName))
                    {
                        --_gameObjectRefCount[info.ResName];
                        if (_gameObjectRefCount[info.ResName] == 0)
                        {
                            _objPool[type].Remove(info.ResName);
                            _gameObjectRefCount.Remove(info.ResName);
                        }
                    }
                }
                else
                {
                    if (type == typeof(AssetBundle))
                    {
                        AssetBundle res = _objPool[type][info.ResName] as AssetBundle;
                        res.Unload(true);
                    }

                    else if (type == typeof(Sprite))
                    {
                        Object res    = _objPool[type][info.ResName];
                        Sprite sprite = res as Sprite;
                        Resources.UnloadAsset(sprite.texture);
                        GameObject.Destroy(res);
                    }
                    else
                    {
                        Object res = _objPool[type][info.ResName];
                        Resources.UnloadAsset(res);
                        GameObject.Destroy(obj as GameObject);
                    }

                    _objPool[type].Remove(info.ResName);
                }
                Resources.UnloadUnusedAssets();
                return(true);
            }

            Resources.UnloadUnusedAssets();
            return(false);
        }
Esempio n. 24
0
 void Cancel()
 {
     confirmedText = "";
     GameObject.Destroy(this);
 }
Esempio n. 25
0
 public virtual void Deactivate()
 {
     GameObject.Destroy(mainCursorGo);
 }
Esempio n. 26
0
        private bool Grow <T> (ref List <T> branches) where T : Branch
        {
            bool growing = false;

            if (m_Leaves.Count == 0)
            {
                return(growing);
            }

            foreach (var leaf in m_Leaves)
            {
                T     closest     = default(T);
                float closestDist = float.MaxValue;

                foreach (var branch in branches)
                {
                    var dist = Vector2.Distance(leaf.position, branch.endPos);

                    if (dist < m_MinDistance)                       // too close
                    {
                        leaf.hasBeenReached = true;
                        closest             = default(T);
                        break;
                    }

                    if (dist <= m_MaxDistance && dist < closestDist)
                    {
                        closest     = branch;
                        closestDist = dist;
                    }
                }

                if (closest != null)
                {
                    var dir = (leaf.position - closest.endPos).normalized;

                    closest.colonizationDir += dir;

                    closest.colonizationLeafCount++;
                }
            }


            for (int i = m_Leaves.Count - 1; i >= 0; i--)
            {
                if (m_Leaves [i].hasBeenReached)
                {
                    GameObject.Destroy(m_Leaves [i].gameObject);
                    m_Leaves.RemoveAt(i);
                }
            }

            for (int i = branches.Count - 1; i >= 0; i--)
            {
                var branch = branches [i];

                if (branch.colonizationLeafCount > 0)
                {
                    branch.colonizationDir /= (branch.colonizationLeafCount + 1);

                    branches.Add(CreateBranch(branch,
                                              branch.endPos + branch.colonizationDir));

                    growing = true;
                }

                branch.DoColonizationReset();
            }

            return(growing);
        }
Esempio n. 27
0
    void Start()
    {
        #region Init
#if UNITY_ANDROID
        QualitySettings.vSyncCount   = 0;
        Application.targetFrameRate  = 60;
        QualitySettings.antiAliasing = 0;
        Screen.sleepTimeout          = SleepTimeout.NeverSleep;
#endif
        Settings.HoverFlag = true;

        Grid             = new Square[ROWS][];
        basePieces       = new GameObject[12];
        thePieces        = new List <GameObject> [2];
        thePieces[BLACK] = new List <GameObject>(); thePieces[WHITE] = new List <GameObject>();
        kings            = new King[2];
        kingPlaced       = new bool[2];
        deadCount        = new int[2];
        EventCallbacks.ReviveEvent.RegisterListener(HandleRevival);

        // Find initial squares and units
        blackSquare = GameObject.Find("bBlackSquare1");
        whiteSquare = GameObject.Find("bWhiteSquare1");
        {
            basePieces[0] = GameObject.Find("Black Pawn");
            // All these will be deleted, because their positions are variable they were initial off screen
            basePieces[6]  = GameObject.Find("White Pawn");
            basePieces[7]  = GameObject.Find("White Rook");
            basePieces[8]  = GameObject.Find("White Knight");
            basePieces[9]  = GameObject.Find("White Bishop");
            basePieces[10] = GameObject.Find("White King");
            basePieces[11] = GameObject.Find("White Queen");
            basePieces[1]  = GameObject.Find("Black Rook");
            basePieces[2]  = GameObject.Find("Black Knight");
            basePieces[3]  = GameObject.Find("Black Bishop");
            basePieces[4]  = GameObject.Find("Black Queen");
            basePieces[5]  = GameObject.Find("Black King");
        }

        // Auto generate back row sequence, MUST have even cols
        // The values placed in BackRow[] correspond to the black pieces held in pieces[]
        //  the white pieces are determined by shifting 6 indices
        var BackRow = new int[COLS];
        for (int i = 0; i < (COLS - 2) / 2; ++i)
        {                                                     // Pieces placed symmetrically
            BackRow[i] = BackRow[COLS - i - 1] = (i) % 3 + 1; // loop through possible pieces
        }
        BackRow[(COLS / 2) - 1] = 4;
        BackRow[(COLS / 2)]     = 5;

        #endregion Init

        #region Board Setup

        // Place all squares and pieces on board
        for (int row = 0; row < ROWS; row++)
        {
            Grid[row] = new Square[COLS];
            for (int col = 0; col < COLS; col++)
            {
                PlaceSquare(row, col);

                // Place pieces
                if (Settings.IsRandomMode)
                {
                    RandomPlacement(row, col);
                }
                else
                {
                    StandardPlacement(BackRow, row, col);
                }

                // Handle setting team and adding to list
                FinalizePiece(row, col);
            }
        }

        #endregion Board Setup

        #region Setup Other Pieces

        //// Position/resize all other objects in scene ////

        // Camera and lights need to be positioned accordingly.
        // Directional light and camera need to be positioned in middle of platform
        // Find camera and lights
        cam           = GameObject.Find("Main Camera");
        camDefaultPos = cam.transform.localPosition;
        camDefaultRot = cam.transform.eulerAngles;
        var l  = GameObject.Find("Directional Light");
        var l1 = GameObject.Find("Point Light");
        var l2 = GameObject.Find("Point Light Top");

        // Give them initial positions.
        // Orderded by 3 on bottom left 2 top left.  3 right bottom 2 right top. 1 white bottom/top. 1 black bottom/top
        GameObject[] lights = new GameObject[14]; lights[0] = l1; lights[3] = l2;
        {
            lights[1] = Object.Instantiate(l1, new Vector3(-5, 1, 4), Quaternion.identity);
            lights[2] = Object.Instantiate(l1, new Vector3(-5, 1, 13), Quaternion.identity);
            lights[4] = Object.Instantiate(l1, new Vector3(-1, 5, 10), Quaternion.identity);

            lights[5] = Object.Instantiate(l1, new Vector3(15, 1, 4), Quaternion.identity);
            lights[6] = Object.Instantiate(l1, new Vector3(15, 1, 13), Quaternion.identity);
            lights[7] = Object.Instantiate(l1, new Vector3(15, 1, -5), Quaternion.identity);
            lights[8] = Object.Instantiate(l1, new Vector3(10, 5, 0), Quaternion.identity);
            lights[9] = Object.Instantiate(l1, new Vector3(10, 5, 10), Quaternion.identity);

            lights[10] = Object.Instantiate(l1, new Vector3(5, 1, 15), Quaternion.identity);
            lights[11] = Object.Instantiate(l1, new Vector3(5, 5, 10), Quaternion.identity);
            lights[12] = Object.Instantiate(l1, new Vector3(5, 1, -5), Quaternion.identity);
            lights[13] = Object.Instantiate(l1, new Vector3(5, 5, 0), Quaternion.identity);
        }

        // Adjust all side and corner pieces
        // Position camera and lights
        int cDiff = 0, rDiff = 0;
        if (COLS > 8)
        {
            cDiff = COLS - 8;
        }
        if (ROWS > 8)
        {
            rDiff = ROWS - 8;
            GameObject bin = GameObject.Find("CartWhite");
            bin.transform.localPosition = new Vector3(-6.66f, -1, ROWS);
        }
        if (COLS > 8 || ROWS > 8)
        {
            // Collision plane
            GameObject plane = GameObject.Find("Plane");
            plane.transform.localPosition = new Vector3(COLS / 2f - .5f, 0.5f, ROWS / 2f - .5f);
            plane.transform.localScale    = new Vector3(COLS / 10f, 0.01f, ROWS / 10f);

            // Lights Orderded by 3 on bottom left 2 top left.  3 right bottom 2 right top. 1 white bottom/top. 1 black bottom/top
            // need to move: [1,2]U[4] pos Z  --- [6,7]U[9] pos Z & pos X
            // 5,8  pos X  ---   10,11 pos X,Z   ---- 12,13 pos X

            // Adjust all affected side pieces, and platform
            // bSideVertical needs to scale by diff and translate by 0.5*(diff) into pos. Z
            GameObject cur = GameObject.Find("bSideVertical");
            cur.transform.localPosition += new Vector3(0, 0, 0.5f * (rDiff));
            cur.transform.localScale    += new Vector3(rDiff, 0, 0);
            for (int i = 1; i < 5; ++i)
            {
                if (i != 3)
                {
                    lights[i].transform.localPosition += new Vector3(0, 0, 0.5f * (rDiff));
                }
            }

            // bCornerLeftFar needs to translate
            cur = GameObject.Find("bCornerLeftFar");
            cur.transform.localPosition += new Vector3(0, 0, rDiff);

            // bSideVerticalRight needs to scale and translate
            cur = GameObject.Find("bSideVerticalRight");
            cur.transform.localPosition += new Vector3(cDiff, 0, 0.5f * (rDiff));
            cur.transform.localScale    += new Vector3(rDiff, 0, 0);
            for (int i = 6; i < 10; ++i)
            {
                if (i != 8)
                {
                    lights[i].transform.localPosition += new Vector3(cDiff, 0, 0.5f * (rDiff));
                }
            }


            // bCornerRightFar needs to translate
            cur = GameObject.Find("bCornerRightFar");
            cur.transform.localPosition += new Vector3(cDiff, 0, rDiff);

            // bSideHorizontalFar needs to translate and scale
            cur = GameObject.Find("bSideHorizontalFar");
            cur.transform.localPosition        += new Vector3(0.5f * (cDiff), 0, rDiff);
            cur.transform.localScale           += new Vector3(cDiff, 0, 0);
            lights[10].transform.localPosition += new Vector3(0.5f * (cDiff), 0, rDiff);
            lights[11].transform.localPosition += new Vector3(0.5f * (cDiff), 0, rDiff);

            cur = GameObject.Find("bPlatform");
            cur.transform.localPosition += new Vector3(0.5f * (cDiff), 0, 0.5f * (rDiff));
            cur.transform.localScale    += new Vector3(rDiff, 0, cDiff);

            cur = GameObject.Find("bSideHorizontal");
            cur.transform.localPosition        += new Vector3(0.5f * (cDiff), 0, 0);
            cur.transform.localScale           += new Vector3(cDiff, 0, 0);
            lights[12].transform.localPosition += new Vector3(0.5f * (cDiff), 0, 0);
            lights[13].transform.localPosition += new Vector3(0.5f * (cDiff), 0, 0);

            cur = GameObject.Find("bCornerRight");
            cur.transform.localPosition       += new Vector3(cDiff, 0, 0);
            lights[5].transform.localPosition += new Vector3(cDiff, 0, rDiff);
            lights[8].transform.localPosition += new Vector3(cDiff, 0, rDiff);

            cam.transform.localPosition = new Vector3(cDiff / 2 + 3.5f, 9.8f, -6);
            camDefaultPos              = cam.transform.localPosition;
            l.transform.localPosition += new Vector3(cDiff / 2 + 3.5f, 0, 0);
            cam.GetComponent <CameraController>().panLimitLeftTop  += new Vector2(0, rDiff);
            cam.GetComponent <CameraController>().panLimitRightBot += new Vector2(cDiff, 0);
        }

        #endregion Setup Other Pieces

        // Delete offboard base pieces, delete black/white offboard squares
        GameObject.Destroy(blackSquare);
        GameObject.Destroy(whiteSquare);
        for (int i = 0; i < 12; ++i)
        {
            GameObject.Destroy(basePieces[i]);
        }
    }
Esempio n. 28
0
 public void Disable()
 {
     GameObject.Destroy(this);
 }
        /// <inheritdoc />
        protected override GameObject OnCreateControl(Transform subCategoryList)
        {
            var tr = Object.Instantiate(SliderCopy, subCategoryList, false);

            tr.name = "SliderSet";

            var sliderSet = tr.GetComponent <CustomSliderSet>();

            sliderSet.onChange          = null;
            sliderSet.onPointerUp       = null;
            sliderSet.onSetDefaultValue = null;
            GameObject.Destroy(sliderSet);

            sliderSet.title.text  = _settingName;
            sliderSet.title.color = TextColor;
            SetTextAutosize(sliderSet.title);

            var slider = sliderSet.slider;

            slider.minValue = _minValue;
            slider.maxValue = _maxValue;
            slider.onValueChanged.ActuallyRemoveAllListeners();
            slider.onValueChanged.AddListener(SetValue);

            slider.GetComponent <ObservableScrollTrigger>()
            .OnScrollAsObservable()
            .Subscribe(
                data =>
            {
                var scrollDelta = data.scrollDelta.y;
                var valueChange = Mathf.Pow(10, Mathf.Round(Mathf.Log10(slider.maxValue / 100)));

                if (scrollDelta < 0f)
                {
                    slider.value += valueChange;
                }
                else if (scrollDelta > 0f)
                {
                    slider.value -= valueChange;
                }
            });

            var inputField = sliderSet.input;

            inputField.onEndEdit.AddListener(
                txt =>
            {
                try
                {
                    var result   = StringToValue?.Invoke(txt) ?? float.Parse(txt) / 100f;
                    slider.value = Mathf.Clamp(result, slider.minValue, slider.maxValue);
                }
                catch
                {
                    // Ignore parsing errors, lets user keep typing
                }
            });

            slider.onValueChanged.AddListener(
                f =>
            {
                if (ValueToString != null)
                {
                    inputField.text = ValueToString(f);
                }
                else
                {
                    inputField.text = Mathf.RoundToInt(f * 100).ToString();
                }
            });


            var resetButton = sliderSet.button;

            resetButton.onClick.ActuallyRemoveAllListeners();
            resetButton.onClick.AddListener(() => slider.value = _defaultValue);

            BufferedValueChanged.Subscribe(f => slider.value = f);

            return(tr.gameObject);
        }
Esempio n. 30
0
        private void MenuTearDown()
        {
            var menu = GameObject.Find("MainMenuObjects");

            GameObject.Destroy(menu);
        }
Esempio n. 31
0
        private void SetupInput()
        {
            cameraRig = GameObject.FindObjectOfType <OVRCameraRig>();
            if (cameraRig == null)
            {
                var       mainCamera   = Camera.main;
                Transform cameraParent = null;
                if (mainCamera != null)
                {
                    cameraParent = mainCamera.transform.parent;

                    // Destroy main camera
                    GameObject.Destroy(cameraParent.gameObject);
                }

                // Instantiate camera rig as a child of the MixedRealityPlayspace
                cameraRig = GameObject.Instantiate(MRTKOculusConfig.Instance.OVRCameraRigPrefab);
            }
            // Ensure all related game objects are configured
            cameraRig.EnsureGameObjectIntegrity();

            bool useAvatarHands = MRTKOculusConfig.Instance.RenderAvatarHandsInsteadOfController;

            // If using Avatar hands, de-activate ovr controller rendering
            foreach (var controllerHelper in cameraRig.gameObject.GetComponentsInChildren <OVRControllerHelper>())
            {
                controllerHelper.gameObject.SetActive(!useAvatarHands);
            }

            if (useAvatarHands && !MRTKOculusConfig.Instance.AllowDevToManageAvatarPrefab)
            {
                // Initialize the local avatar controller
                GameObject.Instantiate(MRTKOculusConfig.Instance.LocalAvatarPrefab, cameraRig.trackingSpace);
            }

            var ovrHands = cameraRig.GetComponentsInChildren <OVRHand>();

            foreach (var ovrHand in ovrHands)
            {
                // Manage Hand skeleton data
                var skeltonDataProvider = ovrHand as OVRSkeleton.IOVRSkeletonDataProvider;
                var skeltonType         = skeltonDataProvider.GetSkeletonType();
                var meshRenderer        = ovrHand.GetComponent <OVRMeshRenderer>();

                var ovrSkelton = ovrHand.GetComponent <OVRSkeleton>();
                if (ovrSkelton == null)
                {
                    continue;
                }

                switch (skeltonType)
                {
                case OVRSkeleton.SkeletonType.HandLeft:
                    leftHand         = ovrHand;
                    leftSkeleton     = ovrSkelton;
                    leftMeshRenderer = meshRenderer;
                    break;

                case OVRSkeleton.SkeletonType.HandRight:
                    rightHand        = ovrHand;
                    rightSkeleton    = ovrSkelton;
                    righMeshRenderer = meshRenderer;
                    break;
                }
            }
        }
Esempio n. 32
0
 protected void die()
 {
     GameObject.Destroy(this.gameObject);
 }
Esempio n. 33
0
 public void Destroy(GameObject gameObject)
 {
     Objects.Remove(gameObject);
     gameObject.Destroy();
 }
Esempio n. 34
0
 void EnterGame()
 {
     GameObject.Destroy(gameObject);
     LuaMain.Main.EnterLuaGame();
 }
Esempio n. 35
0
 private static bool HarvestHarvestable(HarvestPlant ths, GameObject harvestable, Sim actor, BurglarSituation burglarSituation)
 {
     if (harvestable == null)
     {
         return false;
     }
     harvestable.SetOwnerLot(actor.LotHome);
     harvestable.UnParent();
     harvestable.RemoveFromWorld();
     bool flag = false;
     if (burglarSituation == null)
     {
         if (actor.Inventory.TryToAdd(harvestable, false))
         {
             flag = true;
         }
     }
     else
     {
         burglarSituation.StolenObjects.Add(harvestable);
         burglarSituation.CurrentValue += harvestable.Value;
         flag = true;
     }
     if (flag)
     {
         harvestable.AddFlags(GameObject.FlagField.WasHarvested);
         harvestable.RemoveComponent<HarvestableComponent>();
         ths.PostHarvestHarvestable(actor, harvestable);
         return flag;
     }
     harvestable.Destroy();
     return flag;
 }
Esempio n. 36
0
        public void SetupDropdown()
        {
            foreach (Transform child in itemParent)
            {
                GameObject.Destroy(child.gameObject);
            }

            for (int i = 0; i < dropdownItems.Count; ++i)
            {
                GameObject go = Instantiate(itemObject, new Vector3(0, 0, 0), Quaternion.identity) as GameObject;
                go.transform.SetParent(itemParent, false);

                setItemText      = go.GetComponentInChildren <TextMeshProUGUI>();
                textHelper       = dropdownItems[i].itemName;
                setItemText.text = textHelper;

                Toggle itemToggle;
                itemToggle = go.GetComponent <Toggle>();

                iHelper = i;

                itemToggle.onValueChanged.AddListener(UpdateToggle);

                if (dropdownItems[i].toggleEvents != null)
                {
                    itemToggle.onValueChanged.AddListener(dropdownItems[i].toggleEvents.Invoke);
                }

                if (saveSelected == true)
                {
                    if (invokeAtStart == true)
                    {
                        if (PlayerPrefs.GetInt(toggleTag + "Toggle") == 1)
                        {
                            dropdownItems[i].toggleEvents.Invoke(true);
                        }

                        else
                        {
                            dropdownItems[i].toggleEvents.Invoke(false);
                        }
                    }

                    else
                    {
                        itemToggle.onValueChanged.AddListener(SaveToggle);
                    }
                }

                else
                {
                    if (invokeAtStart == true)
                    {
                        if (dropdownItems[i].isOn == true)
                        {
                            dropdownItems[i].toggleEvents.Invoke(true);
                        }

                        else
                        {
                            dropdownItems[i].toggleEvents.Invoke(false);
                        }
                    }

                    else
                    {
                        if (dropdownItems[i].isOn == true)
                        {
                            itemToggle.isOn = true;
                        }
                        else
                        {
                            itemToggle.isOn = false;
                        }
                    }
                }

                if (invokeAtStart == true)
                {
                    if (dropdownItems[i].isOn == true)
                    {
                        dropdownItems[i].toggleEvents.Invoke(true);
                    }

                    else
                    {
                        dropdownItems[i].toggleEvents.Invoke(false);
                    }
                }
            }

            currentListParent = transform.parent;
        }