PDA

View Full Version : [KT] HELP! Script check số lượng vật phẩm và item



neverbackdown
22-12-12, 02:34 PM
#-o Mình dựa trên script đổi manh ghép ngựa, áo, nón hoàng kim và bạch kim để viết lại 1 script đổi trang bị khác
mà sau khi sửa ID vật phẩm thì nó báo lỗi chỗ check số lượng vật phẩm và chỗ check có phải vật phẩm đó ko.
Ai bik thì giúp mình với, cảm ơn mọi người nhìu ^^

neverbackdown
22-12-12, 05:57 PM
UPPPPPPPPPPPPPPPPPPPPPPPPP :( giúp mình với các bạn

satthupro95
22-12-12, 06:26 PM
Bạn có thể post file scipt đó lên đây k ?
THeo mình nghĩ lỗi chỉ có những trường hợp sau :
+Do cái tổng rate k = số rate của các vật phẩm cộng lại
+Do chỗ vòng lặp i chạy từ 1 đến số vật phẩm . Ví dụ bạn khai 5 vật phẩm thì i chạy từ 1 đến 5
+Do id item của bạn k có trong sciptitem nó sẽ báo nil value

neverbackdown
22-12-12, 06:42 PM
Bạn có thể post file scipt đó lên đây k ?
THeo mình nghĩ lỗi chỉ có những trường hợp sau :
+Do cái tổng rate k = số rate của các vật phẩm cộng lại
+Do chỗ vòng lặp i chạy từ 1 đến số vật phẩm . Ví dụ bạn khai 5 vật phẩm thì i chạy từ 1 đến 5
+Do id item của bạn k có trong sciptitem nó sẽ báo nil value

Mong bạn giúp đỡ



local tbNpc = Npc:GetClass("changeahk");
local REQUIRE_ITEM = {
[1] =
{
{
{
string.format("%s,%s,%s,%s", 18, 1, 377, 1),

},
3,
},
{
{
string.format("%s,%s,%s,%s", 1, 16, 13, 1),
},
1,
},
},[2] =
{
{
{
string.format("%s,%s,%s,%s", 18, 1, 377, 1),

},
6,
},
{
{
string.format("%s,%s,%s,%s", 1, 16, 16, 2),
},
1,
},
},[3] =
{
{
{
string.format("%s,%s,%s,%s", 18, 1, 377, 1),
},
9,
},
{
{
string.format("%s,%s,%s,%s", 1, 16, 17, 2),
},
1,
},
},[4] =
{
{
{
string.format("%s,%s,%s,%s", 18, 1, 377, 1),
},
12,
},
{
{
string.format("%s,%s,%s,%s", 1, 16, 18, 2),
},
1,
},
},[5] =
{
{
{
string.format("%s,%s,%s,%s", 18, 1, 377, 1),
},
15,
},
{
{
string.format("%s,%s,%s,%s", 1, 16, 19, 2),
},
1,
},
},
};
function tbDoian:OnDialog()
local nState = me.GetTask(3006, 2);
local szButtonColor = (nState < 20 and "") or "<color=gray>";
local tbOpt =
{
{"<color=yellow>Ta Muốn Nâng Cấp Long Ấn<color>", self.longanupdate, self},
{"<color=yellow>Ta Muốn Nâng Cấp Luân Hồi Ấn<color>", self.luanhoianupdate, self},

{"Kết thúc đối thoại"},
}



Dialog:Say("<color=yellow>Nhà Sưu Tập Vũ Khí:<color> \nXin chào <color=cyan>" ..me.szName.. "<color> ! ",tbOpt);
end
function tbDoian:luanhoianupdate()
local nValue = me.nSeries;

if (nValue == 0) then
local tbOpt = {{"Kết thúc đối thoại"}};
local szMsg = "<color=cyan>" .. me.szName .. "<color> hãy gia nhập môn phái";
Dialog:Say(szMsg, tbOpt);
return;
end;
local szMsg = "Ngươi muốn nâng cấp ấn?";
local tbItemId2 = {1,16,13,1,0,0};
local tbItemId3 = {1,16,16,2,0,0};
local tbItemId4 = {1,16,17,2,0,0};
local tbItemId5 = {1,16,18,2,0,0};
local tbItemId6 = {1,16,19,2,0,0};
local tbItemId7 = {1,16,20,2,0,0};
local nCount2 = me.GetItemCountInBags(1,16,13,1);
local nCount3 = me.GetItemCountInBags(1,16,16,2);
local nCount4 = me.GetItemCountInBags(1,16,17,2);
local nCount5 = me.GetItemCountInBags(1,16,18,2);
local nCount6 = me.GetItemCountInBags(1,16,19,2);
local nCount7 = me.GetItemCountInBags(1,16,20,2);
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 or nCount7 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có vật phẩm yêu cầu<color>");
return 0;
else if nCount2 == 2
local tbOpt = {
{"Nâng Cấp Luân Hồi Ấn[Thường]", self.updateluanhoianthuong1, self},
}
Dialog:Say(szMsg, tbOpt);
else if nCount3 == 3
{"Nâng Cấp Luân Hồi Ấn[Sơ]", self.updateluanhoianthuong2, self},
}
Dialog:Say(szMsg, tbOpt);
else if nCount4 == 4
{"Nâng Cấp Luân Hồi Ấn[Trung]", self.updateluanhoianthuong3, self},
}
Dialog:Say(szMsg, tbOpt);
else if nCount5 == 5
{"Nâng Cấp Luân Hồi Ấn[Cao]", self.updateluanhoianthuong4, self},
}
Dialog:Say(szMsg, tbOpt);
else if nCount6 == 6
{"Nâng Cấp Luân Hồi Ấn[Hồn]", self.updateluanhoianthuong5, self},
}
Dialog:Say(szMsg, tbOpt);
else if nCount7 == 7
{"Nâng Cấp Luân Hồi Ấn[Thần]", self.updateluanhoianthuong6, self},
}
Dialog:Say(szMsg, tbOpt);

end
end

end


function tbNpc:updateluanhoianthuong1()
local nValue = me.nSeries;
local szMsg = "Ta sẽ giúp nhà ngươi Nâng cấp Ấn,nhưng phải trả công cho ta 100 Vạn Lượng,khả năng thành công là không lớn.nhà ngươi có chấp nhận không?";

szMsg = "Vui lòng đặt Luân Hòi Ấn + 3HTB vào.Khả năng hợp thành là không cao.Nhà Ngươi hãy suy nghĩ thật kĩ";
Dialog:OpenGift(szMsg, nil, {self.OnOpenGiftOk, self, nValue});
end;

function tbNpc:updateluanhoianthuong2()
local nValue = me.nSeries+1;
local szMsg = "Ta sẽ giúp nhà ngươi Nâng cấp Ấn,nhưng phải trả công cho ta 200 Vạn Lượng,khả năng thành công là không lớn.nhà ngươi có chấp nhận không?";

szMsg = "Vui lòng đặt Huyền Vũ Án + 6HTB vào.Khả năng hợp thành là không cao.Nhà Ngươi hãy suy nghĩ thật kĩ";
Dialog:OpenGift(szMsg, nil, {self.OnOpenGiftOk, self, nValue});
end;
function tbNpc:updateluanhoianthuong3()
local nValue = me.nSeries+2;
local szMsg = "Ta sẽ giúp nhà ngươi Nâng cấp Ấn,nhưng phải trả công cho ta 300 Vạn Lượng,khả năng thành công là không lớn.nhà ngươi có chấp nhận không?";

szMsg = "Vui lòng đặt Bạch Hỗ Ấn + 9HTB vào.Khả năng hợp thành là không cao.Nhà Ngươi hãy suy nghĩ thật kĩ";
Dialog:OpenGift(szMsg, nil, {self.OnOpenGiftOk, self, nValue});
end;
function tbNpc:updateluanhoianthuong4()
local nValue = me.nSeries+3;
local szMsg = "Ta sẽ giúp nhà ngươi Nâng cấp Ấn,nhưng phải trả công cho ta 400 Vạn Lượng,khả năng thành công là không lớn.nhà ngươi có chấp nhận không?";

szMsg = "Vui lòng đặt Chu Tước Ấn + 12HTB vào.Khả năng hợp thành là không cao.Nhà Ngươi hãy suy nghĩ thật kĩ";
Dialog:OpenGift(szMsg, nil, {self.OnOpenGiftOk, self, nValue});
end;
function tbNpc:updateluanhoianthuong5()
local nValue = me.nSeries+4;
local szMsg = "Ta sẽ giúp nhà ngươi Nâng cấp Ấn,nhưng phải trả công cho ta 500 Vạn Lượng,khả năng thành công là không lớn.nhà ngươi có chấp nhận không?";

szMsg = "Vui lòng đặt Thanh Long Ấn + 15HTB vào.Khả năng hợp thành là không cao.Nhà Ngươi hãy suy nghĩ thật kĩ";
Dialog:OpenGift(szMsg, nil, {self.OnOpenGiftOk, self, nValue});
end;

function tbNpc:OnOpenGiftOk(nValue, tbItemObj)
local nFaction = me.nFaction;
local nRouteId = me.nRouteId;
local nSex = me.nSex;
local nMyMoney = me.nCashMoney; --GetCash();

if (nMyMoney < 1000000) then
Dialog:Say("Không đủ Tiền Vạn, có đủ rồi hãy quay lại.");
return 0;
end

local tbItemList = {};

for _, pItem in pairs(tbItemObj) do
if (self:ChechItem(pItem, REQUIRE_ITEM[nValue], tbItemList) ~= 1) then
me.Msg("Có Vật Phẩm không đủ tiêu chuẩn.");
return 0;
end
end;

local bResult = false;
for i = 1, #REQUIRE_ITEM[nValue] do
if (REQUIRE_ITEM[nValue][i][2] ~= tbItemList[i]) then
bResult = true;
end
end;

if (bResult) then
me.Msg("Số lượng Mảnh Ghép Cực Phẩm không đúng.");
return 0;
end;

for _, pItem in pairs(tbItemObj) do
if me.DelItem(pItem[1]) ~= 1 then
return 0;
end;
end;
if (nValue == 1) then
me.CostMoney(1000000,0);
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {4000, 6000};
local tbAward =
{
[1] = {1, 16, 13, 1};
[2] = {1,16,16,2};
}

