LoopListViewItem2 InitScrollView(LoopListView2 listView, int index)
    {
        // Debug.Log("InitScrollView index = "+ index);
        if (index < 0 || index >= TotalItemCount)
        {
            return(null);
        }

        RoundData itemData = GetItemDataByIndex(index);

        if (itemData == null)
        {
            return(null);
        }
        //get a new item. Every item can use a different prefab, the parameter of the NewListViewItem is the prefab’name.
        //And all the prefabs should be listed in ItemPrefabList in LoopListView2 Inspector Setting
        LoopListViewItem2 item = listView.NewListViewItem("RoundItem");
        //Debug.Log("item name = "+item.name);
        RoundItem itemScript = item.GetComponent <RoundItem>();

        if (item.IsInitHandlerCalled == false)
        {
            item.IsInitHandlerCalled = true;
            itemScript.Init();
        }
        itemScript.SetItemData(itemData, false, index);
        return(item);
    }
Exemple #2
0
    protected void vRoundList_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            RoundItem RoundItem = (RoundItem)e.Item.DataItem;

            //vRoundItem
            LinkButton vRoundItem = (LinkButton)e.Item.FindControl("vRoundItem");
            vRoundItem.CommandArgument = RoundItem.Name;
            vRoundItem.Text            = RoundItem.Name;
            vRoundItem.CssClass        = (RoundItem.Name == _CurrentOrderItem.OrderRound) ? "RoundItem Selected" : "RoundItem";
        }
    }
Exemple #3
0
        private bool CheckGrab()
        {
            var       room = GetComponent <RoomComponent>().Room;
            var       p    = Position + new Vector2(0, 10);
            var       min  = 12f;
            RoundItem item = null;

            grabbed = null;

            foreach (var i in room.Tagged[Tags.Item])
            {
                if (i is RoundItem r)
                {
                    var d = r.DistanceTo(p);

                    if (d < min)
                    {
                        min  = d;
                        item = r;
                    }
                }
            }

            if (item != null)
            {
                grabbed             = item;
                grabbed.Transparent = true;

                AnimationUtil.Poof(item.Center);
                AnimationUtil.Confetti(item.Center);
                Audio.PlaySfx("level_cleared");

                return(true);
            }

            Audio.PlaySfx("item_nocash");
            return(false);
        }
Exemple #4
0
    protected void vRoundList_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            RoundItem RoundItem = (RoundItem)e.Item.DataItem;

            //vStartTime
            Literal vStartTime = (Literal)e.Item.FindControl("vStartTime");
            vStartTime.Text = RoundItem.StartTime.ToString(@"hh\:mm");

            //vEndTime
            Literal vEndTime = (Literal)e.Item.FindControl("vEndTime");
            vEndTime.Text = RoundItem.EndTime.ToString(@"hh\:mm");

            //vLimitPairAmount
            Literal vLimitPairAmount = (Literal)e.Item.FindControl("vLimitPairAmount");
            vLimitPairAmount.Text = RoundItem.LimitPairAmount.ToString();

            //vDelete
            LinkButton vDelete = (LinkButton)e.Item.FindControl("vDelete");
            vDelete.OnClientClick   = "return confirm('你確定要刪除此場次?');";
            vDelete.CommandArgument = RoundItem.Id;
        }
    }
Exemple #5
0
        public void Grab(Action <bool, bool> a)
        {
            Audio.PlaySfx("level_claw_open");

            Tween.To(OpenAngle, angle, x => angle = x, 0.5f, Ease.Linear).OnEnd = () => {
                var t5 = Tween.To(0, z, x => z = x, 0.8f, Ease.Linear);

                t5.Delay   = 0.5f;
                t5.OnStart = () => {
                    Audio.PlaySfx("level_claw_move");
                };

                t5.OnEnd = () => {
                    var t1 = Tween.To(0, angle, x => angle = x, 0.5f, Ease.Linear);

                    t1.Delay   = 0.5f;
                    t1.OnStart = () => {
                        Audio.PlaySfx("level_claw_close");
                    };

                    t1.OnEnd = () => {
                        var good = CheckGrab();

                        var t2 = Tween.To(TopZ, z, x => z = x, 0.8f, Ease.Linear);

                        t2.Delay   = 0.5f;
                        t2.OnStart = () => {
                            Audio.PlaySfx("level_claw_move");
                        };

                        t2.OnEnd = () => {
                            Tween.To(start.Y, Y, x => Y = x, 1.2f, Ease.Linear);
                            var t6 = Tween.To(start.X, X, x => X = x, 1.2f, Ease.Linear);

                            t6.OnStart = () => {
                                Audio.PlaySfx("level_claw_start");
                            };

                            t6.OnEnd = () => {
                                Audio.PlaySfx("level_claw_stop");

                                if (good)
                                {
                                    var t3 = Tween.To(10, z, x => z = x, 0.8f, Ease.Linear);
                                    t3.Delay   = 0.5f;
                                    t3.OnStart = () => {
                                        Audio.PlaySfx("level_claw_move");
                                    };

                                    t3.OnEnd = () => {
                                        var t9 = Tween.To(OpenAngle, angle, x => angle = x, 0.5f, Ease.Linear);
                                        t9.Delay   = 0.5f;
                                        t9.OnStart = () => {
                                            Audio.PlaySfx("level_claw_open");
                                        };

                                        t9.OnEnd = () => {
                                            var mega = grabbed.Id == "bk:pass";

                                            if (grabbed is RandomItem r)
                                            {
                                                r.Prevent = true;
                                            }

                                            grabbed.Won         = true;
                                            grabbed.Transparent = false;
                                            grabbed             = null;

                                            var t7 = Tween.To(0, angle, x => angle = x, 0.5f, Ease.Linear);
                                            t7.Delay   = 0.5f;
                                            t7.OnStart = () => {
                                                Audio.PlaySfx("level_claw_close");
                                            };

                                            t7.OnEnd = () => {
                                                Audio.PlaySfx("level_claw_move");

                                                Tween.To(TopZ, z, x => z = x, 0.8f, Ease.Linear).OnEnd = () => {
                                                    Timer.Add(() => {
                                                        a(true, mega);
                                                    }, 0.5f);
                                                };
                                            };
                                        };
                                    };
                                }
                                else
                                {
                                    Timer.Add(() => {
                                        a(false, false);
                                    }, 0.5f);
                                }
                            };
                        };
                    };
                };
            };
        }
