- 0
Войдите для возможности подписаться
Подписчики
0
Вопросы
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователя
Войдите для возможности подписаться
Подписчики
0
-
Последние посетители 0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От RASTAMAN
Plantinum RolePlay
Скачать файл Для того чтобы дать пароль нужно быть администратором 10 lvl после того пишем в чат /passadm
Система казино Система домов Система авто И многие другие системы!
Особых багов не найдено.
В моде присутствует 25 фракции.
Есть Textdraw на спавне!
Добавил RASTAMAN Добавлено 10.10.2017 Категория Моды Автор неизвестен
-
От RASTAMAN
Для того чтобы дать пароль нужно быть администратором 10 lvl после того пишем в чат /passadm
Система казино Система домов Система авто И многие другие системы!
Особых багов не найдено.
В моде присутствует 25 фракции.
Есть Textdraw на спавне!
-
От djxxx
приветствую всех.
Задался таким вопросом при добавлении одной системы на DIALOG_STYLE_TABLIST_HEADERS.
Суть проблемы в том, что диалог не выравнивается под нужные показатели, а просто как будто находиться по середине, в диалоге используется \t, но они особо не помогают в решении, также не ровно.
а если попытаться выравнивать большим количеством \t, оно компилируется но в игре происходят вылеты
Код такой:
DialogAdmShop ( playerid, DIALOG_EPOINTSHOP, DIALOG_STYLE_TABLIST_HEADERS, fmt_str, ""BR"номер\t"BR"наименование\t"BR"доступное действие\n"\ "{EB4C42}#1\t{FFFFFF}Виртуальная валюта\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#2\t{FFFFFF}Донат валюта\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#3\t{FFFFFF}Вип статусы\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#4\t{FFFFFF}Кейсы\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#5\t{FFFFFF}Уникальные аксессуары\t{888888}нажмите для взаимодействия", "Выбрать", "Закрыть" ); }
сток dialogadmshop:
stock DialogAdmShop(playerid, dialogid, style, title[], text[], button[], button2[]) { if(style == 5) { ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "...", "...", "...", ""); } ShowPlayerDialog(playerid, dialogid, style, title, text, button, button2); return 1; }
-
От Dev_Persona
Приветствую всех, у меня возник такой вопрос:
- хочу изменить базовую регистрацию в админке в крмп, на Болле сложную то-есть, сейчас изначально пароль от админки может быть только из цифр, хотелось бы узнать как можно было бы сделать что бы можно было использовать и цифры и буквы, вот код:
case DIALOG_ADMIN_REG:
{
if(!response) return FixKick(playerid);
if(strval(inputtext) < 100000 || strval(inputtext) > 999999) return ShowPlayerDialog(playerid, DIALOG_ADMIN_REG, DIALOG_STYLE_INPUT, "{FF6347}"PROJECT_NAME" {ffffff}| Придумайте пароль", "{FFFFFF}Для того, чтобы продолжить дальше - придумайте и введите\n{FFFFFF}пароль от панели администратора в диалоговое поле ниже.\n\n{FFFFFF}Пароль должен быть из 6 цифр.\n", "Готово", "");
SetPlayerData(playerid, P_APASS, strval(inputtext));
UpdatePlayerDatabaseInt(playerid, "AdminPassword", GetPlayerData(playerid, P_APASS));
AdminAuthorization(playerid);
}
-
От Danny_Marcelo
Всех приветствую. Сегодня я решил обновить систему мероприятий, т.к. на самом проекте Advance RP уже давно видоизменили систему, добавили нового функционала. Мы не должны стоять на месте и я решил тоже свою систему доработать. Вы можете использовать данную систему как аналог Advance RP или же доработать для своего проекта. Все в ваших руках как говорится.
Что нового?
Итак приступим:
Находим свои переменные и вставляем:
new settp = 0; // Флаг включения/выключения телепортации new Float:TeleportFloat[3]; // Координаты точки телепортации new TeleportInfo[2]; // Интерьер и виртуальный мир new Float:PlayerLastPos[MAX_PLAYERS][3]; // Последние координаты игрока new PlayerLastInt[MAX_PLAYERS]; // Последний интерьер игрока new PlayerLastVW[MAX_PLAYERS]; // Последний виртуальный мир игрока new PlayerWeapons[MAX_PLAYERS][13][2]; // Оружие игрока (слот и патроны) new PlayerUsedTP[MAX_PLAYERS]; // Флаг для отслеживания использования /tp
Далее идём в команды, мой случай на Pawn.CMD, но +/- везде одинаково, разве что меняется шапка
CMD:settp(playerid, params[]) { if (PlayerInfo[playerid][pAdmin] < 4) return 1; new string[95]; if (settp == 0) { GetPlayerPos(playerid, TeleportFloat[0], TeleportFloat[1], TeleportFloat[2]); TeleportInfo[0] = GetPlayerInterior(playerid); TeleportInfo[1] = GetPlayerVirtualWorld(playerid); settp = 1; format(string, sizeof(string), "[A] %s[%d] установил точку телепорта для игроков. {00CC00}ТП включен.", PlayerInfo[playerid][pName], playerid); SendAdminMessage(0x52B2B5FF, string); } else { format(string, sizeof(string), "[A] %s[%d] удалил точку телепорта для игроков. {FF6600}ТП отключен.", PlayerInfo[playerid][pName], playerid); SendAdminMessage(0x52B2B5FF, string); settp = 0; } return 1; } CMD:tp(playerid, params[]) { if (settp == 0) return SendClientMessage(playerid, 0xCECECEFF, !"Функция отключена администратором."); if (PlayerInfo[playerid][pJailed] >= 1) return SendClientMessage(playerid, 0xCECECEFF, !"Арестованным не разрешено покидать камеру."); if (PlayerInfo[playerid][pRabota] != 0) return SendClientMessage(playerid, 0xCECECEFF, !"Необходимо завершить все начатые работы и активные действия."); if (bolkam[playerid] == true) return SendClientMessage(playerid, 0xCECECEFF, !"Необходимо завершить все начатые работы и активные действия."); GetPlayerPos(playerid, PlayerLastPos[playerid][0], PlayerLastPos[playerid][1], PlayerLastPos[playerid][2]); PlayerLastInt[playerid] = GetPlayerInterior(playerid); PlayerLastVW[playerid] = GetPlayerVirtualWorld(playerid); for (new i = 0; i < 13; i++) { GetPlayerWeaponData(playerid, i, PlayerWeapons[playerid][i][0], PlayerWeapons[playerid][i][1]); } PlayerUsedTP[playerid] = 1; ShowPlayerDialog(playerid, 22, DIALOG_STYLE_MSGBOX, !"{6699FF}Телепортация", !"{FFFFFF}Вы уверены, что хотите попасть на место проведения мероприятия?\n{FFCD00}Ваше оружие будет изъято для хранения и возвращено позже.", !"Да", !"Нет"); return 1; }
CMD:back(playerid, params[]) { if (!PlayerUsedTP[playerid]) { return SendClientMessage(playerid, 0xCECECEFF, !"Эту функцию можно использовать после {FF9933}/tp, /go {CECECE}или по окончании {FF9933}мероприятий"); } SetPlayerPos(playerid, PlayerLastPos[playerid][0], PlayerLastPos[playerid][1], PlayerLastPos[playerid][2]); SetPlayerInterior(playerid, PlayerLastInt[playerid]); SetPlayerVirtualWorld(playerid, PlayerLastVW[playerid]); ResetPlayerWeapons(playerid); for (new i = 0; i < 13; i++) { if (PlayerWeapons[playerid][i][0] != 0) { GivePlayerWeapon(playerid, PlayerWeapons[playerid][i][0], PlayerWeapons[playerid][i][1]); } } PlayerUsedTP[playerid] = 0; SendClientMessage(playerid, 0x3399FFFF, !"Вы вернулись туда, где были до телепортации"); return 1; } Ну и в OnDialogResponse:
case 22: // Не забудьте проверить и при надобности изменить id диалога на вашу цифру или ID_NAME { if (response) { SetPlayerPos(playerid, TeleportFloat[0], TeleportFloat[1], TeleportFloat[2]); SetPlayerInterior(playerid, TeleportInfo[0]); SetPlayerVirtualWorld(playerid, TeleportInfo[1]); ResetPlayerWeapons(playerid); SendClientMessage(playerid, 0x66CCFFFF, "Вы были доставлены на место проведения мероприятия"); SendClientMessage(playerid, 0x66CCFFFF, "Чтобы вернуться обратно, введите {FF9900}/back"); } } Скриншоты:
Если игрок сидит в КПЗ и вводит /tp:
При включенном /tp:
При выключенном /tp:
Сообщение администраторам:
Если работаешь или лечишься в больнице:
Текст после телепортации:
При вводе /back 1 и более раз:
P.S. Команду /tp на Advance можно нажимать бесконечно, по этому я не стал сюда пихать аналогичную проверку как в /back.
Если что, не сложно будет добавить 1 строчку проверки. Просто имейте ввиду, что это не баг. Просто нужно же соответствовать названию темы "На 100% КОПИЯ"))
Автор: Danny_Marcelo
Размещая на другие порталы, обязательно указать автора
-
Опубликовано · Жалоба
В этой теме, мы разберемся как добавлять объекты на карту с помощью мод-пака.
У вас должны быть файлы объекта (.col, .dff, .txd)
IDE
Введение
Файлы Item DEfinition имеют расширение .ide и являются частью игрового движка серии GTA, поэтому присутствуют в GTA3, GTA VC, GTA SA и GTA4 в текстовом виде, в GTA LCS и GTA VCS в бинарном. В *.ide, к каждому объекту игры присваивается свой идентификатор (тэг), измеряющийся от 0 до 19999 (лимит ID можно уменьшать/увеличивать с помощью программы Limit Adjuster).
В свою очередь, к каждому идентификатору, прописанному в ide, присваивается уникальная модель (*.dff), архив текстур (*.txd), использующийся моделью, дистанция и параметры рендеринга модели.
Все записи в *.ide объединены в специальные секции, каждая из которых отвечает за определенный параметр. Примеры секций:
OBJectS - обычные объекты карты, TimeOBJects - временные объекты карты, ANIM - анимированные объекты карты, PEDS - педы, WEAPons - оружие, CARS - транспортные средства, HIER - загрузочные слоты для кат-сцен, 2DFX - специальный 2D-эффект для объекта.
Item Definition (кроме GTA LCS и GTA VCS) хранится в текстовом виде, может быть изменен как редакторами карты для GTA - MooMaper, MapEditor, так и любым текстовым редактором типа блокнота.
В IDE можно встретить специальные символы - "#" или ";", после которых идет закомментированный текст - это либо комментарии разработчиков, либо закомментированные части ide, по определённым причинам убранные из загрузки игры. Любой текст, записанный после знака комментария до конца строки, игнорируется игровым движком GTA.
Структура
Файлы .ide разделены на секции. Они могут быть не обязательны, или даже могут быть пустыми. Каждая секция начинается с идентификатора секции и заканчивется ключевым словом end. Строка секции разделяется запятыми, между которыми записаны значения каждой ячейки строки. Каждая ячейка может содержать либо целое или дробное число, либо одно слово.
Пример:
Код строки (ставить вместо точек):
Готовый пример строки:
IPL
Введение
Файлы Item PLacement предназначены для расстановки объектов на игровой карте, а также определяют зоны, пути, гаражи, маркеры интерьеров и многое другое. Если IPL файл находится в текстовом виде, то его можно открыть и отредактировать в любом текстовом редакторе, например в блокноте, а если IPL файл находится в двоичном (скомпилированном) виде, то для его изменения уже используют специальные редакторы, либо программы, конвертирующие двоичные IPL в текстовые и обратно.
Присутствуют во всех играх серии GTA, начиная с третьей части (GTA 3, GTA VC, GTA SA (в текстовом и двоичном виде), GTA LCS (в двоичном виде), GTA VCS (в двоичном виде), GTA 4 (в текстовом и двоичном виде) ), а так же в других играх от Rockstar Games.
В GTA 4 двоичные IPL были переименованы в *.wpl, но их принцип остался тот же (описание см. в отдельной статье: *.wpl ).
Структура
Файлы .ipl разделены на несколько секций. Они могут быть не обязательны, или даже могут быть пустыми. Каждая секция начинается и идентификатора секции и заканчивается ключевым словом end. Строка секции разделяется запятыми, между которыми записаны значения каждой ячейки строки. Каждая ячейка может содержать либо целое или дробное число, либо одно слово.
Пример:
Код строки (ставить вместо точек):
Готовый пример строки:
Как вы уже заметили, секций у этих файлов много, но здесь, мы разбирали только секции связанные с объектами.
Хочу заметить, прописывать в IPL необязательно, чтобы создать добавленный объект в игре (например через soe), достаточно просто прописать его в IDE.
Информация взята с открытого доступа я лишь убрал лишние и подготовил урок с примером.
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты