/// 邀请好友加入该游戏 public void sendInviteJoin(SdkFriendsInfo finfo, CallBack uiback) { if (InviteNum >= MAXINVITENUM) { ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_get_error3")); return; } SdkFriendFPort fport = FPortManager.Instance.getFPort("SdkFriendFPort") as SdkFriendFPort; fport.sendInviteMsg(finfo.SdkUid, t => { sendIviteMsgProcess(t, finfo, uiback); }); string invitereson = "Invite you!"; if (ServerManagerment.Instance.lastServer == null || UserManager.Instance.self == null) { invitereson = LanguageConfigManager.Instance.getLanguage("sdk_invite_suc"); } else { invitereson = LanguageConfigManager.Instance.getLanguage("sdk_invite_suc", ServerManagerment.Instance.lastServer.name, StringKit.serverIdToFrontId(UserManager.Instance.self.uid)); } }
/// 赠送按钮 点击触发 uiback更新 public void sendPower(SdkFriendsInfo finfo, CallBack uiback) { SdkFriendFPort fport = FPortManager.Instance.getFPort("SdkFriendFPort") as SdkFriendFPort; if (finfo == null || (finfo != null && string.IsNullOrEmpty(finfo.Uid))) { MaskWindow.UnlockUI(); return; } fport.sendsdkFriendsMsg(finfo.Uid, t => { if (t == "ok") { finfo.SendFlags = 1; if (uiback != null) { uiback(); } ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_send_suc")); } else { ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_send_fail")); } }); }
// 解析邀请信息返回 public void sendIviteMsgProcess(string msg, SdkFriendsInfo finfo, CallBack uiback) { if (msg == "ok") { InviteNum++; finfo.IsInviate = false; if (uiback != null) { uiback(); } addAward(); } else { ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_invite_fail")); } }
/// 领取按钮点击触发 行动力成功时uiback更新 public void sendgetPower(SdkFriendsInfo finfo, CallBack uiback) { if (GetNum < MAXGETNUM) { if (UserManager.Instance.self.getPvEPointMax() < (UserManager.Instance.self.getPvEPoint() + 2)) { ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_get_error1")); return; } } else { ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_get_error2")); return; } SdkFriendFPort fport = FPortManager.Instance.getFPort("SdkFriendFPort") as SdkFriendFPort; fport.getsdkFriendsMsg(finfo.Uid, t => { if (t == "ok") { GetNum++; showGetNum--; showGetNum = showGetNum < 0? 0:showGetNum; ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_get_suc")); UserManager.Instance.self.addPvEPoint(2); if (uiback != null) { uiback(); } } else { ShowMsg(LanguageConfigManager.Instance.getLanguage("sdk_get_fail")); } }); }
void setButtonShow(int flags, SdkFriendsInfo info, WindowBase fatherwindow) { switch (flags) { case 0: giftbutton.gameObject.SetActive(false); getButton.gameObject.SetActive(false); inviteButton.gameObject.SetActive(false); break; case 1: giftbutton.gameObject.SetActive(false); getButton.gameObject.SetActive(false); inviteButton.gameObject.SetActive(true); if (info.IsInviate) { inviteButton.disableButton(false); inviteLabel.text = LanguageConfigManager.Instance.getLanguage("sdk_friend_invite"); } else { inviteButton.disableButton(true); inviteLabel.text = LanguageConfigManager.Instance.getLanguage("sdk_friended_invite"); } inviteButton.initButton(this, 1, fatherwindow); inviteButton.fatherWindow = fatherwindow; break; case 2: giftbutton.gameObject.SetActive(false); getButton.gameObject.SetActive(false); inviteButton.gameObject.SetActive(false); break; case 3: giftbutton.gameObject.SetActive(true); getButton.gameObject.SetActive(true); if (info.SendFlags == 1) { giftbutton.disableButton(true); sendLabel.text = LanguageConfigManager.Instance.getLanguage("sdk_friended_gift"); } else if (info.SendFlags == 2) { giftbutton.disableButton(false); sendLabel.text = LanguageConfigManager.Instance.getLanguage("sdk_friend_gift"); } if (info.GetInfo == 3) { getButton.disableButton(true); getLabel.text = LanguageConfigManager.Instance.getLanguage("sdk_friended_get"); } else if (info.GetInfo == 1) { getButton.disableButton(false); getLabel.text = LanguageConfigManager.Instance.getLanguage("sdk_friend_get"); } else { getButton.gameObject.SetActive(false); } giftbutton.initButton(this, 2, fatherwindow); getButton.initButton(this, 3, fatherwindow); inviteButton.gameObject.SetActive(false); break; } }
public void initItem(SdkFriendsInfo info, WindowBase fatherwindow) { this.sdkfriendsInfo = info; this.fatherWindow = fatherwindow; string nameinfo = info.Name; if (sdkfriendsInfo.ServerFlag == 1 || sdkfriendsInfo.ServerFlag == 0) { if (info.HeadIcon != null && info.HeadIcon.Length > 7) { ResourcesManager.Instance.LoadAssetBundleTexture(info.HeadIcon, iconHead); } spriteSex.gameObject.SetActive(true); spriteSex.spriteName = info.Sex; labelName.text = nameinfo; if (info.MomoLevel > 0) { sdkLevel.text = "VIP"; } else { sdkLevel.text = LanguageConfigManager.Instance.getLanguage("s0073"); } serverLevel.gameObject.SetActive(false); setButtonShow(sdkfriendsInfo.ServerFlag, info, fatherWindow); } else if (sdkfriendsInfo.ServerFlag == 2) { serverLevel.gameObject.SetActive(true); serverLevel.depth = 100; if (info.HeadIcon != null && info.HeadIcon.Length > 7) { ResourcesManager.Instance.LoadAssetBundleTexture(info.HeadIcon, iconHead); } serverLevel.text = LanguageConfigManager.Instance.getLanguage("sdk_friend_difs"); labelName.text = nameinfo; spriteSex.spriteName = info.Sex.ToString(); if (info.VipLevel > 0) { spriteVip.gameObject.SetActive(true); spriteVip.spriteName = "vip" + info.VipLevel; } else { spriteVip.gameObject.SetActive(false); } setButtonShow(2, info, fatherWindow); } else if (sdkfriendsInfo.ServerFlag == 3) { serverLevel.gameObject.SetActive(true); serverLevel.depth = 100; if (info.HeadIcon != null && info.HeadIcon.Length > 7) { ResourcesManager.Instance.LoadAssetBundleTexture(info.HeadIcon, iconHead); } serverLevel.text = LanguageConfigManager.Instance.getLanguage("sdk_friend_sames"); labelName.text = nameinfo; spriteSex.spriteName = info.Sex.ToString(); if (info.VipLevel > 0) { spriteVip.gameObject.SetActive(true); spriteVip.spriteName = "vip" + info.VipLevel; } else { spriteVip.gameObject.SetActive(false); } changeNum.gameObject.SetActive(true); changeNum.text = LanguageConfigManager.Instance.getLanguage("sdk_friend_changenum", info.ChangeNum.ToString()); setButtonShow(3, info, fatherWindow); } }
/// 解析skdfriendinfos的服務器返回消息 private SdkFriendsInfo[] createsdkFriends(ErlArray msg) { bool isinviate, issend, isget; if (msg.Value.Length < 1) { return(sdkFriendsInfos); } ErlArray friendsInfo; SdkFriendsInfo sdkFriendInfo; MAXGETNUM = StringKit.toInt(msg.Value [0].getValueString()); MAXINVITENUM = StringKit.toInt(msg.Value [1].getValueString()); ErlArray sdksids = msg.Value [2] as ErlArray; string[] sdkuids = new string[sdksids.Value.Length]; for (int i = 0; i < sdkuids.Length; i++) { sdkuids[i] = sdksids.Value[i].getValueString(); } InviteNum = sdkuids.Length; GetNum = 0; showGetNum = 0; List <SdkFriendsInfo> infoslist = new List <SdkFriendsInfo>(); foreach (SdkFriendsInfo info in sdkFriendsInfos) { infoslist.Add(info); } foreach (string id in sdkuids) { SdkFriendsInfo info = getSDKUidPlayerInfos(id, infoslist); if (info != null) { info.IsInviate = false; } } ErlArray msgs = msg.Value [3] as ErlArray; for (int i = 0; i < msgs.Value.Length; i++) { friendsInfo = msgs.Value[i] as ErlArray; sdkFriendInfo = getSDKUidPlayerInfos(friendsInfo.Value[0].getValueString(), infoslist); if (sdkFriendInfo == null) { continue; } sdkFriendInfo.Uid = friendsInfo.Value[1].getValueString(); if (sdkFriendInfo.Uid == "0" || string.IsNullOrEmpty(sdkFriendInfo.Uid)) { infoslist.Remove(sdkFriendInfo); continue; } sdkFriendInfo.VipLevel = StringKit.toInt(friendsInfo.Value[2].getValueString()); sdkFriendInfo.ChangeNum = StringKit.toInt(friendsInfo.Value[3].getValueString()); sdkFriendInfo.ServerFlag = StringKit.toInt(friendsInfo.Value[4].getValueString()) == 2 ? 3:2; sdkFriendInfo.SendFlags = StringKit.toInt(friendsInfo.Value[5].getValueString()); sdkFriendInfo.GetInfo = StringKit.toInt(friendsInfo.Value[6].getValueString()); if (sdkFriendInfo.GetInfo == 3) { GetNum++; } else if (sdkFriendInfo.GetInfo == 1) { showGetNum++; } } if (UiManager.Instance.getWindow <LoginWindow>() == null) { MaskWindow.UnlockUI(); } sdkFriendsInfos = infoslist.ToArray(); return(sdkFriendsInfos); }