Доступ к архиву

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

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

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

Анти телепорт в авто!

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

J.Wockeez

Умник
Приветствую всех пользователей сайта pawno-info.ru выкладываю свой античит против телепортации в авто.

Для начала ко всем new добавим:

PHP:
new bool:UseEnter[MAX_PLAYERS], bool: BanCar[MAX_VEHICLES];
new TimeUpdate[MAX_PLAYERS], IDVEH[MAX_PLAYERS];
В public OnPlayerEnterVehicle

PHP:
UseEnter[playerid] = true;
IDVEH[playerid] = vehicleid;
В public OnPlayerStateChange

PHP:
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER )
	{
		if(IDVEH[playerid] != GetPlayerVehicleID(playerid) || !UseEnter[playerid])
		{
			Punish(playerid);
		}
		UseEnter[playerid] = false;
	}

if(newstate == PLAYER_STATE_DRIVER) SetPVarInt(playerid,"VehID",GetPlayerVehicleID(playerid));

	if(oldstate == PLAYER_STATE_DRIVER)
	{
		if(BanCar[GetPVarInt(playerid,"VehID")]) KillTimer(TimeUpdate[playerid]);
		TimeUpdate[playerid] = SetTimerEx("UpdateVehiclePos", 10000, false, "ii", GetPVarInt(playerid,"VehID"), 1);
		BanCar[GetPVarInt(playerid,"VehID")] = true;
	}
В конец мода

PHP:
stock CheckPlayer(playerid)
{
	if(IsPlayerInVehicle(playerid, GetPVarInt(playerid, "RemoveCar"))
			{
			}
		}

stock ResetCarInfo(playerid)
{
	IDVEH[playerid]=-1;
	UseEnter[playerid] = false;
}
И последний шаг добавляем сам античит ( этот без проверки на админа )

PHP:
forward CheckCar();
public CheckCar()
{
	for(new i; i<GetMaxPlayers(); i++)
	{
		if(IDVEH[i] != -1 && IsPlayerConnected(i) && IsPlayerInAnyVehicle(i) && !UseEnter[i] && IDVEH[i] != GetPlayerVehicleID(i)) Punish(i);
	}
return 1;
}

stock Punish(playerid)
{
	new string[128], plname[MAX_PLAYER_NAME];
	GetPlayerName(playerid, plname, sizeof(plname));
	format(string,sizeof(string),"{FFFAFA}* [Античит: 5] : %s был кикнут за телепортацию в авто",plname);
	SendAdminMessage(COLOR_LIGHTRED, string);
	SendClientMessage(playerid,COLOR_LIGHTRED,"{FFFAFA}* {00FF00}[Античит: 5] {FFFAFA}: {FF0000}Вы были кикнуты за телепортацию в авто");
	SendClientMessage(playerid,COLOR_LIGHTRED,"{FFFAFA}* {FF0000}Предупреждаем! Использование чит-программ карается баном!");
	Kick(playerid);
}
Кому надо вот античит с проверкой на администратора:

PHP:
forward CheckCar();
public CheckCar()
{
	for(new i; i<GetMaxPlayers(); i++)
	{
		if(IDVEH[i] != -1 && IsPlayerConnected(i) && IsPlayerInAnyVehicle(i) && !UseEnter[i] && IDVEH[i] != GetPlayerVehicleID(i)) Punish(i);
	}
return 1;
}
stock Punish(playerid)
    {
    if(PlayerInfo[playerid][pAdmin] <= 1)
            {
            new string[128], plname[MAX_PLAYER_NAME];
            GetPlayerName(playerid, plname, sizeof(plname));
            format(string,sizeof(string),"{FFFAFA}* [Античит: 5] : %s был кикнут за телепортацию в авто",plname);
            SendAdminMessage(COLOR_LIGHTRED, string);
            SendClientMessage(playerid,COLOR_LIGHTRED,"{FFFAFA}* {00FF00}[Античит: 5] {FFFAFA}: {FF0000}Вы были кикнуты за телепортацию в авто");
            SendClientMessage(playerid,COLOR_LIGHTRED,"{FFFAFA}* {FF0000}Предупреждаем! Использование чит-программ карается баном!");
            Kick(playerid);
            }
    }

Размешение данного античита на других порталах без указания автора ЗАПРЕЩЕНО!

Если возникли ошибки пишите ниже, решим.
Кому помог, не забудьте поставить + :ds:
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу