看板 mud_sanc 關於我們 聯絡資訊
今天懷疑有問題的地方在這 /u/l/laechan/area/fuxk/tomb/mob/mob1.c ==================================================== inherit "/u/l/laechan/area/fuxk/tomb/gmonster.c"; void create() { set("level",93); set("race","魔物"); ::create(); seteuid(getuid(this_object())); ==================================================== 然後 /u/l/laechan/area/fuxk/tomb/gmonster.c ==================================================== inherit "/std/new_ob/gmonster.c"; void create() { ::create(); seteuid(getuid(this_object())); set("drop_rate",1); set("ftype","贛林老墓"); } ==================================================== 也就是說繼承架構如下 /u/l/laechan/area/fuxk/tomb/mob/mob1.c └ /u/l/laechan/area/fuxk/tomb/gmonster.c └ /std/new_ob/gmonster.c └ /std/gmonster.c 問題可能出在 seteuid(getuid(this_object())); 這行,依 據 /std/gmonster.c: void create() { me=this_object(); seteuid(getuid(me)); MOB_D->Create(me); enable_commands(); add_action( "cmd_hook", "", 1 ); } 也就是說,可以推測做為繼承用的物件,void create 裡面是 不需要 seteuid(getuid(this_object())); 的,因為最底層的 /std/gmonster.c 已經有 seteuid 了。 因此今天將老墓的 mob 各層的 seteuid 移除,觀察一天看看。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 編輯: laechan 來自: 210.61.157.53 (10/03 10:27)
laechan :1107 debug.log 10/03 10:28
laechan :1111 debug.log 10/03 10:29
laechan :1115 debug.log 10/03 10:33
laechan :1117 debug.log 10/03 10:36