A3st
Новичок
Здравствуйте, я довел прошлую [BETA] версию Ограничителя до ума теперь она "Без Баговная на 100 процентов".
Проверял несколько раз все работает отлично и идет на любой сервак Samp-Rp и RLS (И других модов из этой линейки).
И так начнем для начала в pInfo вставляем:
Ко всем new's
В OnPlayerConnect
В OnPlayerRegister
В OnPlayerLogin
В OnPlayerUpdateRL или другую систему сохранения
В OnVehicleDamageStatusUpdate
Ставим этот код до системы поломки pProz
В Таймер Fresh
Вставляем после всех
В Таймер UpdateSpeedometr
Добавляем после этого кода
Вот этот код!
В OnPlayerCommand
Использование: Катаетесь по городу, нечайно врезались в стенку
очень сильно (С кем не бывает), понизился Навык вождением Автомобилем, потом катаетесь на машине не в кого не врезаясь поднимаете навык и вам напишет в чат если вы подняли его на Full.
Автор: Я
Все проверенно работает можете ставить и радоваться сис-мой.
Ставим "Спасибо" под сообщением.
Проверял несколько раз все работает отлично и идет на любой сервак Samp-Rp и RLS (И других модов из этой линейки).
И так начнем для начала в pInfo вставляем:
PHP:
pCarSkill
PHP:
new Slimit[MAX_PLAYERS];
PHP:
PlayerInfo[playerid][pCarSkill] = 0;
PHP:
ini_setInteger(File,"CarSkill",PlayerInfo[playerid][pCarSkill]);
PHP:
ini_getInteger(File,"CarSkill",PlayerInfo[playerid][pCarSkill]);
PHP:
ini_setInteger(File,"CarSkill",PlayerInfo[playerid][pCarSkill]);
Ставим этот код до системы поломки pProz
PHP:
GetVehicleHealth(vehicleid, carhp);
if(carhp > 300 && carhp < 500)
{
new skill = PlayerInfo[playerid][pCarSkill];
if(skill == 0)
{
SendClientMessage(playerid, COLOR_RED, "Ваш навык вождения понижен");
Slimit[playerid] = 0;
return 1;
}
SendClientMessage(playerid, COLOR_RED, "Ваш навык вождения понижен");
PlayerInfo[playerid][pCarSkill] -= 300;
Slimit[playerid] = 0;
}
Вставляем после всех
PHP:
if(IsPlayerInAnyVehicle(i))
{
new tacha = GetPlayerVehicleID(i);
if(!IsAPlane(tacha) && !IsABoat(tacha))
{
new skill = PlayerInfo[i][pCarSkill];
if(skill >= 0 && skill < 1200)
{
PlayerInfo[i][pCarSkill] += 1;
}
if(skill == 300 || skill == 600 || skill == 900)
{
SendClientMessage(i, COLOR_BLUE, "Ваш навык вождения повышен");
}
else if(skill == 1199)
{
SendClientMessage(i, COLOR_BLUE, "Ваш навык повышен");
SendClientMessage(i, COLOR_WHITE, "(( Введите /slimit чтобы снять ограничитель ))");
}
}
}
Добавляем после этого кода
PHP:
format(str1, sizeof(str1),"%d",SpeedVehicle(playerid));
if(Fuell[vehicleid] <= 45) format(str2, sizeof(str2),"~r~%.0f",Fuell[vehicleid]);
else if(Fuell[vehicleid] <= 100) format(str2, sizeof(str2),"~y~%.0f",Fuell[vehicleid]);
else if(Fuell[vehicleid] <= 300) format(str2, sizeof(str2),"~g~%.0f",Fuell[vehicleid]);
format(str3, sizeof(str3), "KM/H");
format(str4, sizeof(str4), "FUEL");
format(str5, sizeof(str5), "%s",locked);
PHP:
new skill = PlayerInfo[playerid][pCarSkill];
new tacha = GetPlayerVehicleID(playerid);
if(!IsAPlane(tacha) && !IsABoat(tacha))
{
if(skill >= 900 && skill <= 1199 || Slimit[playerid] == 1)
{
#define MAX_SPEEDO 0.50
#define SLOW_FACTOR 0.70
new Float:x,Float:y,Float:z,veh;
veh = GetPlayerVehicleID(playerid);
GetVehicleVelocity(veh,x,y,z);
if((x > MAX_SPEEDO || x < -MAX_SPEEDO) || (y > MAX_SPEEDO || y < -MAX_SPEEDO))
{
SetVehicleVelocity(veh,x*SLOW_FACTOR,y*SLOW_FACTOR,z);
}
}
if(skill >= 600 && skill <= 899)
{
#define MAX_SPEEDO 0.45
#define SLOW_FACTOR 0.65
new Float:x,Float:y,Float:z,veh;
veh = GetPlayerVehicleID(playerid);
GetVehicleVelocity(veh,x,y,z);
if((x > MAX_SPEEDO || x < -MAX_SPEEDO) || (y > MAX_SPEEDO || y < -MAX_SPEEDO))
{
SetVehicleVelocity(veh,x*SLOW_FACTOR,y*SLOW_FACTOR,z);
}
}
if(skill >= 300 && skill <= 599)
{
#define MAX_SPEEDO 0.40
#define SLOW_FACTOR 0.60
new Float:x,Float:y,Float:z,veh;
veh = GetPlayerVehicleID(playerid);
GetVehicleVelocity(veh,x,y,z);
if((x > MAX_SPEEDO || x < -MAX_SPEEDO) || (y > MAX_SPEEDO || y < -MAX_SPEEDO))
{
SetVehicleVelocity(veh,x*SLOW_FACTOR,y*SLOW_FACTOR,z);
}
}
if(skill >= 0 && skill <= 299)
{
#define MAX_SPEEDO 0.35
#define SLOW_FACTOR 0.55
new Float:x,Float:y,Float:z,veh;
veh = GetPlayerVehicleID(playerid);
GetVehicleVelocity(veh,x,y,z);
if((x > MAX_SPEEDO || x < -MAX_SPEEDO) || (y > MAX_SPEEDO || y < -MAX_SPEEDO))
{
SetVehicleVelocity(veh,x*SLOW_FACTOR,y*SLOW_FACTOR,z);
}
}
}
PHP:
else if(strcmp(cmd,"/slimit",true) == 0)
{
new tacha = GetPlayerVehicleID(playerid);
if(IsPlayerInAnyVehicle(playerid) && !IsAPlane(tacha) && !IsABoat(tacha))
{
new skill = PlayerInfo[playerid][pCarSkill];
if(skill == 1200)
{
switch (Slimit[playerid])
{
case 0:
{
Slimit[playerid] = 1;
return 1;
}
case 1:
{
Slimit[playerid] = 0;
return 1;
}
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "У вас низкий навык вождения!");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Вы не за рулём!");
return 1;
}
}
Автор: Я
Все проверенно работает можете ставить и радоваться сис-мой.
Ставим "Спасибо" под сообщением.
