David Cole wrote: > Hello, > > I added a new skill called Awarness, where if someone has the skill, they > can detect if someone is sneaking/hidden etc... My problem is im trying to > add it to act.movement.c in the spot where it tells you in what direction > they left or entered, but my little hack job of coding it isnt working to > well, can someone take a look and maybe exsplain to me what im doing wrong? > > if (AFF_FLAGGED(ch, AFF_SNEAK)) { > if (GET_SKILL(world[ch->in_room].people, SKILL_AWARNESS) >= 1) > sprintf(buf2, "$n sneaks in from %s.", alt_dirs[rev_dir[dir]]); > act(buf2, FALSE, ch, 0, world[ch->in_room].people, TO_VICT); > improve_skill(ch, SKILL_AWARNESS); > } else > bla bla flying, walking, levitating...... > well first you need brackets with your if statement but you also need to loop through everyone in the room to send them the message. declare struct char_data *vict; if (AFF_FLAGGED(ch, AFF_SNEAK)) { for (vict = world[ch->in_room].people; vict; vict = vict->next_in_room) { /* if you want to use a dice roll */ if (GET_SKILL(vict, SKILL_AWARENESS) > number(1, 101)) { sprintf(buf2, "$n sneaks in from %s.", dirs[rev_dir[dir]]); act(buf2, FALSE, ch, 0, vict, TO_VICT); } } } /* called after the loop so you only improve once */ improve_skill(ch, SKILL_AWARNESS); }else .... think that should work... Also, thanks to Welcor for the advice on kill_ems, seems to work so far =) R.M. ironfist@texas.net -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 06/24/03 PDT