※ 引述《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