Сайт восстановлен из веб архива. Сейчас он доступен только для чтения, скачивание материалов также недоступно. Если у вас до сих пор есть какие-то вопросы по разработке серверов CRMP, вы можете перейти на актуальный портал: https://pawno-rus.com

Перейти к содержимому

Уважаемый гость, если у Вас возникли проблемы с регистрацией, просьба обратиться в тех.поддержку или на почту admin@pawno-crmp.ru

Для полного доступа ко всем функциям форума, Вам необходимо зарегистрироваться и авторизоваться.

Фотография
Урок

Работаем с "чекпоинтами".

* * * - - 1 Голосов crmp criminal russia форум crmp всё для crmp pawn pawno урок crmp

  • Авторизуйтесь для ответа в теме
В теме одно сообщение

#1
offline   Dmitriy_Orell

Dmitriy_Orell
  • 670
    • Сообщений: 922
    • Регистрация: 12.04.15

Что такое чекпоинт и как его создавать.

 

Что-же такое чекпоинт? Объясню на пальцах, чекпоинт - это такая красная метка, которая отражается на миникарте вне зависимости от дистанции между игроком и меткой. Еще одной важной деталью, будет то, что для игрока можно установить всего 1 видимый чекпоинт. И так, чекпоинты делятся на 2 типа, это: обычные, чекпоинты для игрока, и чекпоинты указатели. Выглядят эти чекпоинты примерно следующим образом:

 

Фото
5trg2vhyuj3u.png

Чекпоинт обычной метки для игрока.

Фото
g3c4nu5h70k6.png

 

Чекпоинт-указатель.

И все-же, как нам создавать подобные чекпоинты?

Ну.. Для этого в SA:MP существует пара функций, сейчас я расскажу о них.

 

SetPlayerCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Данная функция используется для создания обычной метки для игрока, в ней используются следующие параметры:

  • playerid ID Игрока
  • Float:x x-координата для чекпоинта
  • Float:y y-координата для чекпоинта
  • Float:z z-координата для чекпоинта
  • Float:size Размер чекпоинта

 

SetPlayerRaceCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Данная функция используется для создания метки-указателя для игрока, в ней используются следующие параметры:

  • playerid ID игрока
  • type Тип метки.0-Обычная, 1-Финиш, 2-Ничего(Просто метка), 3-Метка-кольцо обычная, 4-Метка-кольцо финиш
  • Float:x X-Координата
  • Float:y Y-Координата
  • Float:z Z-Координата
  • Float:nextx X-Координата следующей метки, для определения направления указателя(стрелки)
  • Float:nexty Y-Координата следующей метки, для определения направления указателя(стрелки)
  • Float:nextz Z-Координата следующей метки, для определения направления указателя(стрелки)
  • Float:size Размер(диаметр) метки

 

Также, для работы с "метками" предусмотрено пару других функций (в том числе и автовызываемых).

 

DisablePlayerCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция скрывает обычную метку, созданную для игрока. Возвратит false, если игрок не подключен к серверу.

 

DisablePlayerRaceCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция аналогичная предыдущей, только создана для скрытия метки-указателя.

 

IsPlayerInCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция проверяет нахождение игрока в чекпоинте.

 

IsPlayerInRaceCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция проверяет нахождение игрока в метке-указателе.

 

Перейдем к автовызываемым функциям.

 

OnPlayer(EnterLeave)Checkpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция вызывается, когда игрок оказывается внутри созданной метки.

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция вызывается, когда игрок покидает созданную метку.

 

OnPlayer(EnterLeave)RaceCheckpoint

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция вызывается, когда игрок оказывается внутри созданной метки-указателе.

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Функция вызывается, когда игрок покидает созданную метку-указатель.

 

Теперь мы знаем все необходимые нам функции для написания простых скриптов, давайте перейдем к следующему шагу.

 

 

Использование чекпоинтов "На деле".

 

На основе полученных знаний и изученных функций, попробуем с вами написать пару простеньких скриптов, дабы полностью понять что-же такое эти чекпоинты. Для начала давайте поставим для себя задачу, к примеру:
- Сделать чекпоинт для игрока, встав на который он получит в руки коробку, затем ему будет указана метка куда нужно отнести эту коробку.
- Сделать метку-указатель по команде для игрока, достигнув которую игроку выведет сообщение о достижении метки.

И так, задачи поставлены, теперь перейдем к исполнению, естественно по-порядку.

 

 

Давайте для начала работы игрока, создадим команду /startwork.

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Теперь, давайте проверим игрока на нахождение в нужной нам метке. Сделаем это в паблике OnPlayerEnterCheckpoint. Ну и собственно с помощью этого паблика мы будем управлять игроком, забирать коробку и устанавливать чекпоинт подбора, или же отдавать коробку и устанавливать метку склада.

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

 

 

 

Первая цель достигнута, отправляемся за второй.

Для установки метки, мы будем использовать с вами команду /grotti, ибо метка наша будет у автосалона Grotti Car's.

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Ну и далее, как и в случае с нашей предыдущей целью, проверим нахождение игрока в нашей метке, на этот раз другим пабликом:

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Автор: wAx

 


  • 7

#2
offline   MayrOn

MayrOn
  • 0
    • Сообщений: 66
    • Регистрация: 04.04.15

Хороший урок лови +


  • 0



Темы с аналогичным тегами Урок, crmp, criminal russia, форум crmp, всё для crmp, pawn, pawno, урок crmp

Количество пользователей, читающих эту тему: 1

0 пользователей, 0 гостей, 0 анонимных


    Alexa (1)

Данную тему посетили 195 пользователей