QuynhHuong
20-06-13, 11:29 PM
Đây là code npc chuyển sinh:
Include("\\DataFiles\\chuyensinhdata.lua")
Include("\\Script\\global\\sourcejx49.lua");
Include("\\script\\GetFaction.lua")
Include("\\DataFiles\\Getcs.lua")
<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>
iditemcantrongcs = 226
volammattich = 16
ttk = 15
gioihancs = 100
capsaukhics = 10
TENVP = "Kim Nguyªn B¶o"
--==================== sky.light9530 =======================
function main()
SetGlbMissionV(50,gioihancs)
ktcss=GetTask(197)+1
Say("<color=cyan>Giíi h¹n chuyÓn sinh hiÖn t¹i:<color> "..GetGlbMissionV(50).."\n<color=yellow>Sè lÇn chuyÓn sinh: "..GetTask(197).."\n<color=water>CÊp chuyÓn sinh: "..CSTABLE[GetTask(197)+1][1].."\n<color=wood>TiÒn cÇn chuyÓn sinh: "..(CSTABLE[GetTask(197)+1][2]/10000).." V¹n\nKim Nguyªn B¶o: "..CSTABLE[GetTask(197)+1][3]..".",3,
"ChuyÓn sinh lÇn ["..ktcss.."]./chuyensinh",
"Vßng S¸ng ChuyÓn Sinh/vongsang",
"Tho¸t./Exit")
end
function AddAll(Xdnt,Ydnt)
if Xdnt == nil then Xdnt = 0 end
if Ydnt == nil then Ydnt = 0 end
AddProp(Xdnt)
AddMagicPoint(Ydnt)
Msg2Player("B¹n nhËn ®îc "..Xdnt.." ®iÓm tiÒm n¨ng");
Msg2Player("B¹n nhËn ®îc "..Ydnt.." ®iÓm kü n¨ng");
end;
function chuyensinh()
cs = GetTask(197)
if cs == nil then cs = 0 end
cs = cs +1
if GetTask(197) < GetGlbMissionV(50) then
if GetLevel() >= CSTABLE[cs][1] then
if GetCash() >= CSTABLE[cs][2] then
if GetItemCount(iditemcantrongcs) >= CSTABLE[cs][3] then
for i=1,CSTABLE[cs][3] do DelItem(iditemcantrongcs) end
Pay(CSTABLE[cs][2])
chuyensinhskylight()
SetTask(197,GetTask(197)+1)
diemtn = CSTABLE[cs][4] + (GetTask(ttk) * 5) + (CSTABLE[150][4]*GetTask(198))
diemkn = CSTABLE[cs][5] + GetTask(volammattich) + (CSTABLE[150][5]*GetTask(198))
RollPoint()
Talk(1,"","§©y lµ lÇn chuyÓn sinh thø: <color=metal>"..GetTask(197).."<color>!")
else
Talk(1,"","B¹n cÇn cã <color=red>"..CSTABLE[cs][3].."<color> "..TENVP.." ®Ó chuyÓn sinh !")
end
else
Talk(1,"","<color=cyan>Lçi:<color> B¹n cÇn cã "..(CSTABLE[cs][2]/10000).." v¹n lîng")
end
else
Talk(1,"","<color=cyan>Lçi:<color> B¹n cÇn ®¹t "..CSTABLE[cs][1].." cÊp")
end
cs = 0
diemtn = 0
diemkn = 0
else
Talk(1,"","<color=cyan>Lçi:<color> B¹n ®· vît qu¸ giíi h¹n chuyÓn sinh lµ "..GetGlbMissionV(50).."lÇn !")
end
end
function vongsang()
if GetTask(197) >= 2 and GetTask(197) < 20 then
if HaveMagic(370) <= 0 then
AddMagic(370,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 20 and GetTask(197) < 25 then
if HaveMagic(371) <= 0 then
DelMagic(370)
AddMagic(371,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 25 and GetTask(197) < 31 then
if HaveMagic(372) <= 0 then
DelMagic(371)
DelMagic(370)
AddMagic(372,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 31 and GetTask(197) < 35 then
if HaveMagic(373) <= 0 then
DelMagic(372)
DelMagic(371)
DelMagic(370)
AddMagic(373,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 35 then
if HaveMagic(374) <= 0 then
DelMagic(373)
DelMagic(371)
DelMagic(370)
DelMagic(372)
AddMagic(374,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
else
Msg2Player("Sè lÇn trïng sinh cña b¹n lµ : "..GetTask(197).." kh«ng thÓ nhËn thëng")
end
end
function RollPoint()
player_series = GetSeries() + 1;
SetBasePoint(as[player_series][1],as[player_series][2],as[player_series][3],as[player_series][4])
AddProp(-GetProp())
AddMagicPoint(-GetMagicPoint())
AddAll(diemtn,diemkn)
end
function chuyensinhskylight()
SetLevel(capsaukhics)
end
function SetLevel(nLevel)
if(nLevel<1 or nLevel >200) then
--error
return 0;
end
local a=GetNpcIdx ();
a=setx (a,nLevel);
ktcss=GetTask(197)+1
if(a==1) then
KickOutSelf()
Msg2SubWorld("Ngêi ch¬i ["..GetName().."] ®· chuyÓn sinh lÇn thø ["..ktcss.."]")
print("|>> "..GetName().." Chuyen Sinh Thanh Cong Lan Thu "..ktcss.." ! <<|")
else
Msg2Player("<color=metal>Lçi khi chuyÓn sinh");
print("|>> "..GetName().." Chuyen Sinh Loi ??????????????? <<|")
end
end
Mình chỉnh cấp và tiền chuyển sinh như thế này ở file chuyensinhdata.lua :
CSTABLE={
[1]={
[1] = 150,
[2] = 500000,
[3] = 0,
[4] = 100,
[5] = 10
},
[2]={
[1] = 160,
[2] = 1000000,
[3] = 0,
[4] = 150,
[5] = 15
},
[3]={
[1] = 170,
[2] = 1500000,
[3] = 0,
[4] = 200,
[5] = 20
},
[4]={
[1] = 180,
[2] = 2000000,
[3] = 0,
[4] = 250,
[5] = 25
Nhưng vào game npc vẫn ghi cấp để cs lần 1 là 100.
Các bác xem mình viết sai ở đâu nhé :D
Include("\\DataFiles\\chuyensinhdata.lua")
Include("\\Script\\global\\sourcejx49.lua");
Include("\\script\\GetFaction.lua")
Include("\\DataFiles\\Getcs.lua")
<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>
iditemcantrongcs = 226
volammattich = 16
ttk = 15
gioihancs = 100
capsaukhics = 10
TENVP = "Kim Nguyªn B¶o"
--==================== sky.light9530 =======================
function main()
SetGlbMissionV(50,gioihancs)
ktcss=GetTask(197)+1
Say("<color=cyan>Giíi h¹n chuyÓn sinh hiÖn t¹i:<color> "..GetGlbMissionV(50).."\n<color=yellow>Sè lÇn chuyÓn sinh: "..GetTask(197).."\n<color=water>CÊp chuyÓn sinh: "..CSTABLE[GetTask(197)+1][1].."\n<color=wood>TiÒn cÇn chuyÓn sinh: "..(CSTABLE[GetTask(197)+1][2]/10000).." V¹n\nKim Nguyªn B¶o: "..CSTABLE[GetTask(197)+1][3]..".",3,
"ChuyÓn sinh lÇn ["..ktcss.."]./chuyensinh",
"Vßng S¸ng ChuyÓn Sinh/vongsang",
"Tho¸t./Exit")
end
function AddAll(Xdnt,Ydnt)
if Xdnt == nil then Xdnt = 0 end
if Ydnt == nil then Ydnt = 0 end
AddProp(Xdnt)
AddMagicPoint(Ydnt)
Msg2Player("B¹n nhËn ®îc "..Xdnt.." ®iÓm tiÒm n¨ng");
Msg2Player("B¹n nhËn ®îc "..Ydnt.." ®iÓm kü n¨ng");
end;
function chuyensinh()
cs = GetTask(197)
if cs == nil then cs = 0 end
cs = cs +1
if GetTask(197) < GetGlbMissionV(50) then
if GetLevel() >= CSTABLE[cs][1] then
if GetCash() >= CSTABLE[cs][2] then
if GetItemCount(iditemcantrongcs) >= CSTABLE[cs][3] then
for i=1,CSTABLE[cs][3] do DelItem(iditemcantrongcs) end
Pay(CSTABLE[cs][2])
chuyensinhskylight()
SetTask(197,GetTask(197)+1)
diemtn = CSTABLE[cs][4] + (GetTask(ttk) * 5) + (CSTABLE[150][4]*GetTask(198))
diemkn = CSTABLE[cs][5] + GetTask(volammattich) + (CSTABLE[150][5]*GetTask(198))
RollPoint()
Talk(1,"","§©y lµ lÇn chuyÓn sinh thø: <color=metal>"..GetTask(197).."<color>!")
else
Talk(1,"","B¹n cÇn cã <color=red>"..CSTABLE[cs][3].."<color> "..TENVP.." ®Ó chuyÓn sinh !")
end
else
Talk(1,"","<color=cyan>Lçi:<color> B¹n cÇn cã "..(CSTABLE[cs][2]/10000).." v¹n lîng")
end
else
Talk(1,"","<color=cyan>Lçi:<color> B¹n cÇn ®¹t "..CSTABLE[cs][1].." cÊp")
end
cs = 0
diemtn = 0
diemkn = 0
else
Talk(1,"","<color=cyan>Lçi:<color> B¹n ®· vît qu¸ giíi h¹n chuyÓn sinh lµ "..GetGlbMissionV(50).."lÇn !")
end
end
function vongsang()
if GetTask(197) >= 2 and GetTask(197) < 20 then
if HaveMagic(370) <= 0 then
AddMagic(370,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 20 and GetTask(197) < 25 then
if HaveMagic(371) <= 0 then
DelMagic(370)
AddMagic(371,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 25 and GetTask(197) < 31 then
if HaveMagic(372) <= 0 then
DelMagic(371)
DelMagic(370)
AddMagic(372,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 31 and GetTask(197) < 35 then
if HaveMagic(373) <= 0 then
DelMagic(372)
DelMagic(371)
DelMagic(370)
AddMagic(373,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
elseif GetTask(197) >= 35 then
if HaveMagic(374) <= 0 then
DelMagic(373)
DelMagic(371)
DelMagic(370)
DelMagic(372)
AddMagic(374,1)
Msg2Player("B¹n NhËn §îc Vßng S¸ng ChuyÓn Sinh")
KickOutSelf()
else
Talk(1,"addrank","Ng¬i ®· Nh©n <color=fire>Vßng S¸ng<color> kh«ng thÓ nhËn ®îc n÷a")
end
else
Msg2Player("Sè lÇn trïng sinh cña b¹n lµ : "..GetTask(197).." kh«ng thÓ nhËn thëng")
end
end
function RollPoint()
player_series = GetSeries() + 1;
SetBasePoint(as[player_series][1],as[player_series][2],as[player_series][3],as[player_series][4])
AddProp(-GetProp())
AddMagicPoint(-GetMagicPoint())
AddAll(diemtn,diemkn)
end
function chuyensinhskylight()
SetLevel(capsaukhics)
end
function SetLevel(nLevel)
if(nLevel<1 or nLevel >200) then
--error
return 0;
end
local a=GetNpcIdx ();
a=setx (a,nLevel);
ktcss=GetTask(197)+1
if(a==1) then
KickOutSelf()
Msg2SubWorld("Ngêi ch¬i ["..GetName().."] ®· chuyÓn sinh lÇn thø ["..ktcss.."]")
print("|>> "..GetName().." Chuyen Sinh Thanh Cong Lan Thu "..ktcss.." ! <<|")
else
Msg2Player("<color=metal>Lçi khi chuyÓn sinh");
print("|>> "..GetName().." Chuyen Sinh Loi ??????????????? <<|")
end
end
Mình chỉnh cấp và tiền chuyển sinh như thế này ở file chuyensinhdata.lua :
CSTABLE={
[1]={
[1] = 150,
[2] = 500000,
[3] = 0,
[4] = 100,
[5] = 10
},
[2]={
[1] = 160,
[2] = 1000000,
[3] = 0,
[4] = 150,
[5] = 15
},
[3]={
[1] = 170,
[2] = 1500000,
[3] = 0,
[4] = 200,
[5] = 20
},
[4]={
[1] = 180,
[2] = 2000000,
[3] = 0,
[4] = 250,
[5] = 25
Nhưng vào game npc vẫn ghi cấp để cs lần 1 là 100.
Các bác xem mình viết sai ở đâu nhé :D