Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 8
    Гостей: 5
    Пользователи: - отсутствуют
    Роботы: crawl Bot, Google Bot, Yandex Bot

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 8-09-2011, 18:47 Просмотров: 5283

    set_user_origin Функция перемещает игрока в заданную точку

    Кто играл на Jump серверах знают команды /check и /gocheck .
    Сохранение позиции и возврат в сохраненную позицию, сохранить позицию можно с помощью функции get_user_origin, а вот телепортироваться обратно поможет функция set_user_origin

    Инфо из fun.inc
    /* Move player to origin. */
    native set_user_origin(index, const origin[3]);


    Синтаксис:
    set_user_origin ( index, origin[3] )

    • index - id перемещаемого игрока
    • origin[3] - Массив с координатами


    Пример:
    /* Plugin generated by AMXX-Studio */

    #include <amxmodx>
    #include <amxmisc>
    #include <fun>

    #define PLUGIN "Get user orign and set"
    #define VERSION "1.0"
    #define AUTHOR "Admin"

    new g_origin[3]

    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        register_clcmd("say /save","save")
        register_clcmd("say /load","load")
    }
    public save(id){

        get_user_origin(id,g_origin,0)
        client_print(id,print_chat,"Save:X %d, Y %d, Z %d",g_origin[0],g_origin[1],g_origin[2])
    }
    public load(id){

        if(g_origin[0] != 0 ){
            
            set_user_origin(id,g_origin)
            client_print(id,print_chat,"Load:X %d, Y %d, Z %d",g_origin[0],g_origin[1],g_origin[2])
        }
        
    }


    Описание:
    У нас в распоряжении 2 команды:
    • say /save - В вызываемой функции мы получаем массив с координатами и записываем его
    • say /load - Перемещаем игрока в сохраненный массив.


    Обратите внимание, что массив один, и если на сервере будет кроме вас кто то, перемещаться будут все в одно и то же место. Которое было сохранено последним. Что бы массив был для каждого игрока разным, нужно создавать двухмерный массив g_origin[id][3], где для каждого игрока будут храниться свои координаты. И во всех местах где есть обращение к массиву, будет необходимо указывать индекс.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    set_user_origin Функция перемещает игрока в заданную точку
    LEXASOFT

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Через get_user_origin(id,g_origin,3) координаты прицела и перемещаюсь туда. Как мне сделать чтоб не в стене появлялся?
    ksv

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    координату x и z уменьши.
    SUMY

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Как их уменьшить ?

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама