Форум Pawn.Wiki - Воплоти мечту в реальность!: Анти-Крэш вылетов - Форум Pawn.Wiki - Воплоти мечту в реальность!

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Scr ][ All ]
Анти-Крэш вылетов
Оценка: -----

#1
Пользователь офлайн   Cris_Pro 

  • Хочу создать серверок..
  • Вставить ник
  • Раскрыть информацию
№1 Вариант (Тупо обламывает Крашера)
public OnVehicleMod(playerid,vehicleid,componentid)
{
RemoveVehicleComponent(vehicleid,componentid);
return 0;
}  


№2. Вариант кикаем.
public OnVehicleMod(playerid,vehicleid, componentid){if(GetPlayerInterior(playerid) == 0 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER){Kick(playerid);}return 1;}  


Причина вылетов была:

Вы заходите на сервер..
садитесь в 2ух дверную тачку, например инфернус ( от него больше вылетов)
и приватный соб создает левые Спойлеры, юбки, бампера и т.д ( ну многие знают что они не ставятся ( ошибаетесь ) их тупо не видно!
и просто остается воспользоватся тп к игроку и хватит, что бы весь сервер вылетел.


===========================================

static const MaxPassengers[27] = 
{
    0x10331113, 0x11311131, 0x11331313, 0x80133301,
    0x1381F110, 0x10311103, 0x10001F10, 0x11113311,
    0x13113311, 0x31101100, 0x30001301, 0x11031311,
    0x11111331, 0x10013111, 0x01131100, 0x11111110,
    0x11100031, 0x11130221, 0x33113311, 0x11111101,
    0x33101133, 0x101001F0, 0x03133111, 0xFF11113F,
    0x13330111, 0xFF131111, 0x0000FF3F
}; // HEX смещения макс. кол-ва пассажиров на основной транспорт  


OnPlayerStateChange:
if(newstate == PLAYER_STATE_DRIVER)
{
    new model = GetPlayerVehicleSeat(playerid);
    if(model != 128)
    {
    if(!model)
    {
        model = GetVehicleModel(GetPlayerVehicleID(playerid));
        if(!(400 <= model <= 611) || MaxPassengers[model - 400 >>> 3] >>> ((model - 400 & 7) << 2) & 0xF == 15) return Kick(playerid);
    }
    else return Kick(playerid);
    }
}
else if(newstate == PLAYER_STATE_PASSENGER)
{
    new model = GetVehicleModel(GetPlayerVehicleID(playerid));
    if(400 <= model <= 611)
    {
    model -= 400;
    new seat = GetPlayerVehicleSeat(playerid);
    if(seat != 128)
    {
        model = (MaxPassengers[model >>> 3] >>> ((model & 7) << 2)) & 0xF;
        if(!model || model == 15) return Kick(playerid);
        else if(!(0 < seat <= model)) return Kick(playerid);
    }
    else return Kick(playerid);
    }
}
    else return Kick(playerid);
    }
}  

Описания этого краша:
Этот краш так же создает вылеты сервера ( Но только другим способом )
Пример использования этого краша..
Чувак подсаживается к вам в транспорт и сажает вас на 5 место...
происходит вылет...


Теперь на вашем сервере не будет вылетов...
Автор решения вылетов с Тюнингом: AnGeL
Автор решения вылетов с Cажанием на другое место: BJIADOKC

Если я создала тему не в том разделе - перенесите.
Если уже было - Удалите.
Удачи!
Ps: если что то забыла пишите.

Помог? Ставь + в репутацию. Вам не сложно, а мне приятно. =)

Мои Контакты :
Skype : Kristina.maksimovna
vk.com id142466421
3

#2
Пользователь офлайн   DeM 

  • Пользователь
  • Вставить ник
  • Раскрыть информацию
ща можно сделать бампера от султана и поставить на елегию?

Сообщение отредактировал DeM: 31 января 2012 - 11:37

0

#3
Пользователь офлайн   Lacoste 

  • Новичок
  • Вставить ник
  • Раскрыть информацию
В 0.3d уже исправили баг этот.
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика