Okay, I don't have a DS mud running at the moment on this PC, but this is
just my input and I don't know if it relates to the crash or not.
I would think that the function itself could be rewritten a bit.
Why is there a second if() statement?
int crypt(){
if(this_player()->GetClass() == "necromancer") {
this_player()->eventMove("/domains/Juna/room/catacombs/start");
}
else if(this_player()->GetClass() != "necromancer") {
this_player()->eventPrint("You try to enter one of the tombs, but a strange force prevents you from entering.\nYou look down in horror as your legs begin to rot!");
this_player()->eventReceiveDamage("necrosis", DEATH, (this_player()->GetMaxHealthPoints() / 25), 0);
}
}
I think this could be changed to this:
int crypt()
{
if(this_player()->GetClass() == "necromancer")
{
this_player()->eventMove("/domains/Juna/room/catacombs/start");
}
else
{
this_player()->eventPrint("You try to enter one of the tombs, but a strange force prevents you from entering.\nYou look down in horror as your legs begin to rot!");
this_player()->eventReceiveDamage("necrosis", DEATH, (this_player()->GetMaxHealthPoints() / 25), 0);
}
return 1;
}
Again, this just caught my eye when I looked at the function.
Daelas