81 lines
2.4 KiB
C#
81 lines
2.4 KiB
C#
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
using System.Collections;
|
|
using Games.Item;
|
|
using GCGame;
|
|
using GCGame.Table;
|
|
using Games.ChatHistory;
|
|
|
|
public class ChatLinkEquip : ChatLinkItem
|
|
{
|
|
private ulong _ItemGuid;
|
|
private int _ItemDataID;
|
|
private int _Strength;
|
|
private int _IsRare;
|
|
private int _ExAttrCnt;
|
|
private ulong _SenderGuid;
|
|
|
|
public override void SetLinkItem(GameItem itemInfo)
|
|
{
|
|
string linkStr = "";
|
|
|
|
linkStr = "【" + itemInfo.GetEquipNameWithoutColor() + "】";
|
|
//linkStr = itemInfo.GetEquipNameWithoutColor();
|
|
|
|
_ItemGuid = itemInfo.Guid;
|
|
_ItemDataID = itemInfo.DataID;
|
|
|
|
int isRare = itemInfo.IsRare ? 1 : 0;
|
|
int isFrenzy = itemInfo.IsFrenzy ? 1 : 0;
|
|
|
|
StrInput = linkStr;
|
|
StrSend = StrSendStart + ((int)ChatLinkType.Equip).ToString() + StrSplit + _ItemGuid + StrSplit + _ItemDataID + StrSplit + itemInfo.StrengthLevel + StrSplit + isRare + StrSplit + itemInfo.ExAttrs.Count + StrSplit + isFrenzy + StrSendEnd;
|
|
}
|
|
|
|
public override void SetLinkBySendStr(Text text, ChatHistoryItem chatHistory, string linkStr, string[] linkParams)
|
|
{
|
|
StrSend = linkStr;
|
|
StrInput = linkStr;
|
|
|
|
if (linkParams.Length != 7)
|
|
return;
|
|
|
|
_ItemGuid = ulong.Parse(linkParams[1]);
|
|
_ItemDataID = int.Parse(linkParams[2]);
|
|
_Strength = int.Parse(linkParams[3]);
|
|
_IsRare = int.Parse(linkParams[4]);
|
|
_ExAttrCnt = int.Parse(linkParams[5]);
|
|
int frenzyParam = int.Parse(linkParams[6]);
|
|
bool _IsFrenzy = frenzyParam == 1 ? true : false;
|
|
_SenderGuid = chatHistory.SenderGuid;
|
|
|
|
GameItem equipItem = new GameItem();
|
|
equipItem.Guid = _ItemGuid;
|
|
equipItem.IsFrenzy = _IsFrenzy;
|
|
equipItem.DataID = _ItemDataID;
|
|
equipItem.StrengthLevel = _Strength;
|
|
equipItem.IsRare = _IsRare > 0;
|
|
equipItem.ExAttrs.Clear();
|
|
for (int i = 0; i < _ExAttrCnt; ++i)
|
|
{
|
|
equipItem.ExAttrs.Add(new EquipXilianAttr());
|
|
}
|
|
var dataTab = TableManager.GetCommonItemByID(_ItemDataID, 0);
|
|
if (dataTab != null)
|
|
{
|
|
string equipStr = equipItem.GetEquipName();
|
|
|
|
StrShow = equipItem.GetEquipNameInBrackets(_ShowBlackColor);
|
|
}
|
|
}
|
|
|
|
|
|
protected override void LinkClick(int linkindex)
|
|
{
|
|
ShowChatItemTooltips(_ItemGuid, _SenderGuid);
|
|
}
|
|
|
|
|
|
|
|
}
|