#1 15-01-2008 02:06

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

CLEO-скрипты активации авто муниципальных служб.

2 CLEO скрипта.

В штате среди муниципалитета ездит одна полиция, данные скрипты должны исправить эту ситуацию.

Первый скрипт отвечает за спавн медицинского транспорта, изображающего усиленную деятельность на благо штата. By jayrocc aka Altman

2-й - за пожарников.

1-скрипт.

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------

0000: NOP

:AMBUL_5
thread 'AMBUL'
wait 0 

:AMBUL_12
wait 500 
if
Player.Defined($PLAYER_CHAR)
jf @AMBUL_12
if
0154: actor $PLAYER_ACTOR in_zone 'SF'
else_jump @AMBUL_13
Model.Load(276)
Model.Load(416)
038B: load_requested_models

:AMBUL_22
wait 200 
if and 
   Model.Available(416)
   Model.Available(276)
else_jump @AMBUL_22
20@ = 276
jump @AMBUL_26

:AMBUL_13
if
0154: actor $PLAYER_ACTOR in_zone 'LA'
else_jump @AMBUL_14
Model.Load(274)
Model.Load(416)
038B: load_requested_models

:AMBUL_23
wait 200 
if and 
   Model.Available(416)
   Model.Available(274)
else_jump @AMBUL_23
20@ = 274
jump @AMBUL_26

:AMBUL_14
if
0154: actor $PLAYER_ACTOR in_zone 'VE'
else_jump @AMBUL_15
Model.Load(275)
Model.Load(416)
038B: load_requested_models

:AMBUL_24
wait 200 
if and 
   Model.Available(416)
   Model.Available(275)
else_jump @AMBUL_24
20@ = 275
jump @AMBUL_26

:AMBUL_15
Model.Load(274)
Model.Load(416)
038B: load_requested_models

:AMBUL_25
wait 200 
if and 
   Model.Available(416)
   Model.Available(274)
else_jump @AMBUL_25
20@ = 274
jump @AMBUL_26

:AMBUL_26 
wait 1000 
0208: 1@ = random_float_in_ranges -90.0 90.0 
0208: 2@ = random_float_in_ranges -90.0 90.0 
04C4: store_coords_to 3@ 4@ 5@ from_actor $PLAYER_ACTOR with_offset 1@ 2@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 3@ 4@ 5@ 
9@ = Car.Create(416, 6@, 7@, 8@)
0129: 12@ = create_actor_pedtype 18 model 20@ in_car 9@ driverseat 
Car.SetDriverBehaviour(9@, FollowRoad)

:AMBUL_186
wait 400 
if or
82CA:   not car 9@ bounding_sphere_visible 
Car.Wrecked(9@)
else_jump @AMBUL_186 
Actor.RemoveReferences(20@)
Car.RemoveReferences(9@)
Model.Destroy(416)
Model.Destroy(274)
Model.Destroy(275)
Model.Destroy(276)
0209: 11@ = random_int 50000 300000
wait 11@ 
jump @AMBUL_12

2-й скрипт.

{$CLEO}

:EMERGACTIVATE
wait 0
thread 'EMERGACTIVATE3'
0000: NOP

:EMERGACTIVATE1
wait 100
if
Player.Defined($PLAYER_CHAR)
jf @EMERGACTIVATE1

:EMERGACTIVATECONTROL
wait 200
while true
gosub @EMERGACTIVATE2
gosub @EMERGACTIVATE3
gosub @EMERGACTIVATE4
end

:EMERGACTIVATE2
wait 200
if 
04A3:   $CURRENT_TOWN_NUMBER == 1 // $ == any 
else_jump @EMERGACTIVATE3
Model.Load(#LAFD1)
Model.Load(#FIRETRUK)
038B: load_requested_models 
wait 100 
if and
   Model.Available(#FIRETRUK)
   Model.Available(#LAFD1)
else_jump @EMERGACTIVATE2 
wait 7000 
0208: 1@ = random_float_in_ranges -90.0 90.0 
0208: 2@ = random_float_in_ranges -90.0 90.0 
04C4: store_coords_to 3@ 4@ 5@ from_actor $PLAYER_ACTOR with_offset 1@ 2@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 3@ 4@ 5@ 
9@ = Car.Create(#FIRETRUK, 6@, 7@, 8@)
0129: 10@ = create_actor_pedtype 18 model #LAFD1 in_car 9@ driverseat 
Car.SetDriverBehaviour(9@, FollowRoad)
00AE: set_car 9@ traffic_behaviour_to 2 
Car.SetSpeedInstantly(9@, 20.0)
Actor.RemoveReferences(10@)
gosub @CHECK_TOWN_1
return

:CHECK_TOWN_1
wait 200
if 
Car.Wrecked(9@)
jf @CHECK_TOWN_1
Model.Destroy(#FIRETRUK)
Model.Destroy(#LAFD1)
wait 100000
return

:EMERGACTIVATE3
wait 200
if 
04A3:   $CURRENT_TOWN_NUMBER == 2 // $ == any 
jf @EMERGACTIVATE4 
Model.Load(#SFFD1)
Model.Load(#FIRETRUK)
038B: load_requested_models 
wait 100 
if and
   Model.Available(#FIRETRUK)
   Model.Available(#SFFD1)
else_jump @EMERGACTIVATE3 
wait 7000 
0208: 1@ = random_float_in_ranges -90.0 90.0 
0208: 2@ = random_float_in_ranges -90.0 90.0 
04C4: store_coords_to 3@ 4@ 5@ from_actor $PLAYER_ACTOR with_offset 1@ 2@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 3@ 4@ 5@ 
9@ = Car.Create(#FIRETRUK, 6@, 7@, 8@)
0129: 10@ = create_actor_pedtype 18 model #SFFD1 in_car 9@ driverseat 
Car.SetDriverBehaviour(9@, FollowRoad)
00AE: set_car 9@ traffic_behaviour_to 2 
Car.SetSpeedInstantly(9@, 20.0)
Actor.RemoveReferences(10@)
gosub @CHECK_TOWN_2
return

:CHECK_TOWN_2
wait 500
if  
Car.Wrecked(9@)
jf @CHECK_TOWN_2
Model.Destroy(#FIRETRUK)
Model.Destroy(#SFFD1)
wait 100000
return

:EMERGACTIVATE4 
wait 200
if 
04A3:   $CURRENT_TOWN_NUMBER == 3 // $ == any 
else_jump @EMERGACTIVATE2 
Model.Load(#LVFD1)
Model.Load(#FIRETRUK)
038B: load_requested_models 
wait 100 
if and
   Model.Available(#FIRETRUK)
   Model.Available(#LVFD1)   
else_jump @EMERGACTIVATE4
wait 7000 
0208: 1@ = random_float_in_ranges -90.0 90.0 
0208: 2@ = random_float_in_ranges -90.0 90.0 
04C4: store_coords_to 3@ 4@ 5@ from_actor $PLAYER_ACTOR with_offset 1@ 2@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 3@ 4@ 5@ 
9@ = Car.Create(#FIRETRUK, 6@, 7@, 8@)
0129: 10@ = create_actor_pedtype 18 model #LVFD1 in_car 9@ driverseat 
Car.SetDriverBehaviour(9@, FollowRoad)
00AE: set_car 9@ traffic_behaviour_to 2 
Car.SetSpeedInstantly(9@, 20.0)
Actor.RemoveReferences(10@)
gosub @CHECK_TOWN_3
return

:CHECK_TOWN_3
wait 200
if 
Car.Wrecked(9@)
jf @CHECK_TOWN_3
Model.Destroy(#FIRETRUK)
Model.Destroy(#LVFD1)
wait 100000
return

Все тестировалось и должно работать.

КОД ПОЖАРНИКОВ ОТРЕДАКТИРОВАН

Last edited by Agenzvell (06-02-2008 04:16)

Offline

#2 15-01-2008 03:41

Capushon
Registered: 13-08-2006
Posts: 352
Website

Re: CLEO-скрипты активации авто муниципальных служб.

2Agenzvell:
Если в закольцованном цикле "EMERGACTIVATE5" машина 9@ взорвётся - скрипт зависнет, т.к. перед прочими проверками в этом цикле нужно проверять есть ли вообще такая машина и не повреждена ли она, не горит, не в воде и т.д. ...


Сначала ты надежда и гордость,
Потом о спину ломают аршин. (c)БГ

Offline

#3 15-01-2008 08:42

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

Ok, отредактировал.

Offline

#4 17-01-2008 13:18

jayrocc
From: MSK
Registered: 09-06-2007
Posts: 50

Re: CLEO-скрипты активации авто муниципальных служб.

хороший скрипт,
только там нет разделения по городам, т.е. во всех городах приезжают одни и те же медики пожарные с надписью LAFD. А было бы хорошо, чтобы была проверка на нахождения игрока в определенном городе и уже в зависимости от этого загрузка моделей отдельно для каждого города. Для разнообразия хорошо бы использовать 2 пожарные машины, чтобы они спаунились рэндомно - FIRELA и FIRETRUK

Last edited by jayrocc (17-01-2008 13:20)

Offline

#5 18-01-2008 02:42

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

Написал, обновил, но спавнить различные машины для меня проблема. smile
Спасает wait smile, но сейчас просто времени мало. sad

Last edited by Agenzvell (18-01-2008 11:56)

Offline

#6 18-01-2008 21:44

Capushon
Registered: 13-08-2006
Posts: 352
Website

Re: CLEO-скрипты активации авто муниципальных служб.

2Agenzvell:
А какая собстно проблема?
Проверяешь в каком городе Карл и от результата - спавнишь нужный транспорт ...


Сначала ты надежда и гордость,
Потом о спину ломают аршин. (c)БГ

Offline

#7 19-01-2008 03:03

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

Ну тогда распределитесь в каком городе какая машина будет ехать. wink

Offline

#8 23-01-2008 21:30

jayrocc
From: MSK
Registered: 09-06-2007
Posts: 50

Re: CLEO-скрипты активации авто муниципальных служб.

Да машины то пожарные могут рэндомные для каждого раза во всех городах ездить, а вот сами пожарные и медики должны как раз меняться в зависимости от города, тогда все круто будет.

PEDS.IDE

274, laemt1, laemt1, MEDIC, STAT_MEDIC - LA medic
275, lvemt1, lvemt1, MEDIC, STAT_MEDIC - LV Medic
276, sfemt1, sfemt1, MEDIC, STAT_MEDIC - SF Medic
277, lafd1, lafd1, FIREMAN, STAT_FIREMAN - LA Fireman
278, lvfd1, lvfd1, FIREMAN, STAT_FIREMAN - LV Fireman
279, sffd1, sffd1, FIREMAN, STAT_FIREMAN - SF Fireman

Last edited by jayrocc (23-01-2008 21:32)

Offline

#9 24-01-2008 01:00

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

Людей заменить легко, см. скрипт пожарников.

Насчет рэндома. Я же пишу, что слабо представляю себе эту возможность и не вижу иного выхода кроме как использовать противный wait

P.S: Скрипт с копами удален из-за своей неактуальности.

Offline

#10 24-01-2008 18:20

jayrocc
From: MSK
Registered: 09-06-2007
Posts: 50

Re: CLEO-скрипты активации авто муниципальных служб.

Мне кажется можно как-то сделать, чтобы не копировать один и тот же код несколько раз. Например:

7@ = 277
8@ = 278
9@ = 279
0209: 1@ = random_int 7@ 9@
....
0129: 10@ = create_actor_pedtype 18 model 1@ in_car 9@ driverseat

а перед этим грузишь все модели не по именам, а по номерам...

Last edited by jayrocc (24-01-2008 18:21)

Offline

#11 25-01-2008 01:15

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

xm, весьма неплохая идея. Когда отошлю гайды в Gameland посмотрю как работает.

Offline

#12 03-02-2008 21:34

jayrocc
From: MSK
Registered: 09-06-2007
Posts: 50

Re: CLEO-скрипты активации авто муниципальных служб.

я тут скрипт твой порубошил немного, в итоге все работает с разными водителями в разных городах, в за пределами городов я поставил дефолтно форму из Лос Анджелеса, т.к. не помню в чем они там реально ездят..
Задержку появления машин поставил плавающую, чтобы было интереснее...
Не хотелось бы останавливаться на достигнутом, хорошо бы еще присобачить возможность, чтобы некоторые машины появлялись на задании с включенными мигалками и игнорирующие светофоры, но не очень часто...
да и таймер нужно бы сделать внутренним @32, а не wait

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------

0000: NOP

:AMBUL_5
thread 'AMBUL'
wait 0 

:AMBUL_12
wait 500 
if
Player.Defined($PLAYER_CHAR)
jf @AMBUL_12
if
0154: actor $PLAYER_ACTOR in_zone 'SF'
else_jump @AMBUL_13
Model.Load(276)
Model.Load(416)
038B: load_requested_models

:AMBUL_22
wait 200 
if and 
   Model.Available(416)
   Model.Available(276)
else_jump @AMBUL_22
20@ = 276
jump @AMBUL_26

:AMBUL_13
if
0154: actor $PLAYER_ACTOR in_zone 'LA'
else_jump @AMBUL_14
Model.Load(274)
Model.Load(416)
038B: load_requested_models

:AMBUL_23
wait 200 
if and 
   Model.Available(416)
   Model.Available(274)
else_jump @AMBUL_23
20@ = 274
jump @AMBUL_26

:AMBUL_14
if
0154: actor $PLAYER_ACTOR in_zone 'VE'
else_jump @AMBUL_15
Model.Load(275)
Model.Load(416)
038B: load_requested_models

:AMBUL_24
wait 200 
if and 
   Model.Available(416)
   Model.Available(275)
else_jump @AMBUL_24
20@ = 275
jump @AMBUL_26

:AMBUL_15
Model.Load(274)
Model.Load(416)
038B: load_requested_models

:AMBUL_25
wait 200 
if and 
   Model.Available(416)
   Model.Available(274)
else_jump @AMBUL_25
20@ = 274
jump @AMBUL_26

:AMBUL_26 
wait 1000 
0208: 1@ = random_float_in_ranges -90.0 90.0 
0208: 2@ = random_float_in_ranges -90.0 90.0 
04C4: store_coords_to 3@ 4@ 5@ from_actor $PLAYER_ACTOR with_offset 1@ 2@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 3@ 4@ 5@ 
9@ = Car.Create(416, 6@, 7@, 8@)
0129: 12@ = create_actor_pedtype 18 model 20@ in_car 9@ driverseat 
Car.SetDriverBehaviour(9@, FollowRoad)

:AMBUL_186
wait 400 
if or
82CA:   not car 9@ bounding_sphere_visible 
Car.Wrecked(9@)
else_jump @AMBUL_186 
Actor.RemoveReferences(20@)
Car.RemoveReferences(9@)
Model.Destroy(416)
Model.Destroy(274)
Model.Destroy(275)
Model.Destroy(276)
0209: 11@ = random_int 50000 300000
wait 11@ 
jump @AMBUL_12

Last edited by jayrocc (03-02-2008 21:38)

Offline

#13 06-02-2008 09:48

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

Ok, заменил твоей версией.

Вот еще фичу придумал. В каждом городе люди останавливают такси, садятся в него и едут. То же самое теперь может происходить и на улицах SA.

{$CLEO}

:PASS1
wait 100
thread 'PASS_ACTIVE1'
0000: NOP

:PASS2
wait 100
if
Player.Defined($PLAYER_CHAR)
jf @PASS2
wait 5000
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 1@ closest_ped_to 2@
046C: 3@ = car 1@ driver
if or
Car.Model(1@) == #TAXI
Car.Model(1@) == #CABBIE
jf @PASS3
if and
3@ <= 0
80DF:   not actor 2@ driving
jf @PASS3 
05CA: AS_actor 2@ enter_car 1@ passenger_seat 0 10000 ms 

:PASS3
wait 100
Actor.RemoveReferences(2@)
Actor.RemoveReferences(3@)
Car.RemoveReferences(1@)
wait 5000
jump @PASS2

Offline

#14 06-02-2008 18:57

Capushon
Registered: 13-08-2006
Posts: 352
Website

Re: CLEO-скрипты активации авто муниципальных служб.

2Agenzvell:
Где проверки?

wait 5000
jump @PASS2

твои
Actor.RemoveReferences(2@)
Actor.RemoveReferences(3@)
Car.RemoveReferences(1@)

сработают только на значительном расстоянии от игрока, а ты без проверок, уже через 5 секунд отлавливаешь новых актёров для тех-же переменных. IMHO - опасно ...


Сначала ты надежда и гордость,
Потом о спину ломают аршин. (c)БГ

Offline

#15 07-02-2008 04:47

Agenzvell
From: Windows/system32
Registered: 28-08-2007
Posts: 109
Website

Re: CLEO-скрипты активации авто муниципальных служб.

хм, не понимаю... 
Какие проверки? На расстояние от игрока? или на дефинед машин и акторов? smile

Offline

#16 09-05-2008 11:51

XelioN
Registered: 09-05-2008
Posts: 2

Re: CLEO-скрипты активации авто муниципальных служб.

Кстати такси неработает!Вот!Но нормально работает муниципалки!Блин народ!А вы можете еще раздел CLEO создать и туда сами клео выкладывать!А то я как заведенный бегаю по сайтам!*Кстати если есть то ссылку дайти плз*

Offline

#17 10-05-2008 11:33

Centrino Duo
Registered: 08-05-2008
Posts: 99

Re: CLEO-скрипты активации авто муниципальных служб.

а че пажарники ездят как бешаные?

Offline

#18 11-05-2008 19:31

kostay scr
From: Беларусь
Registered: 25-05-2007
Posts: 176

Re: CLEO-скрипты активации авто муниципальных служб.

Поидее они пож&#225;рники или кто?


GTA VC - ЭТО НАСТОЯЩАЯ ГТА!

Offline

#19 11-05-2008 20:00

Centrino Duo
Registered: 08-05-2008
Posts: 99

Re: CLEO-скрипты активации авто муниципальных служб.

тупые уроды которые незнаю пдд.. да и с амбулами такаяже история..

Offline

#20 24-07-2008 08:51

Admiral
Registered: 26-07-2007
Posts: 35

Re: CLEO-скрипты активации авто муниципальных служб.

Мне не нравится то, что пожарные машины и амбулянсы споунятся везде, вытесняя другие тачки.:mad:
Кто мне подскажет, что нужно изменить в коде, чтоб FRETRUK строго споунился около пожарных департаментов, а AMBULAN около госпиталей.=)


Моды -   вот что украшает игру!

Offline

Board footer

Powered by FluxBB