#bot resurrectme works correctly, do you have a target when you're doing it?
Code:
if(!strcasecmp(sep->arg[1], "resurrectme")) {
Mob *target = c->GetTarget();
if(target == nullptr || !target->IsCorpse()) {
c->Message(15, "You must select a corpse!");
return;
}
if(c->IsGrouped()) {
bool hasrezzer = false;
Group *g = c->GetGroup();
for(int i = 0; i < MAX_GROUP_MEMBERS; i++) {
if(g && g->members[i] && g->members[i]->IsBot() && (g->members[i]->GetClass() == CLERIC)) {
hasrezzer = true;
Mob *rezzer = g->members[i];
rezzer->CastToBot()->BotGroupSay(rezzer->CastToBot(), "Trying to resurrect %s.", target->GetCleanName());
rezzer->CastToBot()->Bot_Command_RezzTarget(target);
break;
}
}
if(!hasrezzer)
c->Message(15, "You must have a Cleric in your group!");
} else
c->Message(15, "You must have a Cleric in your group!");
return;
}
Side note, bots inherit their runspeed from the mob they're following (you usually):
Code:
if(AImovement_timer->Check()) {
if(GetFollowID()) {
Mob* follow = entity_list.GetMob(GetFollowID());
if(follow) {
float dist = DistanceSquared(m_Position, follow->GetPosition());
int speed = follow->GetRunspeed();
if(dist < GetFollowDistance() + 1000)
speed = follow->GetWalkspeed();
if(dist > GetFollowDistance()) {
CalculateNewPosition2(follow->GetX(), follow->GetY(), follow->GetZ(), speed);
if(rest_timer.Enabled())
rest_timer.Disable();
return;
} else {
if(moved) {
moved = false;
SetCurrentSpeed(0);
}
}
}
}
}