Всем привет решил написать свою систему домов для Модов с 0, и RLS
Данный инклуд позваляет настроить систему домов под себя, хоть как.
Всё настраивается с помощью define
Все define доступные для изменения и использования и примеры:
HOUSE_SYSTEM_TEXT_SALE - Хранит информацию что будет показываться когда дом куплен
HOUSE_SYSTEM_TEXT_SALE_FORMAT - Был создан для редактирования параметров вывода текста в HOUSE_SYSTEM_TEXT_SALE
Пример использования:
#define HOUSE_SYSTEM_TEXT_SALE "Дом продаёться\n Цена %d"
#define HOUSE_SYSTEM_TEXT_SALE_FORMAT HOUSE_PRICE
HOUSE_SYSTEM_TEXT_OWNER - Хранит информацию что будет показываться когда дом куплен
HOUSE_SYSTEM_TEXT_OWNER_FORMAT - Был создан для редактирования параметров для вывода текста в HOUSE_SYSTEM_TEXT_OWNER
Пример использования:
#define HOUSE_SYSTEM_TEXT_OWNER "Дом куплен\n Хозяин: %s\nЦена: %d"
#define HOUSE_SYSTEM_TEXT_OWNER_FORMAT HOUSE_OWNER,HOUSE_PRICE
Доступные define для использования в HOUSE_SYSTEM_TEXT_OWNER_FORMAT и HOUSE_SYSTEM_TEXT_SALE_FORMAT:
HOUSE_PRICE - Цена дома
HOUSE_OWNER - Цена дома
HOUSE_POZISION - Кординаты дома (X, Y, Z)
HOUSE_POZISION_ENTER - Кординаты входа в дом (X, Y, Z)
HOUSE_ID_PICKUP - Ид пикапа который будет стоять у дома (пока токо стоит 1 при купленом\проданом, в след версии будет доступна 2 вида)
Пример использования:
#define HOUSE_ID_PICKUP 1273
SYSTEM_HOUSE_ENTER - Разрешает Include входить в интерьеры дома (стандартными методами)
Пример использования:
#define SYSTEM_HOUSE_ENTER
SYSTEM_HOUSE_EXIT - Разрешает Include выходить из домов (если вы не собираетесь делать настройки дома, то можно включить эту функцию)
Пример использования:
#define SYSTEM_HOUSE_EXIT
HOUSE_KEY_ENTER - Установить ID клавиши который будет отвечать за вход\выход из дома (работает даже при отключённых параметрах SYSTEM_HOUSE_ENTER и SYSTEM_HOUSE_EXIT)
пример использования:
#define HOUSE_KEY_ENTER 1024 // ALT
Примечание: Прописывать все использованные define до подключения Include
Доступные функции и Автовызваемые Public
public OnPlayerKeyHouse(playerid, house_id, statis) - Вызывается когда игрок нажал клавишу указанную в HOUSE_KEY_ENTER около дома\в доме
playerid - id игрока
house_id - id дома у которого\в котором была нажата клавиша
statis - Статус где нажата 0 - На улице, 1 - В доме
Create_House_System - Функция которая создаёт дом, возвращает ид созданного дома
price - Цена
X,Y,Z - Где будет стоять дом
EX,EY,EZ - кординаты интерьера дома
Int - Ид интерьера дома
Get_System_House_Owner - Узнать владельца дома, параметры:
id - ID дома у которого надо узнать кто владелец (None - дом не чей) возвращает string
Set_System_House_Owner - Установить владельца для дома, параметры:
id - Ид дома
Owner - Имя к которому будет привязан дом (Имя владельца)
Get_System_House_price - Узнать цену дома, параметры:
id - Ид дома у которого надо узнать цену
Get_System_House_Pos - узнать позицию дома
Id - Ид дома у которого надо узнать кординаты
&X,&Y,&Z - Возвращает кординаты дома по X,Y,Z (Float)
Get_System_House_Pos_Enter - узнать кординаты интерьера дома
id - Ид дома у которого надо узнать кординаты
&EX, &EY, &EZ - вернёт X,Y,Z кординаты интерьера (Float)
&Int - Вернёт интерьер который установлен в данном доме
Для работы требуется: sscanf
Что планируется в след версиях:
1. Выбор загрузки\сохранения домов mxINI или MySQL
2. Добавить возможность ставить 2 вида пикапа когда дом куплен\продан
3. Добавить информацию куплен дом или нет (при вызове OnPlayerKeyHouse)
4. Добавить систему гаражей,Улучшений,ну и карту для сайта (если кому надо будет)
5. Создание команд и поддержку всех командных процессоров
6. Добавить Закрытие\Открытие дома
Также вы можете предложить свои идеи для Include в комментариях
Группа разработчиков: Victor's Studio
P.S: работает и в CR:MP 0.3e
Пожаловаться