[ Новые сообщения · Участники · Правила форума · Поиск · RSS ] |
|
Форум - Сообщество любителей игры GTA:MP » SA-MP Scripting » Школа PAWNO » Стример Инкогнито |
Стример Инкогнито |
Дата: 02.02.2011, Среда, 15:34:20 | Сообщение # $NUMBER
Streamer Plugin v2.5.1
Этот плагин потоки объектов, пикапов, контрольно-пропускные пункты, расы контрольно-пропускных пунктов, карта значки, этикетки и 3D текст в определяемых пользователем клещей сервера. Основные области обнаружения также включен. Потому что он полностью написан на C + +, большая часть накладных расходов из пешки избежать. Это ленты, как результат, достаточно немного быстрее, чем любой другой реализации имеющихся в настоящее время в залоге. Изменений v2.5.1: См. readme.txt в серверный пакет для полного изменений. Настройки:
Code native Streamer_TickRate(rate); native Streamer_MaxItems(type, items); native Streamer_VisibleItems(type, items); native Streamer_CellDistance(Float:distance); native Streamer_CellSize(Float:size); Обновления:
Code native Streamer_Update(playerid); native Streamer_UpdateEx(playerid, Float:x, Float:y, Float:z); Манипулирование данными:
Code native Streamer_GetFloatData(type, {Text3D,_}:id, data, &Float:result); native Streamer_SetFloatData(type, {Text3D,_}:id, data, Float:value); native Streamer_GetIntData(type, {Text3D,_}:id, data); native Streamer_SetIntData(type, {Text3D,_}:id, data, value); native Streamer_IsInArrayData(type, {Text3D,_}:id, data, value); native Streamer_AppendArrayData(type, {Text3D,_}:id, data, value); native Streamer_RemoveArrayData(type, {Text3D,_}:id, data, value); native Streamer_GetUpperBound(type); Разное:
Code native Streamer_IsItemVisible(playerid, type, {Text3D,_}:id); native Streamer_DestroyAllVisibleItems(playerid, type); native Streamer_CountVisibleItems(playerid, type); Объекты:
Code native CreateDynamicObject(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, worldid = -1, interiorid = -1, playerid = -1, Float:distance = 200.0); native DestroyDynamicObject(objectid); native IsValidDynamicObject(objectid); native SetDynamicObjectPos(objectid, Float:x, Float:y, Float:z); native GetDynamicObjectPos(objectid, &Float:x, &Float:y, &Float:z); native SetDynamicObjectRot(objectid, Float:rx, Float:ry, Float:rz); native GetDynamicObjectRot(objectid, &Float:rx, &Float:ry, &Float:rz); native MoveDynamicObject(objectid, Float:x, Float:y, Float:z, Float:speed); native StopDynamicObject(objectid); native DestroyAllDynamicObjects(); native CountDynamicObjects(); Пикапы:
Code native CreateDynamicPickup(modelid, type, Float:x, Float:y, Float:z, worldid = -1, interiorid = -1, playerid = -1, Float:distance = 100.0); native DestroyDynamicPickup(pickupid); native IsValidDynamicPickup(pickupid); native DestroyAllDynamicPickups(); native CountDynamicPickups(); Чекпоинты:
Code native CreateDynamicCP(Float:x, Float:y, Float:z, Float:size, worldid = -1, interiorid = -1, playerid = -1, Float:distance = 100.0); native DestroyDynamicCP(checkpointid); native IsValidDynamicCP(checkpointid); native TogglePlayerDynamicCP(playerid, checkpointid, toggle); native TogglePlayerAllDynamicCPs(playerid, toggle); native IsPlayerInDynamicCP(playerid, checkpointid); native DestroyAllDynamicCPs(); native CountDynamicCPs(); Гоночные чекпоинты:
Code native CreateDynamicRaceCP(type, Float:x, Float:y, Float:z, Float:nextx, Float:nexty, Float:nextz, Float:size, worldid = -1, interiorid = -1, playerid = -1, Float:distance = 100.0); native DestroyDynamicRaceCP(checkpointid); native IsValidDynamicRaceCP(checkpointid); native TogglePlayerDynamicRaceCP(playerid, checkpointid, toggle); native TogglePlayerAllDynamicRaceCPs(playerid, toggle); native IsPlayerInDynamicRaceCP(playerid, checkpointid); native DestroyAllDynamicRaceCPs(); native CountDynamicRaceCPs(); Иконки на карте:
Code native CreateDynamicMapIcon(Float:x, Float:y, Float:z, type, color, worldid = -1, interiorid = -1, playerid = -1, Float:distance = 100.0); native DestroyDynamicMapIcon(iconid); native IsValidDynamicMapIcon(iconid); native DestroyAllDynamicMapIcons(); native CountDynamicMapIcons(); 3D тексты:
Code native Text3D:CreateDynamic3DTextLabel(const text[], color, Float:x, Float:y, Float:z, Float:drawdistance, attachedplayer = INVALID_PLAYER_ID, attachedvehicle = INVALID_VEHICLE_ID, testlos = 0, worldid = -1, interiorid = -1, playerid = -1, Float:distance = 100.0); native DestroyDynamic3DTextLabel(Text3D:id); native IsValidDynamic3DTextLabel(Text3D:id); native UpdateDynamic3DTextLabelText(Text3D:id, color, const text[]); native DestroyAllDynamic3DTextLabels(); native CountDynamic3DTextLabels(); Области:
Code native CreateDynamicCircle(Float:x, Float:y, Float:size, worldid = -1, interiorid = -1, playerid = -1); native CreateDynamicRectangle(Float:minx, Float:miny, Float:maxx, Float:maxy, worldid = -1, interiorid = -1, playerid = -1); native CreateDynamicSphere(Float:x, Float:y, Float:z, Float:size, worldid = -1, interiorid = -1, playerid = -1); native CreateDynamicCube(Float:minx, Float:miny, Float:minz, Float:maxx, Float:maxy, Float:maxz, worldid = -1, interiorid = -1, playerid = -1); native DestroyDynamicArea(areaid); native IsValidDynamicArea(areaid); native TogglePlayerDynamicArea(playerid, areaid, toggle); native TogglePlayerAllDynamicAreas(playerid, toggle); native IsPlayerInDynamicArea(playerid, areaid); native AttachDynamicAreaToPlayer(areaid, playerid); native AttachDynamicAreaToVehicle(areaid, vehicleid); native DestroyAllDynamicAreas(); native CountDynamicAreas(); Обратные вызовы
Code forward OnDynamicObjectMoved(objectid); forward OnPlayerPickUpDynamicPickup(playerid, pickupid); forward OnPlayerEnterDynamicCP(playerid, checkpointid); forward OnPlayerLeaveDynamicCP(playerid, checkpointid); forward OnPlayerEnterDynamicRaceCP(playerid, checkpointid); forward OnPlayerLeaveDynamicRaceCP(playerid, checkpointid); forward OnPlayerEnterDynamicArea(playerid, areaid); forward OnPlayerLeaveDynamicArea(playerid, areaid); Определения
Code #define STREAMER_TYPE_OBJECT (0) #define STREAMER_TYPE_PICKUP (1) #define STREAMER_TYPE_CP (2) #define STREAMER_TYPE_RACE_CP (3) #define STREAMER_TYPE_MAP_ICON (4) #define STREAMER_TYPE_3D_TEXT_LABEL (5) #define STREAMER_TYPE_AREA (6) Счетчик
Code enum { E_STREAMER_ATTACHED_PLAYER, E_STREAMER_ATTACHED_VEHICLE, E_STREAMER_COLOR, E _STR EAME R_DI STAN CE, E _STRE AMER_DRAW_DISTANCE, E_STREAMER_EXTRA_ID, E_STREAMER_INTERIOR_ID, E_STREAMER_MAX_X, E _STR EAME R_MA X_Y, E _ST REAME R_MAX_Z, E_STREAMER_MIN_X, E_STREAMER_MIN_Y, E_STREAMER_MIN_Z, E_STREAMER_MODEL_ID, E _STRE AMER_MOVE_ SPEED , E _STREAMER_MOVE_X, E_STREAMER_MOVE_Y, E_STREAMER_MOVE_Z, E_STREAMER_NEXT_X, E_STREAME R_NE XT_Y , E _STRE AMER_ NEXT_ Z, E_STREAMER_PLAYER_ID, E_STREAMER_R_X, E_STREAMER_R_Y, E_STREAMER_R_Z, E _ STREA MER_S IZE, E _ STREAM ER_TES T_LOS, E_STREAMER_TYPE, E_STREAMER_WORLD_ID, E_STREAMER_X, E_STREAMER_Y, E _ STREA MER_Z } Инструкция Во-первых, создать папку с именем плагинов на сервере каталог, если он еще не существует. Место streamer.dll в ней, если вы используете Windows, или streamer.so если вы используете Linux. Добавьте следующую строку в server.cfg так что плагин будет загружать следующем запуске сервера: Windows: Code plugins streamer Linux: Code plugins streamer.so Далее, сделать это в любой фильтрскрипт или режима игры (это может быть хорошей идеей, чтобы положить его в режим игры любом случае, поскольку filterscripts иногда противоречат друг другу):
Code #include <streamer> Вот и все. Теперь просто добавить плагина туземцев и обратные вызовы к вашему сценарию. Будьте очень осторожны, и посмотреть на список выше, чтобы убедиться, что вы используете их правильно-не просто переименовать все в сценарии! Общие замечания - По умолчанию частота тиков: 50 Родные заметки - Использование Streamer_UpdateEx для предварительной загрузки элементов перед установкой позицию игрока или поток пунктов под OnPlayerRequestClass.
Code Streamer_SetIntData(STREAMER_TYPE_OBJECT, gObject, E_STREAMER_MODEL_ID, 1225); - Для настройки обратить объекта расстояние (добавлено в SA-MP 0.3b), использование Streamer_SetFloatData с E_STREAMER_DRAW_DISTANCE. Максимальное расстояние ничья 300,0. умолчанию привлечь каждого объекта расстояние 0,0.
Code Streamer_AppendArrayData(STREAMER_TYPE_OBJECT, gObject, E_STREAMER_PLAYER_ID, playerid); - Только кругов и сферы могут быть использованы с AttachDynamicAreaToPlayer и AttachDynamicAreaToVehicle. Скачать Server Plugin(Windows and Linux)(Mirror) Server Code(Cross-Compatible)(Mirror) Перевёл : Dima_Tkach Автор : Incognito Источник : ТыК |
Дата: 02.02.2011, Среда, 19:45:43 | Сообщение # $NUMBER
Quote (Enriko) саиый лучший стример какой только есть... пользуюсь им во всех разработках Согласен.Лучший из лучших. |
| |||
| |||