PDA

View Full Version : [KT] Xin Script Chuyển Sinh 200, Có Nhận Thưởng ở mốc 10 làn 20 lần



voxuanphu1991
20-09-21, 05:29 AM
Như Tiêu Để, e đnag bị mắc lỗi ở chổ trùng sinh 200 lần mà đạt mốc 10 lần, 20 lần,.. không tự nhận được thưởng, mong các cao nhân chỉ bảo giúp, em cảm ơn ạ!!!
Script Đây ạ:
--================================================== ========--
local tbNpc = Npc:GetClass("ChuyenSinhAccount"); --Trùng Sinh
--================================================== =============--
tbNpc.tbItemInfo = {bForceBind=1,};
--================================================== ========--
tbNpc.Status = 1; --0 = Off, 1 = On, 2 = Load Edit
tbNpc.TaskGroup_CS = 3004; --Task Group Chuyển Sinh
tbNpc.TaskId_Count_CS = 1; --Task ID
tbNpc.TaskGroup_SLN = 3059; --Task Group
tbNpc.TaskId_SLN = 1; --Task ID
tbNpc.JBCoin_CS = 1000000; --Thu Phí
tbNpc.LevelOnCS = 180; --Về Cấp
tbNpc.TSK_LevelRS = 200; --Check Cấp
tbNpc.TSK_LevelMax = 220; --Check Cấp
tbNpc.TSK_SoLanCS = 100; --Số Lần
tbNpc.User_Max = 1; --Số Lần
--================================================== ========--
tbNpc.DataItemCS = {
[1]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[2]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[3]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[4]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[5]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[6]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[7]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[8]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[9]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
[10]={18,1,1643,9,{bForceBind=1},1},--Rương Mảnh Ghép Cực Phẩm (Lớn)
};
--================================================== ========--
function tbNpc:OnDialog()
DoScript("\\script\\ChucNang\\ChuyenSinhAccount.lua");
local nLanCS = me.GetTask(self.TaskGroup_CS, self.TaskId_Count_CS) or 0;
local nCapdoCS = math.floor(nLanCS/50.1,1)+1;
if me.IsAccountLock() ~= 0 then
Dialog:Say("Tài khoản chưa mở khóa, không thể thao\n tác chuyển sinh!");
return 0;
end
local tbOpt = {};
local szMsg = "<color=green>Xin chào <color=yellow>["..me.szName.."]<color>, nói thử xem ta có thể giúp đựợc gì cho ngươi không?<color>\n"..
"<color=yellow>+Hiện tại đã Chuyển Sinh: <color=red>["..nLanCS.."]<color> lần<color>\n"..
"=========================\n"..
"<color=green>+Trùng Sinh lần <color=cyan>thứ ["..nLanCS+1 .."]<color> sẽ được cộng\n"..
" <color=yellow>[10] điểm tiềm năng<color> và <color=yellow>[1] điểm<color> kỷ năng.<color>\n"..
"=========================\n"..
"<color=green>+Sau khi Trùng Sinh sẽ về lại <color=yellow>(Cấp "..self.LevelOnCS..")<color>"
if self.Status == 1 then
table.insert(tbOpt,{"<color=yellow>{Chắc chắn chứ}<color> <pic=44>",self.TienHanhCS, self, nCapdoCS, nLanCS});
table.insert(tbOpt,{"<color=yellow>Nhận Thưởng Trùng Sinh<color>",self.Nhan_ThuongTS, self, nCapdoCS, nLanCS});
table.insert(tbOpt,{"<color=cyan>{Để ta tìm hiểu thêm}<color>",self.TimHieuCS, self});
table.insert(tbOpt,{"{Kết Thúc đối thoại}"});
elseif (self.Status == 2) then
Dialog:Say("Hệ Thống Đang Bảo Trì Nâng Cấp!");
return 0;
elseif (self.Status == 0) then
Dialog:Say("Hệ Thống Chưa Mở");
return 0;
end
Dialog:Say(szMsg, tbOpt);
end
--================================================== ====-
function tbNpc:TienHanhCS(nCapdoCS, nLanCS)
local nCount1 = me.GetItemCountInBags(18,1,2150,1); --Trùng Sinh Lệnh
local nCount2 = me.GetItemCountInBags(18,1,2150,2); --Trùng Sinh Thuật
if me.CountFreeBagCell() < 5 then
Dialog:Say("Thu xếp hành trang trống 5 ô rồi quay lại gặp ta!");
return 0;
end
if me.GetJbCoin() < self.JBCoin_CS then
Dialog:Say("<color=cyan>Trong người ngươi chưa chuẩn bị đủ <color=yellow>"..self.JBCoin_CS.."<color>", "{Kết thúc đối thoại}");
return 0;
end
if nLanCS >= self.TSK_SoLanCS then
Dialog:SendBlackBoardMsg(me, string.format("<color=cyan>Ngươi đã Trùng Sinh đủ <color=red>(%s lần)<color>, không thể Trùng Sinh thêm.<pic=5>",nLanCS));
return 0;
end
if me.nLevel < self.TSK_LevelRS then
Dialog:Say("<color=cyan>Ngươi chưa đạt đến <color=yellow>(Cấp "..self.TSK_LevelRS..")<color>,\n không thể chuyển sinh lúc này! <pic=5>");
return 0;
end
if nLanCS >= 80 then
if me.nLevel < self.TSK_LevelMax then
Dialog:Say("<color=cyan>Ngươi chưa đạt đến <color=yellow>(Cấp "..self.TSK_LevelMax..")<color>,\n không thể chuyển sinh lúc này! <pic=5>");
return 0;
end
end
if nCount1 < 1 or nCount2 < 1 then
Dialog:Say("<color=cyan>Ngươi chưa đủ <color=yellow>(20)<color> Trùng Sinh Lệnh và\n Trùng Sinh Thuật<color>", "{Kết thúc đối thoại}");
return 0;
end
me.SetTask(self.TaskGroup_CS, self.TaskId_Count_CS, nLanCS+1);
me.AddJbCoin(self.JBCoin_CS * -1); --Trừ Đồng X2/Lần
me.ConsumeItemInBags(1,18,1,2150,1); --Trùng Sinh Lệnh
me.ConsumeItemInBags(1,18,1,2150,2); --Trùng Sinh Thuật
local nAddLevel = (self.LevelOnCS -me.nLevel); --TRỪ CẤP
me.AddLevel(nAddLevel); --Add Level theo mốc đã chỉnh
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 100); --Rương Mảnh Ghép (Nhỏ)
-- me.AddTitle(17,1,nLanCS,1); --Add 1->10 Danh Hiệu
-- me.ResetFightSkillPoint(); --Tẩy điểm kỹ năng
-- me.AddFightSkillPoint(2); --2 Cộng Điểm Kỷ Năng
me.UnAssignPotential(); --Tẩy điểm tiềm năng
me.AddPotential(10); --10 Cộng Điểm Tiềm Năng
Npc.tbFollowPartner:FollowPartnerLogOut(); --Thoát Thú Cưng
self:addTopRS(nLanCS+1,pPlayer); --Add TOP
me.SendMsgToFriend("Hảo hữu của bạn ["..me.szName.."] Trùng Sinh lần "..(nLanCS+1)..".");
me.KickOut(); --Thoát Game
local szMsg = "\n <color=cyan>Người chơi <color=yellow>["..me.szName.."]<color> Trùng Sinh thành công lần <color=yellow>thứ ("..(nLanCS+1)..")<color> <pic=82>";
KDialog.NewsMsg(0, Env.NEWSMSG_COUNT, szMsg);
KDialog.MsgToGlobal("<color=cyan>Người chơi <color=yellow>["..me.szName.."]<color> Trùng Sinh\n thành công lần <color=yellow>thứ ("..(nLanCS+1)..")<color> <pic=82>");
end
--================================================== =======================-
function tbNpc:Nhan_ThuongTS(nCapdoCS, nLanCS)
local nCount = me.GetTask(self.TaskGroup_SLN, self.TaskId_SLN);
if nLanCS >= 100 then
if nCount >= 100 then
me.AddStackItem(18,1,3154,2,{bForceBind=1}, 1); --Rương Phi Phong Địa Ngục Vương Kỳ
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 9900); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 89 and nLanCS < 100 then
if nCount == 90 then
me.AddStackItem(18,1,3095,6,{bForceBind=1}, 1); --Rương Trang Bị Ngọa Hổ Tàng Long (Vĩnh Viễn)
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 900); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 79 and nLanCS < 99 then
if nCount == 80 then
me.AddStackItem(18,1,3085,2,{bForceBind=1}, 1); --Rương SET Trấn Thiên (Vĩnh Viễn)
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 800); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 69 and nLanCS < 80 then
if nCount == 70 then
me.AddStackItem(18,1,3084,2,{bForceBind=1}, 1); --Rương SET Truyền Thuyết (Vĩnh Viễn)
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 700); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 59 and nLanCS < 70 then
if nCount == 60 then
me.AddStackItem(18,1,3083,3,{bForceBind=1}, 1); --Rương SET Sử Thi (Vĩnh Viễn)
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 600); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 49 and nLanCS < 60 then
if nCount == 50 then
me.AddStackItem(18,1,3082,4,{bForceBind=1}, 1); --Rương SET Long Hồn (Vĩnh Viễn)
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 500); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 39 and nLanCS < 50 then
if nCount == 40 then
me.AddStackItem(18,1,9140,4,{bForceBind=1}, 1); --Nhẫn Tình Yêu Kim Cương
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 400); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 29 and nLanCS < 40 then
if nCount == 30 then
me.AddStackItem(18,1,9140,3,{bForceBind=1}, 1); --Nhẫn Tình Yêu Vàng
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 300); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 19 and nLanCS < 30 then
if nCount == 20 then
me.AddStackItem(18,1,9140,2,{bForceBind=1}, 1); --Nhẫn Tình Yêu Bạch Kim
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 200); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 9 and nLanCS < 20 then
if nCount == 10 then
me.AddStackItem(18,1,9140,1,{bForceBind=1}, 1); --Nhẫn Tình Yêu Bạc
me.AddStackItem(18,1,1643,1,{bForceBind=1}, 100); --Rương Mảnh Ghép (Nhỏ)
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
else
<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>
return 0;
end
elseif nLanCS > 0 and nLanCS < 10 then
if nCount < 1 then
local pGetSkill = me.GetSkillLevel(1958);
if pGetSkill < 1 then
--===========Kinh Mạch===========--
me.AddFightSkill(1958,1); --Kinh Mạch
me.AddFightSkill(1959,1); --Kinh Mạch
me.AddFightSkill(1960,1); --Kinh Mạch
me.AddFightSkill(1961,1); --Kinh Mạch
me.AddFightSkill(1962,1); --Kinh Mạch
me.AddFightSkill(1963,1); --Kinh Mạch
me.AddFightSkill(1964,1); --Kinh Mạch
me.AddFightSkill(1965,1); --Kinh Mạch
me.AddFightSkill(1966,1); --Kinh Mạch
me.AddFightSkill(1967,1); --Kinh Mạch
me.AddFightSkill(1968,1); --Kinh Mạch
me.AddFightSkill(1969,1); --Kinh Mạch
me.AddFightSkill(1970,1); --Kinh Mạch
me.AddFightSkill(1971,1); --Kinh Mạch
me.AddFightSkill(1972,1); --Kinh Mạch
me.SetTask(self.TaskGroup_SLN, self.TaskId_SLN, nCount +1);
end
else
<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>
return 0;
end
end
end

