protected override LoopListViewItem2 OnGetItemByIndex(LoopListView2 listView, int index)
    {
        if (index < 0 || index >= DataManger.TotalItemCount)
        {
            return(null);
        }
        GridItemData itemData = DataManger.GetItemDataByIndex(index);

        if (itemData == null)
        {
            return(null);
        }
        LoopListViewItem2 item = listView.NewListViewItem(ItemName);

        for (int i = 0; i < row; i++)
        {
            int             itemIndex  = index * row + i;
            UIGameLevelItem itemScript = item.transform.GetChild(i).GetComponent <UIGameLevelItem>();
            if (itemIndex >= DataManger.TotalDataCount)
            {
                itemScript.gameObject.SetActive(false);
                continue;
            }
            else
            {
                itemScript.gameObject.SetActive(true);
            }
            itemScript.Init();
            m_TransferDataList[itemIndex].ActionOneIntCallBack = CallBack;
            m_TransferDataList[itemIndex].ObjArray             = new object[] { itemScript };
            itemScript.SetData(m_TransferDataList[itemIndex]);
        }
        return(item);
    }
 public void RemoveItemFromBackpack(GridItemData item)
 {
     if (Backpack.Contains(item))
     {
         Backpack.Remove(item);
     }
 }
    protected override LoopListViewItem2 OnGetItemByIndex(LoopListView2 listView, int index)
    {
        if (index < 0 || index >= DataManger.TotalItemCount)
        {
            return(null);
        }
        GridItemData itemData = DataManger.GetItemDataByIndex(index);

        if (itemData == null)
        {
            return(null);
        }
        LoopListViewItem2 item = listView.NewListViewItem(ItemName);

        EquipItem itemScript = item.GetComponent <EquipItem>();

        itemScript.Init();
        itemScript.SetData(index, UnityEngine.Random.Range(1, 6), SpriteArray[UnityEngine.Random.Range(0, SpriteArray.Length)].name, UnityEngine.Random.Range(0, 2) == 1,
                           UnityEngine.Random.Range(1, 1000), UnityEngine.Random.Range(1, 6));
        itemScript.GetComponent <Button>().onClick.RemoveAllListeners();
        itemScript.GetComponent <Button>().onClick.AddListener(delegate
        {
            Debug.Log(itemScript.Index);
        });

        return(item);
    }
Exemple #4
0
 public void SetItem(GameState gameState)
 {
     if (gridItemsDict.ContainsKey(gameState))
     {
         gridItemData = gridItemsDict[gameState];
         gridItemData.item.SetActive(true);
     }
 }
Exemple #5
0
    private void SaveInventoryData()
    {
        Character lootTarget = GameManager.Inst.PlayerControl.SelectedPC.MyAI.BlackBoard.InteractTarget;

        if (lootTarget == null)
        {
            return;
        }

        CharacterInventory  loot  = lootTarget.Inventory;
        List <GridItemData> datas = loot.Backpack;

        datas.Clear();

        foreach (GridItem item in BackpackGrid.Items)
        {
            GridItemData data = new GridItemData(item.Item, item.ColumnPos, item.RowPos, item.Orientation, item.GetQuantity());
            datas.Add(data);
        }

        //save body slot items
        loot.ArmorSlot   = null;
        loot.HeadSlot    = null;
        loot.RifleSlot   = null;
        loot.SideArmSlot = null;
        loot.ThrowSlot   = null;
        loot.ToolSlot    = null;

        if (TempSlots[0].Items.Count > 0)
        {
            loot.ArmorSlot = TempSlots[0].Items[0].Item;
        }

        if (TempSlots[1].Items.Count > 0)
        {
            loot.HeadSlot = TempSlots[1].Items[0].Item;
        }

        if (TempSlots[2].Items.Count > 0)
        {
            loot.RifleSlot = TempSlots[2].Items[0].Item;
        }

        if (TempSlots[3].Items.Count > 0)
        {
            loot.SideArmSlot = TempSlots[3].Items[0].Item;
        }

        if (TempSlots[4].Items.Count > 0)
        {
            loot.ThrowSlot = TempSlots[4].Items[0].Item;
        }

        if (TempSlots[5].Items.Count > 0)
        {
            loot.ToolSlot = TempSlots[5].Items[0].Item;
        }
    }
        public virtual object Apply(GridItemData data)
        {
            var model = data.Control.GetValue <GridControlDtgeValue>();

            dynamic config = new ExpandoObject();

            config.gridSize = data.Control.Area.Grid;

            return(CreateVm(model.Content, data.ContextItems, config));
        }
