Ok.. this is rather hmm, odd.
Im currently in the process of writing a new fight system from scratch (for fun, headaches, and because i want more control over the fight system, eh im not using rom-styled fight code, so it makes sense) anyways.. Everything is thusfar complete. (Short of tweaking numbers, adding in effects like weapon knowledge, santuary etc) and im working on a replacement for raw_kill. Its much like a clone of the orginal.

the code is:
void death_kill(CHAR_DATA * ch, CHAR_DATA * victim, bool announce, int to_room)
{
         char buf[MSL];
// Tell them the died, or killed something
         sprintf(buf, "{RYou have been Killed by %s!!\n\r", victim->name);
         stc(buf, ch);
         sprintf(buf, "{RYou have killed %s!!\n\r", ch->name);
         stc(buf, victim);
// Stop the fighting
         stop_fighting(ch, TRUE);
// Reset the charater..

         char_to_room(ch, get_room_index (50));
         ch->position = POS_RESTING;
         ch->hit  = 1;
         ch->mana = 1;
         ch->move = 1;
         return;
}

Granted its nothing pretty. (room 50 being my temp deathroom, since im not actually sure how i want to handle death, im torn between a few ideas, so for the time being im just gonna keep it diku-ish and put them back into the game with 1 hp, resting and in the starter room)

Heres the problem. I get killed by mr Puff the Fractal dragon, I 'die', get sent to the room, resting etc. But, the room we were fighting in suddenly becomes null. Its gone. I transfer there, mud stalls (not crashed, just loops). I can transfer Puff out of the room fine, but end up with this Char_from_room: ch not found. I try "at 1 look" and it too stalls, room 2 stat also stalls, so my only consulsion is, im croupting the room somehow. Nothing, anywhere in my fighting code deals with rooms (er yet) or any sort of room data, short of the char_to_room.
Any ideas on what is going on? This one has me beat ;)

-Thri

Reply via email to