Files
JJBB/Assets/Project/Script/GUI/Chat/ChatLinkEquip.cs

81 lines
2.4 KiB
C#
Raw Permalink Normal View History

2024-08-23 15:49:34 +08:00
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);
}
}