Exemple #7
0
    public void SaveInventoryData(HumanCharacter character)
    {
        List <GridItemData> datas = character.Inventory.Backpack;

        datas.Clear();

        foreach (GridItem item in BackpackGrid.Items)
        {
            GridItemData data = new GridItemData(item.Item, item.ColumnPos, item.RowPos, item.Orientation, item.GetQuantity());
            datas.Add(data);
        }
    }
 void DoRefreshDataSource()
 {
     m_ItemList.Clear();
     for (int i = 0; i < TotalDataCount; ++i)
     {
         GridItemData data = new GridItemData();
         data.Id       = i;
         data.Checked  = false;
         data.IsExpand = false;
         m_ItemList.Add(data);
     }
 }
    private void SaveInventoryData(Trader trader)
    {
        List <GridItemData> datas = trader.TraderInventory;

        datas.Clear();

        foreach (GridItem item in TraderItemGrid.Items)
        {
            GridItemData data = new GridItemData(item.Item, item.ColumnPos, item.RowPos, item.Orientation, item.GetQuantity());
            datas.Add(data);
        }
    }
Exemple #10
0
    void DoLoadMoreDataSource()
    {
        int count = m_ItemList.Count;

        for (int k = 0; k < m_LoadMoreCount; ++k)
        {
            int          i    = k + count;
            GridItemData data = new GridItemData();
            data.Id       = i;
            data.Checked  = false;
            data.IsExpand = false;
            m_ItemList.Add(data);
        }
    }
Exemple #11
0
 void DoRefreshDataSource()
 {
     mItemDataList.Clear();
     for (int i = 0; i < mTreeViewItemCount; ++i)
     {
         TreeItemData tData = new TreeItemData();
         tData.mName = "Item" + i;
         mItemDataList.Add(tData);
         //int childCount = mTreeViewChildItemCount;
         int childCount = mTreeViewChildItemCountList[i];
         for (int j = 1; j <= childCount; ++j)
         {
             GridItemData childItemData = new GridItemData();
             //childItemData.mName = "Item" + i + ":Child" + j;
             //childItemData.mDesc = "Item Desc For " + childItemData.mName;
             //childItemData.mStarCount = Random.Range(0, 6);
             //childItemData.mFileSize = Random.Range(20, 999);
             tData.AddChild(childItemData);
         }
     }
 }
Exemple #12
0
    private void SaveInventoryData()
    {
        GameObject target = GameManager.Inst.PlayerControl.SelectedPC.MyAI.BlackBoard.UseTarget;

        //Debug.Log("target is null? " + target == null);
        if (_currentChest == null)
        {
            return;
        }



        List <GridItemData> datas = _currentChest.Items;

        datas.Clear();

        foreach (GridItem item in ChestGrid.Items)
        {
            GridItemData data = new GridItemData(item.Item, item.ColumnPos, item.RowPos, item.Orientation, item.GetQuantity());
            datas.Add(data);
        }
    }
Exemple #13
0
    protected override LoopListViewItem2 OnGetItemByIndex(LoopListView2 listView, int index)
    {
        if (index < 0 || index >= DataManger.TotalItemCount)
        {
            return(null);
        }
        GridItemData itemData = DataManger.GetItemDataByIndex(index);

        if (itemData == null)
        {
            return(null);
        }
        LoopListViewItem2 item = listView.NewListViewItem(ItemName);

        for (int i = 0; i < row; i++)
        {
            int       itemIndex  = index * row + i;
            EquipItem itemScript = item.transform.GetChild(i).GetComponent <EquipItem>();
            if (itemIndex >= DataManger.TotalDataCount)
            {
                itemScript.gameObject.SetActive(false);
                continue;
            }
            else
            {
                itemScript.gameObject.SetActive(true);
            }
            itemScript.Init();
            itemScript.SetData(itemIndex, UnityEngine.Random.Range(1, 6), SpriteArray[UnityEngine.Random.Range(0, SpriteArray.Length)].name, UnityEngine.Random.Range(0, 2) == 1,
                               UnityEngine.Random.Range(1, 1000), UnityEngine.Random.Range(1, 6));
            itemScript.GetComponent <Button>().onClick.RemoveAllListeners();
            itemScript.GetComponent <Button>().onClick.AddListener(delegate
            {
                Debug.Log(itemScript.Index);
            });
        }
        return(item);
    }
