}
public void showErrorPanel()
{
errorObj.transform.FindChild("Label").GetComponent<UILabel>().text = "账户或者密码错误,登录失败!";
base.showErrorPanel(errorObj, PanelType.SCALE);
GameController.getInstance().addDelayCallFun(3.0f, closeErrorPanel);
}
【LoadingMediator】
public LoadingMediator()
: base(NAME)
{
addEventListener(SystemEventType.LOAD_START_UP, onStartUp);
addEventListener(SystemEventType.SCENE_LOAD_SUCESSFUL, onLoadAllComplete);
loadingPanelObj = GameObject.Find("LoadSceneDates");
}
private void onStartUp(PEvent pEvent)
{
LoaderData<WWW> data = (LoaderData<WWW>)pEvent.data;
Initialization();
Loader loader = new Loader();
loader.addEventListener(LoaderEventType.LOAD_PROGRESS, onLoadProgress);
loader.load(data);
}
//初始化load界面的UI
private void Initialization()
{
if (!loadingPanelObj.activeSelf)
{
loadingPanelObj.SetActive(true);
}
}
//显示资源下载进度条
private void onLoadProgress(PEvent obj)
{
loadingPanelObj.GetComponentInChildren<UISlider>().value = (float)obj.data;
Debug.Log("progress:" + float.Parse(obj.data.ToString()) * 100 + "%");
}
【Loader】
public void load(LoaderData<WWW> data, int version = 1)
{
if (isLoading)
{
Debug.LogWarning("资源正在加载中,不能进行加载操作。puremvc");
return;
}
this.data = data;
string url;
isLoading = true;
if (Application.platform == RuntimePlatform.WindowsWebPlayer)
{
url = ServerEventType.LOAD_RES_SERVERURL + "res/" + data.loadPath;
}
else
{
Caching.CleanCache();
url = ServerEventType.LOAD_RES_SERVERURL + "res/" + data.loadPath;
Debug.Log("xml path" + url);
}
= (url, version);
if ()
{
loadComplete();
}
else
GameController.getInstance().addInterval(loadProgress);
}
二 . Tnet轻型游戏开发框架图解分析
【具体Tnet框架理解,可自行运行example例子,服务端同步打断点研究】
[服务器也是C#写的,代码很清晰]

三 . 总结
个人结合两者暂实现登陆注册,框架流程基本走通。
图例:
1.启动服务器

2. 启动客户端

3.登陆失败

3.登录服务器验证
4.数据

5.注册信息
6.注册结果
7.注册信息写入
7.写入

四 . 完结
基本可以跑通框架的话,就可以慢慢开始开发和优化了。
[贵在设计,有错勿殴]
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-22631-2.html
向美国佬开火
只能用一次
#fx_4walls##f
发射DF21D和26