Пример #1
0
	public virtual void ChangeItemCount( AchGetItem _getItem)
	{
		if( _getItem.ItemID == ItemID)
			CommonCount = _getItem.ItemCount;
	}
Пример #2
0
	public void UpdateQuestItem()
	{
		foreach (ArkQuest quest in dicQuestContainQuestItem.Values)
		{
			QuestData questData = quest.GetQuestData();
			List<AchGetItem> listGetItem = questData.Achievement.GetQeustGetItemAchievenemts();

			foreach (AchGetItem getItem in listGetItem)
			{
				int orgItemCount = getItem.CommonCount;
				int nowItemCount = ItemMgr.HadItemManagement.Inven.GetItemTotalCount(getItem.ItemID);

				if (nowItemCount != orgItemCount)
				{
					AchGetItem item = new AchGetItem(getItem.ItemID, nowItemCount);
					QuestMessageBroadCaster.BrocastQuest(QuestMessages.QM_GET_ITEM_COUNT_CHANGE, item);
				}
			}
		}
	}
Пример #3
0
    public void AddMonInfoForTargetMarkAch(AchGetItem _achGetItem)
    {
        System.Type achType = _achGetItem.GetType();

        int questID = _achGetItem.AssignedQuestID;

        ArkQuest quest = GetQuest(questID);

        if (quest == null)
        {
            Debug.LogError("Get Quest is null = " + questID);
            return;
        }

        QuestData questData = quest.GetQuestData();

        if (questData == null)
        {
            Debug.LogError("Get QuestData is null = " + questID);
            return;
        }

        Item item = null;
        Item.eITEM_TYPE itemType = Item.eITEM_TYPE.None;
        int itemSubType = -1;


        // Item Drop Mon
        foreach (PrepareItemDropMonster itemDropMon in questData.Preparation.ItemDropMonsterList)
        {
            if (_achGetItem.ItemID == itemDropMon.ItemID)
                listMonInfoConnectionQuest.Add(new QuestTargetMarkInfo(itemDropMon.TargetMonsterID, itemDropMon.Champion));
        }

        // Item Drop Mon Kind
        foreach (PrepareItemDropMonsterKind itemDropMonKind in questData.Preparation.ItemDromMonsterKindList)
        {
            item = ItemMgr.ItemManagement.GetItem(itemDropMonKind.ItemID);

            itemType = item.ItemData.GetItemType();

            itemSubType = (int)item.ItemData.GetSubType();

            if (itemType == Item.eITEM_TYPE.UseItem && itemSubType == (int)Item.eUSE_ITEM.Random)
            {
                Tbl_Lottery_Record lotteryRecord = AsTableManager.Instance.GetTbl_Lottery_Record(item.ItemData.m_iItem_Rand_ID);

                if (lotteryRecord != null)
                {
                    foreach (int randomID in lotteryRecord.idlist)
                    {
                        Tbl_RandItem_Record recordRandom = AsTableManager.Instance.GetTbl_RandItem_Record(randomID);

                        if (recordRandom.idlist.Contains(_achGetItem.ItemID))
                        {
                            listMonInfoConnectionQuest.Add(new QuestTargetMarkInfo(itemDropMonKind.TargetMonsterKindID, itemDropMonKind.Champion));
                            break;
                        }
                    }
                }
            }

            if (_achGetItem.ItemID == itemDropMonKind.ItemID)
                listMonInfoConnectionQuest.Add(new QuestTargetMarkInfo(itemDropMonKind.TargetMonsterKindID, itemDropMonKind.Champion));
        }

        // get item from mon or get item from mon kind
        if (achType == typeof(AchGetItemFromMonster) || achType == typeof(AchGetItemFromMonsterKind))
            listMonInfoConnectionQuest.Add(new QuestTargetMarkInfo(_achGetItem.Target, _achGetItem.Champion));

        AsHUDController.Instance.panelManager.UpdateMonsterNamePanel();
    }
Пример #4
0
	public void GernerateQuestItemMsg(int _itemID, int _itemCount)
	{
		List<int> haveQuestItemList = ArkQuestmanager.instance.GetQuestItemList();

		if (haveQuestItemList.Contains(_itemID))
		{
			AchGetItem getItem = new AchGetItem(_itemID, _itemCount);
			QuestMessageBroadCaster.BrocastQuest(QuestMessages.QM_GET_ITEM, getItem);
			QuestMessageBroadCaster.BrocastQuest(QuestMessages.QM_GET_ITEM_FROM_MONSTER, getItem);
			QuestMessageBroadCaster.BrocastQuest(QuestMessages.QM_GET_ITEM_FROM_MONSTER_KIND, getItem);
			QuestMessageBroadCaster.BrocastQuest(QuestMessages.QM_QUEST_COLLECTION, getItem);
		}
	}