for i = 1, 2 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) then
local szMsg = string.format("Chúc mừng người chơi <color=cyan>%s<color> đã may mắn Hợp Thành thành công <color=cyan>%s<color>", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.SendMsgToFriend("Hảo hữu của bạn [<color=yellow>" .. me.szName
.. "<color>] Hợp Thành thành công <color=cyan>"
.. pItem.szName .."<color>");
me.Msg("Hợp thành thành công nhận được <color=yellow>"..pItem.szName.."<color>.");
elseif (nIndex == 1) then
me.Msg("Hợp thành thất bại nhận được <color=yellow>"..pItem.szName.."<color>.");

end
end;

if (nValue == 2) then
me.CostMoney(2000000,0);
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {4000, 6000};
local tbAward =
{
[1] = {1, 16, 13, 1};
[2] = {1,16,17,2};
}

for i = 1, 2 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) then
local szMsg = string.format("Chúc mừng người chơi <color=cyan>%s<color> đã may mắn Hợp Thành thành công <color=cyan>%s<color>", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.SendMsgToFriend("Hảo hữu của bạn [<color=yellow>" .. me.szName
.. "<color>] Hợp Thành thành công <color=cyan>"
.. pItem.szName .."<color>");
me.Msg("Hợp thành thành công nhận được <color=yellow>"..pItem.szName.."<color>.");
elseif (nIndex == 1) then
me.Msg("Hợp thành thất bại nhận được <color=yellow>"..pItem.szName.."<color>.");

end
end;
if (nValue == 3) then
me.CostMoney(3000000,0);
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {4000, 6000};
local tbAward =
{
[1] = {1, 16, 13, 1};
[2] = {1,16,18,2};
}

for i = 1, 2 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) then
local szMsg = string.format("Chúc mừng người chơi <color=cyan>%s<color> đã may mắn Hợp Thành thành công <color=cyan>%s<color>", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.SendMsgToFriend("Hảo hữu của bạn [<color=yellow>" .. me.szName
.. "<color>] Hợp Thành thành công <color=cyan>"
.. pItem.szName .."<color>");
me.Msg("Hợp thành thành công nhận được <color=yellow>"..pItem.szName.."<color>.");
elseif (nIndex == 1) then
me.Msg("Hợp thành thất bại nhận được <color=yellow>"..pItem.szName.."<color>.");

end
end;
if (nValue == 4) then
me.CostMoney(4000000,0);
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {4000, 6000};
local tbAward =
{
[1] = {1, 16, 13, 1};
[2] = {1,16,19,2};
}

for i = 1, 2 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) then
local szMsg = string.format("Chúc mừng người chơi <color=cyan>%s<color> đã may mắn Hợp Thành thành công <color=cyan>%s<color>", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.SendMsgToFriend("Hảo hữu của bạn [<color=yellow>" .. me.szName
.. "<color>] Hợp Thành thành công <color=cyan>"
.. pItem.szName .."<color>");
me.Msg("Hợp thành thành công nhận được <color=yellow>"..pItem.szName.."<color>.");
elseif (nIndex == 1) then
me.Msg("Hợp thành thất bại nhận được <color=yellow>"..pItem.szName.."<color>.");

end
end;
if (nValue == 5) then
me.CostMoney(5000000,0);
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 10000);
-- fill 3 rate
local tbRate = {4000, 6000};
local tbAward =
{
[1] = {1, 16, 13, 1};
[2] = {1,16,20,2};
}

for i = 1, 2 do
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) then
local szMsg = string.format("Chúc mừng người chơi <color=cyan>%s<color> đã may mắn Hợp Thành thành công <color=cyan>%s<color>", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.Msg("Hợp thành thành công nhận được <color=yellow>"..pItem.szName.."<color>.");
me.SendMsgToFriend("Hảo hữu của bạn [<color=yellow>" .. me.szName
.. "<color>] Hợp Thành thành công <color=cyan>"
.. pItem.szName .."<color>");
me.Msg("Hợp thành thành công nhận được <color=yellow>"..pItem.szName.."<color>.");
elseif (nIndex == 1) then
me.Msg("Hợp thành thất bại nhận được <color=yellow>"..pItem.szName.."<color>.");

end
end;
end;

-- 檢測是否是需要的物品
function tbNpc:ChechItem(pItem, tbItemList, tbCountList)
if (not pItem) then
return 0;
end;
local szItem = string.format("%s,%s,%s,%s",pItem[1].nGenre, pItem[1].nDetail, pItem[1].nParticular, pItem[1].nLevel);

for i = 1, #tbItemList do
local tbI = tbItemList[i];
for j = 1, #tbI[1] do
if (szItem == tbI[1][j]) then
tbCountList[i] = (tbCountList[i] or 0) + pItem[1].nCount;
return 1;
end;
end;
end;

return 0;
end;

satthupro95
22-12-12, 06:57 PM
Bạn có thể dùng scipt này của mình để làm đổi thưởng . Nó k dài như scipt này :

function tbTuiGuangYuan:TienNghiaQuanDoiVP()
if me.CountFreeBagCell() < 20 then
Dialog:Say("<color=yellow>Hành trang phải đủ 20 Ô Trống <color>");
return 0;
end
local szMsg = "<color=gold>Chọn vật phẩm muốn đổi<color>";
local tbOpt = {
{"<color=yellow>5 Tiền Nghĩa Quân<color> - 1 Thức Ăn Cho Gà",self.TNQDoiMGVPA,self};
};
Dialog:Say(szMsg, tbOpt);
end

function tbTuiGuangYuan:TNQDoiMGVPA()
local tbItemId2 = {18,1,25110,1,0,0}; -- Đây là vật phẩm dùng để đổi
local nCount2 = me.GetItemCountInBags(18,1,25110,1); -- cái này để kiểm tra vật phẩm trong hành trang
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 20000); -- 20000 là tổng rate của 5 vật phẩm
-- fill 3 rate
local tbRate = {10000,500,2000,5000,2500}; -- Rate của từng vật phẩm khi tổng vào bằng 20000
local tbAward =
{
[1] = {18,1,25109,1}; -- Túi thức ăn gà
[2] = {18,1,1,9}; -- Huyền Tinh 9
[3] = {18,1,25108,1}; -- Búa Vàng
[4] = {18,1,1,7}; -- Huyền Tinh 7
[5] = {18,1,1,8}; -- Huyền Tinh 8
}
if me.CountFreeBagCell() < 10 then
Dialog:Say("Phải Có 10 Ô Trống Trong Túi Hành Trang Mới Mua Được VP Nghĩa Quân !");
return 0;
end
if nCount2 < 5 then -- Kiểm tra số lượng vật phẩm trong hành trang
Dialog:Say("<color=yellow>Trong hành trang của bạn không có <color=cyan>5 Tiền Nghĩa Quân<color>");
return 0;
end
for i = 1, 5 do -- Bao nhiêu vật phẩm thì i sẽ chạy từ 1 đến số vật phẩm đó
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) or (nIndex == 3) or (nIndex == 4) or (nIndex == 5) then
local szMsg = string.format("<color=cyan>%s<color> Khi giao dịch tại NPC Cổ Phong Hà may mắn nhận được <color=cyan>"
.. pItem.szName .." ", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.SendMsgToFriend("Hảo hữu của bạn [<color=cyan>" .. me.szName
.. "<color>] Khi giao dịch tại NPC Cổ Phong Hà may mắn nhận được <color=cyan>"
.. pItem.szName .." ");
me.Msg("<color=yellow>Giao dịch với Cổ Phong Hà nhận được <color=cyan>"..pItem.szName.."<color><color>");
Task:DelItem(me, tbItemId2, 5); -- Xóa 5 vật phẩm ItemId2
elseif (nIndex == 1)then
me.Msg("<color=yellow>Đổi thành công Túi Thức Ăn<color>");
Task:DelItem(me, tbItemId2, 5); -- Xóa 5 vật phẩm ItemId2
end
end

neverbackdown
22-12-12, 07:05 PM
Bạn có thể dùng scipt này của mình để làm đổi thưởng . Nó k dài như scipt này :

function tbTuiGuangYuan:TienNghiaQuanDoiVP()
if me.CountFreeBagCell() < 20 then
Dialog:Say("<color=yellow>Hành trang phải đủ 20 Ô Trống <color>");
return 0;
end
local szMsg = "<color=gold>Chọn vật phẩm muốn đổi<color>";
local tbOpt = {
{"<color=yellow>5 Tiền Nghĩa Quân<color> - 1 Thức Ăn Cho Gà",self.TNQDoiMGVPA,self};
};
Dialog:Say(szMsg, tbOpt);
end

function tbTuiGuangYuan:TNQDoiMGVPA()
local tbItemId2 = {18,1,25110,1,0,0}; -- Đây là vật phẩm dùng để đổi
local nCount2 = me.GetItemCountInBags(18,1,25110,1); -- cái này để kiểm tra vật phẩm trong hành trang
local i = 0;
local nAdd = 0;
local nRand = 0;
local nIndex = 0;
-- random
nRand = MathRandom(1, 20000); -- 20000 là tổng rate của 5 vật phẩm
-- fill 3 rate
local tbRate = {10000,500,2000,5000,2500}; -- Rate của từng vật phẩm khi tổng vào bằng 20000
local tbAward =
{
[1] = {18,1,25109,1}; -- Túi thức ăn gà
[2] = {18,1,1,9}; -- Huyền Tinh 9
[3] = {18,1,25108,1}; -- Búa Vàng
[4] = {18,1,1,7}; -- Huyền Tinh 7
[5] = {18,1,1,8}; -- Huyền Tinh 8
}
if me.CountFreeBagCell() < 10 then
Dialog:Say("Phải Có 10 Ô Trống Trong Túi Hành Trang Mới Mua Được VP Nghĩa Quân !");
return 0;
end
if nCount2 < 5 then -- Kiểm tra số lượng vật phẩm trong hành trang
Dialog:Say("<color=yellow>Trong hành trang của bạn không có <color=cyan>5 Tiền Nghĩa Quân<color>");
return 0;
end
for i = 1, 5 do -- Bao nhiêu vật phẩm thì i sẽ chạy từ 1 đến số vật phẩm đó
nAdd = nAdd + tbRate[i];
if nAdd >= nRand then
nIndex = i;
break;
end
end
local pItem = me.AddItem(unpack(tbAward[nIndex]));
pItem.Bind(1);
if (nIndex == 2) or (nIndex == 3) or (nIndex == 4) or (nIndex == 5) then
local szMsg = string.format("<color=cyan>%s<color> Khi giao dịch tại NPC Cổ Phong Hà may mắn nhận được <color=cyan>"
.. pItem.szName .." ", me.szName, pItem.szName);
KDialog.NewsMsg(1, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal(szMsg);
me.SendMsgToFriend("Hảo hữu của bạn [<color=cyan>" .. me.szName
.. "<color>] Khi giao dịch tại NPC Cổ Phong Hà may mắn nhận được <color=cyan>"
.. pItem.szName .." ");
me.Msg("<color=yellow>Giao dịch với Cổ Phong Hà nhận được <color=cyan>"..pItem.szName.."<color><color>");
Task:DelItem(me, tbItemId2, 5);
elseif (nIndex == 1)then
me.Msg("<color=yellow>Đổi thành công Túi Thức Ăn<color>");
Task:DelItem(me, tbItemId2, 5);
end
end

Cảm ơn bạn rất nhiều, nhưng dạng của mình là
vd: bấm vào thì nó sẽ hiện ra table bỏ vật phẩm vào.giống như dạng cường hóa trang bị. chứ không phải nó check thằng trong rương đồ của mình.
:( cái dạng của mình bị lỗi gì ko bik nữa, mong bạn giúp mình

satthupro95
22-12-12, 07:07 PM
Cảm ơn bạn rất nhiều, nhưng dạng của mình là
vd: bấm vào thì nó sẽ hiện ra table bỏ vật phẩm vào.giống như dạng cường hóa trang bị. chứ không phải nó check thằng trong rương đồ của mình.
:( cái dạng của mình bị lỗi gì ko bik nữa, mong bạn giúp mình

Dạng hiện khung đây :
function tbTuiGuangYuan:DoiTheThanhVienVip()
local szMsg = "Ngươi muốn ghép <color=yellow>Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc]<color> ?";
local tbOpt = {
{"Ghép \n<color=yellow>Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc] <color>", self.ChangeItemThanhVienVIP, self, 1},
{"Để Ta Suy Nghỉ"},
};
Dialog:Say(szMsg, tbOpt);
end
function tbTuiGuangYuan:ChangeItemThanhVienVIP(nLevel)
local szContent = string.format("<color=yellow>Hãy đặt : \n<color=orange>150 Mảnh Ghép Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc]<color>\nỞ dưới này để ghép thành <color=orange>Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc]<color> ");
Dialog:OpenGift(szContent, nil, {tbTuiGuangYuan.OnOpenGiftOkThanhVienVip, tbTuiGuangYuan, nLevel});
end
-------------------------------------- me.AddItem(18,1,1200,1)
function tbTuiGuangYuan:OnOpenGiftOkThanhVienVip(nLevel, tbItemObj)
--Vật phẩm dùng để đổi (Mảnh Ghép Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc])
local vatpham = "18,1,25065,1";
--Đếm số lượng nguyên liệu
local nCount = 0;
for i = 1, #tbItemObj do
nCount = nCount + tbItemObj[i][1].nCount;
end
--Check đúng 150 Mảnh ghép hay không?
if nCount ~= 150 then
Dialog:Say("<color=pink>Chú ý : <color>Mỗi lần chỉ được đặt vào \n<color=yellow>150 Mảnh Ghép Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc]!<color>", {"Ta biết rồi !"});
return 0;
end
--Check có phải là Mảnh Ghép Lệnh Bài Trùng Sinh không!
for i = 1, #tbItemObj do
local pItem = tbItemObj[i][1];
local szKey = string.format("%s,%s,%s,%s",pItem.nGenre,pItem.nDetail,pItem.nParticular,pIte m.nLevel);
if szKey ~= vatpham then
Dialog:Say("<color=red>Chú Ý:<color> Đây không phải \n<color=yellow>Mảnh Ghép Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc]<color>", {"Xin lỗi ! Ta Nhầm !"});
return 0;
end
end
--Kiểm tra ô trống trong túi
if me.CountFreeBagCell() < 10 then
Dialog:Say("Cần sắp xếp lại túi!",{"Ta Biết rồi !"});
return 0;
end
--Nếu đúng NAT và số lượng => xóa NAT
for i = 1, #tbItemObj do
local pItem = tbItemObj[i][1];
pItem.Delete(me);
end
--Add số lượng vật phẩm mới vào
for i=1,1 do
local pItemEx = me.AddItem(18, 1, 25064, 1).Bind(1);--nhận được lệnh bài trùng sinh
me.AddTitle(15,1,1,1);
end
local pItem = me.AddItem(18, 1, 25064, 1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi [" ..me.szName.. "] đã ghép thành công [" ..pItem.szName.. "] xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn [<color=yellow>" .. me.szName
.. "<color>] đã ghép thành công <color=yellow>"
.. pItem.szName .."<color>!");
Dialog:Say("<color=wheat>Chúc mừng ngươi \n+đã đổi thành công <color=yellow>Thẻ Thành Viên V.I.P [Kiếm Thế Vạn Phúc]<color><color>\n<color=yellow>+Nhận được danh Hiệu : V.I.P Kiếm Thế Vạn Phúc<color>\n<color=yellow>Từ nay ngươi đã trở thành thành viên V.I.P của Kiếm Thế Vạn Phúc<color>", {"Cảm ơn !"});
end

neverbackdown
22-12-12, 07:53 PM
Cảm ơn satthupro rất nhiều, bạn rất nhiệt tình :D

canhchung89
22-12-12, 07:54 PM
ấn này ngoài cườn hóa với nhược hóa còn có mấy dùng phụ bên dưới hok bạn ^^!

neverbackdown
22-12-12, 07:58 PM
ấn này ngoài cườn hóa với nhược hóa còn có mấy dùng phụ bên dưới hok bạn ^^!

;)) có luôn bạn ak
................................

canhchung89
22-12-12, 07:59 PM
bạn cho mình file đó với đường dẫn được hôk ^^!

neverbackdown
22-12-12, 08:04 PM
bạn cho mình file đó với đường dẫn được hôk ^^!
;)) Sr bạn nhé, mình ko ở nhà, khi nào rảnh thì mình up lên cho bạn cho

canhchung89
24-12-12, 05:25 AM
:Laluot_166: cho mình xin cái scrip ấn đó được hem

neverbackdown
24-12-12, 01:04 PM
:Laluot_166: cho mình xin cái scrip ấn đó được hem

<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ạn đây ;))