function tbNpc:TimHieuCS()
DoScript("\\script\\ChucNang\\ChuyenSinhAccount.lua");
local tbOpt = {};
tbOpt = Lib:MergeTable( tbOpt,{
{"<color=yellow>+Xem Phần Thưởng+<color>", self.XemThuong, self},
{"{Trở về trước}", self.OnDialog, self},
{"{Ta chỉ xem qua}"},
});
Dialog:Say(
"<color=yellow>+Để Trùng Sinh bạn cần đạt <color=red>(Cấp 200)<color>\n"..
"<color=cyan>+Trùng Sinh hao tốn như sau:<color>\n"..
"<color=green> 1 Trùng Sinh Thuật<color>\n"..
"<color=green> 1 Trùng Sinh Lệnh<color>\n"..
"<color=green> Thu phí (100 vạn đồng)/1 lần<color>\n"..
"<color=cyan>+Trùng Sinh nhận được như sau:<color>\n"..
"<color=green> Cộng (10 điểm) tiềm năng<color>\n"..
"<color=green> Cộng 2 điểm kỷ năng<color>\n"..
"<color=cyan>+Trùng Sinh về lại <color=yellow>(Cấp 180)<color>\n"..
"<color=yellow>+Lưu ý:<color=yellow> Mỗi nhân vật chỉ có thể được phép\n Trùng Sinh tối đa là <color=yellow>(100 lần)<color> <pic=5>",
tbOpt);
end;
--================================================== ====-
function tbNpc:XemThuong()
local tbOpt = {};
tbOpt = Lib:MergeTable( tbOpt,{
{"<color=yellow>{Qua trang sau}", self.TrangSau, self},
{"{Ta chỉ xem qua}"},
});
Dialog:Say (
"<color=pink>Phần Thưởng Trùng Sinh Như Sau:<color><color=cyan>\n"..
" Lần 1 = <color=gold>1 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 2 = <color=gold>2 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 3 = <color=gold>3 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 4 = <color=gold>4 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 5 = <color=gold>5 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 6 = <color=gold>6 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 7 = <color=gold>7 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 8 = <color=gold>8 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 9 = <color=gold>9 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 10 = <color=yellow>Rương SET Truyền Thuyết +16<color>\n"..
" 10 - 19 lần = <color=yellow>10 Rương Mảnh Ghép (Lớn)<color>\n"..
" Lần 20 = <color=yellow>Rương SET Trấn Thiên<color>",tbOpt);
end;

function tbNpc:TrangSau()
local tbOpt = {};
tbOpt = Lib:MergeTable( tbOpt,{
{"{Trở về trước}", self.OnDialog, self},
{"{Ta chỉ xem qua}"},
});
Dialog:Say (
"<color=pink>Phần Thưởng Trùng Sinh Như Sau:<color><color=cyan>\n"..
" Lần 11 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 12 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 13 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 14 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 15 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 16 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 17 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 18 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 19 = <color=gold>10 Rương MG Cực Phẩm (Lớn)<color>\n"..
" Lần 20 = <color=yellow>Rương SET Trấn Thiên<color>\n"..
" 21 - 49 lần = <color=yellow>20 Rương Mảnh Ghép (Lớn)<color>\n"..
" 50 - 200 lần = <color=yellow>50 Rương Mảnh Ghép (Lớn)<color>",tbOpt);
end;
--================================================== ====-
function tbNpc:addTopRS(SoLanRS,pPlayer)
local arr_all = {};
local OUTPUT_FILE_PATH = "\\dstop\\toptrungsinh.txt";
local tbFileOut = Lib:LoadTabFile(OUTPUT_FILE_PATH);
local SoTang = 1;
local tt = 0;
for _, tbRowOut in pairs(tbFileOut) do
local szSTT = tbRowOut["STT"] or "";
local szNamet = tbRowOut["sZname"] or "";
local sPoint = tbRowOut["zPoint"] or "";
if (tostring(szNamet) == me.szName) then
sPoint = SoLanRS;
tt = 1;
end
arr_all[SoTang] = {};
--arr_all[xZ]['STT'] = szSTT;
arr_all[SoTang]['sZname'] = szNamet;
arr_all[SoTang]['zPoint'] = tonumber(sPoint);
SoTang = SoTang + 1;
end
if tt == 0 then
arr_all[11] = {};
arr_all[11]['sZname'] = me.szName;
arr_all[11]['zPoint'] = tonumber(SoLanRS);
end
local xz_cuss = self:bubblesorttt(arr_all);
local szTitle = "STT".."\t".."sZname"..'\t'.."zPoint\n";
KFile.WriteFile(OUTPUT_FILE_PATH, szTitle);
for i=1,10 do
self:AddTopCode(OUTPUT_FILE_PATH, xz_cuss[i]['zPoint'], i, xz_cuss[i]['sZname']);
end
end
--================================================== ====-
function tbNpc:AddTopCode(OUTPUT_FILE_PATH, Point, stt, name)

local szOut = stt .. "\t" .. name .. "\t" .. Point .."\n";
KFile.AppendFile(OUTPUT_FILE_PATH, szOut);
end
--================================================== ====-
function tbNpc:bubblesorttt(given)
local a = given
local a_length = #a
local still_active = true
local tmp = 0
local tmp_name = ''
while still_active do
still_active = false
for i = 1, a_length-1 do
if a[i+1]['zPoint'] > a[i]['zPoint'] then
tmp = a[i]['zPoint']
tmp_name = a[i]['sZname']
a[i]['zPoint'] = a[i+1]['zPoint']
a[i]['sZname'] = a[i+1]['sZname']
a[i+1]['zPoint'] = tmp
a[i+1]['sZname'] = tmp_name
still_active = true
end
end
end
return a;
end

tonyus
06-02-22, 11:30 PM
inb zalo đi xem thử coi sao 0974001512