看板 mud_sanc 關於我們 聯絡資訊
※ 引述《justinj (黑旋風)》之銘言: : 某一個quest的步驟 : { : ob->remove(); : write("迪菲亞特道:太好了,謝謝你幫我記錄完畢,那這是給你的報酬。\n"); : } : ===============執行的結果============================ : 迪菲亞特道:太好了,謝謝你幫我記錄完畢,那這是給你的報酬。 : 執行時段錯誤: *Illegal to move or destruct an object : (/d/ppl/justinj/dark/obj/bio_record#1893454) defining actions from a verb : function which returns zero. : 程式: 0:0 : 物件: 0 : ===================================================== : 那要怎麼設定才不會出現? 程式段給的資訊不足,我不太清楚問題點在哪,但是依照一般的 經驗,如果你有做 ob->remove() 的話一定要用 return 1; 做為 結尾,不然就會產生錯誤。 defining actions from a verb function which returns zero. ^^^^^^^^^^^^^^^^^^^ 一般這錯誤會發生在你用 add_action 自訂一個 verb 時,然後在 這個 verb 內嚐試要 move or remove(destruct) 一個東西,然後 沒有適當的結尾(return 1)。 之前我在 /d/ppl/quest/memory 目錄下也發現過這種狀況,即玩 家 mivis 所反映的那個 bug,我之前有處理過的。 總之請記得 move or remove 一定要接 return 1,函數要用 int 宣告不要用 void。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.61.157.53
justinj :有return 1 11/12 17:09
laechan :nobu 昨天有 line 我, 大致上是如果升到 2.26 似乎可 11/13 11:18
laechan :以解決這問題 11/13 11:18
laechan :啊請無視上面的網址... 11/13 11:22
laechan :基本上跟昨天討論的一樣,mudos認為return 0就是不應 11/13 11:22
laechan :該做 move 跟 destruct(remove), 這個在 2.26 版以後 11/13 11:23
laechan :似乎就已經得到了解決(聖殿目前使用 2.26 以前的版本 11/13 11:23