UID206929
帖子
精華
主題
積分3369
現金
積極性
威望
違規
熱心
推廣次數
閱讀權限20
註冊時間2009-10-21
在線時間 小時
最後登錄1970-1-1
TA的每日心情 | 擦汗 2021-1-3 02:46 PM |
---|
簽到天數: 360 天 連續簽到: 1 天 [LV.8]以壇為家I
|
本帖最後由 z0202520 於 2014-6-4 10:32 PM 編輯
小弟服務端版本:SeAr1.10.132
最近自行撰寫副本完後,在自己一個人測試的過程中沒有錯誤。
但是當副本同時有兩組創建時,變數的設置就出現了問題.. 如下
功能是.. 副本開始後,某個地點會一直召喚怪物,召喚1隻,延遲1秒,所以整個迴圈下來會拖很久。
而另外一位NPC可以選擇暫停出怪幾分鐘,在這裡,出現了問題...- $name - 永久伺服器數字變數
- $name$ - 永久伺服器文字變數 說明 - 記錄在伺服器,不會消失。
- $@name - 暫時伺服器數字變數
- $@name$ - 暫時伺服器文字變數 說明 - 記錄在伺服器,重讀或重開伺服器就會消失。
- .name - 暫時NPC數字變數
- .name$ - 暫時NPC文字變數說明 - 記錄在NPC身上,重讀或重開伺服器就會消失。
- .@name - 暫時NPC數字變數
- .@name$ - 暫時NPC文字變數 說明 - 記錄在NPC身上,結束對話後就會消失。
複製代碼 如果變數寫伺服器變數,不可行,全伺服器的人都會錯亂。
如果變數寫暫時NPC數字變數(.name)時,假設第一組開啟時間暫停後,第二組的副本地圖npc也會更改此變數,造成錯亂..
經過測試,發現只有.@name暫時數字變數可用,但是當該段敘述結束後,變數就沒了..
這樣召喚怪物的敘述區段,也沒辦法讀到開啟暫停時間的變數關係.
有什麼方法能在副本裡面使用變數來記錄任何一個值後,再供給另一個NPC使用的呢?
或者...
有什麼指令能判斷在該地圖有哪個編號的魔物嗎?
然後當initnpctimer後,時間到達就把該怪物殺掉,這樣當作判斷方法...- set .@map$, instance_mapname("副本地圖");
- for(set .@i,0;.@i<30;set .@i,.@i+1) {
- if(.@delay_time>0) {
- sleep .@delay_time*60000;
- set .@delay_time,0;
- }
- campmob .@map$,24,23,24,23,"--ja--",$@mob_GD1[1],1;
- campmob .@map$,36,80,36,80,"--ja--",$@mob_GD1[2],1;
- campmob .@map$,94,98,94,98,"--ja--",$@mob_GD1[3],1;
- sleep 1500;
- }
複製代碼 set .@map$ 這邊我先打副本地圖替代意思一下...
大概就是這腳本構思.. 如果用 .@delay_time,在另一個NPC設定這個值時,這邊會讀不到。
有沒有什麼辦法能解決這個變數區域性的問題呢?我目前腳本沒完成,只是先測試這個功能發現有問題而已。
所以沒腳本可以提供給你們做參考... 但是就針對這個問題想請教一下各位....
如果有知道解決辦法,希望您不吝嗇於回答,謝謝你了....
|
|