PDA

View Full Version : [JX] AE nhận xét xem giúp cái Script random NPC



heocon246
11-07-12, 03:43 PM
Include("\\Script\\source\\sourcejx49.lua")
Include("\\Script\\source\\timerserver.lua")

-- NPC [1] = ID
-- NPC [2] = ID MAP
-- NPC [3] = Toa Do X
-- NPC [4] = Toa Do Y

NPC = {
{1,53,195,199},
{2,53,192,199},
{3,53,199,201},
{4,53,197,200},
{5,53,197,202},
}

function randomnpc1()
for i=1,getn(NPC) do
n = random(1,i)
Thannu1 = AddNPCEx(403,1,NPC[n][2],NPC[n][3],NPC[n][4],1,10,"\\script\\event\\eventrandom\\thannu.lua",5)
end



P/s : Làm sao để xóa NPC xuất hiện đó....AE ai biết chỉ với nha.Thank trước :x

thaihoa91
11-07-12, 03:46 PM
Hình như nếu mún xoá NPC thì khi Add fải dùng hàm AddNpc cũ, chứ dùng AddNPCEx thì ko del dc !

heocon246
11-07-12, 03:54 PM
Hình như nếu mún xoá NPC thì khi Add fải dùng hàm AddNpc cũ, chứ dùng AddNPCEx thì ko del dc !

Add hàm này nhưng vẫn không thấy hiện ra :(
AddNpc(idnpc,10,map,x*8*32,y*16*32)

P/s : AddNPCEx vẫn xóa NPC được ví dụ như hạt huy hoàng và quả huy hoàng nõuaasts hiện rồi mất theo thời gian.

thaihoa91
11-07-12, 04:07 PM
Xài hàm cũ thì nó bị rời hàm ra, SetNPCScript là 1 hàm đi theo AddNpc nữa ! Do lúc add wá rắc rối khi dùng nhìu hàm nên đàn anh đi trước đã tạo ra hàm AddNPCEx để tổng lại các hàm thành 1 hàm mới, nên mún Add bằng hàm cũ thì xem function định nghĩa hàm AddNPCEx trong Serverlib.lua

jxvietnam
11-07-12, 08:21 PM
vừa add vừa dell npc thì code hàm trong timeserver.lua luôn !

KingMax
15-07-12, 11:19 AM
function AddNPCEx1(nId,nLevel, nMap,nX,nY,nOffsetX,nOffsetY,nScript,nCurCamp)
if (nOffsetX==nil) then nOffsetX = 0 end
if (nOffsetY==nil) then nOffsetY = 0 end
mapindex = SubWorldID2Idx(nMap)
npcid = nId
npclvl = nLevel
posx = floor((nX+nOffsetX/10)*8*32)
posy = floor((nY+nOffsetY/10)*16*32)
nNpcId = AddNpc(npcid,npclvl,mapindex,posx,posy,1, "Da tau", 1)
if(nScript~=nil) then
SetNpcScript(nNpcId, nScript)
end
if(nCurCamp~=nil) then
SetNpcCurCamp(nNpcId, nCurCamp)
end
return nNpcId
end


function randomnpc1()
for i=1,getn(NPC) do
n = random(1,i)
Thannu1 = AddNPCEx1(403,1,NPC[n][2],NPC[n][3],NPC[n][4],1,10,"\\script\\event\\eventrandom\\thannu.lua",5 )
end


DelNpc(Thannu1)


thêm lại hàm AddNpcEx1 vào lib rồi dùng
và biến Thannu1 chỉ là biến cục bộ nên bỏ qua script khác Include vẫn không del được nhé . Nhớ phân biệt biến toàn cục và cục bộ để code hợp lí , mún del cho đơn giản thì
SetGlbMission(100,Thannu1)

DelNpc(GetGlbMission(100))

kenthp
21-07-12, 03:20 PM
function AddNPCEx1(nId,nLevel, nMap,nX,nY,nOffsetX,nOffsetY,nScript,nCurCamp)
if (nOffsetX==nil) then nOffsetX = 0 end
if (nOffsetY==nil) then nOffsetY = 0 end
mapindex = SubWorldID2Idx(nMap)
npcid = nId
npclvl = nLevel
posx = floor((nX+nOffsetX/10)*8*32)
posy = floor((nY+nOffsetY/10)*16*32)
nNpcId = AddNpc(npcid,npclvl,mapindex,posx,posy,1, "Da tau", 1)
if(nScript~=nil) then
SetNpcScript(nNpcId, nScript)
end
if(nCurCamp~=nil) then
SetNpcCurCamp(nNpcId, nCurCamp)
end
return nNpcId
end


function randomnpc1()
for i=1,getn(NPC) do
n = random(1,i)
Thannu1 = AddNPCEx1(403,1,NPC[n][2],NPC[n][3],NPC[n][4],1,10,"\\script\\event\\eventrandom\\thannu.lua",5 )
end


DelNpc(Thannu1)


thêm lại hàm AddNpcEx1 vào lib rồi dùng
và biến Thannu1 chỉ là biến cục bộ nên bỏ qua script khác Include vẫn không del được nhé . Nhớ phân biệt biến toàn cục và cục bộ để code hợp lí , mún del cho đơn giản thì
SetGlbMission(100,Thannu1)

DelNpc(GetGlbMission(100))

Thật sự là mới tham gia vào cái vụ code script này.Tôi vẫn không hiểu cái code này của KMax lắm :( ! Cái này tôi thấy cấu trúc giống cái script add quái vào map ! Vậy sẵn cho hỏi nếu dùng hàm này thì làm sao tăng số lượng quái trong map vậy ? :(