Добро пожаловать на Pawno-Info.Ru - Портал о программировании №1

Присоединяйтесь к нам сейчас, чтобы получить доступ ко всем нашим функциям и ответы на все интересующие Вас вопросы. После регистрации Вы сможете создавать темы, публиковать ответы, влиять на репутацию пользователей форума, обмениваться личными сообщениями и многое другое. Это быстро и совершенно бесплатно, так чего же Вы ждете?
Доступ к архиву

Переход в группу "Пользователь"

300.00
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Скачивать файлы
Создавать темы
Быть полноправным участником форума
Доступ к архиву Pawno-Info
Нормальное копирование кода

Маппинг для сервера

Если вы хотите обновить Ваш сервер новыми доработками - то зайдите в наш раздел. Большой выбор готовых решений от наших пользователей

Моды для сервера

Огромный выбор различных модификаций для Вашего сервера. Пролистайте эти темы! Возможно именно там Вы найдете то, что искали уже давно.

Модификации SA

Хотите разнообразить свою игру в San Andreas? Смелее в наш раздел. Отличный сборник готовых решений. Играйте с удовольствием

Статус
В этой теме нельзя размещать новые ответы.

DaD96

Изучающий
Пользователь
Регистрация
5 Фев 2011
Сообщения
272
Лучшие ответы
0
Репутация
37
Возраст
25
Адрес
Челябинск
После просмотра кода PaHaNjkee ,увидел что вроде бы код не валидный и вроде бы не правильно построен.
Я решил сделать свой Anti NOP

Замените внутринности функции двигателя на мои,щас объясню как
Например,у меня машина заводится через команду
PHP:
if(!strcmp(cmdtext,"/engine",true))
{
   if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return 1;
   if(EngineStatus(GetPlayerVehicleID(playerid)))Engine(GetPlayerVehicleID(playerid),0);
   else  Engine(GetPlayerVehicleID(playerid),1);
}
Ищем Engine(ну у вас скорей всего по другому)
и видим ,чтото типо такого
PHP:
stock Engine(carid,engine)
{
	new lights,alarms,door,bonnets,boots,objectives;
	SetVehicleParamsEx(carid,engine,light,alarm,doors,bonnet,boot,objective);
}
Все внутринности меняем на содержимое функции ниже
PHP:
stock Engine(carid,engine)
{
    new engines,lights,alarms,door,bonnets,boots,objectives;
    GetVehicleParamsEx(carid,engines,lights,alarms,door,bonnets,boots,objectives);
    if(engines==engine)return 1;
 SetVehicleParamsEx(carid,engine,light,alarm,doors,bonnet,boot,objective);SetTimerEx("AntiSetVehicleParamsEx",500,false,"ii",carid,engine);
}
И куда нибудь в низ мода вставляем
PHP:
forward AntiSetVehicleParamsEx(carid,engine);
public AntiSetVehicleParamsEx(carid,engine)
{
    new engines,lights,alarms,door,bonnets,boots,objectives;
    GetVehicleParamsEx(carid,engines,lights,alarms,door,bonnets,boots,objectives);
    if(engine != engines)
    {
        new dri=GetVehicleDriver(carid);
		SendClientMessage(dri,-1,"Вы использовали NOP SetVehicleParamsEx и были кикнуты.Удалите собейт");
		Kick(dri);
    }
}
Автор-я
Будут ошибки или варнинги,пишите ниже
Отпишите пожалуйста,работает или нет
 
Последнее редактирование:

kyller

Эксперт
Пользователь
Регистрация
5 Ноя 2011
Сообщения
1,665
Лучшие ответы
0
Репутация
398
Адрес
Pawno-Info.ru
+ поставил. Молодец)
 

Last

Заблокирован
Регистрация
28 Мар 2011
Сообщения
992
Лучшие ответы
0
Репутация
373
Возраст
25
Адрес
Челябинск
Я конечно не проверял , но вот посмотрел и вопрос возник:

PHP:
if(engines==engine)return 1;//тут более понятно
 if(SetVehicleParamsEx(carid,engine,light,alarm,doors,bonnet,boot,objective))// неверно т.к функция SetVehicleParamsEx она ничего не возращает
SetTimerEx("AntiSetVehicleParamsEx",500,false,"ii",carid,engine);//ну тут понятно




public AntiSetVehicleParamsEx(carid,engine)
{
    new engines,lights,alarms,door,bonnets,boots,objectives;
    GetVehicleParamsEx(carid,engines,lights,alarms,door,bonnets,boots,objectives);
    if(engine == engines)// вот тут, смотри чуть ранее мы заводим двигатель присваеваем значение 1 , и тут же проверяем равно ли оно себе же (в любом случае кик), тут необходимо сделать !=
    {
        new dri=GetVehicleDriver(carid);
        SendClientMessage(dri,-1,"Вы использовали NOP SetVehicleParamsEx и были кикнуты.Удалите собейт");
        Kick(dri);
    }
}
 

DaD96

Изучающий
Пользователь
Регистрация
5 Фев 2011
Сообщения
272
Лучшие ответы
0
Репутация
37
Возраст
25
Адрес
Челябинск
Ага,точно)щас чуть подправлю,я прост в условия тыкаю функи,хз всё работало с другими функами ,ну а насчёт if(engine == engines) голова не варила
 
Последнее редактирование:

lord-david

Нуль
Пользователь
Регистрация
8 Фев 2012
Сообщения
8
Лучшие ответы
0
Репутация
0
Это античит который кикает за а ТП машин через собейт?
 
Статус
В этой теме нельзя размещать новые ответы.
shape1
shape2
shape3
shape4
shape7
shape8
Сверху Снизу