case EIF::CureCurse:
{
for (std::size_t i = 0; i < this->player->character->paperdoll.size(); ++i)
{
if (this->server->world->eif->Get(this->player->character->paperdoll[i])->special == EIF::Cursed)
{
this->player->character->paperdoll[i] = 0;
}
}
this->player->character->poisoned = false;
this->player->character->CalculateStats();
this->player->character->DelItem(id, 1);
reply.AddInt(this->player->character->HasItem(id));
reply.AddChar(this->player->character->weight);
reply.AddChar(this->player->character->maxweight);
reply.AddShort(this->player->character->maxhp);
reply.AddShort(this->player->character->maxtp);
reply.AddShort(this->player->character->str);
reply.AddShort(this->player->character->intl);
reply.AddShort(this->player->character->wis);
reply.AddShort(this->player->character->agi);
reply.AddShort(this->player->character->con);
reply.AddShort(this->player->character->cha);
reply.AddShort(this->player->character->mindam);
reply.AddShort(this->player->character->maxdam);
reply.AddShort(this->player->character->accuracy);
reply.AddShort(this->player->character->evade);
reply.AddShort(this->player->character->armor);
PacketBuilder builder;
builder.SetID(PACKET_CLOTHES, PACKET_AGREE);
builder.AddShort(this->player->id);
builder.AddChar(SLOT_CLOTHES);
builder.AddChar(0);
builder.AddShort(this->server->world->eif->Get(this->player->character->paperdoll[Character::Boots])->dollgraphic);
builder.AddShort(this->server->world->eif->Get(this->player->character->paperdoll[Character::Armor])->dollgraphic);
builder.AddShort(this->server->world->eif->Get(this->player->character->paperdoll[Character::Hat])->dollgraphic);
builder.AddShort(this->server->world->eif->Get(this->player->character->paperdoll[Character::Weapon])->dollgraphic);
builder.AddShort(this->server->world->eif->Get(this->player->character->paperdoll[Character::Shield])->dollgraphic);
UTIL_PTR_LIST_FOREACH(this->player->character->map->characters, Character, character)
{
if (*character != this->player->character && this->player->character->InRange(*character))
{
character->player->client->SendBuilder(builder);
}
}
CLIENT_SEND(reply);
}
break;