用于战神引擎的月卡会员npc脚本,相比之前更新的类似的脚本,这个做了一些功能方面的增强,比如添加了转职、变性、专属地图、随身泡点等功能,虽然这些功能都不算什么新的功能,但之前看到的都是要添加NPC的,现在都集成到月卡会员里面了。非常的方便,让玩家有开会员的冲动。脚本是明文版,可以任意修改里面的所有内容。



部分脚本
procedure _bianxing1; //主号变性
begin
if This_Player.YBNum >= 1000 then
begin
This_Player.ScriptRequestSubYBNum(1000);
This_Player.SetS(1,1,3);
ServerSay('变性系统:恭喜玩家【' + This_Player.Name + '】品尝到了变性的快感!', 3);
This_Npc.NpcDialog(This_Player,'<恭喜你:变性成功.请小退方可正常游戏!/fcolor=250>|'
+'|{cmd} <返回上页/@zhbx> ^ <关闭此页/@exit>') ;
This_Player.SetS(1,1,16); //踢玩家下线
end
else
This_Npc.NpcDialog(This_Player,'<很遗憾:变性失败.元宝不足/fcolor=243> '+inttostr(GetG(108,4))+' <无法手术>!|'
+'|{cmd} <返回上页/@bianxing> ^ <关闭此页/@exit>') ;
end;
procedure _vipGo;
begin
This_NPC.NpcDialog(This_Player,
'你想去哪里?我可以免费送你一程。\ \'
+'|{cmd}<尸 王 殿/@move01> {cmd}<生死之间/@move02> {cmd}<沃玛三层/@move03> {cmd}<石墓七层/@move04> \'
+'|{cmd}<祖玛七层/@move05> {cmd}<牛魔六层/@move06> {cmd}<幻境三层/@move07> {cmd}<沙藏宝阁/@move08> \'
+'|{cmd}<快择之地/@move09> {cmd}<幻境七层/@move10> {cmd}<王者禁地/@move11> {cmd}<六新衣服/@move12> \'
);
end;
procedure _getyueka;
begin
if This_Player.GetV(55,3) < GetDateNum(GetNow) then begin if This_Player.FreeBagNum > 5 then
begin
This_Player.SetV(55,3,GetDateNum(GetNow));
This_Player.Give('月卡礼包', 1);
end
else
This_NPC.NpcDialog(This_Player,
'背包已经满了哦,请清理一下再领取吧 \ \'
);
end
else
This_NPC.NpcDialog(This_Player,
'您已经领取过月卡礼包了哦 \ \'
);
end;
procedure _move01;
begin
This_Player.FlyTo('Q004',15,15);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了尸王殿!', 2);
end;
procedure _move02;
begin
This_Player.FlyTo('D613',9,51);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了生死之间!', 2);
end;
procedure _move03;
begin
This_Player.RandomFlyTo('D024');
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了沃玛三层!', 2);
end;
procedure _move04;
begin
This_Player.FlyTo('D717',26,74);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了石墓七层!', 2);
end;
procedure _move05;
begin
This_Player.FlyTo('D5071',8,10);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了祖玛七层!', 2);
end;
procedure _move06;
begin
This_Player.FlyTo('D2078',250,250);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了牛魔六层!', 2);
end;
procedure _move07;
begin
This_Player.RandomFlyTo('H003');
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了幻境三层!', 2);
end;
procedure _move08;
begin
This_Player.RandomFlyTo('H204');
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了沙藏宝阁!', 2);
end;
procedure _move09;
begin
This_Player.FlyTo('D1004',171,88);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了快择之地!', 2);
end;
procedure _move10;
begin
This_Player.FlyTo('H007',161,172);
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了幻境七层!', 2);
end;
procedure _move11;
begin
This_Player.RandomFlyTo('H106');
ServerSay('玩家<' + This_Player.Name + '>从会员服务免费进入了王者禁地!', 2);
end;
procedure _move12;
begin
This_NPC.NpcDialog(This_Player,
'|{cmd}<死亡神殿/@yifu01> {cmd}<地狱烈焰/@yifu02> {cmd}<钳虫巢穴/@yifu03> \'
+'|{cmd}<堕落坟场/@yifu04> {cmd}<困惑殿堂/@yifu05> {cmd}<深渊魔域/@yifu06> \'
);
end;
procedure _yifu01;
begin
if compareText(This_Player.MapName,'3') = 0 then
This_Player.Flyto('4',205,218);
end;
procedure _yifu02;
begin
if compareText(This_Player.MapName,'3') = 0 then
This_Player.Flyto('0',428,474);
end;
procedure _yifu03;
begin
if compareText(This_Player.MapName,'3') = 0 then
This_Player.Flyto('11',343,325);
end;
procedure _yifu04;
begin
if compareText(This_Player.MapName,'3') = 0 then
This_Player.Flyto('1',320,56);
end;
procedure _yifu05;
begin
if compareText(This_Player.MapName,'3') = 0 then
This_Player.Flyto('R001',55,94);
end;
procedure _yifu06;
begin
if compareText(This_Player.MapName,'3') = 0 then
This_Player.Flyto('1',215,312);
end;
procedure _vipGo1;
begin
This_Player.CallOut(This_Npc, 1, 'MFBG31');
//This_Player.RandomFlyTo('Q004~4');
ServerSay('玩家<' + This_Player.Name + '>从会员服务开启了随身泡点,每秒享受18888经验!', 2);
end;
procedure MFBG31;
begin
if This_Player.Level <= 70 then
// begin
// if CompareText(This_Player.MapName,'Q004~4') = 0 then
begin
This_Player.CallOut(This_Npc, 1, 'MFBG31');
This_Player.Give('经验',18888);
// end;
end
else
begin
This_Player.FlyTo('3', 333, 333);
This_Npc.NpcDialog(This_Player,
'等级超过70级。'
);
end;
end;
procedure _clearmember;
begin
This_Player.SetV(55,1,0);
This_Player.SetV(55,2,0);
This_Player.SetV(55,3,0);
end;








