[KT] Giúp đỡ làm NPC tự di chuyển theo tọa độ - Trang 2
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Trang 2 của 2 Đầu tiênĐầu tiên 1 2
Kết quả 11 đến 20 của 20
  1. #11
    Vi phạm quy định kebactinh86's Avatar
    Ngày tham gia
    Apr 2010
    Đang ở
    https://t.me*********
    Bài viết
    217
    Thanks
    32
    Thanked 97 Times in 40 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Trả tiêu xa là ở đích làm thêm 1 npc nữa khí bấm vào NPC đó thì check npc xung quang như câu cá rùi thực thi lệnh xóa npc và add phần thưởng đúng không bạn nhỉ
    Khách viếng thăm hãy cùng kebactinh86 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. #12
    Thành Viên
    Ngày tham gia
    Mar 2015
    Bài viết
    118
    Thanks
    26
    Thanked 4 Times in 4 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    làm như vậy thì trả khác gì là vạn tiêu rồi, chứ phải hộ tiêu đâu , làm sao cho nó đến 1 tọa độ là nó tự xóa + phát thưởng luôn. lúc trước có chơi 1 sv nó như vậy.
    Khách viếng thăm hãy cùng lctung2015 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  3. #13
    Vi phạm quy định kebactinh86's Avatar
    Ngày tham gia
    Apr 2010
    Đang ở
    https://t.me*********
    Bài viết
    217
    Thanks
    32
    Thanked 97 Times in 40 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Thì tất nhiên mình cũng mún nó ngon lành nuột nà như vậy nhưng trình gà thì phải chịu khó chế cháo những thứ mình ko nghĩ ra cách xử lý hay hơn được thôi bác hjhj
    Khách viếng thăm hãy cùng kebactinh86 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #14
    Thành Viên Tâm Huyết __Jie__'s Avatar
    Ngày tham gia
    Sep 2008
    Bài viết
    1,320
    Thanks
    256
    Thanked 740 Times in 559 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Làm được nhưng 1 lần chỉ di chuyển 1 NPC thôi . 2 Con chạy cùng 1 lúc là lỗi . Đang tìm hướng khắc phục


    Code cho ai hứng thú vẫn chưa khắc phục dc lỗi 2 người cùng hộ tống nhé
    Code:
    local tbHoTong = {};
    SpecialEvent.HoTong = tbHoTong;
    tbHoTong.tbHoTongTrack	= {
    	{1604, 3130},
    	{1595, 3120},
    {1591, 3111},	
    {1595, 3095},
    {1605, 3087},
    {1618, 3093},
    {1623, 3110},
    }
    tbHoTong.nMapId = 5;
    function tbHoTong:OnDialog()
    		Dialog:Say("Hiệp sĩ, không tìm được chiếc chìa khóa đó sao?", {
    				  {"Nào, để ta giúp ngươi mở chiếc khóa này!", tbHoTong.Release, tbHoTong, him.dwId},
    				  {"Hãy đợi", tbHoTong.OnExit, tbHoTong},
    				});	
    end
    
    function tbHoTong:Release(nNpcId)
    	local pNpc	= KNpc.GetById(nNpcId);
    	if not pNpc then return; end;
    	local pDialogNpc = KNpc.GetById(nNpcId);
    --[[	pDialogNpc.Delete(); 
    	if (self.nMoveNpcId) then
    		local pFightNpc = KNpc.GetById(self.nMoveNpcId);
    		if (pFightNpc) then
    			pFightNpc.Delete();
    			self.nMoveNpcId = nil;
    		end
    	end		]]
    	local tbHoTongFightNpc = {2474};
    	local nRand = MathRandom(#tbHoTongFightNpc);
    	local tbHoTongFight = tbHoTongFightNpc[nRand];
    
    	local nCurMapId, nCurPosX, nCurPosY = pNpc.GetWorldPos();
    			local pFightNpc		= KNpc.Add2(tbHoTongFight, 1, -1, nCurMapId, nCurPosX, nCurPosY, 0, 0, 1);		
    			pFightNpc.SetTitle(" Do đội <color=yellow>"..me.szName.."<color> bảo vệ");
    			self.nMoveNpcId = pFightNpc.dwId;
    			pFightNpc.SetCurCamp(0);
    			pFightNpc.RestoreLife();
    			pFightNpc.AI_ClearPath();
    			for _,Pos in ipairs(self.tbHoTongTrack) do
    				if (Pos[1] and Pos[2]) then
    					pFightNpc.AI_AddMovePos(tonumber(Pos[1])*32, tonumber(Pos[2])*32)
    				end
    			end
    			
    		pFightNpc.SetNpcAI(9, 0, 0, -1, 25, 25, 25, 0, 0, 0, 0, me.GetNpc().nIndex);
    	self:RegRunTimer();		
    	--self:RiseDialogNpc();
    end;
    function tbHoTong:RegRunTimer()
    	if (MODULE_GAMESERVER and not self.nRegisterRunTimerId) then
    		self.nRegisterRunTimerId = Timer:Register(18, self.OnTimer, self);
    	end
    end
    function tbHoTong:UnRegRunTimer()
    	if (MODULE_GAMESERVER and self.nRegisterRunTimerId) then
    		Timer:Close(self.nRegisterRunTimerId);
    		self.nRegisterRunTimerId = nil;
    	end
    end
    function tbHoTong:RiseDialogNpc()
    	if (MODULE_GAMESERVER and not self.nReviveDurationTimeId) then
    		self.nReviveDurationTimeId = Timer:Register(18, self.AddDialogNpc, self);
    	end;
    end
    
    -- 添加一個對話Npc
    function tbHoTong:AddDialogNpc()
    	local pDialogNpc = KNpc.Add2(20118, 1, -1, self.nMapId, 1609, 3129);
    	
    	self.nDialogNpcId = pDialogNpc.dwId;
    	self.nReviveDurationTimeId = nil;
    	return 0;
    end
    function tbHoTong:OnTimer()
    
    	if (not self.nMoveNpcId) then
    		self.nRegisterRunTimerId = nil;
    		return 0;
    	end
    	local pFightNpc = KNpc.GetById(self.nMoveNpcId);
    	if (not pFightNpc) then
    		self.nRegisterRunTimerId = nil;
    		return 0;
    	end
    	local nHimCurMapId, nHimCurPosX, nHimCurPosY = pFightNpc.GetWorldPos();
    	
    	local bAtPos, szMsg = TaskCond:IsAtPos(self.nMapId, nHimCurPosX, nHimCurPosY, 30);
    	if (not bAtPos) then
    		me.Msg("Khoảng cách hộ tống  quá xa, nhiệm vụ thất bại.")
    		pFightNpc.Delete();
    		self.nMoveNpcId = nil;
    		self.nRegisterRunTimerId = nil;
    		return 0;
    	end
    	if (TaskCond:IsNpcAtPos(self.nMoveNpcId, nHimCurMapId, 1623, 3110, 5) or pFightNpc.AI_IsArrival() == 1) then
    		me.Msg("Hộ tống thành công, hãy quay về nhận thưởng.")
    		pFightNpc.Delete();
    		self.nMoveNpcId = nil;
    		self:UnRegRunTimer();
    	end
    	
    	return 18;
    end
    
    function tbHoTong:Chat(pFightNpc)
    	if pFightNpc then
    	local tbHoTongMsg = {"Bọn bây rồi sẽ biết mùi vị đau đớn như thế nào...",
    				   "Đói bụng quá không thể về nhà được~~~",
    				   "Các ngươi đâu cả rồi~~~",
    				   "Hãy xem ta đây~~~", 
    				   "Theo gái sướng hơn~~~",
    				   "Giết hết, giết hết~~~~",
    				   "Nơi đây vốn không phải là địa bàn của các ngươi!~~~",
    				   "Chào mừng bạn đến với Ngọa Long Kiếm!"};
    		local nRand = MathRandom(#tbHoTongMsg);
    		pFightNpc.SendChat(tbHoTongMsg[nRand]);
    	end
    end;
    
    -- 護送 NPC 小憐被殺死
    function tbHoTong:OnDeath(pNpc)
    	local nMapId, nMapX, nMapY	= him.GetWorldPos();
    	local tbHoTongInstancing = TreasureMap:GetInstancing(nMapId);
    	
    	tbHoTongInstancing.nGirlKilled	= 1;
    end
    Lần sửa cuối bởi __Jie__, ngày 24-09-16 lúc 12:37 PM.
    Nhận viết sự kiện Kiếm Thế PC - Mobile
    Auto PK 6 acc Kiếm Thế PC không cần sanboxie hoặc autoupdate
    Web: [Only registered and activated users can see links. ]

  5. #15
    Vi phạm quy định kebactinh86's Avatar
    Ngày tham gia
    Apr 2010
    Đang ở
    https://t.me*********
    Bài viết
    217
    Thanks
    32
    Thanked 97 Times in 40 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Thanks bằng hành động hjhjhj
    Khách viếng thăm hãy cùng kebactinh86 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  6. #16
    Thành Viên Tâm Huyết __Jie__'s Avatar
    Ngày tham gia
    Sep 2008
    Bài viết
    1,320
    Thanks
    256
    Thanked 740 Times in 559 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Cái này là gì đây ta .

    Ngày mưa gió ở SG may mắn fix xong lỗi 2 nhân vật. Chưa test kỹ nhưng cơ bản chắn ok

    Nhận viết sự kiện Kiếm Thế PC - Mobile
    Auto PK 6 acc Kiếm Thế PC không cần sanboxie hoặc autoupdate
    Web: [Only registered and activated users can see links. ]

  7. #17
    Vi phạm quy định kebactinh86's Avatar
    Ngày tham gia
    Apr 2010
    Đang ở
    https://t.me*********
    Bài viết
    217
    Thanks
    32
    Thanked 97 Times in 40 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    mình đang tìm hiểu cách điều khiển golbaltask hình như set và xóa task này sẽ khống chế dc việc 2 ng cùng hộ tống thì phải mà code chưa chạy hjhj.Mới đến dc khúc thành công nhiệm vụ add túi quà trực tiếp rùi set task nhân vật thôi !
    Khách viếng thăm hãy cùng kebactinh86 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. #18
    Thành Viên Tâm Huyết __Jie__'s Avatar
    Ngày tham gia
    Sep 2008
    Bài viết
    1,320
    Thanks
    256
    Thanked 740 Times in 559 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Không cần chỉ cần 2 biến Timer:Register khác giá trị vs nhau là dc.

    Ví dụ : Goi A = Timer:Register GS hiểu rằng file lua đang gọi Register = biến A . Có thể test bằng cách tạo 2 file lua giống nhau thì sẽ không bị lỗi.

    Từ đó rút ra được mỗi 1 file Lua chỉ có thể gán 1 giá trị cho Timer:Register để chạy 1 hàm. Nếu 2 ng cùng gọi đến cùng 1 file Lua cùng gán biến giá trị giống nhau cho Timer:Register thì chỉ có 1 trong 2 thực thi được.

    ===> Thay đổi liên tục giá trị biến Timer:Register là xong

    Theo như tôi hiễu là như vậy cũng ngồi mò cả buổi tối mới xong .
    Lần sửa cuối bởi __Jie__, ngày 27-09-16 lúc 10:29 PM.
    Nhận viết sự kiện Kiếm Thế PC - Mobile
    Auto PK 6 acc Kiếm Thế PC không cần sanboxie hoặc autoupdate
    Web: [Only registered and activated users can see links. ]

  9. #19
    Thành Viên Tâm Huyết wermanhme1990's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    1,594
    Thanks
    78
    Thanked 669 Times in 483 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    Hai ông nghiên cứu ghê nhỉ, đợt này tui đang dev lại kiếm thế, mà chưa rảnh, để lúc nào làm cái chức năng giống 2 ông cho vui.
    Khách viếng thăm hãy cùng wermanhme1990 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  10. Các thành viên gởi lời cảm ơn đến wermanhme1990 vì bài viết này !

    kebactinh86 (28-09-16)

  11. #20
    Vi phạm quy định kebactinh86's Avatar
    Ngày tham gia
    Apr 2010
    Đang ở
    https://t.me*********
    Bài viết
    217
    Thanks
    32
    Thanked 97 Times in 40 Posts

    Ðề: Giúp đỡ làm NPC tự di chuyển theo tọa độ

    2 ng đi chung 1 đường thì bàn luận nó mới vui vui.Hay bác ngâm thử cái xml trong task_publish rùi chỉ giáo lại anh em .Có unpak nó ra mà không hiểu nó truyền vào file lua ra sao hì hì
    Khách viếng thăm hãy cùng kebactinh86 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

 

 
Trang 2 của 2 Đầu tiênĐầu tiên 1 2

Các Chủ đề tương tự

  1. [JX] Help Đổi xếp hạng ? k xếp theo rank mà xếp hiện thị theo số lượng tinh lực
    Bởi HungDevJX trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 20
    Bài viết cuối: 30-07-16, 11:21 AM
  2. [TLBB] Dịch Chuyển Theo Thời Gian Hệ THống
    Bởi haxlaye trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 1
    Bài viết cuối: 02-10-15, 11:23 PM
  3. Chuyên dụng chẩn đoán và theo dõi sức khỏe của ổ đĩa
    Bởi anhkhongdoiqua trong diễn đàn Công cụ dành cho PC
    Trả lời: 0
    Bài viết cuối: 02-11-14, 05:40 PM
  4. Mepmedia Absolute Audio Converter - Chuyển đổi âm thanh chuyên nghiệp gọn nhẹ
    Bởi PandavB trong diễn đàn Phần mềm dành cho Giải Trí
    Trả lời: 0
    Bài viết cuối: 20-02-14, 09:22 AM
  5. [MU] Vẫn chuyện của ngày xưa: Máy chủ tăng ram dần dần theo time chạy Server
    Bởi eva0001 trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 1
    Bài viết cuối: 09-09-12, 11:48 AM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 12:11 PM.
vBulletin®, Copyright ©2000-2011, Jelsoft Enterprises Ltd.
CLBGamesVN không chịu trách nhiệm về Luật Bản Quyền của các tài liệu, bài viết v.v...được đăng tải trên diễn đàn này.
Diễn đàn phát triển dưới sự đóng góp của tất cả thành viên. BQT chỉ là những người thành lập ra sân chơi, quản lý và duy trì về mặt kỹ thuật, nội dung khi hợp lệ.