using MoleMole.Config; using UnityEngine; using UnityEngine.UI; using proto; namespace MoleMole { public class RemoteAvatarDetailPageContext : BasePageContext { public const string LV_UP_TAB = "LvUpTab"; public const string WEAPON_TAB = "WeaponTab"; public const string STIGMATA_TAB = "StigmataTab"; public const string SKILL_TAB = "SkillTab"; public readonly FriendDetailDataItem userData; private TabManager _tabManager; private int _showingSkillId; private bool _fromDialog; private Transform _dialogTrans; private MonoAvatarRotatePanel _avatarRotatePanel; private Transform _avatarModel; public RemoteAvatarDetailPageContext(FriendDetailDataItem userData, bool fromDialog = false, Transform dialogTrans = null) { config = new ContextPattern { contextName = "RemoteAvatarDetailPageContext", viewPrefabPath = "UI/Menus/Page/AvatarDetailPage" }; showSpaceShip = true; this.userData = userData; _tabManager = new TabManager(); _tabManager.onSetActive += OnTabSetActive; _fromDialog = fromDialog; _dialogTrans = dialogTrans; } public override bool OnNotify(Notify ntf) { if (ntf.type == NotifyTypes.SelectAvtarSkillIconChange) { return OnSelectedSkillChanged((int)ntf.body); } return false; } public override bool OnPacket(NetPacketV1 pkt) { switch (pkt.getCmdId()) { case 67: return OnAddFriendRsp(pkt.getData()); case 69: return OnDelFriendRsp(pkt.getData()); default: return false; } } protected override void BindViewCallbacks() { BindViewCallback(base.view.transform.Find("TabBtns/LvUpTabBtn").GetComponent