PDA

View Full Version : [JX] Vấn đề về thời gian sử dụng của trang bị



1stduc
27-07-16, 10:43 AM
Mình muôn hỏi là ví dụ mình có 1 cái bảo rương hồng anh mà khi mở ra thì 4 món trang bị hồng anh chỉ có 1 ngày giờ mình muốn tăng thời gian sử dụng cho 4 trạng bí đó thì mình làm ntn vậy mọi người

tvnnam
27-07-16, 02:33 PM
Mình muôn hỏi là ví dụ mình có 1 cái bảo rương hồng anh mà khi mở ra thì 4 món trang bị hồng anh chỉ có 1 ngày giờ mình muốn tăng thời gian sử dụng cho 4 trạng bí đó thì mình làm ntn vậy mọi người

sử dụng hàm mà giới hạn thôi bạn... ví dụ cho bạn dễ hiểu:

add vật phẩm khóa
Code:
Include("\\script\\lib\\awardtemplet.lua")
Code:
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,71,1,0,0}, nExpiredTime=1440, nBindState=-2}, "test", 1);

- Hạn sử dụng: nExpiredTime có 2 cách tính:
tính bằng phút: 1 ngày = 1440 phút
hoặc tính đến ngày hết hạn, ví dụ nExpiredTime=20140601 tức là thời hạn sử dụng đến 00h00 - 01/06/2014
- "test" cái này hình như ghi gì cũng dc
- Số 1 cuối cùng là số lượng
- Nếu muốn ko khóa thì xóa bỏ "nBindState=-2"


Ví dụ: code trên add Tiên Thảo Lộ khóa vĩnh viễn, hạn sử dụng 1 ngày

còn muốn biết ID của trang bị thì xem trong goldequit.txt trong setting nhé .. chú ý ID thêm vào hàm = id trong goldequit trừ đi 1 nhé

1stduc
27-07-16, 04:27 PM
Cái như bạn HD thì mình cũng có đọc rồi và mình làm khóa vv luôn . Nhưng ý mình là khi mở cái Hồng Ảnh Bảo Rương ra nó ra 4 cái trang bị mà mỗi trang bị có thời hạn sử dụng là 1 ngày à .


tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2218,0,0,0}, nBindState=-2}, "Hång ¶nh b¶o rr­¬ng", 1);

Bạn xem đoạn code của mình có lỗi hay gì không. Cảm ơn bạn

--- Chế độ gộp bài viết ---

Với lại mình đang làm cái code nhận quà theo cấp độ mà sao cái quà cấp 100 mình nhận 1 lần nhận làn thứ 2 nó không cho nhận . Còn cái quà cấp 120 mình nhận một lần rồi nhận tiếp vẫn được là nó bị sao bạn . Bạn giúp mình thông não cái code này cái


IncludeLib("SETTING")
Include("\\script\\missions\\clearskill\\clearhole.lua")
Include("\\script\\global\\repute_head.lua")
Include("\\script\\misc\\league_cityinfo.lua")
Include("\\script\\global\\titlefuncs.lua")
Include("\\script\\lib\\awardtemplet.lua")
Include("\\script\\dailogsys\\dailogsay.lua")
Include("\\script\\global\\fuyuan.lua")
Include("\\script\\missions\\leaguematch\\npc\\officer.lua")
Include("\\script\\lib\\log.lua")
Include("\\script\\global\\hotrothem.lua")
------------------------------------------------------------------------------------------------------------
function main()
dofile("script/global/hotrothem.lua")
dialog_main()
end
function dialog_main()
local nNam = tonumber(GetLocalDate("%Y"));
local nThang = tonumber(GetLocalDate("%m"));
local nNgay = tonumber(GetLocalDate("%d"));
local nGio = tonumber(GetLocalDate("%H"));
local nPhut = tonumber(GetLocalDate("%M"));
local nGiay = tonumber(GetLocalDate("%S"));
local nW, nX, nY = GetWorldPos()
local nIdPlay = PlayerIndex
local tbOpt =
{
{"Hç trî t©n thñ cÊp 120", level120},
{"NhËn th­ëng theo cÊp ®é", phanthuong},
{"NhËn tói m¸u hæ trî t©n thñ", nhantuimau},
{"Vßng Buff hç trî T©n Thñ", vongsangtt},
{"Hñy vËt phÈm.", DisposeItem},
{"Tho¸t"},
}
CreateNewSayEx("Chµo mõng ®¹i hiÖp ®Õn víi Sever <color=yellow>Vâ L©m ThËp NhÊt<color>. Xin mêi ®¹i hiÖp <color=red>"..GetName().."<color> chän hç trî bªn d­íi ®Ó hµnh tÈu giang hå", tbOpt)
end

function level120()
if GetTask(80) == 0 then
local nCurLevel = GetLevel()
if nCurLevel >= 120 then
if ST_IsTransLife() == 1 then
else
Talk(1, "", "Ng­¬i ®· v­ît qua cÊp 120 råi.")
end
return
end
local nAddLevel = 120 - nCurLevel
ST_LevelUp(nAddLevel)
SetTask(80,GetTask(80)+1)
Msg2Player( "B¹n nhËn ®­îc hæ trî cÊp 120." );
else
Talk(1, "", "Ng­¬i ®· nhËn phÇn th­ëng nµy råi mµ cßn muèn nhËn n÷a sao.")
end
end

function phanthuong()
local tbOpt =
{
{"PhÇn th­ëng cÊp 100.", phanthuong100},
{"PhÇn th­ëng cÊp 120.", phanthuong120},
{"PhÇn th­ëng cÊp 130.", phanthuong130},
{"PhÇn th­ëng cÊp 140.", phanthuong140},
{"PhÇn th­ëng cÊp 150.", phanthuong150},
{"Trë l¹i", dialog_main},
{"Tho¸t"},
}
CreateNewSayEx("<npc>Xin mêi chän phÇn th­ëng t­¬ng øng víi cÊp ®é !", tbOpt)
end

function phanthuong100()
if CalcFreeItemCellCount() < 30 then
Say("H·y cÊt bít vËt phÈm ®Ó ®¶m b¶o cã « trèng råi h·y më.",0);
return 1;
end
if GetLevel()>=100 then
if GetTask(100)==0 then
for i=177,185 do
AddGoldItem(0 ,i)
end
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2218,0,0,0}, nBindState=-2}, "Hång ¶nh b¶o rr­¬ng", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1181,0,0,0}, nBindState=-2}, "Tiªn Th¶o Lé ®Æc biÖt", 5);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2426,0,0,0}, nBindState=-2}, "S¸ch kü n¨ng cÊp 90", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2424,0,0,0}, nBindState=-2}, "§¹i Thµnh BÝ KÝp 90", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2332,0,0,0}, nBindState=-2}, "M· bµi - ChiÕu D¹ Ngäc S­ Tö", 1);
SetTask(100,GetTask(100)+1)
Msg2Player("§· nhËn thµnh c«ng phÇn th­ëng cÊp ®é 80.")
else
Talk(1, "", "Ng­¬i ®· nhËn råi kh«ng thÓ nhËn n÷a. ")
end
end
end

function phanthuong120()
if CalcFreeItemCellCount() < 30 then
Say("H·y cÊt bít vËt phÈm ®Ó ®¶m b¶o cã « trèng råi h·y më.",0);
return 1;
end
if GetLevel()>=120 then
if GetTask(120)==120 then
AddGoldItem(0 ,i)
end
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1181,0,0,0}, nBindState=-2}, "Tiªn Th¶o Lé ®Æc biÖt", 5);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1125,0,0,0}, nBindState=-2}, "BÝ quyÕt kü n¨ng cÊp 120", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2425,0,0,0}, nBindState=-2}, "§¹i Thµnh BÝ KÝp 120", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2333,0,0,0}, nBindState=-2}, "M· bµi - B«n Tiªu", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,30146,0,0,0}, nBindState=-2}, "Th­¬ng Lang Chi B¶o", 1);
SetTask(120,GetTask(120)+1)
Msg2Player("§· nhËn thµnh c«ng phÇn th­ëng cÊp ®é 120.")
else
Talk(1, "", "Ng­¬i ®· nhËn råi kh«ng thÓ nhËn n÷a. ")
end
end

phongmous96
27-07-16, 07:10 PM
Cái như bạn HD thì mình cũng có đọc rồi và mình làm khóa vv luôn . Nhưng ý mình là khi mở cái Hồng Ảnh Bảo Rương ra nó ra 4 cái trang bị mà mỗi trang bị có thời hạn sử dụng là 1 ngày à .



Bạn xem đoạn code của mình có lỗi hay gì không. Cảm ơn bạn

--- Chế độ gộp bài viết ---

Với lại mình đang làm cái code nhận quà theo cấp độ mà sao cái quà cấp 100 mình nhận 1 lần nhận làn thứ 2 nó không cho nhận . Còn cái quà cấp 120 mình nhận một lần rồi nhận tiếp vẫn được là nó bị sao bạn . Bạn giúp mình thông não cái code này cái

Copy Code Bên Dưới Paste Vào Mà Hưởng Thụ ;))


function phanthuong120()
if CalcFreeItemCellCount() < 30 then
Say("H·y cÊt bít vËt phÈm ®Ó ®¶m b¶o cã « trèng råi h·y më.",0);
return 1;
end
if GetLevel()>=120 then
if GetTask(120)== 0 then
AddGoldItem(0 ,i)
end
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1181,0,0,0}, nBindState=-2}, "Tiªn Th¶o Lé ®Æc biÖt", 5);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1125,0,0,0}, nBindState=-2}, "BÝ quyÕt kü n¨ng cÊp 120", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2425,0,0,0}, nBindState=-2}, "§¹i Thµnh BÝ KÝp 120", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2333,0,0,0}, nBindState=-2}, "M· bµi - B«n Tiªu", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,30146,0,0,0}, nBindState=-2}, "Th­¬ng Lang Chi B¶o", 1);
SetTask(120,GetTask(120)+1)
Msg2Player("§· nhËn thµnh c«ng phÇn th­ëng cÊp ®é 120.")
else
Talk(1, "", "Ng­¬i ®· nhËn råi kh«ng thÓ nhËn n÷a. ")
end
end

carotkhoaitay
27-07-16, 07:30 PM
Cái như bạn HD thì mình cũng có đọc rồi và mình làm khóa vv luôn . Nhưng ý mình là khi mở cái Hồng Ảnh Bảo Rương ra nó ra 4 cái trang bị mà mỗi trang bị có thời hạn sử dụng là 1 ngày à .



Bạn xem đoạn code của mình có lỗi hay gì không. Cảm ơn bạn

--- Chế độ gộp bài viết ---

Với lại mình đang làm cái code nhận quà theo cấp độ mà sao cái quà cấp 100 mình nhận 1 lần nhận làn thứ 2 nó không cho nhận . Còn cái quà cấp 120 mình nhận một lần rồi nhận tiếp vẫn được là nó bị sao bạn . Bạn giúp mình thông não cái code này cái

if GetTask(120)==120 then sua lai if GetTask(120)==0 then

1stduc
28-07-16, 10:45 PM
Copy Code Bên Dưới Paste Vào Mà Hưởng Thụ ;))


function phanthuong120()
if CalcFreeItemCellCount() < 30 then
Say("H·y cÊt bít vËt phÈm ®Ó ®¶m b¶o cã « trèng råi h·y më.",0);
return 1;
end
if GetLevel()>=120 then
if GetTask(120)== 0 then
AddGoldItem(0 ,i)
end
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1181,0,0,0}, nBindState=-2}, "Tiªn Th¶o Lé ®Æc biÖt", 5);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,1125,0,0,0}, nBindState=-2}, "BÝ quyÕt kü n¨ng cÊp 120", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2425,0,0,0}, nBindState=-2}, "§¹i Thµnh BÝ KÝp 120", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,2333,0,0,0}, nBindState=-2}, "M· bµi - B«n Tiªu", 1);
tbAwardTemplet:GiveAwardByList({tbProp = {6,1,30146,0,0,0}, nBindState=-2}, "Th­¬ng Lang Chi B¶o", 1);
SetTask(120,GetTask(120)+1)
Msg2Player("§· nhËn thµnh c«ng phÇn th­ëng cÊp ®é 120.")
else
Talk(1, "", "Ng­¬i ®· nhËn råi kh«ng thÓ nhËn n÷a. ")
end
end

Vẫn ko được bác ơi nó vẫn bị như thế . Dù gì cũng cảm ơn bác tặng bác 1 nút Thanks :D

1stduc
28-07-16, 11:04 PM
if GetTask(120)==120 then sua lai if GetTask(120)==0 then

Mình sửa thành if GetTask(120)==0 the nó vẫn bị :(

kennyhoang
30-07-16, 08:00 PM
local nItemIndex = AddItem(6,1,x,1,0,0); --x: ID item
ITEM_SetExpiredTime(nItemIndex, 10080); -- Thời hạn 7 ngày
SyncItem(nItemIndex);
SetItemBindState(nItemIndex,-2); Khóa vật phẩm


thử xem