Exemple #14
0
	public void OnTakeObjectFinish()
	{
		//if there's pickup item highlighted by the hand cursor, pick it up
		PickupItem pickup = MyAI.BlackBoard.PickupTarget;
		if(pickup != null)
		{
			int colPos;
			int rowPos;
			GridItemOrient orientation;
			/*
				if(this.Inventory.FitItemInBodySlot(pickup.Item))
				{
					GameObject.Destroy(MyAI.BlackBoard.PickupTarget.GetSparkleObject());
					GameObject.Destroy(MyAI.BlackBoard.PickupTarget.gameObject);
				}
				*/
			if(this.Inventory.FitItemInBackpack(pickup.Item, out colPos, out rowPos, out orientation))
			{
				Debug.Log("Found backpack fit " + colPos + ", " + rowPos + " orientation " + orientation);

				GridItemData itemData = new GridItemData(pickup.Item, colPos, rowPos, orientation, pickup.Quantity);
				this.Inventory.Backpack.Add(itemData);
				GameObject.Destroy(MyAI.BlackBoard.PickupTarget.GetSparkleObject());
				GameObject.Destroy(MyAI.BlackBoard.PickupTarget.gameObject);

			}
			else
			{
				Debug.Log("Wont fit");
				if(this.MyAI.ControlType == AIControlType.Player)
				{
					UIEventHandler.Instance.TriggerToggleInventory();
					GameManager.Inst.UIManager.WindowPanel.InventoryPanel.AddUnfitItem(pickup);
					GameObject.Destroy(MyAI.BlackBoard.PickupTarget.GetSparkleObject());
					GameObject.Destroy(MyAI.BlackBoard.PickupTarget.gameObject);
				}
			}

		}

		MyAI.BlackBoard.PickupTarget = null;

		//move weapon back to right hand mount
		if(this.MyReference.CurrentWeapon != null && MyAnimator.GetInteger("WeaponType") == (int)WeaponAnimType.Longgun)
		{
			Weapon myWeapon = this.MyReference.CurrentWeapon.GetComponent<Weapon>();
			myWeapon.transform.parent = MyReference.RightHandWeaponMount.transform;
			myWeapon.transform.localPosition = myWeapon.InHandPosition;
			myWeapon.transform.localEulerAngles = myWeapon.InHandAngles;
		}
	}
Exemple #15
0
 public void SetData(GridItemData data)
 {
     this.data = (FSData)data;
     Refresh();
 }
Exemple #16
0
    private void ExecuteItemScript(string [] tokens)
    {
        if (tokens[1] == "receive")
        {
            string itemID   = tokens[2];
            int    quantity = Convert.ToInt32(tokens[3]);


            int            colPos;
            int            rowPos;
            GridItemOrient orientation;
            Item           item       = GameManager.Inst.ItemManager.LoadItem(itemID);
            float          durability = item.MaxDurability;
            if (tokens.Length >= 5)
            {
                durability = item.MaxDurability * Convert.ToSingle(tokens[4]);
            }
            item.Durability = durability;

            HumanCharacter player = GameManager.Inst.PlayerControl.SelectedPC;
            if (player.Inventory.FitItemInBackpack(item, out colPos, out rowPos, out orientation))
            {
                Debug.Log("Found backpack fit " + colPos + ", " + rowPos + " orientation " + orientation);

                GridItemData itemData = new GridItemData(item, colPos, rowPos, orientation, quantity);
                player.Inventory.Backpack.Add(itemData);

                GameManager.Inst.PlayerControl.Party.RefreshAllMemberWeight();
            }
            else
            {
                var resource = Resources.Load(item.PrefabName + "Pickup");
                if (resource != null)
                {
                    GameObject pickup = GameObject.Instantiate(resource) as GameObject;
                    pickup.transform.position = player.transform.position + new Vector3(UnityEngine.Random.Range(-0.2f, 0.2f), 1f, UnityEngine.Random.Range(-0.2f, 0.2f));
                    Transform parent = GameManager.Inst.ItemManager.FindPickupItemParent(pickup.transform);
                    if (parent != null)
                    {
                        pickup.transform.parent = parent;
                    }
                    pickup.GetComponent <PickupItem>().Item     = item;
                    pickup.GetComponent <PickupItem>().Quantity = quantity;
                }
            }

            GameManager.Inst.UIManager.SetConsoleText("Received item: " + item.Name + " x " + quantity);
        }
        else if (tokens[1] == "lose")
        {
            string         itemID   = tokens[2];
            int            quantity = Convert.ToInt32(tokens[3]);
            HumanCharacter player   = GameManager.Inst.PlayerControl.SelectedPC;

            if (tokens.Length >= 5)
            {
                float desiredDurabilityPercent = Convert.ToSingle(tokens[4]) / 100f;
                //look for an item with durablity greater than desired
                List <GridItemData> items = player.Inventory.FindItemsInBackpack(itemID);
                foreach (GridItemData item in items)
                {
                    float durability = item.Item.Durability / item.Item.MaxDurability;
                    if (durability >= desiredDurabilityPercent)
                    {
                        player.Inventory.RemoveItemFromBackpack(item);
                    }
                }
            }
            else
            {
                player.Inventory.RemoveItemsFromBackpack(itemID, quantity);
                GameManager.Inst.UIManager.SetConsoleText("Lost item: " + GameManager.Inst.ItemManager.GetItemNameFromID(itemID) + " x " + quantity);
            }
        }
    }
