Kết quả 1 đến 5 của 5
-
07-06-10, 09:02 AM #1
-
07-06-10, 09:34 AM #2
- Ngày tham gia
- Apr 2008
- Đang ở
- HCM
- Bài viết
- 546
- Thanks
- 9
- Thanked 82 Times in 27 Posts
Ðề: script gọi boss
Gọi boss ah` ^^ !
Để lấy 1 VD đơn giản nhất cho U sem
Code:callboss = 0 ---- Các biến sữ dụng taoboss = 0 --- gio_boss_hk = {{12,00},{12,30},{24,00},{24,30}} -- Giờ xuất hiện Boss TD_BOSS_HOANGKIM = --Khai báo Array Boss HK theo cấu trúc { {"Vuong Ta",739,95,341,0,"Mac Bac Thao Nguyen"}, -- Tên Boss ID LV IDM Tên Map {"Huyen Giac Dai Su",740,95,322,0,"Truong Bach Son Bac"}, {"Duong Bat Nhiem",741,95,340,1,"Mac Cao Quat"}, {"Bach Doanh Doanh",742,95,336,1,"Phong Lang Do"}, {"Thanh Tuyet Su Thai",743,95,341,2,"Mac Bac Thao Nguyen"}, {"Yen Hien Trai",744,95,336,2,"Phong Lang Do"}, {"Ha Nhan Nga",745,95,321,3,"Truong Bach Son Nam"}, {"Don Tu Nam",746,95,341,4,"Mac Bac Thao Nguyen"}, {"Tuyen Co Tu",747,95,321,4,"Truong Bach Son Nam"}, {"Han Mong",748,95,342,1,"Tay Son Dao"} } TD_THANHTHI = { {"Tuong Duong",78,174,190,212,209,210,221}, -- Tên TT ID X1 Y1 X2 Y2 X3 Y3 {"Thanh Do",11,374,302,419,320,375,328}, {"Phuong Tuong ",1,177,204,225,191,229,213}, {"Dai Ly",162,225,207,223,186,165,196}, {"Duong Chau ",80,202,180,193,210}, {"Lam An ",176,154,209,150,192,140,168}, {"Bien Kinh",37,200,176,252,175,222,212} } function OnTimer() gio = tonumber(date("%H")) phut = tonumber(date("%M")) for i = 1,getn(gio_boss_hk) do if gio == gio_boss_hk[i][1] and phut == gio_boss_hk[i][2] then callbosshk() -- Gọi Boss break elseif gio == gio_boss_hk[i][1] and phut == gio_boss_hk[i][2] + 15 then delboss() Xóa Boss end end end function callbosshk() if callboss <= 3 then k = random(1,2) -- Radom sự xuất hiện của Boss if k == 1 then --ko phai o thanh căn cứ vào Array TD_BOSS_HOANGKIM i = random(1,10) -- Ông này lại chơi trò hên zui đây for x = 1,100 do -- Cái nỳ cốt là để kiểm tra sự tồn tại của map if SubWorldID2Idx(TD_BOSS_HOANGKIM[i][4]) ~= -1 then -- Nếu map tồn tại thì thoát khỏi FOR break --Thoát khỏi vòng lặp While..do..end, For..do..end, Do..Until ,.... elseif SubWorldID2Idx(TD_BOSS_HOANGKIM[i][4]) == -1 and x < 100 then i = random(1,10) --Nếu map hiện tại ở TD_BOSS_HOANGKIM[i][4] không tồn tại thì Sock giá trị i lại 1 lần ở đây khong sữ dụng break vì vòng lặp sẽ típ tục lập với i mới elseif x == 100 then i = 0 break -- Tất cả các map điều ko tồn tại thì thoát khỏi lặp và ko xuất hiện Boss end end if i ~= 0 then --- như tui nói bossname = TD_BOSS_HOANGKIM[i][1] bossid = TD_BOSS_HOANGKIM[i][2] bosslvl = TD_BOSS_HOANGKIM[i][3] mapname = TD_BOSS_HOANGKIM[i][6] mapidx = SubWorldID2Idx(TD_BOSS_HOANGKIM[i][4]) mapidx = SubWorldID2Idx(TD_BOSS_HOANGKIM[i][4]) posx = random(200,300)*8 -- Tọa độ random >''< posy = random(200,300)*16 else return end else --xuat hien tai thanh thi t = random(1,7) i = random(1,10) j = random(1,3) for x = 1,100 do if SubWorldID2Idx(TD_THANHTHI[t][2]) ~= -1 then break elseif SubWorldID2Idx(TD_THANHTHI[t][2]) == -1 and x < 100 then t = random(1,7) elseif x == 100 then t = 0 end end -- Giống như trên if t ~= 0 then bossname = TD_BOSS_HOANGKIM[i][1] bossid = TD_BOSS_HOANGKIM[i][2] bosslvl = TD_BOSS_HOANGKIM[i][3] mapname = TD_THANHTHI[t][1] mapidx = SubWorldID2Idx(TD_THANHTHI[t][2]) posx = TD_THANHTHI[t][2*j+1]*8*32 -- phần tử j sẽ có giá trị từ 1-3 từ đó nếu lấy j*2+1 sẽ cho ra phần tử có số của vị trí là lẻ và đó chính là X của chúng ta -- {"Tuong Duong",78,174,190,212,209,210,221} -- Ex : j = 1 => j*2+1 = 3 Đó là 174 ^^ hiểu posy = TD_THANHTHI[t][j*2 + 2]*16*32 -- phần tử j sẽ có giá trị từ 1-3 từ đó nếu lấy j*2+2 sẽ cho ra phần tử có số của vị trí là chẳn và đó chính là X của chúng ta -- {"Tuong Duong",78,174,190,212,209,210,221} -- Ex : j = 1 => j*2+2 = 4 Đó là 190 ^^ hiểu else return end end if callboss == 0 then mỗi lần gọi boss sẽ có 4 con và 4 con này sẽ ở những chỗ rất cách biệt cách dùng hàm Biến = AddNpc để sử dụng DelNpc ^^ ! Hiểu ?? boss_hk1 = AddNpc(bossid, bosslvl, mapidx, posx, posy, 1, bossname, 1) SetNpcScript(boss_hk1,"\\script\\mapdeath\\mapluyenhk.lua"); -- Set Death cho quái khi chết thì chạy đến chổ nỳ AddGlobalCountNews("Nghe noi "..bossname.." da xuat hien o "..mapname.."",1) callboss = 1 elseif callboss == 1 then boss_hk2 = AddNpc(bossid, bosslvl, mapidx, posx, posy, 1, bossname, 1) SetNpcScript(boss_hk2,"\\script\\mapdeath\\mapluyenhk.lua"); AddGlobalCountNews("Nghe noi "..bossname.." da xuat hien o "..mapname.."",1) callboss = 2 elseif callboss == 2 then boss_hk3 = AddNpc(bossid, bosslvl, mapidx, posx, posy, 1, bossname, 1) SetNpcScript(boss_hk3,"\\script\\mapdeath\\mapluyenhk.lua"); AddGlobalCountNews("Nghe noi "..bossname.." da xuat hien o "..mapname.."",1) callboss = 3 elseif callboss == 3 then boss_hk4 = AddNpc(bossid, bosslvl, mapidx, posx, posy, 1, bossname, 1) SetNpcScript(boss_hk4,"\\script\\mapdeath\\mapluyenhk.lua"); AddGlobalCountNews("Nghe noi "..bossname.." da xuat hien o "..mapname.."",1) callboss = 4 elseif callboss == 4 then boss_hk4 = AddNpc(bossid, bosslvl, mapidx, posx, posy, 1, bossname, 1) SetNpcScript(boss_hk4,"\\script\\mapdeath\\mapluyenhk.lua"); AddGlobalCountNews("Nghe noi "..bossname.." da xuat hien o "..mapname.."",1) callboss = 0 end end end; function delboss() -- Xóa boss như tui nói ^^ DelNpc(boss_hk1) DelNpc(boss_hk2) DelNpc(boss_hk3) DelNpc(boss_hk4) AddGlobalCountNews("Hoat dong giet boss hoang kim da ket thuc") callboss = 0 end function OnDeath() --Phần thưởng khi diệt BOSS AddOwnExp(1000000) Msg2Player("Ban da giet duoc boss hoang kim") end
Mún sữ dụng cái nỳ thì sem lại Id Npc và map chỉnh lại cho đúng
Sau đó thì chép vào 1 Timer của Server nếu xài sang thì cứ tạo cho nó 1 timer riêng bằng hàm StarMissionTimer(idMission,idTimer,time)
...........................Chúc cậu viết được cái nỳ keke !!
-
07-06-10, 09:40 AM #3
Ðề: script gọi boss
Gọi Boss thì nhiều SV có rồi mà !!!!!!!!!!!!!!!
SV ta gọi đủ các loạiKhách viếng thăm hãy cùng notfile xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
07-06-10, 09:41 AM #4
- Ngày tham gia
- Apr 2008
- Đang ở
- HCM
- Bài viết
- 546
- Thanks
- 9
- Thanked 82 Times in 27 Posts
Ðề: script gọi boss
Đừng dùng những cấu trúc có sẳn mà hãy tự sáng tạo riêng cho mình 1 cái ^^ !
Ghét nhất xài đồ chùa mình tự làm tự sướng ----
-
08-06-10, 02:01 PM #5
- Ngày tham gia
- Sep 2009
- Đang ở
- Chém
- Bài viết
- 1,445
- Thanks
- 1
- Thanked 45 Times in 14 Posts
Ðề: [Hướng dẫn] Script gọi boss -- Mạnh tuyên
vừa code xong cái script gọi boss dạng sử dụng lệnh bài Kim Bài gọi Kim Quang như VNG . Nói chung code cũng đơn giản đừng quan trọng hóa vấn đề rồi mù
@notfile : cái script của bạn quá là đơn giảnKhách viếng thăm hãy cùng kinkina2009 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
Các Chủ đề tương tự
-
Một số script trong thư mục script Vina (unpack)
Bởi sangpronhat trong diễn đàn ScriptsTrả lời: 19Bài viết cuối: 26-11-11, 08:12 AM -
[tuyển] .............tuyển nhân sự cho team ECD..................
Bởi nghichtu91 trong diễn đàn Các Server Không Nằm Trong BoxTrả lời: 8Bài viết cuối: 08-05-11, 09:31 PM -
Script Báo tọa độ và thành boss xuất hiện
Bởi banynavy trong diễn đàn ScriptsTrả lời: 3Bài viết cuối: 03-04-10, 07:58 AM