看板 mud_sanc 關於我們 聯絡資訊
※ 引述《amosdeus (幽素)》之銘言: 你之前攻擊會出現 ERROR,是因為你的 shut 使用底下語法... shut("攻擊敘述",殺傷,命中,"型態",對象); 正確的語法是... frog->shut("攻擊敘述",殺傷,命中,"型態",對象); : 我已經修改好了,測試之後還是有問題,照DARK2部份來看普通攻擊應該會打不中 : 測試的結果還是沒作用。 : 麻煩請再幫我看一下 謝謝 我完全沒看到你的 zi.c 哪邊有需要繼承 character.c 耶。 一、charecter.c 只是 inherit 了 MONSTER 然後寫了幾個函數. 二、然後 zi.c 繼承了 charecter.c 所以自然繼承了那些函數. 三、但是 zi.c 沒有任何一個地方,呼叫那些函數。 (也就是有繼承跟沒繼承一樣) 所以你的 zi.c 先 inherit MONSTER; 我去想一種寫法讓你的 character.c 有作用。 : : 打怪物,怪物馬上消失,寫法是在怪物裡頭自定 kill_ob 函數 : void kill_ob(object ppl) : { : write(query("chi_name")+"面露疑惑說道:"HIY"如果沒事,偶要回去煮飯嚕!!\n"NOR+ : query("chi_name")+"丟下你不管轉身離開了。\n"); : remove(); : return ; : } : > k zi : 你對著(Q版)中原須奈子喝道: 「小王八蛋﹗今日不是你死就是我活﹗」 : 你開始攻擊 (Q版)中原須奈子. : (Q版)中原須奈子面露疑惑說道:如果沒事,我要回去煮飯嚕!! : (Q版)中原須奈子丟下你不管轉身離開了。 : □ □ □ 戰 鬥 開 始 □ □ □ : 執行時段錯誤: *Illegal to move or destruct an object (/u/p/plain/wide/virtue/npc/zhong#2296) defining actions from a verb function which returns zero. : 程式: (0):0 : 物件: 0 : ○○○ 這場戰鬥結束了!! ○○○ : Plain@Sanc 嗯,不能用 void,改成 int 吧。 int kill_ob(object ppl) { write(query("chi_name")+"面露疑惑說道:"HIY"如果沒事,我要回去煮飯嚕!\n"NOR+ query("chi_name")+"丟下你不管轉身離開了。\n"); remove(); // 消失 // 若要保險起見也可以 this_object()->remove(); return 1; } 降應該就沒問題了,上面那個錯誤是因為 move 類函數需有 回傳值(void 函數的回傳值是 空氣 所以才有錯誤訊息)。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.225.18.81 ※ 編輯: laechan 來自: 61.225.18.81 (03/22 05:29)