Kết quả 1 đến 2 của 2
Chủ đề: Hỏi về script nhận item 1 lần
-
01-08-17, 11:35 AM #1
- Ngày tham gia
- Apr 2013
- Bài viết
- 73
- Thanks
- 26
- Thanked 29 Times in 21 Posts
Hỏi về script nhận item 1 lần
Tình hình là mình đang viết cái túi tần thủ. Mình muốn cho chỉ nhận item 1 lần duy nhất. Mình khai báo như sau
Code:local tbGift = Item:GetClass("newplayergift"); tbGift.WULINSHIJIA_STARTTIME = 20090922; tbGift.WULINSHIJIA_ENDTIME = 20091030; tbGift.WULINSHIJIA_ITEM_TIME = 30*24*60; tbGift.TASK_GROUP_ID = 2027; tbGift.TASK_GET_BUFF = 80; tbGift.TASK_GET_YAOPAI = 81; tbGift.TaskId_Count = 1; tbGift.Use_Max =1; tbGift.TASK_GROUP_ID1 = 3001; tbGift.TASK_GROUP_ID2 = 3002;
Code:---- Add Túi function tbGift:Tui() local nCount = me.GetTask(self.TASK_GROUP_ID1, self.TaskId_Count); if nCount >= self.Use_Max then local szMsg = "<color=yellow>Phần thưởng chỉ nhận được 1 lần. Hãy chọn<color><color=pink> Nhận thưởng <color><color=yellow>:<color>"; local tbOpt = { {"Bạn đã nhận phần thưởng này rồi ..."}; }; Dialog:Say(szMsg, tbOpt); return 0; end if (nCount == 0) then local szMsg = "<color=yellow>Phần thưởng chỉ nhận được 1 lần. Hãy chọn<color><color=pink> Nhận thưởng <color><color=yellow>:<color>"; local tbOpt = { {"Nhận thưởng", self.Tui1, self}; }; Dialog:Say(szMsg, tbOpt); end me.SetTask(self.TASK_GROUP_ID1, self.TaskId_Count, nCount + 1); end function tbGift:Tui1() me.AddStackItem(21,3,1,1,self.tbItemInfo,1); -- Túi 8 ô me.AddStackItem(21,5,1,1,self.tbItemInfo,1); -- Túi 12 ô end -- Add Tinh Hoạt Lực function tbGift:TinhHoatLuc() local nCount = me.GetTask(self.TASK_GROUP_ID2, self.TaskId_Count); if nCount >= self.Use_Max then local szMsg = "<color=yellow>Phần thưởng chỉ nhận được 1 lần :<color>"; local tbOpt = { {"Bạn đã nhận phần thưởng này rồi..."}; }; Dialog:Say(szMsg, tbOpt); return 0; end if (nCount == 0) then local szMsg = "<color=yellow>Phần thưởng chỉ nhận được 1 lần. Hãy chọn<color><color=pink> Nhận thưởng <color><color=yellow>:<color>"; local tbOpt = { {"Nhận thưởng", self.TinhHoatLuc1, self}; }; Dialog:Say(szMsg, tbOpt); end me.SetTask(self.TASK_GROUP_ID2, self.TaskId_Count, nCount + 1); end function tbGift:TinhHoatLuc1() me.ChangeCurMakePoint(10000,0); me.ChangeCurGatherPoint(10000,0); end --------------------------------------------------------------
Tuy nhiên kiểu này phải khai báo khá nhiều task. Vậy có cách nào để chỉ cần khai báo 1 task không ạ. Mong các bạn chỉ giúp. Mình cảm ơn rất nhiều.Khách viếng thăm hãy cùng thuyvu89 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
01-08-17, 12:07 PM #2
- Ngày tham gia
- Sep 2008
- Bài viết
- 1,320
- Thanks
- 256
- Thanked 740 Times in 559 Posts
Ðề: Hỏi về script nhận item 1 lần
Viết gì dài quá vậy, hoa cả mắt
Khi khai bao trong tasklist.txt thì bạn để TaskGroup 3001 chạy từ 1---1000 thì bạn sẽ có bao nhiêu đó lần sử dụng.
Khi add 1 dòng nhận thưởng khác thì cứ tăng TaskId_Count lên là được
PHP Code:tbGift.Use_Max = 1;
tbGift.TASK_GROUP_ID1 = 3001;
tbGift.TaskId_Count = 1; -- cai nay tang so len,
function tbGift:Tui()
local nCount = me.GetTask(self.TASK_GROUP_ID1,self.TaskId_Count);
if nCount >= self.Use_Max then
Dialog:Say("Nguoi da nhan roi", tbOpt);
return 0;
end
me.AddStackItem(21,3,1,1,self.tbItemInfo,1); -- Túi 8 ô
me.AddStackItem(21,5,1,1,self.tbItemInfo,1); -- Túi 12 ô
me.SetTask(self.TASK_GROUP_ID1,self.TaskId_Count,nCount+1);
end
-
Các thành viên gởi lời cảm ơn đến __Jie__ vì bài viết này !
thuyvu89 (01-08-17)
Các Chủ đề tương tự
-
[KT] Share Script đổi item bẳng nhập số liệu
Bởi anhnhianh trong diễn đàn ScriptsTrả lời: 9Bài viết cuối: 05-09-15, 11:02 PM -
[KT] Xin Script gia nhập môn phái hoặc Script của trưởng môn 12 phái
Bởi giangbanlac trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 3Bài viết cuối: 15-08-13, 06:30 PM -
[KT] Script Nhận Thưởng Thăng Cấp, Chỉ Nhận Một Lần Duy Nhất.
Bởi vuongtusamac trong diễn đàn ScriptsTrả lời: 9Bài viết cuối: 20-12-12, 12:32 PM -
Một số script trong thư mục script Vina (unpack)
Bởi sangpronhat trong diễn đàn ScriptsTrả lời: 19Bài viết cuối: 26-11-11, 08:12 AM