📄 defuser.gml
字号:
#define G <:%1 eve=go,%2,%3>
#define R <:%1 eve=runto,%2,%3>
#define usermodetypeGIF
#ifdef usermodetypeGIF
#define usermodedirection 4
#else
#define usermodedirection 12
#endif
<style>
.showtext:text{
showstyle=3;
color=white;
pos=0,5;
align=center;
zorder=1;
clip=0;
}
.UserMan:human{
puser=*pid;
pid.pman=*id;
pid=*pid.pid.pid.pid.map;
anishow=1;
autozorder=1;
modeid=1;mansex=1;manpath=man;
OnCreate={<: modeid=*puser.img;mansex=*puser.img2;
if=(modeid>=1000)?{modeid=(modeid-1000);manpath=wman;};
eve=modechg;
>
<showtext pid=$[id];pos=6,-55;src=$[man]>
<showtext pid.pmode=*id;pos=20,-35;src="";align=left;>
};
OnGo={<: walk=gotopos($[ep],100,12,20)>};
OnRun={<: walk=gotopos($[ep],200,20,20);>};
OnMode={<: mode=$[ep];switch(mode){
case -1:pmode.src="";break;
case 0:pmode.src="旁观";break;
default:pmode.src=第$[ep]台;break;
}>};
Onmodechg={<:
#ifdef usermodetypeGIF
dx=(($[modeid]%16)*64);
dy=(($[modeid]/16)*128);
eve=chgmodenow;
#else
mutisrc=walk('$.\..\imgs\manmode\$[manpath]\man$[modeid].ale',#(usermodedirection));
#endif
>
};
Onchgmodenow={<:
framemap=1,0,3,2,4,5;
mutisrc=walk('$.\..\imgs\manmode\$[manpath]\man.gif#mask,2,4,32,32,$[dx],$[dy],16,32',#(usermodedirection));
>};
}
.UserManM:UserMan{
pid.viewfollow=*id;
bkimg=shadow(#AAEEAA,250,0,0,3,2);
OnGo#m={<: pid.viewfollow=*id>};
OnRun#m={<: pid.viewfollow=*id>};
OnWalkend#s={<: puser.eve=posed,$[pos];>};
Onchgmode={<: modeid=$[ep0];eve=modechg;neteventtos=chgmode,$[ep0];>};
Ontestmode={<: modeid=$[ep0];eve=modechg;>};
}
.user_n{
ifchged(mode)={<: pman.eve=mode,-1;switch(mode){
case 0:pmode.src="闲逛";break;
default:pmode.src="?";break;
}>};
}
.userm_n{
gid=null;
// pman.pmode.src="";
// OnCreate#c={<: pman.OnWalkend={<:$[id] class=user_g><:desktop eve=切换场景,台球,$[ep],$.\9\main.gml>};>};
OnWgo={<: pid.pid.pid.mysocket.send=#e,wto,$[ep];eve=go,$[ep]>};
OnWrun={<: pid.pid.pid.mysocket.send=#e,wrunto,$[ep];eve=runto,$[ep]>};
OnGo={<: pman.eve=go,$[ep]>};
OnRunTo={<: pman.eve=run,$[ep]>};
// OnMode#s={<: pman.eve=mode,$[ep]>};
ifchged(mode)={<: pman.eve=mode,-1;switch(mode){
case 0:pmode.src="闲逛";break;
default:pmode.src="?";break;
}>};
// OnData={<: data=$[ep]>};
}
.user_g{
ifchged(mode)={<: pman.eve=mode,$[mode];switch(mode){
case -1:pmode.src=$[gt]/$[gn]/看;pman.pmode.src=旁观;break;
default:pmode.src=$[gt]/$[gn]/$[mode]台;pman.pmode.src=$[mode]号台;break;
}>};
}
.userm_g{
OnWgo={<: wpos=$[ep];&msg.eve=show,1,$[id],outg,现在您正在游戏中,如果走开就会自动离开游戏>};
OnWrun={<: wpos=$[ep];&msg.eve=show,1,$[id],outr,现在您正在游戏中,如果跑开就会自动离开游戏>};
OnGo=null;
OnRunTo=null;
OnOutG={<: eve=out;pman.eve=go,$[wpos]>};
OnOutR={<: eve=out;pman.eve=run,$[wpos]>};
OnOut={<: eve=CloseG;pman.pmode.src="";class=userm_n;gid.eve=GoLeave,$[pno];pno=null>};
ifchged(mode)={<: pman.eve=mode,$[mode];switch(mode){
case -1:pmode.src=$[gt]/$[gn]/看;pman.pmode.src=旁观;break;
default:pmode.src=$[gt]/$[gn]/$[mode]台;pman.pmode.src=$[mode]号台;break;
}>};
// OnMode#s={<: gid.eve=mode,$[ep]>};
// OnData={<: data=$[ep];gid.eve=data,$[ep]>};
Onclosewnd={<: class=userm_n>};
OnCloseG=closeGmlWnd(id);
OnDestroy#p={<: gid.eve=GoLeave,$[pno]>};
}
.UserAll{
gt=16;
gn=0;
OnPos={<: pman.pos=$[ep]>};
OnPosed={<: pid.pid.pid.mysocket.send=#e,pos,$[ep];>};
OnDestroy#m={<: pman.del=1>};
OnGo={<: pman.eve=go,$[ep]>};
OnRunTo={<: pman.eve=run,$[ep]>};
OnCreate={<: pname=new User_t{src=$[ownername]};
pmode=new User_t{src=$[mode]};
pdata=new User_t{src=$[data]};
eve=mode,$[mode];
>};
OnData={<: data=$[ep0];eve=up>};
OnUp={<: pdata.src=*data>};
// onChat={<flychattxt pid=$[pman.pid];src=$[ep];chatfrom=$[pman];>};
On进屋={<: pno=$[ep2];eve=go,$[ep0],$[ep1]>};
On已满={<: !已满了>};
}
.UserMe{
// OnPos#m={<: pid.viewfollow=*pman>};
OnCreate#m={<UserManM man='我'><: eve=sendpos,(pid.pid.pid.selfcreatex,pid.pid.pid.selfcreatey)>};
ifchged(gn)={<: &desktop.isgameing=$[gn];if=(gn==0)?{class=userm_n}:{class=userm_g};>};
sel=0;
OnSel={<: switch(ep){case $[sel]:eve=in,$[sel];break;default:sel=$[ep]}>};
OnIn={<: pman.OnWalkend={<: OnWalkend=null><:$[id] gid=$[ep];class=user_g;gid.eve=ingame,$[pmode],$[pinfo],$[pman];>}>};
OnNoin={<: pman.OnWalkend=null>}:
class=userm_n;
}
.UserOther{
OnCreate#m={<UserMan man=$[ownername];pos=$[x],$[y]>};
ifchged(gn)={<: if=(gn==0)?{class=user_n}:{class=user_g};>};
class=user_n;
}
.flychattxt:text{
//pid=*&desktop.地图;
zorder=top;
anishow=true;align=center,bottom;
paramCtrl#T=Timer(3000+rand(1000),fly);
color=0;FF=0;showstyle=4;
broad=20,8;bcolor=R254G250B200;
paramCtrl=loopt(1,alpha,5,255,10,0);
OnPathend={<: del=1>};
sel=0;
Onfly={<: Path=goto(-10,-100,1);paramCtrl=loopt(1,alpha,255,0,2,0);>};
OnCreate={<: pos=(chatfrom.xpos),(chatfrom.ypos-chatfrom.height);>};
OnLButtonDown={<: Path=null;paramCtrl#T=null;paramCtrl=null;alpha=255;follow=mouse();oldx=$[xpos];oldy=$[ypos];>};
OnLButtonUp={<: follow=null;if=($[oldx]!=$[xpos]&&$[oldy]!=$[ypos])?{sel=1;name=nodelme;}:{sel=0;eve=fly;}>};
}
.ef_go:img{
pid=*pid.pid;
src=$.\..\imgs\misc\light.ale;
zorder=top;
anishow=1;
pos=*pid.mousepos;
paramctrl=loopt(1,frame,0,framemax-1,1,20,del);
}
.MyMap{
// pid.map=*id;
pathfinder=1;
viewfollow=mouse;
movestep=11;
size=pid.width,pid.height;
OnSize={<: size=pid.width,pid.height;>};
paramCtrl#t=loop();
OnGo={<: pid.myid.eve=wgo,$[ep]><ef_go>};
OnRun={<: pid.myid.eve=wrun,$[ep]><ef_go>};
// OnLButtonDown={<: pid.myid.eve=noin>};
OnLButtonDown={<: eve=go,$[mousepos];pid.myid.eve=noin>};
OnLButtonDblClk={<: eve=run,$[mousepos]>};
OnRButtonDown={<: eve=go,$[mousepos];pid.myid.eve=noin>};
}
.MyUserBar{
}
.MyChatBar{
}
.MyChatEdit{
}
.MyFun{
OnCreate={<SMap>};
}
</style>
<: map.class=MyMap>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -