Перейти к содержанию

Есть у кого рабочая команда @petinfo


hakilo

Рекомендуемые сообщения

Есть у кого рабочая команда @petinfo если да скиньте пожалуйста,

И интересует такой вариант как @homrename (Переименовать гомункула)

Заранее благодарен=)

Изменено пользователем hakilo
Ссылка на комментарий
Поделиться на другие сайты

/*==========================================

* @petinfo

*==========================================*/

ACMD_FUNC(petinfo)

{

struct pet_data *pd = sd->pd;

if (!pd) {

clif_displaymessage(fd, "У Вас нет питомца.");

return 0;

}

sprintf(atcmd_output, "Имя: %s Класс: %d Привязанность: %d Голода: %d", pd->pet.name, pd->pet.class_, pd->pet.intimate, pd->pet.hungry);

clif_displaymessage(fd, atcmd_output);

return 0;

}

мб есть у кого реализованная идея @homrename (Переименовать гомункула)

Изменено пользователем hakilo
Ссылка на комментарий
Поделиться на другие сайты

Можно же в конфигах настроить так, чтобы игроки могли неограниченное количество раз переименовывать гомунуклов.

Та в том то и дело мне надо команду запилить прем аккаунту ))))

Ссылка на комментарий
Поделиться на другие сайты

Открываем ../src/map/atcommand.c и перед:


/**
* Fills the reference of available commands in atcommand DBMap
**/
#define ACMD_DEF(x) { #x, atcommand_ ## x, NULL, NULL }
#define ACMD_DEF2(x2, x) { x2, atcommand_ ## x, NULL, NULL }

пишем:


ACMD_FUNC(homrename)
{
int i;
char hom_name[NAME_LENGTH];

nullpo_retr(-1, sd);

memset(hom_name, '\0', sizeof(hom_name));

if (!message || !*message || sscanf(message, "%23[^\n]", hom_name) < 1)
{
clif_displaymessage(fd, "Please enter a homunculus name (usage: @homrename <homunculus_name>).");
return -1;
}

if (!merc_is_hom_active(sd->hd))
{
clif_displaymessage(fd, "You don't have a homunculus.");
return -1;
}

for (i = 0; i < NAME_LENGTH && hom_name[i]; ++i)
{
if (!(hom_name[i]&0xe0) || hom_name[i] == 0x7f)
{
clif_displaymessage(fd, "Illegal letter/symbol has been detected.");
return -1;
}
}

intif_rename_hom(sd, hom_name);

return 0;
}

после:


AtCommandInfo atcommand_base[] = {

пишем:


ACMD_DEF(homrename),

P.S. Команда работает в обход запретам в конфиге.

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...
Яндекс.Метрика