风雷版本千年游戏新手村擂台脚本攻略加强版
之前小编给大家分享过一篇关于千年私服风雷版新手村擂台赛的脚本,在那个脚本中小编已经详细给大家介绍了一些基础的设置方法和脚本的写法。但是后来小编发现由于网站篇幅设置,可修改部分脚本并没有成功上传。这张攻略中的脚本内容大家可以结合上一章的一起看,或者是一起复制到自己的游戏中去。新手村擂台脚本现在在大多数新手千年私服gm的服务器中都还没有得到普及。
----------------------------------------
unit 一级雨中客;
interface
function GetToken (aStr, aToken, aSep : String) : String;
function CompareStr (aStr1, aStr2 : String) : Boolean;
function callfunc (aText: string): string;
procedure print (aText: string);
function Random (aScope: integer): integer;
function Length (aText: string): integer;
procedure Inc (aInt: integer);
procedure Dec (aInt: integer);
function StrToInt (astr: string): integer;
function IntToStr (aInt: integer): string;
procedure exit;
procedure OnCreate (aStr : String);
procedure OnDie (aStr : String);
procedure OnChangeState (aStr : String);
procedure OnGetResult (aStr : String);
implementation
procedure OnGetResult (aStr : String);
var
Str, Name : String;
iCount : Integer;
begin
if aStr = 'start' then begin
Str := callfunc ('getsenderserverid');
if Str <> '53' then exit;
Str := callfunc ('getsenderrace');
if Str <> '1' then exit;
Str := callfunc ('checksenderpowerwearitem');
iCount := StrToInt (Str);
if iCount > 0 then begin
print ('say 请先脱掉带技能值的装备!');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 100';
print (Str);
exit;
end;
Str := callfunc ('checksendercurusemagic 0');
if Str = 'true' then begin
print ('say 选错武功了!');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 100';
print (Str);
exit;
end;
Str := callfunc ('checksendercurusemagic 1');
if Str = 'true' then begin
print ('say 选错武功了!');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 100';
print (Str);
exit;
end;
print ('directmovespace 一级雨中客 npc 53 20 18 0');
print ('commandicebyname 一级雨中客 npc 500');
print ('setallowhitbytick true 500');
Name := callfunc ('getsendername');
Str := 'commandicebyname ' + Name;
Str := Str + ' user 500';
print (Str);
print ('senderrefill');
print ('say 领教了 50');
print ('say 开始吧 400');
exit;
end;
end;
procedure OnCreate (aStr : String);
var
Str : String;
begin
Str := callfunc ('getsenderrace');
if Str <> '1' then begin
exit;
end;
Str := 'showwindow ./help/一级雨中客.txt 1';
print (Str);
exit;
end;
procedure OnDie (aStr : String);
var
Str, Name : String;
FirstQuest : Integer;
begin
Str := callfunc ('getsenderrace');
if Str <> '1' then exit;
Str := callfunc ('getsenderfirstquest');
FirstQuest := StrToInt (Str);
if FirstQuest < 5 then begin
Str := callfunc ('checkenoughspace');
if Str = 'false' then begin
print ('say 物品栏已满...');
exit;
end;
print ('changesenderfirstquest 5');
print ('putsendermagicitem 新手训练弯刀 @一级雨中客 4');
end;
print ('say 早料到了_佩服 100');
print ('mapregen 54');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 54 17 18 500';
print (Str);
end;
procedure OnChangeState (aStr : String);
var
Str, Name : String;
begin
if aStr <> 'die' then exit;
Str := callfunc ('getsenderrace');
if Str <> '1' then exit; dedecms.com
print ('say 不错。只要能维持几秒钟');
print ('say 到那时谁都不是你的对手 400');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 600';
print (Str);
end;
end.
--------------------------------------------------------------------------------------------------------------
unit 一级老侠客;
interface
function GetToken (aStr, aToken, aSep : String) : String;
function CompareStr (aStr1, aStr2 : String) : Boolean;
function callfunc (aText: string): string;
procedure print (aText: string);
function Random (aScope: integer): integer;
function Length (aText: string): integer;
procedure Inc (aInt: integer);
procedure Dec (aInt: integer);
function StrToInt (astr: string): integer;
function IntToStr (aInt: integer): string;
procedure exit;
procedure OnCreate (aStr : String);
procedure OnDie (aStr : String);
procedure OnChangeState (aStr : String);
procedure OnGetResult (aStr : String);
implementation
procedure OnGetResult (aStr : String);
var
Str, Name : String;
iCount : Integer;
begin
if aStr = 'start' then begin
Str := callfunc ('getsenderserverid');
if Str <> '54' then exit;
Str := callfunc ('getsenderrace');
if Str <> '1' then exit;
Str := callfunc ('checksenderpowerwearitem');
iCount := StrToInt (Str);
if iCount > 0 then begin
print ('say 请先脱掉带技能值的装备!');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 100';
print (Str);
exit;
end;
Str := callfunc ('checksendercurusemagic 0');
if Str = 'true' then begin
print ('say 选错武功了!');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 100';
print (Str);
exit;
end;
Str := callfunc ('checksendercurusemagic 1');
if Str = 'true' then begin
print ('say 选错武功了!');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 100';
print (Str);
exit;
end;
print ('directmovespace 一级老侠客 npc 54 20 18 0'); dedecms.com
print ('commandicebyname 一级老侠客 npc 500');
print ('setallowhitbytick true 500');
Name := callfunc ('getsendername');
Str := 'commandicebyname ' + Name;
Str := Str + ' user 500';
print (Str);
print ('senderrefill');
print ('say 如果你实在想比 50');
print ('say 我将奉陪到底 400');
exit;
end;
end;
procedure OnCreate (aStr : String);
var
Str : String;
begin
Str := callfunc ('getsenderrace');
if Str <> '1' then begin
exit;
end;
Str := 'showwindow ./help/一级老侠客.txt 1';
print (Str);
exit;
end;
procedure OnDie (aStr : String);
var
Str, Name : String;
n, FirstQuest : Integer;
begin
Str := callfunc ('getsenderrace');
if Str <> '1' then exit;
Str := callfunc ('getsenderfirstquest');
FirstQuest := StrToInt (Str);
Name := callfunc ('getsendername');
if FirstQuest < 6 then begin
Str := 'sendsendertopmsg ' + Name;
Str := Str + '恭喜你,通过了所有的比试,获得【侠客弓服】';
print (Str);
Str := callfunc ('checkenoughspace');
if Str = 'false' then begin
print ('say 物品栏已满...');
exit;
end;
print ('changesenderfirstquest 6');
Str := callfunc ('getsenderedu');
n := StrToInt (Str);
if n = 1 then begin
print ('putsendermagicitem 男子侠客弓服 @一级老侠客 4');
end;
if n = 2 then begin
print ('putsendermagicitem 女子侠客弓服 @一级老侠客 4');
end;
print ('putsendermagicitem 新手训练神剑 @一级老侠客 4');
end; 内容来自dedecms
print ('say 佩服_佩服 100');
Str := 'movespace ' + Name;
Str := Str + ' user 49 25 35 500';
print (Str);
end;
procedure OnChangeState (aStr : String);
var
Str, Name : String;
begin
if aStr <> 'die' then exit;
Str := callfunc ('getsenderrace');
if Str <> '1' then exit;
print ('say 小小年纪_就有如此高深的武功 50');
print ('say 日后要继续修炼... 400');
Name := callfunc ('getsendername');
Str := 'movespace ' + Name;
Str := Str + ' user 49 106 55 600';
print (Str);
end;
end. 内容来自dedecms
-------------------------------------
*************************************
奖励物品代码:
*************************************
男子侠客弓服,男子侠客弓服,24,新手村擂台战利
品,2,,,,,FALSE,FALSE,181,6,7,,,,1,1,1,,50000,,,,,,4432,4831,TRUE,,10,20,,,,,,,200,100,100,10
0,,,,,,3,TRUE,4,,FALSE,,,,,,,,,,,,,,,
女子侠客弓服,女子侠客弓服,24,新手村擂台战利
品,2,,,,,FALSE,FALSE,181,6,7,,,,1,2,1,,50000,,,,,,4432,4831,TRUE,,10,20,,,,,,,200,100,100,10
0,,,,,,3,TRUE,4,,FALSE,,,,,,,,,,,,,,,
新手训练拳套,新手训练拳套,6,新手村擂台战利
品,1,,,,,FALSE,FALSE,361,9,52,,0,0,1,,1,,50000,50000,,,,,4404,4805,TRUE,20,20,20,,,,,,,,,,,,
,,,,4,TRUE,3,TRUE,FALSE,,,,,,,,,,,,,,,
新手训练神剑,新手训练神剑,6,新手村擂台战利
品,1,,,,,FALSE,FALSE,365,9,69,,2,1,1,,1,,50000,50000,,,,,4404,4805,TRUE,20,20,20,,,,,,,,,,,, dedecms.com
,,,,1,TRUE,3,TRUE,FALSE,,,,,,,,,,,,,,,
新手训练弯刀,新手训练弯刀,6,新手村擂台战利 dedecms.com
品,7,,,,,FALSE,FALSE,113,9,2,,2,2,1,,1,,50000,50000,,,,,4412,4813,TRUE,20,20,20,,,,,,,,,,,,,
,,,1,TRUE,4,,FALSE,,,,,,,,,,,,,,,
新手训练长矛,新手训练长矛,6,新手村擂台战利
品,6,,,,,FALSE,FALSE,117,9,45,,3,4,1,,1,,50000,50000,,,,,4435,4834,TRUE,20,20,20,,,,,,,,,,,,
,,,,1,TRUE,4,,FALSE,,,,,,,,,,,,,,,
新手训练大斧,新手训练大斧,6,新手村擂台战利
品,6,,,,,FALSE,FALSE,95,9,12,,3,3,1,,1,,50000,50000,,,,,4415,4815,TRUE,20,20,20,,,,,,,,,,,,,
,,,1,TRUE,4,,FALSE,,,,,,,,,,,,,,,
其实这样的脚本是一个服务器是否能够成功的基石,很多新手玩家可能会发现您的服务器中没有这个脚本所以直接不退出游戏的情况。小编以前就经常遇到这样的情况,后来做了一个经典活动服务器,那个服务器中小编放进去了目前市场上大多数经典活动,结果受到了很多玩家的欢迎和追捧。
- 上一篇文章:仙境游戏架设技术之新手gm入门攻略分享
- 下一篇文章:架设千年游戏如何做到一机一ip多个区服技术分享
热门文章
热门标签