{********************************************************************

*******************************************************************}
program mir2;

{$I common.pas}

procedure _Exit;
begin
This_Npc.CloseDialog(This_Player);
end;

Procedure domain;
//var today , var regday,var exday,typ: integer,flg: integer;
begin
//flg := This_Player.GetV(55,1);
//GetV(55,1) = 1 是会员 <>1 不是会员
This_NPC.NpcDialog(This_Player,
‘尊敬的传奇玩家你好,在这里我可以提供一些不破坏游戏 \ \’
+’公平性的会员功能,有利于保持服务器的健康运行。\ \’
+’详情可以查看购买月卡和年卡的页面。\ \’
+’|{cmd}<购买月卡/@buy1> ^<购买年卡/@buy2>\’
+’|{cmd}<会员服务/@member> ^<我要离开/@exit>’
);
//end;
end;

procedure _buy1;
begin
This_NPC.NpcDialog(This_Player,
‘月卡会员拥有以下服务(每日): \ \’
+’|1.会员神水[消耗品,全属性+1,持续2个小时] \’
+’|2.修复神水[消耗品,一键修理神水所有装备] \’
+’|3.经验卷轴[消耗品,2小时提高经验50倍] \’
+’|4.赠送10元宝,1藏宝图(合成材料),15万金币 \’
+’|5.便捷传送地图服务 \’
+’|——价格:250元宝/月 \’
+’|<我要购买/@buy11> ^<我要离开/@exit>’
);
end;

procedure _buy11;
begin
if This_Player.GetV(55,1) <> 1 then
begin
This_NPC.NpcDialog(This_Player,
‘你是否确定购买月卡会员?这需要250个元宝 \ \’
+’ \ \’
+’|{cmd}<购买月卡会员/@buy111> ^<点错/@exit>’
);
end
else
This_NPC.NpcDialog(This_Player,
‘你已经是月卡会员了哦 \ \’
+’ \ \’
+’|{cmd} ^<离开/@exit>’
);
end;

procedure _buy111;
var
d1 : integer;
begin
d1 := GetDateNum(GetNow);
begin
if This_Player.YBNum >= 250 then
begin
This_Player.ScriptRequestSubYBNum(250);
This_Player.SetV(55,1,1);
This_Player.SetV(55,2,d1);
This_Player.SetV(55,3,0);
This_Player.PlayerDialog(‘你已经成功成为月卡会员,有效期为30天’);
end else
This_Player.PlayerDialog(‘身上没有250个元宝。’);
end ;
end;

procedure _buy2;
begin
This_NPC.NpcDialog(This_Player,
‘年卡会员拥有以下服务(每日): \ \’
+’1.会员神水[消耗品,全属性+1(HP+20),持续5个小时]\ \’
+’2.修复神水[消耗品,一键修理神水所有装备]\ \’
+’3.经验卷轴[消耗品,12小时提高打怪获得的经验50倍]\ \’
+’4.赠送20个元宝,一个藏宝图(合成材料),领取30万金币\ \’
+’5.便捷传送地图服务\ \’
+’——价格:2500元宝/年\ \’
+’|{cmd}<我要购买/@buy21> ^<我要离开/@exit>’
);
end;

procedure _buy21;
begin
if This_Player.GetV(55,6) <> 1 then
begin
This_NPC.NpcDialog(This_Player,
‘你是否确定购买年卡会员?这需要2500个元宝 \ \’
+’ \ \’
+’|{cmd}<购买年卡会员/@buy211> ^<点错/@exit>’
);
end
else
This_NPC.NpcDialog(This_Player,
‘你已经是年卡会员了哦 \ \’
+’ \ \’
+’|{cmd} ^<离开/@exit>’
);
end;

procedure _buy211;
var
d1 : integer;
begin
d1 := GetDateNum(GetNow);
begin
if This_Player.YBNum >= 2500 then
begin
This_Player.ScriptRequestSubYBNum(2500);
This_Player.SetV(55,6,1);
This_Player.SetV(55,7,d1);
This_Player.SetV(55,8,0);
This_Player.PlayerDialog(‘你已经成功成为年卡会员,有效期为365天’);
end else
This_Player.PlayerDialog(‘身上没有2500个元宝。’);
end ;
end;

