anhhungkiemthe
03-10-14, 01:07 PM
Tham gia đã lâu chưa có đóng góp gì thôi thì share cho các bạn nào chưa bik cách gọi lửa trại nhận kinh nghiệm và các vật phẩm khác , không dùng thì thôi đừng la mắng , tội nghiệm em nha .
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>
function tbAdminCard:luatrai3(nExistentTime,nBaseMultip)
local nExistentTime = 1800000; --- Thời gian duy trì tình bằng giây
local nBaseMultip = 600000;-- kinh nghiệm nhận được
local tbNpc = Npc:GetClass("gouhuonpc");
local pNpc1 = KNpc.Add2(7059, 1, -1,8,1738,3403); --- 7059 là ID NPC , 8 là ID MAP , tiếp theo là tọa độ
if pNpc1 then
tbNpc:InitGouHuo(pNpc1.dwId, 0, nExistentTimea, 5, 45, nBaseMultipa, 0)
tbNpc:StartNpcTimer(pNpc1.dwId)
end
end
( Có thể thay ID lửa trại thành ID NPC khác nếu muốn)
Có thể gọi 1 lúc nhiều lửa trại chỉ cần thêm như sau
function tbAdminCard:luatrai3(nExistentTime,nBaseMultip)
local nExistentTime = 1800000; --- Thời gian duy trì
local nBaseMultip = 600000;-- kinh nghiệm nhận được
local tbNpc = Npc:GetClass("gouhuonpc");
local pNpc1 = KNpc.Add2(7059, 1, -1,8,1738,3403); --- 7059 là ID NPC , 8 là ID MAP , tiếp theo là tọa độ
local pNpc2 = KNpc.Add2(7059, 1, -1,8,1738,3403); --- 7059 là ID NPC , 8 là ID MAP , tiếp theo là tọa độ
if pNpc1 then
tbNpc:InitGouHuo(pNpc1.dwId, 0, nExistentTimea, 5, 45, nBaseMultipa, 0)
tbNpc:StartNpcTimer(pNpc1.dwId)
end
if pNpc2 then
tbNpc:InitGouHuo(pNpc1.dwId, 0, nExistentTimea, 5, 45, nBaseMultipa, 0)
tbNpc:StartNpcTimer(pNpc2.dwId)
end
end
Nếu muốn thêm bạc khóa , đồng khóa , và các vật phẩm khác các bạn chỉnh trong file gouhuonpc.lua theo đường dẫn \gameserver\script\npc
Tìm đến function tbGouhuoNpc:AddExp2Player
Và Thêm vào các phần thưởng muốn thêm vào :
function tbGouhuoNpc:AddExp2Player(nPlayerId, nNpcId, nAnnouce)
local pPlayer = KPlayer.GetPlayerObjById(nPlayerId)
if pPlayer == nil then
return 0;
end
local pNpc = KNpc.GetById(nNpcId);
if (not pNpc) then
return 0;
end
local tbTmp = pNpc.GetTempTable("Npc");
local nBaseMultip = tbTmp.nBaseMultip;
local nQuotiety = tbTmp.nQuotiety;
pPlayer.CastSkill(self.nGouhuoSkillId, 10, -1, pPlayer.GetNpc().nIndex);
local nExp = math.floor(pPlayer.GetBaseAwardExp() * (nBaseMultip / 100) * (nQuotiety / 100) / (60 / tbTmp.nPeriodTime));
if tbTmp.nCanUseXiuLianZhu == 1 then
pPlayer.AddExperience(nExp);
pPlayer.AddBindCoin(500); -- đồng khóa
pPlayer.AddBindMoney(1000); -- bạc khóa
else
pPlayer.AddExp(nExp);
pPlayer.AddBindCoin(500);-- đồng khóa
pPlayer.AddBindMoney(1000);-- bạc khóa
end
if nAnnouce == 1 then
local szMsg = self:CreateAnnouce(nNpcId);
pPlayer.Msg("<color=blue>"..szMsg);
end
end
Chỉ đơn giản vậy thôi chúc các bạn thành công
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>
function tbAdminCard:luatrai3(nExistentTime,nBaseMultip)
local nExistentTime = 1800000; --- Thời gian duy trì tình bằng giây
local nBaseMultip = 600000;-- kinh nghiệm nhận được
local tbNpc = Npc:GetClass("gouhuonpc");
local pNpc1 = KNpc.Add2(7059, 1, -1,8,1738,3403); --- 7059 là ID NPC , 8 là ID MAP , tiếp theo là tọa độ
if pNpc1 then
tbNpc:InitGouHuo(pNpc1.dwId, 0, nExistentTimea, 5, 45, nBaseMultipa, 0)
tbNpc:StartNpcTimer(pNpc1.dwId)
end
end
( Có thể thay ID lửa trại thành ID NPC khác nếu muốn)
Có thể gọi 1 lúc nhiều lửa trại chỉ cần thêm như sau
function tbAdminCard:luatrai3(nExistentTime,nBaseMultip)
local nExistentTime = 1800000; --- Thời gian duy trì
local nBaseMultip = 600000;-- kinh nghiệm nhận được
local tbNpc = Npc:GetClass("gouhuonpc");
local pNpc1 = KNpc.Add2(7059, 1, -1,8,1738,3403); --- 7059 là ID NPC , 8 là ID MAP , tiếp theo là tọa độ
local pNpc2 = KNpc.Add2(7059, 1, -1,8,1738,3403); --- 7059 là ID NPC , 8 là ID MAP , tiếp theo là tọa độ
if pNpc1 then
tbNpc:InitGouHuo(pNpc1.dwId, 0, nExistentTimea, 5, 45, nBaseMultipa, 0)
tbNpc:StartNpcTimer(pNpc1.dwId)
end
if pNpc2 then
tbNpc:InitGouHuo(pNpc1.dwId, 0, nExistentTimea, 5, 45, nBaseMultipa, 0)
tbNpc:StartNpcTimer(pNpc2.dwId)
end
end
Nếu muốn thêm bạc khóa , đồng khóa , và các vật phẩm khác các bạn chỉnh trong file gouhuonpc.lua theo đường dẫn \gameserver\script\npc
Tìm đến function tbGouhuoNpc:AddExp2Player
Và Thêm vào các phần thưởng muốn thêm vào :
function tbGouhuoNpc:AddExp2Player(nPlayerId, nNpcId, nAnnouce)
local pPlayer = KPlayer.GetPlayerObjById(nPlayerId)
if pPlayer == nil then
return 0;
end
local pNpc = KNpc.GetById(nNpcId);
if (not pNpc) then
return 0;
end
local tbTmp = pNpc.GetTempTable("Npc");
local nBaseMultip = tbTmp.nBaseMultip;
local nQuotiety = tbTmp.nQuotiety;
pPlayer.CastSkill(self.nGouhuoSkillId, 10, -1, pPlayer.GetNpc().nIndex);
local nExp = math.floor(pPlayer.GetBaseAwardExp() * (nBaseMultip / 100) * (nQuotiety / 100) / (60 / tbTmp.nPeriodTime));
if tbTmp.nCanUseXiuLianZhu == 1 then
pPlayer.AddExperience(nExp);
pPlayer.AddBindCoin(500); -- đồng khóa
pPlayer.AddBindMoney(1000); -- bạc khóa
else
pPlayer.AddExp(nExp);
pPlayer.AddBindCoin(500);-- đồng khóa
pPlayer.AddBindMoney(1000);-- bạc khóa
end
if nAnnouce == 1 then
local szMsg = self:CreateAnnouce(nNpcId);
pPlayer.Msg("<color=blue>"..szMsg);
end
end
Chỉ đơn giản vậy thôi chúc các bạn thành công