Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


 
IP:176.32.36.96:7777 Ha6op adm,liderov + bonuse.

**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 100руб/мес, Текстовая 50руб/мес.
Страница 1 из 7 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 64
  1. #1
    Аватар для VVWVV
    Проверенный

    Статус
    Онлайн
    Регистрация
    09.07.2015
    Сообщений
    509
    Репутация:
    219 ±

    TDW Vehicle Libraries

    TDW Vehicle Libraries
    github

    Описание:
    Библиотека создана для увеличения функционала в SA:MP.

    Библиотеки:
    Название Описание
    vh_dstatus Управление визуальными повреждениями транспортного средства.

    Функции:
    • GetVehiclePanelsStatus
    • SetVehiclePanelsStatus
    • GetVehicleDoorsStatus
    • SetVehicleDoorsStatus
    • GetVehicleLightsStatus
    • SetVehicleLightsStatus
    • GetVehicleTiresStatus
    • SetVehicleTiresStatus

    vh_dwos Изменение состояний для окон и дверей транспортного средства.

    Функции:
    • OpenVehicleDoor
    • CloseVehicleDoor
    • IsVehicleDoorInState
    • GetVehicleDoorState
    • SetVehicleDoorState
    • GetVehicleDoorPos
    • OpenVehicleWindow
    • CloseVehicleWindow
    • IsVehicleWindowInState
    • GetVehicleWindowState
    • SetVehicleWindowState


    Функции обратного вызова:
    • OnVehicleDoorUpdate
    • OnVehicleWindowUpdate

    vh_handling Данные о каждом транспортном средстве, предоставленные авторами игры.
    vh_idata Основная информация о транспортном средстве: начальная позиция, цвета, а также идентификатор модели транспортного средства.

    Функции:
    • GetVehicleColor
    • SetVehicleColor
    • CreateVehicleEx
    • Функции AddStaticVehicle, AddStaticVehicleEx, CreateVehicle, DestroyVehicle, ChangeVehicleColor были перехвачены. Впрочем, были сделаны копии оригинальных функции: nst_AddStaticVehicle, nst_AddStaticVehicleEx, nst_CreateVehicle, nst_DestroyVehicle, nst_ChangeVehicleColor

    vh_iterator Создаёт массив для идентификаторов транспортных средств. Для правильной работы необходимо подключить библиотеки vh_idata и foreach.

    Функции:
    • DestroyVehicleSafe

    vh_math Разнообразные вычисления связанные с позиционирование игрока и транспортного средства.

    Функции:
    • GetNearestVehicleFromPoint
    • GetVehicleOffsetFromPos
    • GetVehicleBootPos
    • GetVehicleBonnetPos
    • GetVehicleRoofPos
    • IsVehicleInRangeOfPoint
    • GetVehicleSpeedFromVelocity
    • GetVehicleSpeed
    • SetVehicleSpeed
    • IsVehicleUpsideDown

    vh_odata Дополнительная информация о транспорте, которая используется редко. Например, идентификатор интерьера, номер покрасочных работ, виртуальный мир, последний водитель.

    Функции:
    • GetVehicleLastDriverId
    • GetVehiclePaintjobId
    • SetVehiclePaintjobId
    • Функция SetVehicleVirtualWorld была перехвачена. Однако, сохранена оригинальная копия - nts_SetVehicleVirtualWorld

    vh_sadata Минимальная информация о транспортном средстве.

    Функции:
    • IsVehicleModelTrailer
    • IsVehicleModelTrain
    • IsVehicleModelPlane
    • GetModelStaticSpeed
    • GetModelStaticIdFromName
    • GetModelStaticNameFromId
    • GetModelStaticCategory
    • GetModelStaticType

    vh_tune Наиболее детальная информация о компонентах для тюнинга.

    Функции:
    • GetComponentName
    • IsVehicleUpgradeCompatible
    • GetVehicleCompatibleUpgrades

    vh_nplate Добавляет функции для работы с номерными знаками.

    Функции:
    • SetVehicleNumberPlateRand(vehicleid, dest[MAX_NUMBER_PLATE] = !"") - устанавливает рандомный номерной знак.
    • GetVehicleNumberPlate(vehicleid, dest[], bool:packed = false, dest_size = sizeof dest) - получить значение номерного знака.



    Системы:
    Название Описание
    vhs_limiter Ограничитель скорости.


    Функции:
    • Float:GetVehicleMaxLimit(vehicleid) - получить максимальный скоростной лимит транспортного средства.
    • SetVehicleMaxLimit(vehicleid, Float:max_limit) - установить максимальный скоростной лимит для транспортного средства.
    • Float:GetVehicleMinLimit(vehicleid) - получить минимальный скоростной лимит транспортного средства.
    • SetVehicleMinLimit(vehicleid, Float:min_limit) - установить минимальный скоростной лимит для транспортного средства.

    Константы:
    • TDW_LIMITER_TIMER_INTERVAL - время обновления таймера (по умолчанию - 450).

    Перехваты:
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функции OnPlayerReachSpeedLimit.
    • OnPlayerStateChange - для определения игрока в транспортном средстве.

    Автовызываемые функции:
    • OnPlayerReachSpeedLimit(vehicleid, playerid, Float:speed) - вызывается при превышении допустимого лимита.

    vhs_trailer Добавляет авто-вызываемые функции, такие как: OnTrailerDetached и OnTrailerAttached.

    Константы:
    • MAX_TRAILER_UPDATE - время обновления таймера (по умолчанию - 1000).

    Перехваты:
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функций OnTrailerAttached/OnTrailerDetached.
    • AttachTrailerToVehicle/DetachTrailerFromVehicle/OnTrailerUpdate - для обновления информации о трейлере.

    Автовызываемые функции:
    • OnTrailerAttached(trailerid, vehicleid) - вызывается, когда трейлер присоединён.
    • OnTrailerDetached(trailerid, vehicleid) - вызывается, когда трейлер отсоединён.

    vhs_tuning Сохраняет тюнинг после взрыва/респавна(respawn) транспортного средства.

    Функции:
    • UpdateComponentInArray(vehicleid, componentid) - обновляет информацию о компоненте.
    • RemoveComponentInArray(vehicleid, componentid) - удаляет информаци о компоненте.
    • IsVehicleComponentAdded(vehicleid, e_TDW_VEHICLE_TUNING:type) - проверяет наличие компонента.

    Перехваты:
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функции OnVehicleMileageUpdate.
    • AddVehicleComponent/RemoveVehicleComponent/OnVehicleMod/OnVehicleSpawn/DestroyVehicle - для добавления/удаления информации.

    vhs_mileage Вычисляет километраж транспортного средства.

    Функции:
    • GetVehicleMileage(vehicleid) - получает километраж транспортного средства.
    • SetVehicleMileage(vehicleid, Float:mileage) - устанавливает километраж для транспортного средства.

    Константы:
    • TDW_MILEAGE_UPDATE - время обновления таймера, подсчитывающего километраж (по умолчанию - 950).

    Перехваты:
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функции OnVehicleMileageUpdate.
    • OnPlayerStateChange - для определения игрока в транспортном средстве.
    • DestroyVehicle - для обнуления переменных.
    • SetVehiclePos - для исправления бага.

    Автовызываемые функции:
    • OnVehicleMileageUpdate(vehicleid) - вызывается при каждом обновлении значения километража.

    vhs_neon Добавляет неоновые лампы.

    Функции:
    • AddNeonToVehicle(vehicleid, E_TDW_NEON_COLOR:color) - добавляет неоновые лампы для транспортного средства.
    • RemoveNeonFromVehicle(vehicleid) - удаляет неоновые лампы с транспортного средства.

    Перехваты:
    • OnVehicleDeath - для удаления неоновых ламп при взрыве транспортного средства.

    vhs_police_lights Добавляет служебные проблесковые маячки.

    Функции:
    • UpdatePoliceLights(vehicleid, E_TDW_SIREN_TYPE:type = SIREN_TYPE_POLICE) - добавляет/обновляет проблесковые маячки для транспортного средства.
    • RemovePoliceLights(vehicleid) - удаляет проблесковые маячки с транспортного средства.

    vhs_turn_signals Добавляет поворотники для транспортного средства.

    Функции:

    Константы:
    • TDW_SIGNAL_OBJECT_ID - добавляемый объект освещения (по умолчанию - 19294).

    vhs_engine Добавляет систему управления двигателем, а также систему для определения топлива.

    Функции:
    • StartVehicleEngine(vehicleid) - включает двигатель транспортного средства.
    • StopVehicleEngine(vehicleid) - выключает двигатель транспортного средства.
    • IsVehicleEngineRunning(vehicleid) - проверяет состояние двигателя.
    • GetVehicleFuel(vehicleid) - получает количество оставшегося горючего.
    • SetVehicleFuel(vehicleid, Float:amount) - устанавливает количество горючего.

    Константы:
    • TDW_ENGINE_DEFAULT_FUEL - значение, загружаемое по умолчанию каждому транспортному средству (по умолчанию - 1000.0).
    • TDW_ENGINE_TIMER_INTERVAL - время включения двигателя для транспортного средства (по умолчанию - 1000).
    • TDW_ENGINE_FLOAT_SUB - отнимаемое значение горючего (по умолчанию - 0.125).
    • TDW_ENGINE_USE_TIMER - включает таймер.

    Перехваты:
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемых функций (см. ниже).
    • AddStaticVehicle/AddStaticVehicleEx/CreateVehicle/OnPlayerStateChange - для избежания бага с велосипедами.
    • OnVehicleMileageUpdate - для вычисления количества потраченного горючего.

    Автовызываемые функции:
    • OnVehicleEngineStateChange(vehicleid, E_TDW_ENGINE_STATE:engine) - вызывается только тогда, когда изменилось состояние двигателя транспортного средства.
    • OnVehicleEngineStartFailed(vehicleid) - вызывается, если нет горючего, или двигатель не завёлся из-за повреждений.
    • OnVehicleEngineStarted(vehicleid) - вызывается при успешном старте двигателя.
    • OnVehicleEngineStopped(vehicleid) - вызывается при выключении двигателя.
    • OnVehicleFuelChange(vehicleid, Float:amount) - вызывается при изменении значения горючего.

    vhs_lock Не даёт игроку сесть в транспортное средство.

    Перехваты:
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функции OnPlayerTryingEnterVehicle.
    • OnPlayerEnterVehicle - для вызова автовызываемой функции.
    • OnPlayerStateChange - для выталкивания игрока из транспортного средства.

    Автовызываемые функции:
    • OnPlayerTryingEnterVehicle(playerid, vehicleid) - вызывается при попытке сесть в транспортное средство.

    vhs_radar Создаёт радар, который умеет отлавливать скорость проезжающего мимо транспорта.

    Функции:
    • CreateRadar(Float:x, Float:y, Float:z, Float:rX, Float:rY, Float:rZ, Float:distance, Float:max_speed) - создаёт радар на указанных координатах.
    • DestroyRadar(radarid) - удаляет радар.
    • SetRadarMaxDistance(radarid, Float:distance) - обновляет дистанцию обзора у радара.
    • Float:GetRadarMaxDistance(radarid) - возвращает дистанцию обзора у радара.
    • IsValidRadar(radarid) - проверяет валидность радара.
    • SetRadarMaxSpeed(radarid, Float:speed) - устанавливает максимальную скорость для участка.
    • Float:GetRadarMaxSpeed(radarid) - возвращает максимальную скорость для участка.
    • IsPlayerInAnyVehicleInRadarArea(playerid) - проверяет, находится ли игрок в указанной зоне обзора радара.

    Константы:
    • TDW_RADAR_MAX_RADARS - устанавливает максимальное количество радаров (по умолчанию - 500).
    • TDW_RADAR_TIMER_COUNT - устанавливает время для обновления дистанции (по умолчанию - 350).
    • TDW_RADAR_MAX_DISTANCE - максимальная зона обзора радара (по умолчанию - 10.0).
    • TDW_RADAR_MIN_DISTANCE - минимальная зона обзора радара (по умолчанию - 0.0).

    Перехваты:
    • CreateDynamicObject/GetDynamicObjectPos/GetDynamicObjectRot или CreateObject/GetObjectPos/GetObjectRot для создания объекта.
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функции OnVehicleRadarDetect.

    Автовызываемые функции:
    • OnVehicleRadarDetect(playerid, vehicleid, radarid, Float:speed) - вызывается при обнаружении нарушителя.

    vhs_booster Ускоряет транспортное средство.

    Константы:
    • _TDW_BOOSTER_SPEED_UPDATE - скорость обновления ускорения (по умолчанию - 450).
    • _TDW_BOOSTER_MIN_SPEED - минимальная скорость (по умолчанию - 5.0).
    • _TDW_BOOSTER_BOOST_SPEED - увеличение скорости (по умолчанию - 10.0).

    Перехваты:
    • OnPlayerStateChange - для определения игрока в транспортном средстве.

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

    Перехваты:
    • OnPlayerStateChange - для определения игрока в транспортном средстве.
    • OnFilterScriptInit и OnGameModeInit - для нахождения автовызываемой функции OnPlayerVehicleDrift.

    Автовызываемые функции:
    • OnPlayerVehicleDrift(playerid, vehicleid, Float:drift_angle)


    Скачать:

    Установка:
    1. Скачать библиотеку.
    2. Все файлы, точнее библиотеки, переместить в папку 'pawno/includes'. Впрочем, можно воспользоваться флагом '-i<путь>' для указания альтернативного пути для библиотек.
    3. Библиотеки необходимо подключать после файла 'a_samp'.
      Пример:
      PHP код:
                  #include <a_samp>
                  #include <vh_dstatus> 
    4. Скомпилировать изменённые вами скрипты.


    Благодарности:
    • Nexius (идея для библиотеки)
    • ziggi (Реализация функции DestroyVehicleSafe; Некоторые фиксы для функций)
    • Geebrox (исправление некоторых ошибок, тестирование систем)
    • Glant (исправление некоторых ошибок, дополнение к функциям)


    Распространяется по лицензии ZLIB.
    Последний раз редактировалось VVWVV; 10.12.2016 в 19:44. Причина: Новая информации и новые библиотеки

  2. 7 пользователя(ей) сказали cпасибо:
    Anton Styazhkin (13.10.2016)Geebrox (19.10.2016)Glant (22.10.2016)KrutoyKrosch (02.11.2016)Prolific (23.10.2016)SergGrey (04.02.2017)[ForD] (11.11.2016)
  3. #2
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    798
    Репутация:
    577 ±
    Заметил ошибку в DestroyVehicleSafe (PR делать лень):
    Функция должна возвращать по ссылке параметр vehicleid, тогда эта функция будет работать.
    То есть так:
    PHP код:
    stock DestroyVehicleSafe(&vehicleid
    P.S. Без списка функций, конечно, непонятно что есть и что можно использовать.

  4. #3
    Аватар для VVWVV
    Проверенный

    Статус
    Онлайн
    Регистрация
    09.07.2015
    Сообщений
    509
    Репутация:
    219 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    Заметил ошибку в DestroyVehicleSafe (PR делать лень):
    Функция должна возвращать по ссылке параметр vehicleid, тогда эта функция будет работать.
    То есть так:
    PHP код:
    stock DestroyVehicleSafe(&vehicleid
    Хм, действительно.

    UPD: Добавил.

    Цитата Сообщение от ziggi Посмотреть сообщение
    P.S. Без списка функций, конечно, непонятно что есть и что можно использовать.
    Функций очень много... Хотя, все исправлю.
    Последний раз редактировалось VVWVV; 14.10.2016 в 22:02.

  5. #4
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    798
    Репутация:
    577 ±
    Цитата Сообщение от VVWVV Посмотреть сообщение
    Функций очень много... Хотя, все исправлю.
    Просто если ты делаешь библиотеку для себя, то да, это не обязательно. Но когда люди не понимают как это использовать, то они вряд ли будут этим пользоваться. Просто сделай список всех функций в README без описания (я сам часто так делаю), ибо при грамотном наименовании функций и параметров оно не нужно.

  6. Пользователь сказал cпасибо:
    VVWVV (14.10.2016)
  7. #5
    Аватар для VVWVV
    Проверенный

    Статус
    Онлайн
    Регистрация
    09.07.2015
    Сообщений
    509
    Репутация:
    219 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    Просто если ты делаешь библиотеку для себя, то да, это не обязательно. Но когда люди не понимают как это использовать, то они вряд ли будут этим пользоваться. Просто сделай список всех функций в README без описания (я сам часто так делаю), ибо при грамотном наименовании функций и параметров оно не нужно.
    Да, действительно. Правильно написанный код сам себя комментирует. Всегда стараюсь соблюдать данную практику при разработке, ибо она очень помогает.

    Однако, спасибо за совет!

    UPD: Добавил.
    Последний раз редактировалось VVWVV; 14.10.2016 в 23:39.

  8. #6
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    218
    Репутация:
    63 ±
    Библиотека очень полезная, взял себе в проект, спасибо.

    1. Можете исправить GetVehicelColor на GetVehicleColor?
    2. Было бы очень круто если бы добавили параметры к каждой функции в описании,
    к примеру SetVehicleColor(vehicleid, &color1, &color2);
    3. Зачем нужен CreateVehicleEx я так и не понял

    А так все остальное просто СУПЕР
    Последний раз редактировалось Geebrox; 19.10.2016 в 05:35.

  9. #7
    Аватар для VVWVV
    Проверенный

    Статус
    Онлайн
    Регистрация
    09.07.2015
    Сообщений
    509
    Репутация:
    219 ±
    Цитата Сообщение от Geebrox Посмотреть сообщение
    1. Можете исправить GetVehicelColor на GetVehicleColor?
    Исправил.

  10. #8
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    218
    Репутация:
    63 ±
    Цитата Сообщение от VVWVV Посмотреть сообщение
    Исправил.
    Забыли изменить в описании


    И еще:

    PHP код:
    tdw_vehicle/system/3dtext_label.inc(76 -- 79) : warning 213tag mismatch 
    Вы забыли пропустить playerid:

    Streamer:
    PHP код:
    CreateDynamic3DTextLabel(const text[], colorFloat:xFloat:yFloat:zFloat:drawdistance
    attachedplayer INVALID_PLAYER_IDattachedvehicle INVALID_VEHICLE_IDtestlos 0worldid = -1interiorid = -1
    /*Ошибка тут*/playerid = -1Float:streamdistance STREAMER_3D_TEXT_LABEL_SD
    STREAMER_TAG_AREA areaid STREAMER_TAG_AREA -1
    Ваш код:
    PHP код:
    TDW_g_sVDynamic@LabelIds[vehicleid] = CreateDynamic3DTextLabel(labelcolor,
            
    offset_xoffset_yoffset_zdrawdistance_vehicleid_:testLos,
            
    virtualworldinteriorid/*Ошибка тут*/streamdistance
    ); 

    Решение если кому интересно:

    Вариант 1:
    PHP код:
    TDW_g_sVDynamic@LabelIds[vehicleid] = CreateDynamic3DTextLabel(labelcolor,
            
    offset_xoffset_yoffset_zdrawdistance_vehicleid_:testLos,
            
    virtualworldinteriorid, .streamdistance streamdistance
    ); 
    Вариант 2:
    PHP код:
    TDW_g_sVDynamic@LabelIds[vehicleid] = CreateDynamic3DTextLabel(labelcolor,
            
    offset_xoffset_yoffset_zdrawdistance_vehicleid_:testLos,
            
    virtualworldinteriorid_streamdistance
    ); 
    Последний раз редактировалось Geebrox; 20.10.2016 в 04:57.

  11. Пользователь сказал cпасибо:
    VVWVV (20.10.2016)
  12. #9
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    218
    Репутация:
    63 ±
    Ошибка №2:

    PHP код:
    tdw_vehicle/system/3dtext_label.inc(113) : error 017undefined symbol "UpdateDynamic3DTextLabel" 


    Решение:

    Нужно открыть инклуд 3dtext_label.inc далее ищем: UpdateDynamic3DTextLabel (для поиска используйте ctrl+f) и меняем на UpdateDynamic3DTextLabelText

  13. Пользователь сказал cпасибо:
    VVWVV (20.10.2016)
  14. #10
    Аватар для VVWVV
    Проверенный

    Статус
    Онлайн
    Регистрация
    09.07.2015
    Сообщений
    509
    Репутация:
    219 ±
    Цитата Сообщение от Geebrox Посмотреть сообщение
    Забыли изменить в описании


    И еще:

    PHP код:
    tdw_vehicle/system/3dtext_label.inc(76 -- 79) : warning 213tag mismatch 
    Вы забыли пропустить playerid:

    Streamer:
    PHP код:
    CreateDynamic3DTextLabel(const text[], colorFloat:xFloat:yFloat:zFloat:drawdistance
    attachedplayer INVALID_PLAYER_IDattachedvehicle INVALID_VEHICLE_IDtestlos 0worldid = -1interiorid = -1
    /*Ошибка тут*/playerid = -1Float:streamdistance STREAMER_3D_TEXT_LABEL_SD
    STREAMER_TAG_AREA areaid STREAMER_TAG_AREA -1
    Ваш код:
    PHP код:
    TDW_g_sVDynamic@LabelIds[vehicleid] = CreateDynamic3DTextLabel(labelcolor,
            
    offset_xoffset_yoffset_zdrawdistance_vehicleid_:testLos,
            
    virtualworldinteriorid/*Ошибка тут*/streamdistance
    ); 

    Решение если кому интересно:

    Вариант 1:
    PHP код:
    TDW_g_sVDynamic@LabelIds[vehicleid] = CreateDynamic3DTextLabel(labelcolor,
            
    offset_xoffset_yoffset_zdrawdistance_vehicleid_:testLos,
            
    virtualworldinteriorid, .streamdistance streamdistance
    ); 
    Вариант 2:
    PHP код:
    TDW_g_sVDynamic@LabelIds[vehicleid] = CreateDynamic3DTextLabel(labelcolor,
            
    offset_xoffset_yoffset_zdrawdistance_vehicleid_:testLos,
            
    virtualworldinteriorid_streamdistance
    ); 
    Цитата Сообщение от Geebrox Посмотреть сообщение
    Ошибка №2:

    PHP код:
    tdw_vehicle/system/3dtext_label.inc(113) : error 017undefined symbol "UpdateDynamic3DTextLabel" 


    Решение:

    Нужно открыть инклуд 3dtext_label.inc далее ищем: UpdateDynamic3DTextLabel (для поиска используйте ctrl+f) и меняем на UpdateDynamic3DTextLabelText
    Исправил.

 

 
Страница 1 из 7 123 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •