精華區beta mud_sanc 關於我們 聯絡資訊
※ 引述《amosdeus (幽素)》之銘言: : #include "../virtue.h" : inherit ROOM; : void create() : { : ::create(); : seteuid(getuid(this_object())); : set("light",1); : set("short","test"); : set("long",@PLAIN : test : PLAIN : ); : } : int room_check_poison(); // 事先宣告 : void init() : { : object ppl; : if(!userp(ppl)) return ; : if(query("callouting")) return ; : set("callouting",1); : check_poison(); 拍謝,這裡應該是 room_check_poison(); : return ; : } : void room_check_poison() : { : object env,ob=this_object(); : mixed usr=all_inventory(env); : int i; : foreach(ob in usr) : { : if(userp(ob)) : { : // 看要讓玩家怎麼中毒, 寫在這裡 : } : else : i++; : } : if(i==sizeof(usr)) : { : delete("callouting"); : remove_call_out("room_check_poison"); : return ; : } : call_out("room_check_poison",看要設幾秒寫在這裡); : return ; : } : > /u/p/plain/wide/virtue/room2/nt01: 編譯時段錯誤: : /u/p/plain/wide/virtue/room2/nt01.c line 24: Undefined function check_poison before ; : 編譯時段錯誤: 這行是 check_poison 這個函數未定義的意思。 : /u/p/plain/wide/virtue/room2/nt01.c line 52: Warning: Return type doesn't match prototype ( void vs int ) before the end of line return type doesn't match 的意思是,比方函數宣告為 int (事前宣告那一項我宣告成 int),但實際在寫函數時卻宣告為 void (之後那一整個函數),「沒有相符(match)」。 : 載入物件錯誤. : Error: *Error in loading object '/u/p/plain/wide/virtue/room2/nt01' : Errors written to /u/p/plain/log: : /u/p/plain/wide/virtue/room2/nt01.c line 24: Undefined function check_poison before ; : /u/p/plain/wide/virtue/room2/nt01.c line 52: Warning: Return type doesn't match prototype ( void vs int ) before the end of line : 稍微有問題 我測試不出來24要修改哪裡? : 以上 : 謝謝 : Plain@Sanc 再改過應該就可了。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.231.229.57