⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 register.gml

📁 在线游戏最新服务器端源代码
💻 GML
字号:
<sys include=$.\style\mainstyle.gml>
#ifndef REGSTYLE
#define REGSTYLE
<style>
.注册文字:text{
	 font=黑体,9,18;color=#DFDFDF	
	 anti=1;
//	 bk=shadow(0,180,1,1,1);
}
.reg文字按钮:text{
	 font=黑体,12,20,800;color=#FFFFFF;anti=1;italic=1;iconsrc=8;
//	 OnCreate#icon={<MenuIcon>};
	 OnCreate#icon={<: picon=new MenuIcon{src="$[iconsrc]";}>};
	 OnMouseOver={<: bk=roundbar(#2689AF,11,#0066AF,-9,-1);bk#t=shadow(0,255,0,0,2,2)>};
	 OnmouseOut={<: bk=null;bk#t=null>};
}
.注册通讯:基本通讯{
	port=10020;
	OnConnected={<: eve=注册;>};
	on注册={<: ptextid.src="正在注册..";ptextid.show=1;send=#e,register,$[exdata];>};
}
.注册输入:wedit{
	font=Fixedsys,14;
	textcolor=#66FF99;
	bkcolor=#006633;
//	bk=shadow(0,160,0,0,3,3);
	size=160,16;maxnum=16;
	OnEnter={<: eve=Write;pid.eve=开始注册>};
	OnDestroy={<: eve=Write>};
	selno=0;
}
.reg用户名输入:注册输入{
	src="";
	ctrl=timer(100,active);
	Ondef={<: src=regtest$[(rand(1000))]>};
}
.EMail输入:注册输入{
//	src="internet@371.net";
	maxnum=50;
	Ondef={<: src="internet@371.net">};
}
.reg用户密码输入:注册输入{
	password=1;
	Ondef={<: src="1234">};
//	src="aaa";
//	OnCreate={<: src=*regstr(loginpass,"");>};
}
.出生日期输入:注册输入{
	src=1981-08-20;
}
.提示文字:text{
 color=#009C8C;
}
.注册页:div{
	name=注册;
	size=460,400;//class=dragclass;
	class=centerclass;
	path=stepin(-800,0,3);bk=round4_3(#006969,16,#205353);
	bk#line1=round(#002323,16,1,2,2);
	m_socketid=0;
	OnClose={<: ctrl=null;ifobj(m_socketid)={m_socketid.del=1;m_socketid=0};
		path=stepto(0,-600,5);Onpathend={<: del=1;>}>};
	onCreate={<face标题文字 pos=EDIT#189,7;src=新用户注册;>
		  <注册文字 pos=EDIT#69,42;src=用户名;>
		  <注册文字 pos=EDIT#31,70;src=E-Mail地址;>
		  <注册文字 pos=EDIT#84,98;src=密码;>
		  <注册文字 pos=EDIT#49,126;src=密码确认;>
		  <注册文字 pos=EDIT#47,156;src=出生日期;>
		  <注册文字 pos=EDIT#58,207;src=肖像;>
		  <注册文字 pos=EDIT#58,238;src=性别;>
		  <注册文字 pos=EDIT#56,267;src=省份;>
//		  <注册文字 pos=EDIT#80,143;src=真实姓名;>
		  <注册文字 pos=EDIT#229,211;src=教育程度;>
		  <注册文字 pos=EDIT#265,241;src=行业;>
		  <注册文字 pos=EDIT#264,269;src=职位;>
		  <注册文字 pos=EDIT#248,299;src=月收入;>
		  <注册文字 pos=EDIT#19,298;src=婚姻状况;>
		  <提示文字 pos=EDIT#302,41;srcex=3-16个字符\r\n  不允许出现特殊符号;>
		  <提示文字 pos=EDIT#302,75;srcex=合法的Email信箱\r\n  如:internet@371.net;>
		  <提示文字 pos=EDIT#304,106;srcex=3-16个字符>
		  <提示文字 pos=EDIT#302,133;srcex=两个密码输入要一致>
		  <提示文字 pos=EDIT#303,162;srcex=合法的日期\r\n  如:1981-08-20>

		  <reg文字按钮 pos=EDIT#288,362;src=注册;onclick={<: pid.eve=开始注册>};>;
		  <reg文字按钮 pos=EDIT#382,362;src=返回;iconsrc=q;onclick={<: pid.eve=close>};>
		  <:  m_nameid=new reg用户名输入{pos=EDIT#130,43;dbname=username;writekind=input;errptstr="用户名"};
		      m_psexid=new 性别输入{pos=EDIT#101,239;dbname=sex;writekind=no;errptstr="性别";fixw=60;
			OnClick={<: plist=new selectList{size=25,40;item=男,女}>};
		      };
		      m_emailid=new EMail输入{pos=EDIT#130,73;dbname=email;writekind=email;errptstr="Email";};
		      m_pass1id=new reg用户密码输入{pos=EDIT#130,100;dbname=pass;writekind=input;errptstr="密码";
			  };
		      m_pass2id=new reg用户密码输入{pos=EDIT#130,127;}
		      m_出生=new 出生日期输入{pos=EDIT#131,158;dbname=birthday;writekind=date;errptstr="出生日期";};

		      m_肖像=new icon输入{pos=EDIT#116,222;dbname=icon;writekind=肖像no;errptstr="肖像";};

		      m_psid=new select输入{pos=EDIT#100,270;dbname=state;writekind=txt;errptstr="省份";fixw=60;
			OnClick={<: plist=new selectList{size=260,100;item=安徽,北京,重庆,福建,甘肃,广东,广西,贵州,海南,河北,黑龙江,河南,湖北,湖南,内蒙古,江苏,江西,吉林,辽宁,宁夏,青海,山西,陕西,山东,上海,四川,天津,西藏,新疆,云南,浙江,其他}>};
		      };
//		      m_truenameid=new reg用户名输入{pos=EDIT#170,147;};
		      m_edid=new select输入{pos=EDIT#314,214;dbname=education;writekind=txt;errptstr="教育程度";
			OnClick={<: plist=new selectList{size=125,120;item=小学,初中,高中,中专,专科,大学,研究生,博士,博士以上,其他}>};
		      };
		      m_wordid=new select输入{pos=EDIT#313,243;dbname=career;writekind=txt;errptstr="行业";
			OnClick={<: plist=new selectList{size=132,120;item=机关,商业,农业,渔业,林业,畜牧业,科研,教育,交通,文化,娱乐,体育,健康,医疗,矿业,制造业,学生,自由,其他}>};
		      };
		      m_wid=new select输入{pos=EDIT#313,272;dbname=job;writekind=txt;errptstr="职位";
			OnClick={<: plist=new selectList{size=125,80;item=总经理,董事长,经理,主管,工程师,职员,退休,学生,其他}>};
		      };
		      m_收入id=new select输入{pos=EDIT#313,301;dbname=salary;writekind=txt;errptstr="月收入";
			OnClick={<: plist=new selectList{size=90,130;ypos=ypos-100;item=1000以下,1000-2000元,2000-3000元,3000-5000元,5000-7000元,7000-9000元,9000-10000元,10000元以上}>};
		      };
		      m_婚id=new select输入{pos=EDIT#101,299;dbname=marriage;writekind=no;errptstr="婚姻状况";fixw=60;
		        OnClick={<: plist=new selectList{size=40,40;item=已婚,未婚}>};
			}
		   >
	}
	Ondef={<: enumsub={<: eve=def>};}

	OnDestroy={<: ifobj(m_socketid)={m_socketid.del=1;m_socketid=0;}>};
	效验ok=0;alltxt="";errstr=ok;

	On效验={<: alltxt=$[m_nameid.src],$[m_pass1id.src];
		switch(m_pass1id.src){
		 case $[m_pass2id.src]:
			效验ok=1;errstr=ok;
		  break;
		 default:
			效验ok=0;errstr="密码输入不一致";
		  break;
		}
		enumsub={<: switch(writekind){
			case email:
				if=(pid.效验ok && veremail<1)?{pid.效验ok=0;pid.errstr="Email输入错误";};
				pid.alltxt[-1]=*dbname;
				pid.alltxt[-1]=*src;
				break;
			case date:
				if=(pid.效验ok && verdate<1)?{pid.效验ok=0;pid.errstr="日期输入错误";};
				pid.alltxt[-1]=*dbname;
				pid.alltxt[-1]=*src;
				break;
			case input:
				if=(pid.效验ok && verstr(3)<1)?{pid.效验ok=0;pid.errstr=*errptstr;pid.errstr[-1]="输入错误";};
				pid.alltxt[-1]=*dbname;
				pid.alltxt[-1]=*src;
				break;
			case txt:
				if=(pid.效验ok && selno<0)?{pid.效验ok=0;pid.errstr=*errptstr;pid.errstr[-1]="没有选择";};
				pid.alltxt[-1]=*dbname;
				pid.alltxt[-1]=*src;
				break;
			case no:
				if=(pid.效验ok && selno<0)?{pid.效验ok=0;pid.errstr=*errptstr;pid.errstr[-1]="没有选择";};
				pid.alltxt[-1]=*dbname;
				pid.alltxt[-1]=*selno;
				break;
			case 肖像no:
	//			if=(pid.效验ok && selno<0)?{pid.效验ok=0;pid.errstr=*errptstr;pid.errstr[-1]="没有选择";};
				pid.alltxt[-1]=*dbname;
				if=(pid.m_psexid.selno)?{tmpno=(1000+selno);pid.alltxt[-1]=*tmpno;}:{pid.alltxt[-1]=*selno;};
				break;
			}>
		}
		>};
	On开始注册={<: eve=效验;if=(效验ok)?{eve=begin注册}:{eve=效验失败,(errstr);};>};
	//	exdata="email,$[m_emailid.src],birthday,$[m_出生.src],icon,$[m_肖像.selno],sex,$[m_psexid.selno],state,$[m_psid.src],education,$[m_edid.src],career,$[m_wordid.src],job,$[m_wid.src],salary,$[m_收入id.src],marriage,$[m_婚id.selno]";};
	on效验失败={<: ctrl=null;><sysdlg src=效验失败:$[ep0];pid=desktop;ctrl=timer(3000,del);
		OnLButtonDownBefore={<: del=1>};mousemsg=1;ptmsg="close"></sysdlg>};
	Onbegin注册={<: ifobj(m_socketid)={m_socketid.del=1;m_socketid=0};?*alltxt;
		m_socketid=new 注册通讯{username=$[m_nameid.src];userpass=$[m_pass1id.src];exdata="$[alltxt]";}
			ctrl=timer(10000,注册失败,注册失败:服务器超时);
			show=0;>};
	on注册成功={<: ctrl=null;regstr(loginname)=$[ep0];regstr(loginpass)=$[ep1];>
		<:desktop eve=注册成功>
	};
	on注册失败={<: ctrl=null;ifobj(m_socketid)={m_socketid.del=1;m_socketid=0}><sysdlg src=$[ep0];pid=desktop;onclick={<:$[id] show=1>}></sysdlg>
	};
}
.selectListText:text{
 autopos=1;bk#4=shadow(#002323,255,0,0,2);
 color=#FFFFFF;no=0;
 Onclick={<: pid.eve=Settext,$[src],$[no]>};
 OnMouseOver={<: color=0;bk=roundbar(#99FCDC,4,#006633,-3,-1);>};
 OnmouseOut={<: color=#FFFFFF;bk=null;>};
}
.selectList:div{
 size=220,130;
 pos=pid.xpos+10,pid.ypos+pid.height;
 ptext=*pid;
 pid=*pid.pid;zorder=top;
 bkimg=round4_3(#0ABDAF,5,20,-2,-5);
 Oncreate#2={<: autosubpos=vertmax(4,1,height-12,42,0);>};
 Oncreate={<: itemnum=0;while(itemnum<item[]){
	 pt=new selectListText;
	 pt.src=*item[itemnum];
	 pt.no=*itemnum;
	 itemnum=(itemnum+1);
	};
	paramctrl=timer(100,RegMouse);>};
 OnRegMouse={<: mousemsg=1;>};
 OnLButtonDownEnd={<: if=(1-ifmouseover)?{mousemsg=0;del=1}>};
 OnSettext={<: ptext.src=$[ep0];ptext.selno=$[ep1];del=1>}
}
.select输入:text{
 //font=Fixedsys,14;
 color=#064F29;
 bk=roundbar(#739986,3,#638976,-2,-1);
 selno=-1;
 src="请选择..."
 fixw=120;
 ifchg(src)={<: width=fixw>};
 Oncreate={<: width=fixw;>};
 OnMouseOver={<: bk=roundbar(#ACECCF,3,#638976,-2,-1);>};
 OnmouseOut={<: bk=roundbar(#739986,3,#638976,-2,-1);>};
 Ondef={<: src="默认";selno=0>};
}
.manicon:human{
 zorder=auto;
 iconnum=0;//bk=color(0);
 framemap=1,0,3,2,4,5;
 loadingtxt="正在\r\n下载";
 imgname=man,wman;
 sexno=0;
 OnSetSrc={<: mutisrc=walk('$.\..\imgs\manmode\$[manimgname]\man.gif#mask,2,4,32,32,$[px],$[py],16,26',4)>};
 OnSeticon={<: selno=*ep;iconnum=*ep;manimgname=*imgname[sexno];px=((iconnum%16)*64);py=((iconnum/16)*128);eve=SetSrc;>}

 OnCreate={<: eve=Seticon,0>};
}
.icon输入:manicon{
 forwordto=0,100;
 bk=roundhalf(#FFFFCC,3,#006666,-2,-2);
 ctrl=loop(anisteps,0,1,1,80);
 selno=0;
 OnClick={<maniconList sexno=$[sexno]>};
 OnSexchg={<: sexno=$[ep0];manimgname=*imgname[sexno];eve=Seticon,0;>};
}
.性别输入:select输入{
 selno=0;
 src="男";
 ifchged(selno)={<: pid.m_肖像.eve=sexchg,$[selno]>};
}
.maniconitem:manicon{
 autopos=1;
 forwordto=0,100;
 Onclick={<: pid.eve=Seticon,$[selno]>};
 OnMouseOver={<: bk=roundbar(#99DCAC,3,#006666,-3,-3);ctrl=loop(anisteps,0,1,1,180);>};
 OnmouseOut={<: bk=null;ctrl=null>};
}
.maniconList:div{
 size=370,204;
 pos=pid.xpos-40,pid.ypos+pid.height-70;
 pfobj=*pid;
 pid=*pid.pid;zorder=top;
 bkimg=roundbar(#5A9D8F,9,20,-2,-5);
 sexno=0;
 Oncreate#2={<: autosubpos=vertmax(4,1,height-12,33,1);>};
 Oncreate={<: itemnum=0;while(itemnum<64){
	 pt=new maniconitem{sexno=$[sexno]};
	 pt.eve=Seticon,(itemnum);
	 itemnum=(itemnum+1);
	};
	paramctrl=timer(100,RegMouse);>};
 OnRegMouse={<: mousemsg=1;>};
 OnLButtonDownEnd={<: if=(1-ifmouseover)?{mousemsg=0;del=1}>};
 OnSeticon={<: pfobj.eve=seticon,$[ep0];del=1>}
}
</style>
#endif
#ifdef MAINGML
	<img src=$.\images\indexbk.jpg;ctrl=loopt(1,alpha,0,255,8,20);
	 OnExit={<:desktop eve=exit>};
	 OnOut={<: ctrl=loopt(1,alpha,255,0,8,20,exit);>}>
	<img src=$.\images\kele8icon.jpg#autoalpha,2,1;ctrl=loopt(1,alpha,0,255,8,20);pos=EDIT#36,78;
	 OnOut={<: ctrl=loopt(1,alpha,255,0,8,20,exit);>}>
<注册页></注册页>
<:desktop on注册成功={<: exec=$.\root.gml;>}
	bkimg=color(0);
>
//<manicon name=mainman;pos=120,100;ctrl=loopcmd(-1,10,200,{<: eve=Seticon,$[(rand(64))]>});>
//<:desktop OnClick={<:mainman walk=gotopos($[mousexpos],$[mouseypos],51,15)>}>
#else
<注册页 eve=size;OnClose#2={<: &desktop.retdiv.eve=in>}></注册页>
#endif
<sys sethotkey=ctrl_z,{<Pttext src=默认注册><:注册 eve=def>}>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -