Главная » Статьи » GTA SA » Скрипты
"Реальный" бензобак v. 2.0

Вот его возможности:
1. Каждый транспорт в игре будет иметь бензобак объемом 100 литров (кроме велосипедов, естественно).
2. Есть заправки (помечены машинкой). Полный бак бензина обойдется вам в 500$. Нужно просто вплотную подъехать к одной из бензокалонк (работают не все! так что ишите ту, что работает).
3. Если у вас кончился бензин, скорость машины будет постепенно снижаться (при этом заметны рывки, как и в реальной жизни), а потом движок глохнет. Это даст возможность самолетам плавно приземлиться, а не упасть камнем.
4. Количество бензина запоминается в последних 10 автомобилях.
5. Бензин тратится при условии, что вы давите на газ.
6. Ещё бензин тратится, если вы просто сидите в машине и никуда не Едите (двигатель ведь работает!). В этом случае расход бензина намного меньше, чем при езде.
7. Расход бензина зависит также от скорости движения авто, чем больше скорость, тем меньше расход.
Приятной езды, полетов ...и чего там ещё...!!!

Компилятор Sanny Builder.


:BENZIN
thread 'BENZIN'
var
$MyCar: array 10 of integer
$BENZIN: array 10 of integer
end
1@ = 0
4@ = 0

:BENZIN_2
wait 0
if
Actor.Driving($PLAYER_ACTOR)
jf @BENZIN_2
if
not Actor.InCar($PLAYER_ACTOR, $MyCar[$i])
jf @BENZIN_4
jump @BENZIN_5

:BENZIN_3
wait 0
inc(4@)
if and
4@ > 1
not 4@ == 10
jf @BENZIN_7
008B: $i = 4@
jump @BENZIN_35

:BENZIN_35
03C0: $MyCar[$i] = actor $PLAYER_ACTOR car
if
8119: not car $MyCar[$i] wrecked
jf @BENZIN_8
if 5
8137: NOT car $MyCar[$i] id == #BMX
8137: NOT car $MyCar[$i] id == #MTBIKE
8137: NOT car $MyCar[$i] id == #BIKE
8137: NOT car $MyCar[$i] id == #STREAKC
8137: NOT car $MyCar[$i] id == #STREAK
8137: NOT car $MyCar[$i] id == #FREIGHT
jf @BENZIN_2
1@ = 1
2@ = 200
3@ = 10001
0209: $BENZIN[$i] = random_int 2@ 3@
jump @BENZIN_4

:BENZIN_4
wait 100
if 5
8100: not actor $PLAYER_ACTOR near_point_in_car 2205.4712 2470.1516 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -1684.6312 407.8672 7.1797 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2205.3982 2480.5466 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2199.3621 2480.4089 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -1671.7809 414.6198 7.1797 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2199.1409 2469.9216 9.8203 radius 5.0 5.0 5.0 sphere 1
jf @BENZIN_14
if 5
8100: not actor $PLAYER_ACTOR near_point_in_car 2640.0896 1103.14 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2640.0896 1103.14 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2645.2876 1109.4246 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2639.866 1109.4246 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2634.428 1109.1266 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2108.9958 923.1729 9.8203 radius 5.0 5.0 5.0 sphere 1
jf @BENZIN_14
if 5
8100: not actor $PLAYER_ACTOR near_point_in_car 2634.5811 1103.4642 10.813 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2115.1096 923.4273 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2120.8706 923.607 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2120.7622 917.1142 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2114.8164 917.1771 9.8203 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 2108.8584 916.7469 9.8203 radius 5.0 5.0 5.0 sphere 1
jf @BENZIN_14
if 5
8100: not actor $PLAYER_ACTOR near_point_in_car 384.9267 2602.614 15.4844 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 391.552 2569.1575 15.3672 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -342.7661 2678.0959 63.5189 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -927.9468 2664.6614 41.2364 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -1328.4524 2677.6138 50.0625 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 70.0441 1217.7223 18.8117 radius 5.0 5.0 5.0 sphere 1
jf @BENZIN_14
if 5
8100: not actor $PLAYER_ACTOR near_point_in_car -2407.6646 976.3728 45.2969 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -2029.2676 156.5764 28.8359 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -1605.3003 -2713.7961 48.5335 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car -87.203 -1163.811 2.2313 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 1939.4865 -1771.0599 13.3828 radius 5.0 5.0 5.0 sphere 1
8100: not actor $PLAYER_ACTOR near_point_in_car 1380.7777 462.3883 20.1031 radius 5.0 5.0 5.0 sphere 1
jf @BENZIN_14
if
not $BENZIN[$i] <= 15
jf @BENZIN_13
if or
00E1: key_pressed 0 16
00E1: key_pressed 0 14
jf @BENZIN_10
$PACXOD = 8
5@ = 0.0
02E3: 6@ = car $MyCar[$i] speed
jump @BENZIN_9

:BENZIN_5
wait 5
$i = 0
REPEAT
if
Actor.Driving($PLAYER_ACTOR)
jf @BENZIN_2
inc($i)
if
$i <= 11
jf @BENZIN_3
UNTIL Actor.InCar($PLAYER_ACTOR, $MyCar[$i])
jump @BENZIN_4

:BENZIN_7
wait 0
$i = 1
if
4@ == 10
jf @BENZIN_35
4@ = 1
jump @BENZIN_35

:BENZIN_8
wait 0
0151: remove_status_text $BENZIN2
Car.RemoveReferences($MyCar[$i])
jump @BENZIN_2

:BENZIN_9
wait 0
if
8119: not car $MyCar[$i] wrecked
jf @BENZIN_8
if
Actor.Driving($PLAYER_ACTOR)
jf @BENZIN_2
if
not 6@ == 0.0
jf @BENZIN_10
5@ += 5.0
$PACXOD -= 1
if 1
0025: 6@ > 5@
not $PACXOD == 1
jf @BENZIN_11
jump @BENZIN_9

:BENZIN_10
wait 1000
$PACXOD = 1
jump @BENZIN_11

:BENZIN_11
wait 200
if
8119: not car $MyCar[$i] wrecked
jf @BENZIN_8
if
Actor.Driving($PLAYER_ACTOR)
jf @BENZIN_12
if
Actor.InCar($PLAYER_ACTOR, $MyCar[$i])
jf @BENZIN_5
0060: $BENZIN[$i] -= $PACXOD
008B: $BENZIN2 = $BENZIN[$i]
$BENZIN2 /= 100
04F7: status_text $BENZIN2 0 line 2 'SPEEDO'
jump @BENZIN_2

:BENZIN_12
wait 50
if
8119: not car $MyCar[$i] wrecked
jf @BENZIN_8
02D4: unknown_turn_off_car $MyCar[$i] engine
if
not Actor.Driving($PLAYER_ACTOR)
jf @BENZIN_12
0151: remove_status_text $BENZIN2
jump @BENZIN_2

:BENZIN_13
wait 0
if
8119: not car $MyCar[$i] wrecked
jf @BENZIN_8
if
6@ >= 2.0
jf @BENZIN_12
wait 350
02E3: 6@ = car $MyCar[$i] speed
6@ -= 1.0
Car.SetMaxSpeed($MyCar[$i], 6@)
04BA: set_car $MyCar[$i] speed_instantly 6@
jump @BENZIN_13

:BENZIN_14
wait 10
if 1
not $BENZIN[$i] >= 10000
Player.Money($PLAYER_CHAR) > 1
jf @BENZIN_2
Player.Money($PLAYER_CHAR) += -2
$BENZIN[$i] += 40
$PACXOD -= 1
jump @BENZIN_11

Автор StErZaR (c) !!!

Скрит версии 1.0 и 2.0 были опубликованы мной (там мой старый ник) на сайте по скриптингу GTA.

Категория: Скрипты | Добавил: StErZaR (30.08.2009) | Просмотров: 2951