Hàm hay dùng trong Kiếm Thế

G.A.M.E

Moderator
Tình hình là thấy bên topic <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ủa bác DarkFoxIT k còn hoạt động nữa nên hôm nay mình muốn lập topic này để tổng hợp và update các hàm dùng trong Kiếm Thế . Mọi người cùng đóng góp nhé

Hàm add EXP
me.AddExp(số exp muốn add);

Hiện lên bảng
Dialog:Say("Viết câu cần hiện lên ở đây");

Hiện chữ ở khung chat
me.Msg("Viết câu cần hiện lên ở đây");

Hiện lên kênh thế giới . Chữ vàng giống lúc thông báo hoạt động của hệ thống
local szMsg = string.format("Viết câu cần hiện lên ở đây");
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);


Hàm AddItem
me.AddItem(Genre,DetailType,ParticularType,Level);
hoặc
me.AddItem(Genre,DetailType,ParticularType,Level,S eries);
Đối với đồ có thể cường hóa : me.AddItem(Genre,DetailType,ParticularType,Level,S eries,Cấp Cường Hóa);
Thông số vật phẩm các bạn xem trong : setting\item\001\other
Thông số trang bị các bạn xem trong :
setting\item\001\equip
setting\item\001\extern\change

Hàm đếm item trong túi
local nCount1 = me.GetItemCountInBags(18,1,1,9); <-- Khai thông số item tại đây
me.Msg("Trong túi của bạn có "..nCount1.." cái vật phẩm nCount1");

Hàm kiểm tra ô trống trong túi
if me.CountFreeBagCell() < 10 then
me.Msg("Túi của bạn đã đầy, cần ít nhất 10 ô trống.");
return 0;
end

Hàm xóa item trong túi

local tbItemId2 = {18,1,1,10,0,1}; -- Khai báo thông số item tại đây
Task:DelItem(me, tbItemId2, 1); -- Xóa 1 item tbItemId2
hoặc

me.ConsumeItemInBags(nCount, 18, 1, 1, 10); -- xóa nCount viên Huyền Tinh 10


Hàm add nhiều item
local i = 1
while i<=500 do -- Số lượng item cần add ở đây là 500
me.AddItem(18,1,25151,1); -- Khai thông số item tại đây
i=i+1
end

Hàm reload scipt
DoScript("\\script\\npc\\tuiguangyuan.lua"); -- Ở đây load file tuiguangyuan.lua nằm trong scipt\npc các bạn có thể chỉnh lại tùy ý

Hàm gọi NPC
local nMapId, nPosX, nPosY = me.GetWorldPos();
KNpc.Add2(ID NPC, Cấp, Hệ, nMapId, nPosX, nPosY)
me.Msg(string.format("Đã gọi Boss tại map số %d tọa độ %d/%d",nMapId,nPosX/8,nPosY/16));

Hàm Lấy tọa độ đang đứng
local nMapId, nPosX, nPosY = me.GetWorldPos();
local sms = string.format(" Tọa độ đang đứng là:<color=yellow> %d <color>-<color=green> %d <color>",nPosX32, nPosY32);
Dialog:Say(sms);

Hàm đổi tên NPC khi gọi ra
local nMapId, nPosX, nPosY = me.GetWorldPos();
KNpc.Add2(ID NPC, Cấp, Hệ, nMapId, nPosX, nPosY).szName= "Thích tên gì đặt vào đây"

Hàm add Danh Hiệu
me.AddTitle(genre id,detailtype id,level id,rank); -- Xem trong setting\player\title.xml

Hàm add max Kỹ Năng Sống , add xong thoát ra vào lại mới được
function tbGift:kynangsong()
for i=1,10 do me.SaveLifeSkillLevel(i,120) end
me.Msg(string.format("Đã max toàn bộ kỹ năng sống"));
end

Hàm add level
me.AddLevel(X - me.nLevel); -- X là level cần add

Hàm nếu đủ điều kiện if nó mới hiện không đủ điều kiện sẽ không hiện
if me.nLevel >90 then
table.insert(tbOpt, 1,{"Nhận quà level 90",self.NhanQuaLevel90, self}); -- Tức là nếu đẳng cấp > 90 thì nó mới hiện lên dòng nhận quà level 90
end

