Topic: подскажите команда неработает:)
чё я тут мог такого намутить что сервер ложится после использования команды ?:)))
static int _handle_anntest_command(t_connection * c, char const *text)
{
unsigned int i;
char const * rab;
t_message * message;
t_account * account;
char const * username;
account = conn_get_account(c);
rab = account_get_strattr(account,"BNET\\acct\\kann");
for (i=0; text[i]!=' ' && text[i]!='\0'; i++); /* skip command */
for (; text[i]==' '; i++);
if (text[i]=='\0')
{
message_send_text(c,message_type_info,c,"usage: /announce <announcement>");
return 0;
}
if ( rab >= 0 )
{
snprintf(msgtemp, sizeof(msgtemp), "%.64s: %.128s",conn_get_username(c),&text[i]);
message = message_create(message_type_error,c,msgtemp);
message_send_all(message);
rab=rab-1;
account_set_strattr(account,"BNET\\acct\\kann",rab);
}
else
{
message_send_text(c,message_type_error,c,rab);
}
return 0;
}
по идее она должна записывать данные в поле kann
изначальное значение 10, с каждым использованием команды должно
rab=rab-1; уменьшаться на 1 и записывать значение в поле kann , но вот что-то нехотит работать( можете помочь?
1 minute and 3 seconds after:
else
{
message_send_text(c,message_type_error,c,rab);
}
необязательная часть команды, она должна по идее выводить красным цветом 0 , когда закончатся анонсы....