16:35
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: Alcoholik  
[FS] Vehicle Bonus Return
OKStyle™Дата: Четверг, 13.10.2011, 09:02 | Сообщение # 1
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус:
Как многие могли заметить, в 0.3b убрали бонусы, которые получал игрок, садясь в тачку (такси - деньги, ментовские тачки - дробовик, спецназовские тачки - броня). Кому-то они мешали из-за неверной работы античита, но другим - нравились. Поскольку я отношусь ко второй группе, то решил набросать небольшой код для исправления этого недоразумения. Тем более в 0.3d хотят убрать выдачу и парашюта.

Code
#include <a_samp>
// Vehicle Bonus Return by O.K.Style™
public OnPlayerStateChange(playerid, newstate, oldstate)
{
     if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)
     {
      if(IsPlayerNPC(playerid)) return 1;
      new vehicleid = GetPlayerVehicleID(playerid);
      new vehiclemodel = GetVehicleModel(vehicleid);
      switch(vehiclemodel)
      {
                case 417, 425, 447, 460, 469, 476, 487, 488, 497, 511..513, 519, 520, 553, 548, 563, 577, 592, 593: GivePlayerWeapon(playerid, 46, 1);
                case 416:
          {
              if(GetPVarInt(playerid, "BonusVeh") == vehicleid) return 1;
              new Float:hp;
              GetPlayerHealth(playerid, hp);
              if(hp + 20.0 > 100.0) SetPlayerHealth(playerid, 100.0);
              else if(hp + 20.0 <= 100.0) SetPlayerHealth(playerid, 20.0 + hp);
          }
          case 420, 438: GivePlayerMoney(playerid, 12);
          case 427, 601: SetPlayerArmour(playerid, 100.0);
          case 457: GivePlayerWeapon(playerid, 2, 1);
          case 596..599: GivePlayerWeapon(playerid, 25, 5);
          default: return 1;
      }
      SetPVarInt(playerid, "BonusVeh", vehicleid); // чтобы нельзя было несколько раз подряд получать один и тот же бонус
     }
     return 1;
}
public OnVehicleSpawn(vehicleid)
{
     for(new i, j = GetMaxPlayers(); i != j; i++)
     {
      if(!IsPlayerConnected(i)) continue;
      if(IsPlayerNPC(i)) continue;
      if(GetPVarInt(i, "BonusVeh") != vehicleid) continue;
      SetPVarInt(i, "BonusVeh", -1); // после каждого респауна тачки бонусы восстанавливаются и их снова можно взять
     }
     return 1;
}


Если я что-то пропустил - говорите, обновлю пост.



Да потому что когда человек делает на заказ он не старается. © kRiSyo
Кланяимся нофаму королю анимаций =))))))) © Manusya
В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR


Сообщение отредактировал OKStyle™ - Четверг, 13.10.2011, 13:53
AndrejsДата: Четверг, 13.10.2011, 10:34 | Сообщение # 2
Группа: I'm V.I.P.
Сообщений: 1801
Награды: 37
Город: Tallinn
Репутация: 2282
Замечания: 20%
Статус:
При коннекте или дисконнекте ещё надо обнулять PVar)



OKStyle™Дата: Четверг, 13.10.2011, 10:45 | Сообщение # 3
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус:
Не нужно вводить людей в заблуждение. PVar'ы удаляются после выхода игрока с сервера. Обнулять ничего не нужно.


Да потому что когда человек делает на заказ он не старается. © kRiSyo
Кланяимся нофаму королю анимаций =))))))) © Manusya
В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR


Сообщение отредактировал OKStyle™ - Четверг, 13.10.2011, 13:54
AndroidДата: Четверг, 13.10.2011, 14:01 | Сообщение # 4
Группа: I'm V.I.P.
Сообщений: 1066
Награды: 11
Город: Рязань
Репутация: 571
Замечания: 0%
Статус:
Да помню такие бонусы) Когда еще играл было здорово с ними.


Играй там где лучше Server Gta San Andreas: Multiplayer 0.3.7



Без труда талант - это фейерверк: на мгновение ослепляет, а потом ничего не остается
BURN_aka_infernusДата: Среда, 19.10.2011, 16:19 | Сообщение # 5
Новенький
Группа: Пользователи
Сообщений: 33
Награды: 1
Город: localhost
Репутация: 36
Замечания: 0%
Статус:
Quote (Andrejs)
При коннекте или дисконнекте ещё надо обнулять PVar)

они автоматически обнуляются, ты сам посмотри, ради интереса...



Неполный список работ:
[FS]Benzin
[FS]Pulsator
[FS]Reklama
[FS]CarPaint
[FS]FakeChat
[FS]NeonFixed
[FS]ShowStats
[FS]DropMoney
[FS]AdminScript
[FS]Airport Gate's
[FS]PickupCreator
[FS]RegisterSystem
[FS]StroboskopFixed
[FS]Auto-Menu Fixed
[FS]PlayerClassCreator
[GM] R.U.S.H [ TDM ]
[GM] R.U.S.H [ TDM ]
[GM]R.U.S.H [DM]
PraДата: Среда, 19.10.2011, 17:25 | Сообщение # 6
Уверенный в себе
Группа: Продвинутые
Сообщений: 216
Награды: 9
Город: Северная Столица
Репутация: 211
Замечания: 100%
Статус:
Quote (OKStyle™)
Не нужно вводить людей в заблуждение. PVar'ы удаляются после выхода игрока с сервера. Обнулять ничего не нужно.

Quote
Note: Variables aren't reset until after OnPlayerDisconnect is called, so the values are still accessible in OnPlayerDisconnect.

ok-ok.

ApecДата: Среда, 19.10.2011, 19:34 | Сообщение # 7
Группа: Mappers
Сообщений: 1307
Награды: 29
Город: Минск
Репутация: 1922
Замечания: 0%
Статус:
Laie_98


OKStyle™Дата: Среда, 19.10.2011, 20:47 | Сообщение # 8
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус:
Quote (Pra)
ok-ok

Они работают в OnPlayerDisconnect, а удаляются ПОСЛЕ выхода игрока с сервера.



Да потому что когда человек делает на заказ он не старается. © kRiSyo
Кланяимся нофаму королю анимаций =))))))) © Manusya
В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua