PDA

View Full Version : [KT] Xin pro chỉ cách Add thêm giờ hoạt động



anhnhianh
16-03-14, 08:35 AM
e muốn add thêm giờ vào file.lua này nhưng ko biết add làm sao mong pro chỉ giúp
Script của e nó đây :)

local tbBanPhuc = Npc:GetClass("thantaibanphuc");
function tbBanPhuc:OnDialog()
if me.CountFreeBagCell() < 5 then
Dialog:Say("Phải Có 5 Ô Trống Trong Túi Hành Trang");
return 0;
end
local tbEvent =
{
Player.ProcessBreakEvent.emEVENT_MOVE,
Player.ProcessBreakEvent.emEVENT_ATTACK,
Player.ProcessBreakEvent.emEVENT_SITE,
Player.ProcessBreakEvent.emEVENT_USEITEM,
Player.ProcessBreakEvent.emEVENT_ARRANGEITEM,
Player.ProcessBreakEvent.emEVENT_DROPITEM,
Player.ProcessBreakEvent.emEVENT_SENDMAIL,
Player.ProcessBreakEvent.emEVENT_TRADE,
Player.ProcessBreakEvent.emEVENT_CHANGEFIGHTSTATE,
Player.ProcessBreakEvent.emEVENT_CLIENTCOMMAND,
Player.ProcessBreakEvent.emEVENT_LOGOUT,
Player.ProcessBreakEvent.emEVENT_DEATH,
Player.ProcessBreakEvent.emEVENT_ATTACKED,
}
local tbOpt = {
GeneralProcess:StartProcess("Đang Hái Lộc", 10 * Env.GAME_FPS, {self.OnDialog4, self}, nil, tbEvent);
};
end
function tbBanPhuc:OnDialog4()
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {3000,1000,6000};
local tbAward = {1,2,3}

for i = 1, 3 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
if (tbAward[nIndex]==3) then
me.AddExp(100000000);
me.AddStackItem(18,10,11,2,self.tbBanPhuc,20); -- Cá CHép Đỏ
me.Msg("Hái được <color=green>100tr Exp và 20 Tiền Xu<color>");
end
if (tbAward[nIndex]==1) then
me.AddExp(200000000);
me.AddStackItem(18,10,11,2,self.tbBanPhuc,30); -- Cá CHép Vàng
me.Msg("Hái được <color=green>200tr Exp và 30 Tiền Xu<color>");
end
if (tbAward[nIndex]==2) then
me.AddExp(300000000);
me.AddItem(18,10,11,2,self.tbBanPhuc,40); -- Lưỡi Kiếm
me.Msg("Hái được <color=green>300tr Exp và 40 Tiền Xu<color>");
end
end

add thêm giờ cho nó hoạt động như từ 13h30 --> 13h35 rồi ko cho nhận nữa (tựa tựa như ev QTT)

na.ilusm89
16-03-14, 08:45 AM
local nCurTime = tonumber(os.date("%H%M", GetTime()));
if (nCurTime >= 0900 and nCurTime <= 0910) or (nCurTime >= 1500 and nCurTime <= 1510) or (nCurTime >= 1700 and nCurTime <= 1710) or (nCurTime >= 2000 and nCurTime <= 2010) then



Dialog:Say("Hái Lộc diễn ra lúc :\n9h00 -> 9h10\n15h00 -> 15h10\n17h00 -> 17h10\n20h00 -> 20h10")

anhnhianh
16-03-14, 08:48 AM
nhưng add vào chỗ nào hả pro ?? giúp e chút nữa thôi :)

__Jie__
16-03-14, 09:19 PM
local tbBanPhuc = Npc:GetClass("thantaibanphuc");
function tbBanPhuc:Onfialog()
local tbOpt = {};
local nCurTime = tonumber(os.date("%H%M", GetTime()));
if (nCurTime >= 1330 and nCurTime <= 1335) then
table.insert(tbOpt , {"Chưc Năng Ban Phúc", self.ChucNangBanPhuc, self});


else
table.insert(tbOpt, {"Chưa đến thời gian Ban Phuc"});


end
end
function tbBanPhuc:ChucNangBanPhuc()
if me.CountFreeBagCell() < 5 then
Dialog:Say("Phải Có 5 Ô Trống Trong Túi Hành Trang");
return 0;
end
local tbEvent =
{
Player.ProcessBreakEvent.emEVENT_MOVE,
Player.ProcessBreakEvent.emEVENT_ATTACK,
Player.ProcessBreakEvent.emEVENT_SITE,
Player.ProcessBreakEvent.emEVENT_USEITEM,
Player.ProcessBreakEvent.emEVENT_ARRANGEITEM,
Player.ProcessBreakEvent.emEVENT_DROPITEM,
Player.ProcessBreakEvent.emEVENT_SENDMAIL,
Player.ProcessBreakEvent.emEVENT_TRADE,
Player.ProcessBreakEvent.emEVENT_CHANGEFIGHTSTATE,
Player.ProcessBreakEvent.emEVENT_CLIENTCOMMAND,
Player.ProcessBreakEvent.emEVENT_LOGOUT,
Player.ProcessBreakEvent.emEVENT_DEATH,
Player.ProcessBreakEvent.emEVENT_ATTACKED,
}
local tbOpt = {
GeneralProcess:StartProcess("Đang Hái Lộc", 10 * Env.GAME_FPS, {self.OnDialog4, self}, nil, tbEvent);
};
end
function tbBanPhuc:OnDialog4()
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {3000,1000,6000};
local tbAward = {1,2,3}

for i = 1, 3 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
if (tbAward[nIndex]==3) then
me.AddExp(100000000);
me.AddStackItem(18,10,11,2,self.tbBanPhuc,20); -- Cá CHép Đỏ
me.Msg("Hái được <color=green>100tr Exp và 20 Tiền Xu<color>");
end
if (tbAward[nIndex]==1) then
me.AddExp(200000000);
me.AddStackItem(18,10,11,2,self.tbBanPhuc,30); -- Cá CHép Vàng
me.Msg("Hái được <color=green>200tr Exp và 30 Tiền Xu<color>");
end
if (tbAward[nIndex]==2) then
me.AddExp(300000000);
me.AddItem(18,10,11,2,self.tbBanPhuc,40); -- Lưỡi Kiếm
me.Msg("Hái được <color=green>300tr Exp và 40 Tiền Xu<color>");
end
end

Xong nhé

anhnhianh
16-03-14, 09:51 PM
tks pro nhá :)

Một với một là bao nhiêu ? (viết trả lời bằng số)