Hàm add Bạc , Bạc Khóa , Đồng , Đồng Khóa
me.Earn(X,0); -- X là số Bạc cần add
me.AddBindMoney(Y,0); -- Y là số Bạc Khóa cần add
me.AddBindCoin(Z); -- Z là số đồng khóa cần add
me.AddJbCoin(W); -- W là số đồng thường cần add

Hàm add 1 vật phẩm có thời hạn
me.SetItemTimeout(me.AddItem(Genre,Detail,Particul ar,Level), os.date("%Y/%m/%d/%H/%M/00", GetTime() + 3600 * 24 * 30)); -- Thông số item khai ở trong ngoặc AddItem , vật phẩm này có hạn sử dụng 30 ngày các bạn có thể tùy ý chỉnh lại

Hàm chuyển trạng thái chiến đấu áp dụng cho ai thích đánh nhau trong thành =))
{"Vào trạng thái chiến đấu", me.SetFightState, 1} -- Trong thành như ngoài thành có thể gọi boss đánh ngay trong thành hoặc đánh ng cùng trạng thái
{"Hủy trạng thái chiến đấu", me.SetFightState, 0}

Hàm gửi thông báo đến hảo hữu
me.SendMsgToFriend("Thích gì ghi vào đây");

Check level
me.nLevel

Check giới tính
me.nSex == 0 ( Nam)
me.nSex == 1 ( Nữ )

Check Môn Phái và Hệ Phái
me.nFaction == 1 and me.nRouteId == 1 -- Thiếu Lâm Đao
me.nFaction == 1 and me.nRouteId == 2 -- Thiếu Lâm Bổng

me.nFaction == 2 and me.nRouteId == 1 -- Thiên Vương Thương
me.nFaction == 2 and me.nRouteId == 2 -- Thiên Vương Chùy

me.nFaction == 3 and me.nRouteId == 1 -- Đường Môn Bẫy
me.nFaction == 3 and me.nRouteId == 2 -- Đường Môn Tụ Tiễn

me.nFaction == 4 and me.nRouteId == 1 -- Ngũ Độc Đao
me.nFaction == 4 and me.nRouteId == 2 -- Ngũ Độc Chưởng

me.nFaction == 5 and me.nRouteId == 1 -- Nga Mi Chưởng
me.nFaction == 5 and me.nRouteId == 2 -- Nga Mi Kiếm

me.nFaction == 6 and me.nRouteId == 1 -- Thúy Yên Kiếm
me.nFaction == 6 and me.nRouteId == 2 -- Thúy Yên Đao

me.nFaction == 7 and me.nRouteId == 1 -- Cái Bang Chưởng
me.nFaction == 7 and me.nRouteId == 2 -- Cái Bang Bổng

me.nFaction == 8 and me.nRouteId == 1 -- Thiên Nhẫn Kích
me.nFaction == 8 and me.nRouteId == 2 -- Thiên Nhẫn Đao

me.nFaction == 9 and me.nRouteId == 1 -- Võ Đang Khí
me.nFaction == 9 and me.nRouteId == 2 -- Võ Đang Kiếm

me.nFaction == 10 and me.nRouteId == 1 -- Côn Lôn Đao
me.nFaction == 10 and me.nRouteId == 2 -- Côn Lôn Kiếm

me.nFaction == 11 and me.nRouteId == 1 -- Minh Giáo Chủy
me.nFaction == 11 and me.nRouteId == 2 -- Minh Giáo Kiếm

me.nFaction == 12 and me.nRouteId == 1 -- Đoàn Thị Kiếm
me.nFaction == 12 and me.nRouteId == 2 -- Đoàn Thị Chỉ

Hàm add kỹ năng
me.AddFightSkill(ID trong skill.txt,cấp của kỹ năng)

