I'm trying to make a special procedure for a goat which eats the first object in the player's inventory. It doesn't work of course, so perhaps somebody could help me find what i'm doing wrong. here's what i've done: in spec_assign.c added: SPECIAL(snake); SPECIAL(thief); SPECIAL(magic_user); + SPECIAL(goat); in spec_procs.c added: SPECIAL(goat) { struct char_data *cons; if (cmd) return FALSE; if (GET_POS(ch) != POS_STANDING) return FALSE; for (cons = world[ch->in_room].people; cons; cons = cons->next_in_room) if (!IS_NPC(cons) && (GET_LEVEL(cons) < LVL_IMMORT) && (!number(0, 4))) { npc_eatobj(ch, cons, ch->carrying); return TRUE; } return FALSE; } *and* void npc_eatobj(struct char_data * ch, struct char_data * vict, struct obj_data * obj) { if (IS_NPC(vict)) return; if (GET_LEVEL(vict) >= LVL_IMMORT) return; if (!obj) return; if (AWAKE(victim) && (number(0, GET_LEVEL(ch)) == 0)) { act("You grab your $p before the $n eats it.", FALSE, ch, 0, vict, TO_VICT); act("The $n just tried to eat $N's $p!", TRUE, ch, 0, vict, TO_NOTVICT); } else { /* destroy the item */ act("The $n just ate your $p!", FALSE, ch, 0, vict, TO_VICT); act("The $n just ate $N's $p!", FALSE, ch, obj, vict, TO_NOTVICT); obj_from_char(obj); } } I get this error during compile: spec_procs.c: In function `goat': spec_procs.c:243: warning: implicit declaration of function `npc_eatobj' spec_procs.c: At top level: spec_procs.c:350: warning: type mismatch with previous external decl spec_procs.c:243: warning: previous external decl of `npc_eatobj' spec_procs.c:350: warning: type mismatch with previous implicit declaration spec_procs.c:243: warning: previous implicit declaration of `npc_eatobj' spec_procs.c:350: warning: `npc_eatobj' was previously implicitly declared to re turn `int' spec_procs.c: In function `npc_eatobj': spec_procs.c:357: `victim' undeclared (first use this function) spec_procs.c:357: (Each undeclared identifier is reported only once spec_procs.c:357: for each function it appears in.) make[1]: *** [spec_procs.o] Error 1 make[1]: Leaving directory `/home/legendd/circle30bpl12/src' make: *** [all] Error 2 I, being a newbie coder, have no idea what to do. thanks in advance for any help I get :) Nathan Ridley +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/08/00 PST