PDA

View Full Version : [KT] Cho hỏi về cách chỉnh điểm kinh nghiệm



dianguc.vn
31-10-12, 02:53 PM
cho mình hỏi về cách chỉnh điểm kinh nghiệm của hải tặc , lửa trại ở đâu vậy ai biết xin chỉ giáo

vipbk
31-10-12, 06:35 PM
- chỉnh exp: <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>

- các file gameserver\script\item\class\gouhuo_everyone.lua, gouhuo_tong.lua ... đều liên quan đến lửa trại

mở và tìm đoạn code sau:


function tbGouhuoItem:PickUp(nX, nY)
local nExistentTime = it.GetExtParam(1); --持续时间
local nBaseMultip = it.GetExtParam(2); --经验倍率
if nExistentTime == 0 then
nExistentTime = 900;
end
if nBaseMultip == 0 then
nBaseMultip = 100;
end
self:CallGouhuoNpc(nX, nY, nExistentTime, nBaseMultip);
me.Msg("Bạn đã đôt lửa trại, các thành viên trong nhóm có thể cùng nhau chia sẻ điểm kinh nghiệm!");
return 0;
end

thay đổi số 100 tùy ý

dianguc.vn
01-11-12, 03:37 PM
thank cậu o->o->o->o->o->o->:-h:-h:-h:-h

newhorizon1811
28-07-13, 09:47 AM
- chỉnh exp: <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>

- các file gameserver\script\item\class\gouhuo_everyone.lua, gouhuo_tong.lua ... đều liên quan đến lửa trại

mở và tìm đoạn code sau:


function tbGouhuoItem:PickUp(nX, nY)
local nExistentTime = it.GetExtParam(1); --持续时间
local nBaseMultip = it.GetExtParam(2); --经验倍率
if nExistentTime == 0 then
nExistentTime = 900;
end
if nBaseMultip == 0 then
nBaseMultip = 100;
end
self:CallGouhuoNpc(nX, nY, nExistentTime, nBaseMultip);
me.Msg("Bạn đã đôt lửa trại, các thành viên trong nhóm có thể cùng nhau chia sẻ điểm kinh nghiệm!");
return 0;
end

thay đổi số 100 tùy ý


anh ơi em chỉnh theo như anh nói rồi nhưng ko được. em chỉnh thế này... tại 2 file .lua anh hướng dẫn

function tbGouhuoItem:PickUp(nX, nY)
local nExistentTime = it.GetExtParam(1); --持续时间
local nBaseMultip = it.GetExtParam(2); --经验倍率
if nExistentTime == 0 then
nExistentTime = 3600;
end
if nBaseMultip == 0 then
nBaseMultip = 1000;
end
--self:CallGouhuoNpc(nX, nY, nExistentTime, nBaseMultip);
self:CallGouhuoNpc(nX, nY, nExistentTime, nBaseMultip * 10);
me.Msg("Bạn đã đôt lửa trại, các thành viên trong nhóm có thể cùng nhau chia sẻ điểm kinh nghiệm!");
return 0;
end

sai ở đâu anh giúp em với bro nào giúp em với.

voanhnhat20010
28-07-13, 10:14 AM
anh ơi em chỉnh theo như anh nói rồi nhưng ko được. em chỉnh thế này... tại 2 file .lua anh hướng dẫn

function tbGouhuoItem:PickUp(nX, nY)
local nExistentTime = it.GetExtParam(1); --持续时间
local nBaseMultip = it.GetExtParam(2); --经验倍率
if nExistentTime == 0 then
nExistentTime = 3600;
end
if nBaseMultip == 0 then
nBaseMultip = 1000;
end
--self:CallGouhuoNpc(nX, nY, nExistentTime, nBaseMultip);
self:CallGouhuoNpc(nX, nY, nExistentTime, nBaseMultip * 10);
me.Msg("Bạn đã đôt lửa trại, các thành viên trong nhóm có thể cùng nhau chia sẻ điểm kinh nghiệm!");
return 0;
end

sai ở đâu anh giúp em với bro nào giúp em với.
a chỉnh lên thành 10000 xem sao ;))

voanhnhat20010
28-07-13, 10:29 AM
local tbLuaTrai = Npc:GetClass("LuaTrai");

function tbLuaTrai:OnDialog()
tbLuaTrai:ChampionFlagNpc(me, him);
end
---------
function tbLuaTrai:ChampionFlagNpc(pPlayer, pNpc)
self:dotlua(pPlayer, pNpc);
end

function tbLuaTrai:dotlua(pPlayer, pNpc)
tbLuaTrai.SKILL_ID = 391;
tbLuaTrai.NPC_ID = 20170;
tbLuaTrai.EXISTENTIME = Env.GAME_FPS * 3600 * 24;
tbLuaTrai.BASEMULTIP = 100000;
tbLuaTrai.TITLE_GROUP = 4;
tbLuaTrai.TITLE_ID = 1;
if (0 == me.nTeamId) then
me.Msg("Tổ đội mới có thể đốt lửa");
me.CallClientScript({"AutoAi:Resume"});
return 0;
end
if me.IsAccountLock() ~= 0 then
Dialog:Say("Tài khoản đang khóa");
return 0;
end
if me.nLevel < 120 then
Dialog:Say("Dưới cấp 120 k thể đốt");
return 0;
end


pPlayer.CastSkill(self.SKILL_ID, 1, -1, pPlayer.GetNpc().nIndex);
local nNpcMapId, nNpcPosX, nNpcPosY = pPlayer.GetWorldPos();
nNpcPosX=1607;
nNpcPosY=3246;
local tbNpc = Npc:GetClass("gouhuonpc");
local pGouNpc = KNpc.Add2(self.NPC_ID, 1, -1, nNpcMapId, nNpcPosX, nNpcPosY);
tbNpc:InitGouHuo(pGouNpc.dwId, 0, self.EXISTENTIME, 5, 90, self.BASEMULTIP, 0, 0);
tbNpc:StartNpcTimer(pGouNpc.dwId)
me.Msg(string.format("Ngươi đã đốt lửa tại Đạo hương Thôn nhận được 10v đồng."));
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=red>" ..me.szName.. "<color> đã đốt lửa tại Đạo hương Thôn nhận được 10v đồng."});
me.SendMsgToFriend("Hảo hữu [" ..me.szName.. "] đã đốt lửa tại Đạo hương Thôn nhận được 10v đồng.");
Player:SendMsgToKinOrTong(me, " đã đốt lửa tại Đạo hương Thôn nhận được 10v đồng.", 0);
me.AddJbCoin(100000);
pNpc.Delete();
--local nNpc = self.NPC_ID
--if not nNpc then
--local pGouNpc1 = KNpc.Add2(20016, 1, -1, nNpcMapId, nNpcPosX, nNpcPosY);
--end
end
chép lại đi ;))

newhorizon1811
28-07-13, 10:31 AM
thanks bạn nhé. rất nhiệt tình với anh em :D

voanhnhat20010
28-07-13, 10:44 AM
thanks bạn nhé. rất nhiệt tình với anh em :D

 if me.nLevel < 120 then 
        Dialog:Say("Dưới cấp 120 k thể đốt"); 
        return 0; 
    end 

xóa cái dòng đi a vì nó làm ức chế người chơi nếu mà là cho túi tân thủ nhận cấp 120 thì để đó cũng k sao
nhưng đừng để khi chưa có ai cấp 120 ;))
P/s: k biết cái câu lệnh đánh nhau trong thành có gọi đc lửa trại k

newhorizon1811
28-07-13, 09:23 PM
 if me.nLevel < 120 then 
        Dialog:Say("Dưới cấp 120 k thể đốt"); 
        return 0; 
    end 

xóa cái dòng đi a vì nó làm ức chế người chơi nếu mà là cho túi tân thủ nhận cấp 120 thì để đó cũng k sao
nhưng đừng để khi chưa có ai cấp 120 ;))
P/s: k biết cái câu lệnh đánh nhau trong thành có gọi đc lửa trại k

thanks vì sự nhiệt tình của bạn :)

nghichtu91
28-07-13, 09:26 PM
thanks vì sự nhiệt tình của bạn :)
đã bảo đừng gọi là bạn mà cứ =))
tks nick này nà đừng tks nick đó nữa