Plugin for SA:MP 0.3a R4 server Structure Access by 009
Плагин позволяет брать данные типов float и integer из структур сервера CPlayer , CVehicle , CObject Изменить данные нельзя,и нет смысла делать это т.к. клиенту эти данные не передаются(сервер просто посылает эти данные остальным игрокам - синхронизация) Для получения данных требуется знать offset нужного вам значения структуры
Функции: GetPlayerStructureInfoInt(playerid,structure_offset) Получает значение типа integer из структуры CPlayer игрока с id = playerid с offset = structure_offset
GetPlayerStructureInfoFloat(playerid,structure_offset) Получает значение типа float из структуры CPlayer игрока с id = playerid с offset = structure_offset
GetVehicleStructureInfoInt(vehicleid,structure_offset) Получает значение типа integer из структуры CVehicle транспорта с id = vehicleid с offset = structure_offset
GetVehicleStructureInfoFloat(vehicleid,structure_offset) Получает значение типа float из структуры CVehicle транспорта с id = vehicleid с offset = structure_offset
GetObjectStructureInfoInt(vehicleid,structure_offset) Получает значение типа integer из структуры CObject обьекта с id = objectid с offset = structure_offset
GetObjectStructureInfoFloat(vehicleid,structure_offset) Получает значение типа float из структуры CObject обьекта с id = objectid с offset = structure_offset
stock GetPlayerCameraPos(playerid,&Float:X,&Float:Y,&Float:Z) { X = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_X); Y = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Y); Z = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Z); }
stock GetPlayerCameraLookPos(playerid,&Float:X,&Float:Y,&Float:Z) { X = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_X) + GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_LOOK_OT_X); Y = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Y) + GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_LOOK_OT_Y); Z = GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_POS_Z) + GetPlayerStructureInfoFloat(playerid,CPLAYER_OFFSET_CAMERA_LOOK_OT_Z); }
Я тут набросал небольшой фильтерскрипт-тест http://slil.ru/28667762 [offtop]команда /createobj создает рядом с игроком в воздухе шарик для бильярда и выдает снайперку при наведении прицела на шарик пишется Nice Aim в лог сервера выводится расстояние прицела до шарика[/offtop] работает как часы
Думаю ты про офсеты там команда поиска офсетов есть,если это она конешно...не думаю что Alex009 без исходников сервера знает каждый офсет структур [pwn]if(!strcmp(cmd,"/gsd",true)) { new string[128], start = strval(strtok(cmdtext,idx)), end = strval(strtok(cmdtext,idx)); if(IsPlayerInAnyVehicle(playerid)) { new vehicleid = GetPlayerVehicleID(playerid); for(new i = start;i < end;i++) { format(string,sizeof(string),"0x%x: %d , %f",i,GetVehicleStructureInfoInt(vehicleid,i),GetVehicleStructureInfoFloat(vehicleid,i)); SendClientMessage(playerid,0xFFFFFFFF,string); } } else { for(new i = start;i < end;i++) { format(string,sizeof(string),"0x%x: %d , %f",i,GetPlayerStructureInfoInt(playerid,i),GetPlayerStructureInfoFloat(playerid,i)); SendClientMessage(playerid,0xFFFFFFFF,string); } } return 1; }[/pwn] вот эта команда( я один чтоли в samples.pwn заглядываю? ) P.S. если всё же я не так тебя понял то извини
Добавлено (18.02.2010, 15:15) --------------------------------------------- Никто ещё не нашёл офсеты в CVehicle: пробита/не пробита шина( массив из 4 ячеек должен быть ) включена/выключена сирена и поломки визуальные? я пока только нашёл жизнь транспорта на 0xA6 и прицеп на 0x66 вроде так
дадада....(про скрипт) так, всё что ты перечислил ваще нафег ненада впринципе, я лишь хочу использовать данный плагин для создание ништяковского античита...
xJester, проверка на хайдшот, дигл, проверка на айм, проверка на фэйк килл.... Даже проверка на поворот тачи относительно ofs(x,y,z)
Добавлено (18.02.2010, 22:34) --------------------------------------------- можно вести адекватный подсчет очков при дрите, можно устроить тир, епте. нужен только мозг и идея