Frend Williams
Умник
Делал систему логирования действий взял из одного мануалу основу. Но, там используется R39. Из-за чего возникает проблема, того что пишет, что аккаунт не найден.
C++:
forward findNickName(playerid, name_player[]);
public findNickName(playerid, name_player[]) {
new
rows,
str[72];
cache_get_row_count(rows);
if(rows) {
cache_get_field_content_int(0, "pID", select_id_acc[playerid]); //'id' замените на имя своего столбца с ID аккаунта что у вас в таблице игрока
format(str, sizeof str, "Список действий игрока %s", name_player);
ShowPlayerDialog(playerid, D_RESULT_LOGS, DIALOG_STYLE_TABLIST_HEADERS, str, "Список действий:\nАдминистратор\nНедвижимость\nБизнес\nДеньги\nФракция", "Выбрать", "Выход");
} else {
format(str, sizeof str, "Аккаунт с именем %s не создан.", name_player);
SendClientMessage(playerid, -1, str);
}
return 1;
}
forward UploadLogsPlayer(playerid, type);
public UploadLogsPlayer(playerid, type)
{
new
rows,
total_string[2048],
name_player[MAX_PLAYER_NAME],
action[64],
date[24];
cache_get_row_count(rows);
for(new u; u < rows; u++) {
cache_get_field_content(u, "name", name_player, MAX_PLAYER_NAME);
cache_get_field_content(u, "action", action, 64);
cache_get_field_content(u, "date", date, 24);
format(total_string, sizeof total_string, "%s{d3d3d3}Дата: {ffffff}%s\t{ff9d14}Действие: {ffffff}%s\n", total_string, date, action);
}
if(!rows)//Если список пуст
total_string = "Никаких действий не совершал";
switch(type) { //Названия для шапки диалога
case 0: action = "Администратор";
case 1: action = "Дом";
case 2: action = "Бизнес";
case 3: action = "Финансы";
case 4: action = "Фракция";
}
format(action, sizeof action, "{ffffff}Логи {ff9d14}%s {ffffff}| %s", name_player, action);
ShowPlayerDialog(playerid, 0000 ,DIALOG_STYLE_MSGBOX, action, total_string, "Закрыть", "");
//Показываем и обнуляем Имя
select_id_acc[playerid] = INVALID_PLAYER_ID;
return 1;
}
stock writeLog(playerid, type, logs_fmt[]) {
new
mysql_fmt[256];
GetPlayerName(playerid, mysql_fmt, MAX_PLAYER_NAME);
format(mysql_fmt, sizeof mysql_fmt, "INSERT INTO `%s` (`name`, `id_account`, `action`) VALUES ('%s', '%d', '%s')", table_name_logs[type], mysql_fmt, pID, logs_fmt);
return mysql_tquery(connects, mysql_fmt, "", "");
}
