|
function Rent_Pet_Init( _MeIndex )
--设置NPC形象
Char.SetData(_MeIndex, %对像_形象%, 101156);
Char.SetData(_MeIndex, %对像_原形%, 101156);
--设置NPC所在地图
Char.SetData(_MeIndex, %对像_地图%, 3000);
--设置X坐标
Char.SetData(_MeIndex, %对像_X%, 69);
--设置Y坐标
Char.SetData(_MeIndex, %对像_Y%, 109);
--设置NPC方向
Char.SetData(_MeIndex, %对像_方向%, %右下%);
--设置NPC名称
Char.SetData(_MeIndex, %对像_原名%, "〖宠物〗租用店");
--[[
响应说话事件,此事件如果有玩家对此NPC说话就会触发
--]]
if (Char.SetTalkedEvent(nil, "Rent_Pet_Talked", _MeIndex) < 0) then
print("Rent_Talked 注册事件失败。");
return false;
end
if (Char.SetWindowTalkedEvent(nil, "Rent_Pet_WindowTalked", _MeIndex) < 0) then
print("Rent_WindowTalked 注册事件失败。");
return false;
end
--全局变量
Rent_Pets={--宠物编号,宠物名字,每24小时花费的点数
{40100,"异黄人龙",100},
{40101,"异蓝人龙",100},
{40102,"异绿人龙",100},
{40103,"异红人龙",100}
}
petSelect=-1
return true
end
function Rent_Pet_Talked( _MeIndex, _PlayerIndex, _Msg, _Color, _Channel)
if(NLG.CheckInFront(_PlayerIndex, _MeIndex, 2) == false) then
return ;
end
local msg="宠物名称 货币名称 花费点数"
for i=1,table.getn(Rent_Pets) do
msg=msg.."\n"..Rent_Pets[2].." ".." 活力".." "..Rent_Pets[3]
end
NLG.ShowWindowTalked(_PlayerIndex, 2,2, 1, msg, _MeIndex);
end
function Rent_Pet_WindowTalked( _MeIndex, _TalkIndex, _Seqno, _Select, _Data)
if(NLG.CheckInFront(_TalkIndex, _MeIndex, 2) == false) then
return ;
end
if _Seqno==1 then
if _Select~=2 then
petSelect=tonumber(_Data)
local msg="你选择的是["..Rent_Pets[petSelect][2].."]\n"..
"需要的货币为:活力\n"..
"每24小时花费的点数为:"..Rent_Pets[petSelect][3]..
"\n请输入租用的天数:"
NLG.ShowWindowTalked(_TalkIndex, 1,3, 2, msg, _MeIndex);
end
end
if _Seqno==2 then
if _Select~=2 then
local day=tonumber(_Data)
if day<=0 then
NLG.TalkToCli( -1,"请正确输入天数",%红色%,0,-1 );
return
end
local hl=Char.GetData(_TalkIndex,%对像_TVIP%)
local xy=day*Rent_Pets[petSelect][3]
local t=os.time()+day*24*60*60
if hl<xy then
NLG.TalkToCli( -1, "你的活力点数不足 "..xy.." 点", %红色%, 0, -1);
return
end
local petindex=NLG.GivePetOne(_TalkIndex,Rent_Pets[petSelect][1])
Char.SetData(petindex,%对像_整数存储1%,t)
NLG.TalkToCli( _TalkIndex, "扣除活力"..xy.."点", %蓝色%, 0, _MeIndex);
NLG.TalkToCli( _TalkIndex, "成功租用 ["..Rent_Pets[petSelect][2].."] "..(day*24).."小时", %蓝色%, 0, _MeIndex);
end
end
end |
|