PDA

View Full Version : [KT] [Hỏi] Scrip nhận đồ chỉ nhận 1 lần ?



Kunedo
21-10-12, 12:50 PM
Scrip chỉ được nhận 1 lần như vào vâỵ mọi ngươì, thanks :D

vipbk
21-10-12, 02:00 PM
Ví dụ dưới đây mình add vào túi tân thủ, bạn có thể add vào NPC bất kỳ


tbGift.TASK_GROUP_ID = 3001;
tbGift.TASK_ID = 1;
tbGift.Use_Max = 1;

function tbGift:nhanthuong()
local nCount = me.GetTask(self.TASK_GROUP_ID, self.TASK_ID);

if nCount >= self.Use_Max then
local szMsg = "Xin hãy chọn:";
local tbOpt = {};
table.insert(tbOpt , {"Bạn đã nhận rồi"});
Dialog:Say(szMsg, tbOpt);
return 0;
end

if (nCount == 0) then
local szMsg = "Xin hãy chọn:";
local tbOpt = {};
table.insert(tbOpt , {"Nhận ngay", self.nhanngay, self});
Dialog:Say(szMsg, tbOpt);

me.SetTask(self.TASK_GROUP_ID, self.TASK_ID, nCount + 1);
end
end

function tbGift:nhanngay()
me.AddItem(...);
end


Khai báo Task như sau:
mở file: gameserver\setting\player\task_def.txt

copy dòng cuối cùng, paste xuống dưới ta được 1 dòng mới, sửa lại thành:


3001 1 1 Nhận thưởng 1 lần duy nhất 0 0

Nhớ thêm 1 dòng trắng cuối cùng.