View Full Version : [KT] Hàm check điểm danh vọng tài phú hoặc FF
dongahchu
27-05-13, 08:24 AM
Hàm check điểm danh vọng tài phú hoặc FF .
Nếu FF không đủ yêu cầu sẽ không sử dụng được 2 vật phẩm gì đó ...
Mong nhận đc sự giúp đỡ . Cảm ơn
Hàm check điểm danh vọng tài phú hoặc FF .
Nếu FF không đủ yêu cầu sẽ không sử dụng được 2 vật phẩm gì đó ...
Mong nhận đc sự giúp đỡ . Cảm ơn
Hàm của bác __Jie__ nhé. Nhớ thanks bác ấy:
if me.GetCamp() == 6 then
me.Msg("FF so phuong roi hay noi");
return 0;
end
dongahchu
28-05-13, 01:47 PM
if me.GetCamp() == 6 then
me.Msg("FF so phuong roi hay noi");
return 0;
end
Cảm ơn bạn đã trả lời !
Mình add vào Phù nhưng bật gs lại báo lỗi
function tbChuangsongfu:OnTransBattle(nItemId)
if me.GetCamp() == 9 then
me.Msg("Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013");
return 0;
end
local pItem = KItem.GetObjById(nItemId);
if (not pItem) then
return;
end
Setting:SetGlobalObj(me, him, pItem);
Item:GetClass("songjinzhaoshu"):OnUse();
Setting:RestoreGlobalObj();
end
Có thể giúp minh đoạn code check danh vọng này khi đủ điều kiện là FF9 và FF10 không ?
Cảm ơn bạn !
Cảm ơn bạn đã trả lời !
Mình add vào Phù nhưng bật gs lại báo lỗi
Có thể giúp minh đoạn code check danh vọng này khi đủ điều kiện là FF9 và FF10 không ?
Cảm ơn bạn !
if me.GetCamp() < 9 then
me.Msg("Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013");
return 0;
end
dongahchu
28-05-13, 03:23 PM
if me.GetCamp() < 9 then
me.Msg("Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013");
return 0;
end
function tbChuangsongfu:OnTransBattle(nItemId)
if me.GetCamp() < 9 then
me.Msg("Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013");
return 0;
end
local pItem = KItem.GetObjById(nItemId);
if (not pItem) then
return;
end
Setting:SetGlobalObj(me, him, pItem);
Item:GetClass("songjinzhaoshu"):OnUse();
Setting:RestoreGlobalObj();
end
nhưng vẫn báo lỗi .
giúp mình với !
satthupro95
28-05-13, 03:27 PM
function tbChuangsongfu:OnTransBattle(nItemId)
if me.GetCamp() < 9 then
me.Msg("Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013");
return 0;
end
local pItem = KItem.GetObjById(nItemId);
if (not pItem) then
return;
end
Setting:SetGlobalObj(me, him, pItem);
Item:GetClass("songjinzhaoshu"):OnUse();
Setting:RestoreGlobalObj();
end
nhưng vẫn báo lỗi .
giúp mình với !
thử tất cả các kiểu vào thêm bớt cái hàm đấy các chỗ thử xem
<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>
thử tất cả các kiểu vào thêm bớt cái hàm đấy các chỗ thử xem
<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>
Vẫn chưa ngâm đc vụ check danh hiệu à satthu :ar!
__Jie__
28-05-13, 05:04 PM
Đầu tiên cần viết ra ý tưởng đã mọi người mới giúp dc bạn ví dụ
Bạn muốn
Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013
Tiếp tục ta thức hiện , không phải fix trong phù mà fix trong NPC báo danh
script\mission\battle\npc\mubingxiaowei.lua
local pPlayer = me;
local nCheckResult = self:CheckPlayer();
if (1 == nCheckResult) then
local nPLLevel = Battle.LEVEL_LIMIT[self.nLevel];
Dialog:Say(string.format(self.tbDialog[2], nPLLevel),
{
{string.format("Ta muốn gia nhập quân <color=red>%s<color>", Battle.NAME_CAMP[self.nCampId]), self.OnSingleJoin, self, pPlayer},
{"Để ta suy nghĩ đã"},
}
);
elseif (2 == nCheckResult) then
Dialog:Say("Ngươi muốn vào chiến trường bây giờ sao? Lúc chiến đấu, ngươi và người khác hợp thành tổ đội giết địch, một công đôi việc.",
{
{"Ta muốn vào chiến trường", self.OnSingleJoin, self, pPlayer},
{"Chờ chút hãy nói"},
}
);
end
Tiếp tục fix lại mình có nhầm lẫn tí về check Phi Phong nên post lại lun
function tbNpc:GetMantleLevel(pPlayer)
local pItem = pPlayer.GetItem(Item.ROOM_EQUIP, Item.EQUIPPOS_MANTLE, 0);
if not pItem then
return 0;
end
return pItem.nLevel;
end
-- ham check FF
if self:GetMantleLevel(me) < 9 then
Dialog:Say(" Khu đực trị khối u ác tính mang FF9 rồi vào");
return 0;
end
Fix.
local pPlayer = me;
local nCheckResult = self:CheckPlayer();
if self:GetMantleLevel(me) < 9 then
Dialog:Say(" Khu đực trị khối u ác tính mang FF9 rồi vào");
return 0;
end
if (1 == nCheckResult) then
local nPLLevel = Battle.LEVEL_LIMIT[self.nLevel];
Dialog:Say(string.format(self.tbDialog[2], nPLLevel),
{
{string.format("Ta muốn gia nhập quân <color=red>%s<color>", Battle.NAME_CAMP[self.nCampId]), self.OnSingleJoin, self, pPlayer},
{"Để ta suy nghĩ đã"},
}
);
elseif (2 == nCheckResult) then
Dialog:Say("Ngươi muốn vào chiến trường bây giờ sao? Lúc chiến đấu, ngươi và người khác hợp thành tổ đội giết địch, một công đôi việc.",
{
{"Ta muốn vào chiến trường", self.OnSingleJoin, self, pPlayer},
{"Chờ chút hãy nói"},
}
);
end
Nên thêm biến check time để chính xác là 21h mới chạy còn không cái trên h nào củng check b-(
Hàm kiểm tra cấp vinh dự hiện tại : Áp dụng để đeo phi phong
me.GetHonorLevel();
VD: Nhân vật đang có vinh dự Võ Lâm cấp x, vinh dự Thủ Lĩnh cấp y, vinh dự Tài Phú cấp z
=> Hàm trên trả về giá trị max(x,y,z)
dongahchu
28-05-13, 08:34 PM
GetMantleLevel
Hàm này chắc chắn đúng rồi anh ạ
Em thử xem sao . Cảm ơn mấy a đã trả lời !
dongahchu
28-05-13, 08:45 PM
Đầu tiên cần viết ra ý tưởng đã mọi người mới giúp dc bạn ví dụ
Bạn muốn
Phi phong chí tôn và vô song mới có thể tham gia Tống Kim đại chiến lúc 21 giờ ngày 28/5/2013
Tiếp tục ta thức hiện , không phải fix trong phù mà fix trong NPC báo danh
script\mission\battle\npc\mubingxiaowei.lua
local pPlayer = me;
local nCheckResult = self:CheckPlayer();
if (1 == nCheckResult) then
local nPLLevel = Battle.LEVEL_LIMIT[self.nLevel];
Dialog:Say(string.format(self.tbDialog[2], nPLLevel),
{
{string.format("Ta muốn gia nhập quân <color=red>%s<color>", Battle.NAME_CAMP[self.nCampId]), self.OnSingleJoin, self, pPlayer},
{"Để ta suy nghĩ đã"},
}
);
elseif (2 == nCheckResult) then
Dialog:Say("Ngươi muốn vào chiến trường bây giờ sao? Lúc chiến đấu, ngươi và người khác hợp thành tổ đội giết địch, một công đôi việc.",
{
{"Ta muốn vào chiến trường", self.OnSingleJoin, self, pPlayer},
{"Chờ chút hãy nói"},
}
);
end
Tiếp tục fix lại mình có nhầm lẫn tí về check Phi Phong nên post lại lun
function tbNpc:GetMantleLevel(pPlayer)
local pItem = pPlayer.GetItem(Item.ROOM_EQUIP, Item.EQUIPPOS_MANTLE, 0);
if not pItem then
return 0;
end
return pItem.nLevel;
end
-- ham check FF
if self:GetMantleLevel(me) < 9 then
Dialog:Say(" Khu đực trị khối u ác tính mang FF9 rồi vào");
return 0;
end
Fix.
local pPlayer = me;
local nCheckResult = self:CheckPlayer();
if self:GetMantleLevel(me) < 9 then
Dialog:Say(" Khu đực trị khối u ác tính mang FF9 rồi vào");
return 0;
end
if (1 == nCheckResult) then
local nPLLevel = Battle.LEVEL_LIMIT[self.nLevel];
Dialog:Say(string.format(self.tbDialog[2], nPLLevel),
{
{string.format("Ta muốn gia nhập quân <color=red>%s<color>", Battle.NAME_CAMP[self.nCampId]), self.OnSingleJoin, self, pPlayer},
{"Để ta suy nghĩ đã"},
}
);
elseif (2 == nCheckResult) then
Dialog:Say("Ngươi muốn vào chiến trường bây giờ sao? Lúc chiến đấu, ngươi và người khác hợp thành tổ đội giết địch, một công đôi việc.",
{
{"Ta muốn vào chiến trường", self.OnSingleJoin, self, pPlayer},
{"Chờ chút hãy nói"},
}
);
end
Nên thêm biến check time để chính xác là 21h mới chạy còn không cái trên h nào củng check b-(
--------------------------------
Đoạn này mình chưa hiểu lắm
Vậy trong file
script\mission\battle\npc\mubingxiaowei.lua
local pPlayer = me;
local nCheckResult = self:CheckPlayer();
function tbNpc:GetMantleLevel(pPlayer)
local pItem = pPlayer.GetItem(Item.ROOM_EQUIP, Item.EQUIPPOS_MANTLE, 0);
if not pItem then
return 0;
end
return pItem.nLevel;
end
if self:GetMantleLevel(me) < 9 then
Dialog:Say(" Chỉ chấp nhận Chí tôn và Vô Song mới có thể tham gia Tống Kim Đại Chiến");
return 0;
end
if (1 == nCheckResult) then
local nPLLevel = Battle.LEVEL_LIMIT[self.nLevel];
Dialog:Say(string.format(self.tbDialog[2], nPLLevel),
{
{string.format("Ta muốn gia nhập quân <color=red>%s<color>", Battle.NAME_CAMP[self.nCampId]), self.OnSingleJoin, self, pPlayer},
{"Để ta suy nghĩ đã"},
}
;
elseif (2 == nCheckResult) then
Dialog:Say("Ngươi muốn vào chiến trường bây giờ sao? Lúc chiến đấu, ngươi và người khác hợp thành tổ đội giết địch, một công đôi việc.",
{
{"Ta muốn vào chiến trường", self.OnSingleJoin, self, pPlayer},
{"Chờ chút hãy nói"},
}
;
end
Cho cả đoạn màu đỏ + xanh vào hay chỉ xanh hoặc đỏ ?
dongahchu
28-05-13, 08:57 PM
đã làm đc , cảm ơn mấy anh nhiều !
__Jie__
28-05-13, 08:59 PM
share rõ rồi còn gì
Viết 1 hàm mới giống thế này ở file cần
function tbNpc:GetMantleLevel(pPlayer)
local pItem = pPlayer.GetItem(Item.ROOM_EQUIP, Item.EQUIPPOS_MANTLE, 0);
if not pItem then
return 0;
end
return pItem.nLevel;
end
sử dụng if check bên dưới chèn vào chổ cần check
if self:GetMantleLevel(me) < 9 then
Dialog:Say(" Khu đực trị khối u ác tính mang FF9 rồi vào");
return 0;
end
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.