93 lines
2.4 KiB
C#
93 lines
2.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace MMO
|
|
{
|
|
public class MMOUIInviteVerify : MMOUIPop
|
|
{
|
|
public Action DelInvited;
|
|
|
|
[SerializeField] GameObject mGobVerify;
|
|
[SerializeField] GameObject mGobResult;
|
|
[SerializeField] GameObject mGobSuccess;
|
|
[SerializeField] GameObject mGobFail;
|
|
|
|
[SerializeField] InputField mIptCode;
|
|
[SerializeField] Button mBtnSubmit;
|
|
[SerializeField] Button mBtnOK;
|
|
|
|
private bool mIsSuccessful = false;
|
|
|
|
protected override void OnInit()
|
|
{
|
|
base.OnInit();
|
|
|
|
BindBtn(mBtnSubmit, OnClickSubmit);
|
|
BindBtn(mBtnOK, OnClickOK);
|
|
}
|
|
|
|
public override void OnOpen()
|
|
{
|
|
base.OnOpen();
|
|
|
|
ShowInfo(true);
|
|
}
|
|
|
|
private void ShowInfo(bool pIsVerify, bool pSuccess = false)
|
|
{
|
|
mGobVerify.SetActive(pIsVerify);
|
|
mGobResult.SetActive(!pIsVerify);
|
|
|
|
if (!pIsVerify)
|
|
{
|
|
mGobSuccess.SetActive(pSuccess);
|
|
mGobFail.SetActive(!pSuccess);
|
|
}
|
|
}
|
|
|
|
private void OnClickSubmit()
|
|
{
|
|
if (string.IsNullOrEmpty(mIptCode.text))
|
|
{
|
|
MMOModule.Instance.ShowTip("Code can't be empty!");
|
|
return;
|
|
}
|
|
|
|
MMOModule.Instance.UIMgr.OpenUI<MMOUIWaiting>();
|
|
MMOAPIRequestManager.Instance.SendRequest<MMORequestSetInvite, string>(new MMORequestSetInvite(mIptCode.text), OnSuccess, OnFail);
|
|
}
|
|
|
|
private void OnClickOK()
|
|
{
|
|
if (mIsSuccessful)
|
|
{
|
|
PopOut();
|
|
}
|
|
else
|
|
{
|
|
ShowInfo(true);
|
|
}
|
|
}
|
|
|
|
private void OnSuccess(string pStr)
|
|
{
|
|
MMOModule.Instance.UIMgr.CloseUI<MMOUIWaiting>();
|
|
MMOInnerSDKManager.Instance.LogInviteAction(MMOEventValue.Code_Enter);
|
|
|
|
mIsSuccessful = true;
|
|
ShowInfo(false, true);
|
|
MMOUserData.Instance.HasBeenInvited = true;
|
|
DelInvited?.Invoke();
|
|
}
|
|
|
|
private void OnFail(int pErrorCode)
|
|
{
|
|
MMOModule.Instance.UIMgr.CloseUI<MMOUIWaiting>();
|
|
|
|
mIsSuccessful = false;
|
|
ShowInfo(false, false);
|
|
}
|
|
}
|
|
} |