Как сделать дом pawno
Начало
Приветствую уважаемые пользователи pawn-wiki.ru! Пока у меня есть свободное время, я решил написать урок который будет состоять из нескольких частей. В данном уроке я постараюсь как можно «раскрыто» показать вам как можно написать систему домов для игрового режима с 0 (или для » new.pwn «). Хочу отметить, что для корректной работы системы нам понадобятся 2 библиотеки:
— mxINI: Скачать
— sscanf: 
• Поясняю для чего мы будем использовать это:
— mxINI: для работы с файлами (чтение / запись в файл);
— sscanf: позволит нам скажем «разделить» и расставить по местам нужную информацию;
• Небольшое описание системы:
• Начнем с установки библиотек и плагина:
Остается последнее : открываем наш мод путем pawno>pawno.exe и вверху (можно после #include ) подключаем библиотеки:
Вот и все, переходим к следующему шагу.
• Ко всем вашим макросам (define’s) добавим еще парочку:
Макросы используются для удобства, мы можем обойтись и без них, но я привык писать названия нежели чем запоминать id (в нашем случаи диалогов).
• Теперь перейдем к создаю массивов и массивов переменных для хранения наших данных. Итак, создадим массив переменных для хранения данных наших домов:
• Создадим 1 переменную и 1 массив:
• Теперь создадим еще один массив переменных но уже для хранения данных интерьеров (ниже расскажу в чем суть):
Для чего мы создали этот массив? В нем вы сможете хранить всевозможные интерьеры которые могут быть присвоены домам, переменная hInterior хранит не id интерьера а порядковый id интерьера в HInts, то есть:
• В этом шаге мы создадим функции для дальнейшей работы:
Внимание! Если у вас уже присутствует данная функция (которая возвращает ник игрока) не добавляйте ее, просто в дальнейшем вместо Name используйте свою!
• В этой части урока мы:
— Подключили необходимые для нас библиотеки (+плагин);
— Создали массивы для хранения различных данных;
— Создали необходимые функции которые будем использовать в дальнейшем;
Урок Создание динамической системы домов на основе плагина [MySQL R41]
Алексей Мещеряков
Эксперт
Плагин MySQL от pBlueG:
Про то, как пользоваться Базой данной и как к ней подключиться, я долго время не буду заострять. Если желаете прочитать подробную информацию, можно найти урок от DeimoS по «Созданию системы регистрации на основе плагина MySQL [R39/R40]», там все подробно расписано. Но все же, некоторые нюансы хотелось бы уточнить.
Как мы с вами уже знаем, а кто не знает, для работы с Базой данных(БД), нам необходимо использовать программу. Я использую Denwer.
P.S. Честно, скажу от себя, другие никогда не использовал и понятия не имею как с ними работать.
О данной программе вы можете ознакомиться на официальном сайте. |
Необходимо скачать данное приложение (У кого есть, тому конечно же не нужно.)
После того, как все действия по установке данной программы выполнены, необходимо запустить «Start Denwer.exe | Run.exe».
Открываем любой для вас удобный браузер и вводите localhost.
Появляется окно:
Если у вас уже есть База Данных, то вам не нужно ничего создавать, если же у вас ее нет, то создадим сейчас.
Нажимаете на вкладку «Базы данных»
Хранит в себе ID нашего дома.
Хранит в себе Имя владельца дома.
Хранит в себе информацию о том, занят ли дом или нет.
Хранят в себе информацию о координатах входа в дом.
Имя: enter_pos_x
Тип: FLOAT
Имя: enter_pos_y
Тип: FLOAT
Хранят в себе информацию о координатах выхода из дома.
Хранит в себе информацию о цене дома.
Хранит в себе информацию об уровне дома.
Хранит в себе информацию о ID интерьера.
Хранят в себе информацию о координатах домашнего автомобиля.
Хранит в себе ID домашнего автомобиля.
Подключение к Базе данных.
В enum e_HOUSE_INTERIORS_INFO внесена вся информация о нашем интерьере, для удобного дальнейшего использования.
На этом, пока что необходимые нам команды мы создали.
[HR][/HR]
Как раз в эти данные мы записали и получили позицию игрока.
Дальше были созданы переменные, которые отвечают за координаты и ID интерьера:
С помощью данных переменных, мы можем записать значение нашего интерьера(Координаты и ID) в ячейки, отвечающие за это в нашей таблице.
Данные в нашу таблицу успешно записаны. Мы завершили создание дома.
В конце мода создадим две функции. Добавим следующий код:
Дальше циклом проверяем наши дома, которые созданы в базе данных.
Описывать каждый столбец я не буду, т.к. при создании самой таблицы было подробное описание. Опишу только сами функции, которые мы используем:
| Получаем значение числа с плавающей точкой.
Если говорить русским языком, то «Если мы находимся у входа в дом, то попадаем в интерьер по координатам из нашей таблицы/массива»
Тоже самое у нас и с другой проверкой:
Домашний транспорт
ВНИМАНИЕ! В данном пункте необходим массив с записью ID дома(pHouse).
Ну вот вроде и все. Должен ничего не забыть, а возможно и забыл, честно уже голова поехала) Так что если будут ошибки, напишите.
Список Всех Готовых Решений(Обновлено 17.04.2012) Оценка: 



1 Голосов
За что даются звездочки:




Список готовых решений будет постоянно обновляться!
Скрипты (для Godfather мода)
Скрипты для модов основанных на Godfather
Фильтрскрипты (filterscripts)
Фильтрскрипты
• Текстдрав, При Подключении На Сервер & OKStyle
При подключении на сервер будет красивое Интро.
• Simple AFK System & OFFREAL
Система AFK с использованием 3Д текстов (легко настроить под себя).
• Смена стиля боя с сохранением & frog163
В тренажерном зале находится пикап, если его взять откроется меню с выбором стиля. Стиль сохраняется.
• Custom DeathMessage & OKStyle
Скрипт позволяет делать пояснение причин смерти игрока.
• Антиреклама & Roman1us
Простой скрипт антирекламы, написанный с использованием регулярных выражений.
• Миниган на танке & ex.Jord
Аттачим миниган к танку
• Тотальные убийства & ex.Jord
Комбо убийства
Функции (functions)
Функции [ fx ] для любого мода




















































