View Full Version : [KT] Share Script đổi Trang Bị Pet
sitachi
25-09-12, 05:08 PM
Mới vừa tập viết Script nên viết chơi . Script này dựa trên event Sưu Tập Vũ Khí của Satthupro95 mình cover lại share cho anh em Newbie ! Bác nào biết rùi xin đừng chém hay ném đá mình nhé :>
Đầu Tiên Bạn Add NPC Trương Tuyệt Chi ( tướng viễn chinh ) vào Map . gameserver\setting\map\map_info\........\info.txt
Trương Tuyệt Chi 0 7137 3 5 110 1 20 20 20 20 20 1 56288 112224 1
Ở đây mình add vào Map Phượng Tường phủ Ngay chỗ vừa phù qua chút xíu là thấy NPC \:D/
Và cuối cùng là Script : <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> và nhớ đổi tên File Lua của NPC nha :D
Chúc các bạn Thành Công !!!
Sai box, lần sau nhớ post đúng chỗ !
lonelywofl38
25-09-12, 05:48 PM
theo Đường Dẫn .. mở File lên rồi bỏ đoạn Code NPC mới đó vào hả anh ?
Còn Spirt kìa thỳ làm sao ???
sitachi
25-09-12, 05:58 PM
theo Đường Dẫn .. mở File lên rồi bỏ đoạn Code NPC mới đó vào hả anh ?
Còn Spirt kìa thỳ làm sao ???
dấu ... là map mà bạn muốn thêm NPC vào , còn phần script mở NPC lên thay vào
cái map phượng tường ten gì nhể
Lãng Tử Sầu
20-10-12, 04:39 PM
cái map phượng tường ten gì nhể
Map Phượng Tường : fengxiangfu
anhvaem_n2s
22-10-12, 09:35 AM
cái này đủ vật phẩm là đổi luôn à bạn, làm theo tỷ lệ % thì thêm thế nào nhỉ
cái này đủ vật phẩm là đổi luôn à bạn, làm theo tỷ lệ % thì thêm thế nào nhỉ
muốn đổi có tỷ lệ % bạn tham khảo rương mảnh ghép: <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>
nam10589
23-10-12, 10:27 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>
script cho vào gameserver\script\npc\
mở file Lễ Quan: gameserver\script\npc\liguan.lua
thêm vào như sau:
table.insert(tbOpt, 3, {"<color=yellow>Đổi trang bị đồng hành<color>", self.ChangePartnerEquip, self});
function tbLiGuan:ChangePartnerEquip()
local tbChange = Npc:GetClass("trangbidonghanh");
tbChange:OnDialog();
end
nam10589
23-10-12, 10:53 AM
script cho vào gameserver\script\npc\
mở file Lễ Quan: gameserver\script\npc\liguan.lua
thêm vào như sau:
table.insert(tbOpt, 3, {"<color=yellow>Đổi trang bị đồng hành<color>", self.ChangePartnerEquip, self});
function tbLiGuan:ChangePartnerEquip()
local tbChange = Npc:GetClass("trangbidonghanh");
tbChange:OnDialog();
end
Mình chỉnh sửa bằng Notepad +++ sao nó vẫn báo Can't load file liguan.lua bạn nhỉ :( Hiz
để ý gs báo lỗi dòng nào thì tìm dòng đó là phát hiện dc lỗi
linhpl2001
17-11-12, 09:08 AM
sao em làm như anh vippk nhưng ấn vào ko hiện ra gì hết =((
làm đúng các bước như trên 100% sẽ hoạt động được
linhpl2001
17-11-12, 11:26 AM
sao em làm cái đoạn
Code:
table.insert(tbOpt, 3, {"<color=yellow>Đổi trang bị đồng hành<color>", self.ChangePartnerEquip, self});
Code:
vào game thì lễ quan mất tên và không nói chuyện dc nữa
bạn mở file Lễ Quan xóa toàn bộ nội dung và chép đoạn sau vào:
local tbLiGuan = Npc:GetClass("liguan");
function tbLiGuan:OnDialog()
local szMsg = "Xin chào! Ta có thể giúp gì?";
local tbOpt =
{
{"Nhận phúc lợi", self.FuLi, self},
{"Đoán hoa đăng",GuessGame.OnDialog,GuessGame},
{"Kết thúc đối thoại"},
}
table.insert(tbOpt, 3, {"<color=yellow>Đổi trang bị đồng hành<color>", self.ChangePartnerEquip, self});
if Baibaoxiang:CheckState() ~= 1 then
table.insert(tbOpt, 3, {"<color=yellow>Ta đến đổi Vỏ sò<color>", self.ChangeBack, self});
end
if Baibaoxiang:CheckState() == 1 then
table.insert(tbOpt, 3, {"<color=yellow>Bách Bảo Rương<color>", self.Baibaoxiang, self});
end
if (VipPlayer:CheckPlayerIsVip(me.szAccount, me.szName) == 1) then
table.insert(tbOpt, 3, {"Chiết khấu cho người chơi VIP", VipPlayer.OnDialog, VipPlayer, me});
end
if Wldh.Qualification:CheckChangeBack() == 1 then
table.insert(tbOpt, 3, {"<color=yellow>Thu hồi Anh Hùng Thiếp<color>", Wldh.Qualification.ChangeBackDialog, Wldh.Qualification});
end
if me.nLevel >= 50 then
table.insert(tbOpt, 2, {"Ta muốn chúc phúc",self.QiFu, self});
end
if SpecialEvent.CompensateGM:CheckOnNpc() > 0 then
table.insert(tbOpt, 2, {"Nhận vật phẩm",SpecialEvent.CompensateGM.OnAwardNpc, SpecialEvent.CompensateGM});
end
if Esport:CheckState() == 1 then
szMsg = "Năm mới tết đến, lão đi chúc tết khắp nơi, có duyên gặp nhau, tặng ngươi món quà làm kỷ niệm.";
local tbNewYearNpc = Npc:GetClass("esport_yanruoxue");
table.insert(tbOpt, 2, {"Tìm hiểu hoạt động Lễ Quan chúc tết, bắn pháo hoa",tbNewYearNpc.OnAboutYanHua, tbNewYearNpc});
table.insert(tbOpt, 2, {"Tìm hiểu hoạt động năm mới",tbNewYearNpc.OnAboutNewYears, tbNewYearNpc});
end
if SpecialEvent.YuanXiao2009:CheckState() == 1 then
table.insert(tbOpt, 2, {"Tặng quà người chơi mừng Nguyên Tiêu",SpecialEvent.YuanXiao2009.OnDialog, SpecialEvent.YuanXiao2009});
end
if (EventManager.ExEvent.tbPlayerCallBack:IsOpen(me, 4) == 1) then
table.insert(tbOpt, 2, {"Hoạt động kêu gọi người chơi cũ",EventManager.ExEvent.tbPlayerCallBack.OnDialog, EventManager.ExEvent.tbPlayerCallBack});
end
if SpecialEvent.ChangeLive:CheckState() == 1 then
table.insert(tbOpt, 1, {"Liên quan việc Võ Lâm chuyển Kiếm Thế",SpecialEvent.ChangeLive.OnDialog, SpecialEvent.ChangeLive});
end
if VipPlayer.VipTransfer:CheckQualification(me) > 0 then
table.insert(tbOpt, 1, {"<color=yellow>Vip chuyển server<color>", VipPlayer.VipTransfer.DialogNpc.OnDialog, VipPlayer.VipTransfer.DialogNpc});
end
if (Player.tbOffline:CheckExGive() == 1) then
table.insert(tbOpt, 1, {"Bồi thường thời gian ủy thác rời mạng khi gộp server", Player.tbOffline.GiveExOfflineTime, Player.tbOffline});
end
if (SpecialEvent.CompensateCozone:CheckFudaiCompensta teState(me) == 1) then
table.insert(tbOpt, 1, {"Bồi thường gộp server_Túi Phúc", SpecialEvent.CompensateCozone.OnFudaiDialog, SpecialEvent.CompensateCozone});
end
Dialog:Say(szMsg, tbOpt);
end
function tbLiGuan:ChangePartnerEquip()
local tbChange = Npc:GetClass("trangbidonghanh");
tbChange:OnDialog();
end
function tbLiGuan:QiFu()
me.CallClientScript({"UiManager:OpenWindow", "UI_PLAYERPRAY"});
end
<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>
function tbLiGuan:Baibaoxiang()
me.CallClientScript({"UiManager:OpenWindow", "UI_BAIBAOXIANG"});
end
function tbLiGuan:ChangeBack()
local tbOpt =
{
{"Vỏ sò vàng đổi Tinh Hoạt Hồn Thạch", self.DoChangeBack, self, 1},
{"Vỏ sò thần bí đổi Hoạt Lực Hồn Thạch", self.DoChangeBack, self, 2},
{"Vỏ sò thần bí-Rương đổi Hoạt Lực Hồn Thạch", self.DoChangeBack, self, 3},
{"Kết thúc đối thoại"},
}
Dialog:Say("Ở đây có thể đổi Vỏ sò vàng/Vỏ sò thần bí/Vỏ sò thần bí-Rương đổi thành nguyên liệu", tbOpt);
end
function tbLiGuan:DoChangeBack(nType)
local szMsg;
if nType == 1 then
szMsg = "Ta muốn đổi Vỏ sò vàng: <color=yellow>1 Vỏ sò vàng đổi được 2 Hồn Thạch, 225 Tinh lực, 200 Hoạt lực<color>";
elseif nType == 2 then
szMsg = "Ta muốn đổi Vỏ sò thần bí: <color=yellow>1 Vỏ sò thần bí đổi được 1 Hồn Thạch, 100 Hoạt lực<color>";
elseif nType == 3 then
szMsg = "Ta muốn đổi Vỏ sò thần bí-Rương: <color=yellow>1 Vỏ sò thần bí-Rương có thể đổi 200 Hồn thạch, 20000 điểm Hoạt lực<color>";
end
Dialog:OpenGift(szMsg, nil, {Baibaoxiang.OnChangeBack, Baibaoxiang, nType});
end
function tbLiGuan:FuLi()
local tbOpt =
{
{"Mua Tinh Khí Tán và Hoạt Khí Tán", SpecialEvent.BuyJingHuo.OnDialog, SpecialEvent.BuyJingHuo},
{"Bạc khóa đổi bạc", SpecialEvent.CoinExchange.OnDialog, SpecialEvent.CoinExchange},
{"Nhận lương", SpecialEvent.Salary.GetSalary, SpecialEvent.Salary},
}
if EventManager.IVER_bOpenChongZhiHuoDong == 1 then
table.insert(tbOpt, 3, {"Nhận Uy danh giang hồ",SpecialEvent.ChongZhiRepute.OnDialog,SpecialEvent .ChongZhiRepute});
end
if SpecialEvent.NewPlayerGift:ShowOption()==1 then
table.insert(tbOpt, {"Nhận Túi quà Tân Thủ", SpecialEvent.NewPlayerGift.OnDialog, SpecialEvent.NewPlayerGift});
end
table.insert(tbOpt, {"Kết thúc đối thoại"});
Dialog:Say("Chọn phúc lợi: ", tbOpt);
end
phần màu đỏ là phần code đổi trang bị pet, save lại, Reload Script là dc
linhpl2001
17-11-12, 11:33 AM
^^ còn cái chuyển sinh em thêm vào lại dc ko
làm hoàn toàn tương tự như trên
linhpl2001
17-11-12, 11:44 AM
thank anh nhìu aaaaaaaaaaaaaaaaaa
linhpl2001
17-11-12, 12:13 PM
mà mấy cái mảnh ghép trang bị pét em không có trong iteam anh vippk có ko cho em
mà mấy cái mảnh ghép trang bị pét em không có trong iteam anh vippk có ko cho em
bạn xem trong gameserver\setting\item\001\other\scriptitem.txt chắc chắn có
kiemthett054
19-01-13, 03:44 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> em choi ban nay ma em copy va lam t theo bac vipbk ma ko dc huong dan lai em voi bac oi
Lần sau nhớ viết Tiếng Việt có dấu !
kiemthett054
19-01-13, 01:11 PM
<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> em chơi bản này muốn add đc ko các bác làm thế nào ai chỉ em với thank cac bac trc
kakaken2071
22-01-13, 01:11 AM
function tbTrangBiDongHanh:DoiDo()
local szMsg = "<color=wheat>Xin hãy chọn vật phẩm cần đổi:<color>";
local tbOpt=
{
{"<color=yellow>Đổi lấy Đơn Tâm Chiến Y<color>",self.DoiAo,self};
{"<color=yellow>Đổi lấy Đơn Tâm Hộ Thân Phù<color>",self.DoiPhu,self};
{"<color=yellow>Đổi lấy Đơn Tâm Chi Nhẫn<color>",self.DoiVK,self};
{"<color=yellow>Đổi lấy Đan Tâm Hộ Uyển<color>",self.DoiHoUyen,self};
{"<color=yellow>Đổi lấy Đơn Tâm Giới Chỉ<color>",self.DoiNhan,self};
};
Dialog:Say(szMsg, tbOpt);
end
function tbTrangBiDongHanh:DoiAo()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,20,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiPhu()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,23,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Hộ Thân Phù xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Hộ Thân Phù xin chúc mừng !");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Hộ Thân Phù xin chúc mừng !<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiVK()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,19,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiHoUyen()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,22,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đam Tâm Giới Chỉ xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiNhan()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,21,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
Tình hình là bác nào có thể giải thích giùm mình đoạn code này được không.
bạn ý có gì là 5 mảnh đổi được vật phẩm. Nhưng khi mình cho 100 mảnh 1 loại (trong túi chỉ có 1 loại) thì báo lỗi không đủ vật phẩm.
Sau đó mình add cả 5 loại vào thì không báo lỗi nữa. Nhưng khi đổi vật phẩm thì lại trừ mỗi loại 1 mảnh ghép và không thấy đồ pet đâu :(
kakaken2071
22-01-13, 01:32 AM
function tbTrangBiDongHanh:DoiVK()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 5 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 5);
me.AddItem(5,19,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
Tình hình là mình đã sửa lại đoạn đổi vũ khí của bạn í thành như thế này
Khi đổi đã trừ đúng 5 mảnh vũ khí. Nhưng vẫn không thấy vật phẩm đâu, Cũng chẳng thấy thông báo gì.
Có phải nó chạy tới Task:DelItem(me, tbItemId2, 5); thì dừng lại không?
Cho mình hỏi ID của Đơn Tâm Chiến Nhẫn có phải là 5,19,1,3 không và Bind(1) có nghĩa là gì.
Không biết code có vấn đề hay tại sv của mình chưa có vật phẩm đó
kiemthett054
23-01-13, 08:22 PM
ai cho em hỏi em dùng sever của bac Satthupro95 em muốn add trang bị pet nhứng mà ko biết làm bác nào chỉ dẫn giùm em với
ai cho em hỏi em dùng sever của bac Satthupro95 em muốn add trang bị pet nhứng mà ko biết làm bác nào chỉ dẫn giùm em với
dùng hàm me.AddItem như bt, mà gs server đó không hỗ trợ trang bị pet
kakaken2071
24-01-13, 07:22 AM
dùng hàm me.AddItem như bt, mà gs server đó không hỗ trợ trang bị pet
Cho mình hỏi là mấy cái server bản 2.4 hay 2.5 2.6 gì đấy có ai share miễn phí không vậy.
lordpotter
29-01-13, 08:28 PM
AI có cái server nào có trang bị pet k.share mình với.:D
AI có cái server nào có trang bị pet k.share mình với.:D
<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>
hoặc
<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>
linhpl2001
23-02-13, 07:41 AM
function tbTrangBiDongHanh:DoiVK()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 5 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 5);
me.AddItem(5,19,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
Tình hình là mình đã sửa lại đoạn đổi vũ khí của bạn í thành như thế này
Khi đổi đã trừ đúng 5 mảnh vũ khí. Nhưng vẫn không thấy vật phẩm đâu, Cũng chẳng thấy thông báo gì.
Có phải nó chạy tới Task:DelItem(me, tbItemId2, 5); thì dừng lại không?
Cho mình hỏi ID của Đơn Tâm Chiến Nhẫn có phải là 5,19,1,3 không và Bind(1) có nghĩa là gì.
Không biết code có vấn đề hay tại sv của mình chưa có vật phẩm đó
Bind(1) là khóa vật phẩm đó bạn
lonelywofl38
07-03-13, 09:12 PM
cho e hỏi, sau khi e vào
gameserver\setting\map\map_info\fengxiangfu\info.t xt
Add code NPC Trương Tuyệt Chi vào cuối file info.txt rồi thì làm sao nữa
ai h.dẫn e vs
mindergo11
09-04-13, 06:56 PM
Ai có script đổi trang bị đồng hành cho mình xin với
Chế mãi mà ko được :D
Ai có cho mình nhé :D
Ai có script đổi trang bị đồng hành cho mình xin với
Chế mãi mà ko được :D
Ai có cho mình nhé :D
nội dung file script của chủ topic:
local tbTrangBiDongHanh = Npc:GetClass("trangbidonghanh");
local REQUIRE_ITEM = {
[5] =
{
{
{
string.format("%s,%s,%s,%s", 18, 1, 943, 1),
string.format("%s,%s,%s,%s", 18, 1, 946, 1),
string.format("%s,%s,%s,%s", 18, 1, 949, 1),
string.format("%s,%s,%s,%s", 18, 1, 1239, 1),
string.format("%s,%s,%s,%s", 18, 1, 1242, 1),
},
5
},
},
};
function tbTrangBiDongHanh:OnDialog()
local nState = me.GetTask(3006, 2);
local szButtonColor = (nState < 20 and "") or "<color=gray>";
local tbOpt =
{
{"<color=yellow>Đổi Trang Bị Đồng Hành<color>", self.DoiDo, self},
{"Kết thúc đối thoại"},
}
Dialog:Say("<color=yellow>Tướng Quân :<color> \nXin chào <color=cyan>" ..me.szName.. "<color> ! ",tbOpt);
end
function tbTrangBiDongHanh:DoiDo()
local szMsg = "<color=wheat>Xin hãy chọn vật phẩm cần đổi:<color>";
local tbOpt=
{
{"<color=yellow>Đổi lấy Đơn Tâm Chiến Y<color>",self.DoiAo,self};
{"<color=yellow>Đổi lấy Đơn Tâm Hộ Thân Phù<color>",self.DoiPhu,self};
{"<color=yellow>Đổi lấy Đơn Tâm Chi Nhẫn<color>",self.DoiVK,self};
{"<color=yellow>Đổi lấy Đan Tâm Hộ Uyển<color>",self.DoiHoUyen,self};
{"<color=yellow>Đổi lấy Đơn Tâm Giới Chỉ<color>",self.DoiNhan,self};
};
Dialog:Say(szMsg, tbOpt);
end
function tbTrangBiDongHanh:DoiAo()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,20,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiPhu()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,23,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Hộ Thân Phù xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Hộ Thân Phù xin chúc mừng !");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Hộ Thân Phù xin chúc mừng !<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiVK()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,19,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiHoUyen()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,22,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đam Tâm Giới Chỉ xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
function tbTrangBiDongHanh:DoiNhan()
local nMyMoney = me.nCashMoney; --GetCash();
local tbItemId2 = {18,1,943,1,0,0};
local tbItemId3 = {18,1,946,1,0,0};
local tbItemId4 = {18,1,949,1,0,0};
local tbItemId5 = {18,1,1239,1,0,0};
local tbItemId6 = {18,1,1242,1,0,0};
local nCount2 = me.GetItemCountInBags(18,1,943,1);
local nCount3 = me.GetItemCountInBags(18,1,946,1);
local nCount4 = me.GetItemCountInBags(18,1,949,1);
local nCount5 = me.GetItemCountInBags(18,1,1239,1);
local nCount6 = me.GetItemCountInBags(18,1,1242,1);
-- if (nMyMoney < 50000) then
-- Dialog:Say("Không đủ 5 Vạn Lượng, có đủ rồi hãy quay lại.");
-- return 0;
-- end
if nCount2 < 1 or nCount3 < 1 or nCount4 < 1 or nCount5 < 1 or nCount6 < 1 then
Dialog:Say("<color=wheat>Trong hành trang của bạn không có đủ vật phẩm ta cần:<color>\n<color=yellow>+Mảnh Đơn Tâm Chi Nhẫn\n+Mảnh Đơn Tâm Hộ Thân Phù\n+Mảnh Đơn Tâm Chiến Y\n+ MảnhĐan Tâm Giới Chỉ\n+Mảnh Đan Tâm Hộ Uyển<color><color>");
return 0;
else
Task:DelItem(me, tbItemId2, 1);
Task:DelItem(me, tbItemId3, 1);
Task:DelItem(me, tbItemId4, 1);
Task:DelItem(me, tbItemId5, 1);
Task:DelItem(me, tbItemId6, 1);
me.AddItem(5,21,1,3).Bind(1);
GlobalExcute({"Dialog:GlobalNewsMsg_GS", "Người chơi <color=cyan>" ..me.szName.. "<color> đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng !"});
me.SendMsgToFriend("Hảo hữu của bạn <color=cyan>" .. me.szName
.. "<color>] đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng");
Dialog:Say("<color=wheat>Chúc mừng ngươi đã đổi thành công 5 Mảnh Đơn Tâm Lấy Đơn Tâm Chiến Y xin chúc mừng<color>", {"Cảm ơn !"});
-- me.CostMoney(50000,0);
end
end
mindergo11
10-04-13, 10:54 AM
Hihi mình cũng tìm được nhưng mình muốn kiểu mà cho manh gép vào và ra 1 vật phẩm (kiểu này nó check rồi trừ túi đó ) Giống như kiểu đổi 5 HTB lấy 1 thanh đồng luyện phổ ở thằng gì tầng 3 khu an toàn ý
Mình đã thử lấy script của trantoai về đổi trang bị đồng hành. sửa đi sửa lại mà mãi ko được :D
Bạn có thể cho mình riêng 1 đoạn script chẳng hạn "cho 1 mảnh gép vào va ra 1 món đồ gì đó " được ko
ngtrongkhanh
17-04-13, 09:20 AM
ai up lại file script cái , lnk die mất rồi
ai up lại file script cái , lnk die mất rồi
<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>
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.