Exemple #17
0
    private LoopListViewItem2 OnGetItemByIndex1(LoopListView2 listView, int index)
    {
        if (index < 0)
        {
            return(null);
        }

        /*to check the index'th item is a TreeItem or a TreeChildItem.for example,
         *
         * 0  TreeItem0
         * 1      TreeChildItem0_0
         * 2      TreeChildItem0_1
         * 3      TreeChildItem0_2
         * 4      TreeChildItem0_3
         * 5  TreeItem1
         * 6      TreeChildItem1_0
         * 7      TreeChildItem1_1
         * 8      TreeChildItem1_2
         * 9  TreeItem2
         * 10     TreeChildItem2_0
         * 11     TreeChildItem2_1
         * 12     TreeChildItem2_2
         *
         * the first column value is the param 'index', for example, if index is 1,
         * then we should return TreeChildItem0_0 to SuperScrollView, and if index is 5,
         * then we should return TreeItem1 to SuperScrollView
         */

        TreeViewItemCountData countData = TreeItemCountMgr.QueryTreeItemByTotalIndex(index);

        if (countData == null)
        {
            return(null);
        }
        int          treeItemIndex    = countData.mTreeItemIndex;
        TreeItemData treeViewItemData = TreeData.GetItemDataByIndex(treeItemIndex);

        if (countData.IsChild(index) == false)// if is a TreeItem
        {
            //get a new TreeItem
            LoopListViewItem2 item       = listView.NewListViewItem(ItemNameList[0]);
            TreeItem1         itemScript = item.GetComponent <TreeItem1>();
            if (item.IsInitHandlerCalled == false)
            {
                item.IsInitHandlerCalled = true;
                itemScript.Init();
                itemScript.SetClickCallBack(this.OnExpandClicked);
            }
            //update the TreeItem's content
            itemScript.mText.text = treeViewItemData.mName;
            itemScript.SetItemData(treeItemIndex, countData.mIsExpand);
            return(item);
        }
        else
        {
            int          childIndex = countData.GetChildIndex(index);
            GridItemData itemData   = treeViewItemData.GetChild(childIndex);
            if (itemData == null)
            {
                return(null);
            }
            LoopListViewItem2 item       = listView.NewListViewItem(ItemNameList[1]);
            TreeItem2         itemScript = item.GetComponent <TreeItem2>();
            if (item.IsInitHandlerCalled == false)
            {
                item.IsInitHandlerCalled = true;
                itemScript.Init();
            }
            return(item);
        }
    }
Exemple #18
0
 public void AddChild(GridItemData data)
 {
     mChildItemDataList.Add(data);
 }
Exemple #19
0
 // Use this for initialization
 public void Start()
 {
     inventory = (Inventory)Game.FSM.Top.GetStateComponent("Inventory");
     data      = GetComponent <GridItemData>();
 }
