网站地图
新开私服
57私服首页 网游私服外挂 今日传奇3私服 今日奇迹私服 新开传奇私服 最新私服IP

Athena脚本制作讲座(二)流程控制与输入输出


奇迹私服,传奇私服首页 作者:ro 发表时间:2004-3-4 12:53:32

【更多今日新开奇迹私服点这里查看...】

一、流程控制

2、next ""
next;
产生按钮"下一步"
3、close ""
close;
产生按钮"关闭"
4、menu "*","l"
menu "好的",L_YES,"不好",L_NO;
产生选择列表,有2个选项"好的"、"不好",选择后即发生跳转 选择"好的"跳转至L_YES,选择"不好"跳转至L_NO
5、goto "l"
goto L_YES;直接跳转至L_YES
平时使用时,常跟在if等条件判断语句后
12、if "igi"
if(@value==1) goto L_YES;
如果@value=1,跳转到L_YES,不然就顺序执行
常用的判断符:<、>、==、!=、>=、<=
38、end ""
end;
强制结束脚本

二、输入输出

1、mes "s"
mes "你好";
在NPC对话框中显示"你好"
7、input ""
input @value;产生一个输入框,输入的内容赋值在@value变量中
变量可以是数字,也可以是字符(好像不能为字符,请索克兄帮忙,偶不搞不定了)
54、announce "si"
announce "你好" 3;
在服务器内用黄色字体广播"你好"
广播命令,可以控制广播内容和广播颜色 3:黄色 19:蓝色
55、mapannounce "ssi"
mapannounce "prontera.gat" "你好" 3;
在普隆德拉地图内内用黄色字体广播"你好" 地图广播命令,可以指定地图
56、areaannounce "siiiisi"
areaannounce "prontera.gat" 100 100 10 10 "你好" 3;
在普隆德拉X100Y100,X+-10,Y+-10的区域内内用黄色字体广播"你好"
区域广播,可以使得特定区域的玩家看到系统消息

三、注意事项

1、goto语句的标号是区分大小写的,若出错则会使map-server死掉,且不会自动重启
2、一行显示一般为37个字符,超出的话偶也不知道会发生什么事

请阅读以下范例,以加强对基本流程及mes语句使用方法的了解。
例1,发钱的hack
// 里面有几个命令是偶们还没有学过的,不过没有关系,很容易理解,
// delitem 2278,1; 表示删除2278号物品1个
// set Zeny,Zeny+200000; 表示增加200000块钱
// 特别需要注意的是你的Goto语句,如果出现错误可能会使服务器当机,特别要注意大小写
prontera.gat,155,174,4 script 发钱的hack 706,{
mes "[发钱的hack]";
mes "嘿嘿!哇呀呀!";
mes "我是^5577FF发钱的hack^000000。";
mes "我愿意拿钱和你换一些东西。";
next;
menu "询问 ^3355FF笑脸面具^000000 换钱的一些信息",Case1,"拿 ^3355FF笑脸面具^000000 换钱",Case2,"拿 ^3355FF兔耳发圈^000000 换钱",Case4,"取消",Case3;
Case1:
mes "[发钱的hack]";
mes "你有笑脸面具吗? ";
mes "我朋友^5577FF乖宝宝^000000想要几个面具来玩。";
mes "可是我没有材料去制作啊。";
mes "你有已经制成的面具吗?";
mes "我可以拿很多钱跟你换哦!";
next;
mes "[发钱的hack]";
mes "制作^3355FF笑脸面具^000000";
mes "需要搜集一些物品.";
mes "你如果能搜集到这些材料";
mes "就可以去找微笑小姐做成笑脸面具";
mes "下面是制作^3355FF笑脸面具^000000所需要的一些道具.";
next;
mes "[发钱的hack]";
mes "10个^3355FF杰比勒结晶^000000";
mes "10个^3355FF毛^000000";
mes "10个^3355FF三叶幸运草^000000";
next;
mes "[发钱的hack]";
mes "做好了拿来给我,我就给你大把大把的钱! ";
close;
Case2:
if(countitem(2278)<1) goto Case2NOT;
mes "[发钱的hack]";
mes "哈哈,^5577FF乖宝宝^000000一定会很高兴的~:)";
mes "那么^3355FF笑脸面具^000000。我拿走了!.";
next;
delitem 2278,1;
set Zeny,Zeny+200000;
mes "[发钱的hack]";
mes "拿好咯!";
mes "这里是答应你的^5577FF200000Z^000000";
mes "如果你还有笑脸面具,还可以拿过来和我换。";
mes "好东西我不嫌多!";
close;
Case2NOT:
mes "[发钱的hack]";
mes "我";
next;
mes "[发钱的hack]";
mes "要";
next;
mes "[发钱的hack]";
mes "笑";
next;
mes "[发钱的hack]";
mes "脸";
next;
mes "[发钱的hack]";
mes "面";
next;
mes "[发钱的hack]";
mes "具";
close;
//狸猫的猫耳发圈掉落率是2
Case4:
if(countitem(2214)<1) goto Case4NOT;
mes "[hack]";
mes "哈哈,高兴~:)";
mes "那么^3355FF兔耳发圈^000000。我拿走了!.";
next;
delitem 2214,1;
set Zeny,Zeny+20000000;
mes "[发钱的hack]";
mes "拿好咯!";
mes "这里是答应你的^5577FF20000000Z^000000";
mes "如果你还有兔耳发圈,还可以拿过来和我换。";
mes "好东西我不嫌多!";
close;
Case4NOT:
mes "[发钱的hack]";
mes "我";
next;
mes "[发钱的hack]";
mes "要";
next;
mes "[发钱的hack]";
mes "的";
next;
mes "[发钱的hack]";
mes "是";
next;
mes "[发钱的hack]";
mes "兔";
next;
mes "[发钱的hack]";
mes "耳";
next;
mes "[发钱的hack]";
mes "发";
next;
mes "[发钱的hack]";
mes "圈";
close;
Case3:
mes "[发钱的hack]";
mes "再见,再见";
next;
mes "[发钱的hack]";
mes "白白,白白";
close;
}

相关新闻
[3-4] Athena脚本制作讲座(一)基础知识

免责声明:57sf.com登载此文出于传递更多信息之目的,并不意味着57sf.com赞同其观点或证实其描述
 
 Copyright 2004 57sf.com Corporation. All Rights. 奇迹私服版权所有传奇私服 热血江湖私服