Board logo

標題: 想問一下 [打印本頁]

作者: 雪姬公主    時間: 2012-4-6 23:25     標題: 想問一下

可以製作NPC到處走動嗎還是不行 試好多次 都顯示不出來NPC
作者: 屁力狼    時間: 2012-4-7 02:58

有出現什麼錯誤訊息嗎?
作者: 小鐵    時間: 2012-4-7 13:25

NPC到處走動好像做不太到 ..
原地踏步倒是可以 !!!
作者: 雪姬公主    時間: 2012-4-7 16:54

是沒有顯示錯誤訊息只是
npc圖 會變成顯示不出來
作者: 小鐵    時間: 2012-4-7 16:58     標題: 回復 4# 的帖子

唔,可以把你的CREATE檔的內容貼上來分享一下嗎
作者: 雪姬公主    時間: 2012-4-7 16:59

我就是用不是有公車那個把他那個拿來用其他地方就不會顯示
我已經坎了0.0

[ 本帖最後由 雪姬公主 於 2012-4-7 17:01 編輯 ]
作者: 小鐵    時間: 2012-4-7 17:49

喔,公車喔

那就是模板的問題了,你要讓GMSV能判斷NPC是當成公車
然後再以相同道理設計應該就可以了!!
作者: 雪姬公主    時間: 2012-4-8 09:07

就可以讓npc走來走去? 是這樣嗎?模組版是弄那一個
作者: kkmain    時間: 2012-4-8 09:17

引用:
原帖由 雪姬公主 於 2012-4-8 09:07 發表
就可以讓npc走來走去? 是這樣嗎?模組版是弄那一個
可以用lua做...

首先在data/lua/下建立資料夾walk
建立新文件名稱walk.lua
內容填上
-----------------------------------------------------------
function walkctrl_Init( _MeIndex )

Char.SetData(_MeIndex, %對像_形象%, 100805); --設置NPC造型的
Char.SetData(_MeIndex, %對像_原形%, 100805); --設置NPC造型的
Char.SetData(_MeIndex, %對像_地圖%, 1000); --設置NPC所在地圖的
Char.SetData(_MeIndex, %對像_X%, 83); --設置NPC初期X坐標
Char.SetData(_MeIndex, %對像_Y%, 89); --設置NPC初期Y坐標
Char.SetData(_MeIndex, %對像_方向%, %右下%); --設置初期NPC方向
Char.SetData(_MeIndex, %對像_原名%, "吳夫人 Lv:140");--設置NPC名字的,千萬別過長了,不然會無法顯示

local iX = {0};
local iY = {0};
local Timer = (0);

local iX_MeIndex = 0;
local iY_MeIndex = 0;
local Timer = 1;

if (Char.SetLoopEvent(nil, "walking_walk", _MeIndex,1000) < 0) then
print("walking_walk註冊事件失敗。");
return false;
end

NLG.UpChar(_MeIndex);
return true;
end

function walking_walk( _MeIndex)

--設置動作為走路
local walk = 1;
NLG.SetAction(_MeIndex,walk);
--隨機
local TM_DIR = math.floor(math.random(0, 7));
--走路設置
if(NLG.WalkMove(_MeIndex,TM_DIR) ~= 0) then
NLG.WalkMove(_MeIndex,math.floor(math.random(0, 7)));
end
return ;
end
------------------------------------------------------------
建立文件walkctrl_Init
填上內容
-------------------------------------------------------------
function hlctrl_Reload()
if (hlctrl_index == nil) then --這句檢查NPC是否已經創建,防止重複創建
--創建NPC第一個參數是SiegeCtrl_index函數所在的文件第二個參數是NPC初始化時候會調用的函數
hlctrl_index = NL.CreateNpc("./data/npc/lua/hl/hl.lua", "hlctrl_Init");
--向NPC周圍的玩家發送NPC數據更新封包
NLG.UpChar(hlctrl_index);
else
NL.DelNpc(hlctrl_index);
NLG.UpChar(hlctrl_index);
hlctrl_index = nil;
end
end
hlctrl_Reload();
----------------------------------------------------------------------------
功能它就只是隨機薩村亂晃的NPC不會罷工.
我沒用過這論壇服務端不確定可以跑嗎.不妨試試.
作者: yang    時間: 2012-4-8 12:35

這裡服務端有支援lua walk

http://lab.welovesa.com/viewthread.php?tid=1294
這篇的npc有使用到走路這個功能  
作者: 雪姬公主    時間: 2012-4-8 15:32

謝謝你喔 來下在看看拿試試看
請問一下是不是 建立資夾 放進去 把那些填上去就可以嗎

[ 本帖最後由 雪姬公主 於 2012-4-8 16:26 編輯 ]
作者: 小鐵    時間: 2012-4-8 19:30

太強了 :lol
作者: 雪姬公主    時間: 2012-4-8 22:04

你可以使用喔???? 我怎麼都不會讀取
作者: 屁力狼    時間: 2012-4-8 22:13

你的init.lua有去讀這個文件嗎?
作者: 雪姬公主    時間: 2012-4-8 23:15

事有看
可是我資料夾沒有lua的資料夾 自己建立 放進還是一樣讀取不到
作者: 屁力狼    時間: 2012-4-9 05:12

你的伺服器裡已經有用過LUA腳本了嗎
作者: 雪姬公主    時間: 2012-4-9 10:59

那是什麼東西?  腳本? 沒用過
作者: kkmain    時間: 2012-4-9 11:44

引用:
原帖由 雪姬公主 於 2012-4-8 22:04 發表
你可以使用喔???? 我怎麼都不會讀取
init.lua加入下列這行
dofile("./data/npc/lua/walk/walkctrl_Init")

或者用GM命令運行它
[GM密碼 doluafile ./data/npc/lua/walk/walkctrl_Init GMSV_NPC_Init]
作者: 雪姬公主    時間: 2012-4-9 12:42

謝謝你我試試看 如果還是不行 可能我方法弄錯
剛剛是了 顯示加載失敗 原因
腳本函數執行完畢 函數返回值

[ 本帖最後由 雪姬公主 於 2012-4-9 17:45 編輯 ]
作者: 屁力狼    時間: 2012-4-10 02:33

原因是空白的!?你是用gm指令嗎?
作者: 雪姬公主    時間: 2012-4-10 06:23

對阿 2個方法都是 可是就是沒有讀取 可是 我弄這論壇的衝裝LUA的他那個有讀取到可是沒有好像讀取失敗

NPC_Lua_DoFile LoadFile Err :3<./data/npc/lua/equipenhance/equipenhance.lua:169: unexpected symbol near '.'>
NPC_Lua_Create err:無法獲得取初始化和數指針
與AC服務器連接成功!
正常服務器

[ 本帖最後由 雪姬公主 於 2012-4-10 07:07 編輯 ]
作者: 屁力狼    時間: 2012-4-11 03:04

你用RC+香蕉園的那個群組吧




歡迎光臨 We Love SA 石器時代研討中心 (http://lab.welovesa.com/) Powered by Discuz! 6.0.0