Exemple #20
0
	private void SaveInventoryData()
	{
		Character lootTarget = GameManager.Inst.PlayerControl.SelectedPC.MyAI.BlackBoard.InteractTarget;

		if(lootTarget == null)
		{
			return;
		}

		CharacterInventory loot = lootTarget.Inventory;
		List<GridItemData> datas = loot.Backpack;
		datas.Clear();

		foreach(GridItem item in BackpackGrid.Items)
		{
			GridItemData data = new GridItemData(item.Item, item.ColumnPos, item.RowPos, item.Orientation, item.GetQuantity());
			datas.Add(data);
		}

		//save body slot items
		loot.ArmorSlot = null;
		loot.HeadSlot = null;
		loot.RifleSlot = null;
		loot.SideArmSlot = null;
		loot.ThrowSlot = null;
		loot.ToolSlot = null;

		if(TempSlots[0].Items.Count > 0)
		{
			loot.ArmorSlot = TempSlots[0].Items[0].Item;
		}

		if(TempSlots[1].Items.Count > 0)
		{
			loot.HeadSlot = TempSlots[1].Items[0].Item;
		}

		if(TempSlots[2].Items.Count > 0)
		{
			loot.RifleSlot = TempSlots[2].Items[0].Item;
		}

		if(TempSlots[3].Items.Count > 0)
		{
			loot.SideArmSlot = TempSlots[3].Items[0].Item;
		}

		if(TempSlots[4].Items.Count > 0)
		{
			loot.ThrowSlot = TempSlots[4].Items[0].Item;
		}

		if(TempSlots[5].Items.Count > 0)
		{
			loot.ToolSlot = TempSlots[5].Items[0].Item;
		}



	}
Exemple #21
0
	private void SaveInventoryData(HumanCharacter character)
	{
		List<GridItemData> datas = character.Inventory.Backpack;
		datas.Clear();

		foreach(GridItem item in BackpackGrid.Items)
		{
			GridItemData data = new GridItemData(item.Item, item.ColumnPos, item.RowPos, item.Orientation, item.GetQuantity());
			datas.Add(data);
		}
	}
Exemple #22
0
    public override LoopListViewItem2 OnGetItemByIndex(LoopListView2 listView, int index)
    {
        if (index < 0)
        {
            return null;
        }

        /*to check the index'th item is a TreeItem or a TreeChildItem.for example,

         0  TreeItem0
         1      TreeChildItem0_0
         2      TreeChildItem0_1
         3      TreeChildItem0_2
         4      TreeChildItem0_3
         5  TreeItem1
         6      TreeChildItem1_0
         7      TreeChildItem1_1
         8      TreeChildItem1_2
         9  TreeItem2
         10     TreeChildItem2_0
         11     TreeChildItem2_1
         12     TreeChildItem2_2

         the first column value is the param 'index', for example, if index is 1,
         then we should return TreeChildItem0_0 to SuperScrollView, and if index is 5,
         then we should return TreeItem1 to SuperScrollView
        */
        TreeViewItemCountData countData = TreeItemCountMgr.QueryTreeItemByTotalIndex(index);
        if (countData == null)
        {
            return null;
        }
        int treeItemIndex = countData.mTreeItemIndex;
        TreeItemData treeViewItemData = TreeData.GetItemDataByIndex(treeItemIndex);
        if (countData.IsChild(index) == false)// if is a TreeItem
        {
            //get a new TreeItem
            LoopListViewItem2 item = listView.NewListViewItem(ItemNameList[0]);
            TreeItem1 itemScript = item.GetComponent<TreeItem1>();
            if (item.IsInitHandlerCalled == false)
            {
                item.IsInitHandlerCalled = true;
                itemScript.Init();
                itemScript.SetClickCallBack(this.OnExpandClicked);
            }
            itemScript.mText.text = treeViewItemData.mName;
            //Debug.Log(index);
            itemScript.mText.text = m_Achievement1List[treeItemIndex];
            itemScript.SetItemData(treeItemIndex, countData.mIsExpand);
            return item;
        }
        else
        {
            int childIndex = countData.GetChildIndex(index);
            GridItemData itemData = treeViewItemData.GetChild(childIndex);
            if (itemData == null)
            {
                return null;
            }
            LoopListViewItem2 item = listView.NewListViewItem(ItemNameList[1]);
            TreeItem2 itemScript = item.GetComponent<TreeItem2>();
            if (item.IsInitHandlerCalled == false)
            {
                item.IsInitHandlerCalled = true;
                itemScript.Init();
            }
            itemScript.BtnGet.onClick.AddListener(delegate 
            {
                Debug.Log("领取 "+itemScript.mNameText.text);
            });
            Vector3 v3 = itemScript.transform.localPosition;
            itemScript.transform.localPosition = new Vector3(v3.x + 50, v3.y, v3.z);
            itemScript.SetData(m_Achievement2List[treeItemIndex][childIndex]);
            return item;
        }
    }
Exemple #23
0
 public void SetItemData(GridItemData itemData, int itemIndex, int childIndex)
 {
     mItemDataIndex  = itemIndex;
     mChildDataIndex = childIndex;
 }