Exemple #6
0
    public void MainMenu()
    {
        indexRemove = new List <int>();
        CardData c = GameManager.Instance.mItemDataList[GameManager.Instance.mItemDataList.Count - 1];

        foreach (Toggle t in GetComponentsInChildren <Toggle>(true))
        {
            if (t.isOn)
            {
                RoundItem item = t.transform.parent.GetComponent <RoundItem>();
                foreach (RoundData d in c.rData)
                {
                    if (d.id == item.roundData.id)
                    {
                        Debug.Log((int)d.id);
                        if (t.transform.parent.gameObject.name.Contains("Clone"))
                        {
                            indexRemove.Add((int)d.id);
                        }
                    }
                }
            }
        }
        if (saveOnExit)
        {
            if (SaveGame.Load <List <CardData> > ("History") != null)
            {
                GameManager.Instance.history = SaveGame.Load <List <CardData> > ("History");
            }
            GameManager.Instance.history.Add(GameManager.Instance.mItemDataList[GameManager.Instance.mItemDataList.Count - 1]);
            Debug.Log(GameManager.Instance.history[GameManager.Instance.history.Count - 1].mDate);
            SaveGame.Save("History", GameManager.Instance.history);
        }


        //GameManager.Instance.mItemDataList = SaveGame.Load<List<CardData>> ( "mItemDataList" );
        if (GameManager.Instance.menuManager.previousState == UIManager.State.MainMenu)
        {
            //Ghilman
            // Debug.Log("this is the card data = "+currentCardData.rData.Count);
            if (isHistory)
            {
                if (!currentCardData.rData.Any(rountData => rountData.reCheck))
                {
                    Debug.Log("there is some thing to save");
                }
                else
                {
                    Debug.Log("no no no");
                }
            }
            //Ghilman
            GameManager.Instance.menuManager.PopMenu();
        }
        else
        {
            //Ghilman
            Screen.sleepTimeout = SleepTimeout.SystemSetting;
            //Ghilman
            foreach (Toggle t in GetComponentsInChildren <Toggle>(true))
            {
                if (t.isOn)
                {
                    RoundItem item = t.transform.parent.GetComponent <RoundItem>();
                    //if(item.mItemDataIndex == c.rD){
                    foreach (RoundData d in c.rData)
                    {
                        if (d.id == item.roundData.id)
                        {
                            Debug.Log((int)d.id);
                            d.reCheck = false;
                        }
                    }
                }
            }
            foreach (int cDD in indexRemove)
            {
                Debug.Log(cDD);
                for (int a = 0; a < c.rData.Count; a++)
                {
                    if (a == cDD)
                    {
                        c.rData[a].reCheck = false;
                    }
                    else
                    {
                        //c.rData[a].reCheck = true ;
                    }
                }
            }
            c.rData.RemoveAll(it => it.reCheck);
            if (indexRemove.Count > 0)
            {
                if (SaveGame.Load <List <CardData> > ("Favorites") != null)
                {
                    GameManager.Instance.favorite = SaveGame.Load <List <CardData> > ("Favorites");
                }
                GameManager.Instance.favorite.Add(GameManager.Instance.mItemDataList[GameManager.Instance.mItemDataList.Count - 1]);
                SaveGame.Save("Favorites", GameManager.Instance.favorite);
            }
            GameManager.Instance.mItemDataList.Clear();
            GameManager.Instance.menuManager.PopMenuToState(UIManager.State.MainMenu);
        }
        GameManager.Instance.GetComponent <AudioSource>().PlayOneShot(GameManager.Instance.click);
        GameManager.Instance.Scroll.transform.parent.GetChild(0).gameObject.SetActive(true);
    }