- 0
Sign in to follow this
Followers
0
Question
Лучший ответ
/*Команда показа наказаний игрока*/ {
// code...
SetPVarInt(playerid, "PunishList", 1);
CheckPunish(playerid, id);
return 1;
}
stock CheckPunish(playerid, id)
{
new mquery[1024];
SetPVarInt(playerid, "PunishID", id); // Сохраняем id, что бы не потерять его при перелистовании страниц
new MySQLOffSet = (GetPVarInt(playerid, "PunishList")-1)*25; // Создаём сдвиг запросу по отношению страницы игрока
mysql_format(MySQLGo, mquery, sizeof(mquery), "SELECT * FROM `punish` WHERE `Player` = '%i' LIMIT 25 OFFSET %d", pData[id][pMysqlID], MySQLOffSet);
// Делаем запрос в БД с поиском не более 25 наказаний с указанным сдвигом
mysql_query(MySQLGo, mquery);
new push = cache_num_rows();
new str_1[100];
STRING_GLOBAL[0] = EOS;
format(str_1, 100, "История наказаний: %s", pData[id][pNickname]);
if(!push) return ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, str_1, !"{FFFFFF}Истории наказаний не найдено", !"OK", !"");
static text[1056], date12[64];
for(new i; i < push; i++)
{
cache_get_field_content(i, "Action", text, MySQLGo);
cache_get_field_content(i, "Date", date12, MySQLGo);
format(STRING_GLOBAL, sizeof(STRING_GLOBAL), "{FF6347}%s[%s] %s\n", STRING_GLOBAL, date12, text);
}
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, str_1, STRING_GLOBAL, "След. страница", "Закрыть");
// Совет, используйте в кнопках диалога как можно меньше букв "Редактировать"
// На сколько я помню, у меня даже слово "Редактировать" не вместилось, сравнение выше
return 1;
}
public OnDialogResponse(...) {
/*проверка на диалог*/ {
if(response) {
SetPVarInt(playerid, "PunishList", GetPVarInt(playerid, "PunishList")+1); // перелистываем страницу на 1
ShowPunish(playerid, GetPVarInt(playerid, "PunishID")); // Вот тут и нужен было сохранять ID; Показываем игроку наказания
} else return false;
}
}
Вроде бы так, попробуйте
Извините, но мне было лень делать проверку на то, есть ли ещё наказания, кроме показанных на странице))
Если у Вас админ выйдет за пределы показываемых наказаний, ему просто будет писать "Истории наказаний не найдено", поэтому нормально
Извините, но мне было лень делать проверку на то, есть ли ещё наказания, кроме показанных на странице))
Если у Вас админ выйдет за пределы показываемых наказаний, ему просто будет писать "Истории наказаний не найдено", поэтому нормально

This topic is now closed to further replies.
Sign in to follow this
Followers
0
-
Recently Browsing 0 members
No registered users viewing this page.
-
Similar Content
-
By vexlinee
Всем здравствуйте, сидел я на майнкрафт читиках и поднадоело, теперь хочу сделать студию либо свой крмп проектик
Так вот вопросы:
1. Какие программы лучше всего использовать для лаунчеров? В большенстве видел Android studio
2. Как запустить сам мод, можно ли это сделать локально и быстро, или стоит переносить на хост
3. Про какой кеш говорят типы под лаунчерами
4. Как сделать установку сборки через лаунчер по кнопке играть
-
trevison Активный 32
Как сделать страницы в данном диалоге? На первой странице первые 25 наказаний игрока
таблица в бд выглядит так:
Edited by trevison
Share this post
Link to post