Hàm xử lý tiến trình giống như khi mở rương thuốc by tuidangvui (<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>)
local tbBreakEvent =
{
Player.ProcessBreakEvent.emEVENT_MOVE,
Player.ProcessBreakEvent.emEVENT_ATTACK,
Player.ProcessBreakEvent.emEVENT_SIT,
Player.ProcessBreakEvent.emEVENT_RIDE,
Player.ProcessBreakEvent.emEVENT_USEITEM,
Player.ProcessBreakEvent.emEVENT_ARRANGEITEM,
Player.ProcessBreakEvent.emEVENT_DROPITEM,
Player.ProcessBreakEvent.emEVENT_CHANGEEQUIP,
Player.ProcessBreakEvent.emEVENT_SENDMAIL,
Player.ProcessBreakEvent.emEVENT_TRADE,
Player.ProcessBreakEvent.emEVENT_CHANGEFIGHTSTATE,
Player.ProcessBreakEvent.emEVENT_ATTACKED,
Player.ProcessBreakEvent.emEVENT_DEATH,
Player.ProcessBreakEvent.emEVENT_LOGOUT,
Player.ProcessBreakEvent.emEVENT_REVIVE,
Player.ProcessBreakEvent.emEVENT_CLIENTCOMMAND,
}
GeneralProcess:StartProcess("Đang mở", 10 * Env.GAME_FPS, {self.XuLyMo, self}, nil, tbBreakEvent);

Hàm add danh vọng : xem trong setting\player\repute.xml
AddRepute("số Camp","số Class","số Điểm cần ADD")

Hàm add nhiều vật phẩm cùng loại ví dụ như là add tất cả mũ
for i = a,z do -- a và z là ParticularType của item cùng loại
me.AddItem(Genre,DetailType,i,Level)
end

Hàm add thêm điểm tiềm năng và kỹ năng
me.AddPotential(X); ===> X là số điểm tiềm năng cần add
me.AddFightSkillPoint(Y); =>>> Y là số điểm kỹ năng cần add

Hàm add Tinh Lực - Hoạt Lực
me.ChangeCurMakePoint(X);--X là số tinh lực cần add
me.ChangeCurGatherPoint(Y);-- Y là số hoạt lực cần add

Check Tiền Tệ
Check bạc thường : me.nCashMoney;
Check bạc khóa : me.GetBindMoney();
Check đồng khóa : me.nBindCoin;
Check đồng thường : me.nCoin;

Thực thi script đến web
me.CallClientScript({"OpenWebSite", "Đường dẫn web"});

Check tinh lực hoạt lực

me.dwCurGTP;
me.dwCurMKP;


-------- Còn update ----------
cuga95
06-01-13, 02:34 AM
<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>
tuidangvui
06-01-13, 04:49 AM
<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>
ủng hộ 1 vé :))
xử lý tiến trình thêm code sau


local tbBreakEvent =
{
Player.ProcessBreakEvent.emEVENT_MOVE,
Player.ProcessBreakEvent.emEVENT_ATTACK,
Player.ProcessBreakEvent.emEVENT_SIT,
Player.ProcessBreakEvent.emEVENT_RIDE,
Player.ProcessBreakEvent.emEVENT_USEITEM,
Player.ProcessBreakEvent.emEVENT_ARRANGEITEM,
Player.ProcessBreakEvent.emEVENT_DROPITEM,
Player.ProcessBreakEvent.emEVENT_CHANGEEQUIP,
Player.ProcessBreakEvent.emEVENT_SENDMAIL,
Player.ProcessBreakEvent.emEVENT_TRADE,
Player.ProcessBreakEvent.emEVENT_CHANGEFIGHTSTATE,
Player.ProcessBreakEvent.emEVENT_ATTACKED,
Player.ProcessBreakEvent.emEVENT_DEATH,
Player.ProcessBreakEvent.emEVENT_LOGOUT,
Player.ProcessBreakEvent.emEVENT_REVIVE,
Player.ProcessBreakEvent.emEVENT_CLIENTCOMMAND,
}
GeneralProcess:StartProcess("Đang mở", 10 * Env.GAME_FPS, {self.XuLyMo, self}, nil, tbBreakEvent);
 

G.A.M.E

Moderator
function tbGift:OnUse()
local tbOpt = {
{"Ra khỏi môn phái", self.CanFaction, self};
{"Kết thúc đối thoại"},
};
Dialog:Say("Hỗ trợ tân thủ", tbOpt);
return 0;
end

function tbGift:CanFaction()
me.ResetFightSkillPoint();
me.JoinFaction(0);
me.SetTask(2,1,1);
me.UnAssignPotential();
me.Msg("Đã ra khỏi môn phái!");
end
 
Top