procedure _member;
begin
This_NPC.NpcDialog(This_Player,
‘您需要什么服务? \ \’
+’|说明:可以同时是月卡和年卡用户 \’
+’|<进入月卡服务/@member1> ^<进入年卡服务/@member2>’
+’|<离开/@exit>’
);
end;

procedure _member1;
begin
if This_Player.GetV(55,1) <> 1 then
begin
This_Player.SetV(55,1,0);
This_Player.SetV(55,2,0);
This_Player.SetV(55,3,0);
This_NPC.NpcDialog(This_Player,
‘您不是月卡会员!! \ \’
);
end
else
begin
if GetDateNum(GetNow) – This_Player.GetV(55,2) < 31 then
begin
This_NPC.NpcDialog(This_Player,
‘您需要什么服务? \ \’
+’|说明:可以同时是月卡和年卡用户 \’
+’|<领取月卡礼包/@getyueka> ^<便捷传送服务/@vipGo>’
+’|<返回/@member>’
);
end
else
begin
This_Player.SetV(55,1,0);
This_Player.SetV(55,2,0);
This_Player.SetV(55,3,0);
This_Player.PlayerDialog(‘你的月卡会员时间已经到期’);
end;
end;

end;

procedure _member2;
begin
if This_Player.GetV(55,6) <> 1 then
begin
This_Player.SetV(55,6,0);
This_Player.SetV(55,7,0);
This_Player.SetV(55,8,0);
This_NPC.NpcDialog(This_Player,
‘您不是年卡会员!! \ \’
);
end
else
begin
if GetDateNum(GetNow) – This_Player.GetV(55,7) < 365 then
begin
This_NPC.NpcDialog(This_Player,
‘您需要什么服务? \ \’
+’|说明:可以同时是月卡和年卡用户 \’
+’|<领取年卡礼包/@getnianka> ^<便捷传送服务/@vipGo>’
+’|<返回/@member>’
);
end
else
begin
This_Player.SetV(55,6,0);
This_Player.SetV(55,7,0);
This_Player.SetV(55,8,0);
This_Player.PlayerDialog(‘你的年卡会员时间已经到期’);
end;
end;
end;

procedure _vipGo;
begin
This_NPC.NpcDialog(This_Player,
‘你想去哪里?我可以送你一程。\ \’
+’|{cmd}<前往祖玛洞穴/@move01> ^<前往蜈蚣洞穴/@move02>\’
+’|{cmd}<前往石墓洞穴/@move03> ^<前往比奇矿区/@move04>\’
+’|{cmd}<前往沃玛寺庙/@move05> ^<前往牛魔寺庙/@move06>\’
+’|{cmd}<前往骨魔洞穴/@move07> ^<前往尸魔洞穴/@move08>\’
+’|{cmd}<前往封魔洞穴/@move09> ^<前往赤月丛林/@move10>\’
);
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 _getnianka;
begin
if This_Player.GetV(55,8) < GetDateNum(GetNow) then
begin
if This_Player.FreeBagNum > 5 then
begin
This_Player.SetV(55,8,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(‘3’,862 ,174);
end;

procedure _move02;
begin
This_Player.FlyTo(‘3’,142,93);
end;

procedure _move03;
begin
This_Player.RandomFlyTo(‘D710’);
end;

procedure _move04;
begin
This_Player.FlyTo(‘0’,664,212);
end;

procedure _move05;
begin
This_Player.FlyTo(‘1’,84,277);
end;

procedure _move06;
begin
This_Player.FlyTo(‘5’,655,458);
end;

procedure _move07;
begin
This_Player.FlyTo(‘5’,549,126);
end;

procedure _move08;
begin
This_Player.FlyTo(‘5’,527,610);
end;

procedure _move09;
begin
This_Player.FlyTo(‘4’,140,67);
end;

procedure _move10;
begin
This_Player.FlyTo(‘D10011’,266,380);
end;

procedure _clearmember;
begin
This_Player.SetV(55,1,0);
This_Player.SetV(55,2,0);
This_Player.SetV(55,3,0);
This_Player.SetV(55,6,0);
This_Player.SetV(55,7,0);
This_Player.SetV(55,8,0);
end;

begin
domain;
end.