Главная Форум Файлы
Справка Сообщество Календарь Сообщения за день Поиск

Вернуться   Mafia-Game Forum > Mafia: The City Of Lost Heaven > Скриптинг
Расширенный поиск

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.10.2020, 22:16   #221
KlassenAS вне форума KlassenAS
Аватар для KlassenAS
Senior Member
Сообщений: 341
Репутация: 287
KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough
Enforcer
Информация о репутации (KlassenAS)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
KlassenAS / 287
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Написал процедуру, чтобы скрипт помнил последние девять тачек, в которых побывал Томми и радиостанции в них.
Также, теперь в каждой тачке, которая не первая, радиостанция или выкл задаются рандомно.

Перезалил архивы, обновил ссылки для 2.0 и 2.1.
Сам скрипт, если кому интересно подобное чтение:

Развернуть для просмотра

Код:
//Radio Script Ver. 2.1 26-10-2020 By KlassenAS For Abradox
//Четыре радиостанции, более 20 треков на каждой
//Первая радиостанция с родной музыкой Mafia
//Радиостанции переключаются. Также радио можно выключить.
//При старте на каждой радиостанции случайным образом
//начинает играть один из треков.
//По окончании трека, следующий выбирается так же, случайным образом.

Dim_Act 13
Dim_Flt 31
GetActivePlayer 0
FindActor 1
FindActor 2
FindActor 3
FindActor 4
FindActor 5
FindActor 6
FindActor 7
FindActor 8
FindActor 9
FindActor 10
FindActor 11
FindActor 12
//Акторы 1-9 - для запоминания машин
//Актор 10 - для текущей машины
//Актор 11 - для прошлой машины
//Актор 12 - данный скрипт

//Удалить для использования в scene2.bin,
//Оставить для использования с патчем от GOLOD55
//Начало удаления
Human_GetProperty 0,4,Energy
If Flt[4]=0,-1,dan_on
Act_SetState 100,Off
Label dan_on
//Конец удаления

CityMusic_Off

Let Flt[0]=0 //Поток 00
Let Flt[1]=0 //Поток 01
Let Flt[2]=0 //Поток 02
Let Flt[3]=0 //Поток 03
Let Flt[4]=0 //Логика
Let Flt[5]=0 //Нажатие клавиш вперёд1 и назад1
Let Flt[6]=0 //Последний активный поток
Let Flt[7]=0 //Сиденье/Время с начала игры/текущее время потока/
Let Flt[8]=0 //Прошлое время с начала игры
//Номер радиостанции
Let Flt[9]=-1
Let Flt[10]=-1 //Рандом для radio/разница во времени игры
Let Flt[11]=-1 //Трек на radio00
Let Flt[12]=-1 //Трек на radio01
Let Flt[13]=-1 //Трек на radio02
Let Flt[14]=-1 //Трек на radio03
Let Flt[15]=0 //Прошлое время потока 0
Let Flt[16]=0 //Прошлое время потока 1
Let Flt[17]=0 //Прошлое время потока 2
Let Flt[18]=0 //Прошлое время потока 3
Let Flt[19]=0 //Для перехода на следующий трек
Let Flt[20]=0 //Для перехода к меткам треков
//Номера радиостанций в запомненных тачках 1-9:
Let Flt[21]=-1
Let Flt[22]=-1
Let Flt[23]=-1
Let Flt[24]=-1
Let Flt[25]=-1
Let Flt[26]=-1
Let Flt[27]=-1
Let Flt[28]=-1
Let Flt[29]=-1
//Логика запоминания тачек:
Let Flt[30]=0

Rnd 11,23
Rnd 12,24
Rnd 13,24
Rnd 14,27

GoTo CHECK



Label RADIOCREATE

Label RADIO00CREATE
CommandBlock 1
Let Flt[20]=Flt[11]+100000
GoTo Flt[20]

	Label 100000
	Stream_Create 0,"sounds\03_music.wav"
	GoTo RADIO00CREATED

	Label 100001
	Stream_Create 0,"sounds\13b_music.wav"
	GoTo RADIO00CREATED

	Label 100002
	Stream_Create 0,"sounds\14_Coucou.wav"
	GoTo RADIO00CREATED

	Label 100003
	Stream_Create 0,"sounds\18_radio.wav"
	GoTo RADIO00CREATED

	Label 100004
	Stream_Create 0,"sounds\s_music1.wav"
	GoTo RADIO00CREATED

	Label 100005
	Stream_Create 0,"sounds\s_music3.wav"
	GoTo RADIO00CREATED

	Label 100006
	Stream_Create 0,"sounds\s_music5.wav"
	GoTo RADIO00CREATED

	Label 100007
	Stream_Create 0,"sounds\music\city_music_01.ogg"
	GoTo RADIO00CREATED

	Label 100008
	Stream_Create 0,"sounds\music\city_music_02.ogg"
	GoTo RADIO00CREATED

	Label 100009
	Stream_Create 0,"sounds\music\city_music_03.ogg"
	GoTo RADIO00CREATED

	Label 100010
	Stream_Create 0,"sounds\music\city_music_04.ogg"
	GoTo RADIO00CREATED

	Label 100011
	Stream_Create 0,"sounds\music\city_music_05.ogg"
	GoTo RADIO00CREATED

	Label 100012
	Stream_Create 0,"sounds\music\city_music_06.ogg"
	GoTo RADIO00CREATED

	Label 100013
	Stream_Create 0,"sounds\music\city_music_07.ogg"
	GoTo RADIO00CREATED

	Label 100014
	Stream_Create 0,"sounds\music\city_music_08.ogg"
	GoTo RADIO00CREATED

	Label 100015
	Stream_Create 0,"sounds\music\city_music_09.ogg"
	GoTo RADIO00CREATED

	Label 100016
	Stream_Create 0,"sounds\music\city_music_10.ogg"
	GoTo RADIO00CREATED

	Label 100017
	Stream_Create 0,"sounds\music\city_music_11.ogg"
	GoTo RADIO00CREATED

	Label 100018
	Stream_Create 0,"sounds\music\city_music_12.ogg"
	GoTo RADIO00CREATED

	Label 100019
	Stream_Create 0,"sounds\music\city_music_13.ogg"
	GoTo RADIO00CREATED

	Label 100020
	Stream_Create 0,"sounds\music\city_music_15.ogg"
	GoTo RADIO00CREATED

	Label 100021
	Stream_Create 0,"sounds\music\12_scene music.ogg"
	GoTo RADIO00CREATED

	Label 100022
	Stream_Create 0,"sounds\music\mise02-ulicka.ogg"
	GoTo RADIO00CREATED

Label RADIO00CREATED
Stream_SetPos 0,15
CommandBlock 0
If Flt[9]=0,-1,ISREPLAY0
Let Flt[6]=Flt[0]
Label ISREPLAY0
If Flt[19]=1,REPLAY0,-1


Label RADIO01CREATE
CommandBlock 1
Let Flt[20]=Flt[12]+100100
GoTo Flt[20]

	Label 100100
	Stream_Create 1,"radio\radio01-00.ogg"
	GoTo RADIO01CREATED

	Label 100101
	Stream_Create 1,"radio\radio01-01.ogg"
	GoTo RADIO01CREATED

	Label 100102
	Stream_Create 1,"radio\radio01-02.ogg"
	GoTo RADIO01CREATED	

	Label 100103
	Stream_Create 1,"radio\radio01-03.ogg"
	GoTo RADIO01CREATED

	Label 100104
	Stream_Create 1,"radio\radio01-04.ogg"
	GoTo RADIO01CREATED

	Label 100105
	Stream_Create 1,"radio\radio01-05.ogg"
	GoTo RADIO01CREATED

	Label 100106
	Stream_Create 1,"radio\radio01-06.ogg"
	GoTo RADIO01CREATED

	Label 100107
	Stream_Create 1,"radio\radio01-07.ogg"
	GoTo RADIO01CREATED

	Label 100108
	Stream_Create 1,"radio\radio01-08.ogg"
	GoTo RADIO01CREATED
	
	Label 100109
	Stream_Create 1,"radio\radio01-09.ogg"
	GoTo RADIO01CREATED

	Label 100110
	Stream_Create 1,"radio\radio01-10.ogg"
	GoTo RADIO01CREATED

	Label 100111
	Stream_Create 1,"radio\radio01-11.ogg"
	GoTo RADIO01CREATED

	Label 100112
	Stream_Create 1,"radio\radio01-12.ogg"
	GoTo RADIO01CREATED	
	
	Label 100113
	Stream_Create 1,"radio\radio01-13.ogg"
	GoTo RADIO01CREATED

	Label 100114
	Stream_Create 1,"radio\radio01-14.ogg"
	GoTo RADIO01CREATED

	Label 100115
	Stream_Create 1,"radio\radio01-15.ogg"
	GoTo RADIO01CREATED

	Label 100116
	Stream_Create 1,"radio\radio01-16.ogg"
	GoTo RADIO01CREATED	
	
	Label 100117
	Stream_Create 1,"radio\radio01-17.ogg"
	GoTo RADIO01CREATED

	Label 100118
	Stream_Create 1,"radio\radio01-18.ogg"
	GoTo RADIO01CREATED

	Label 100119
	Stream_Create 1,"radio\radio01-19.ogg"
	GoTo RADIO01CREATED

	Label 100120
	Stream_Create 1,"radio\radio01-20.ogg"
	GoTo RADIO01CREATED	
	
	Label 100121
	Stream_Create 1,"radio\radio01-21.ogg"
	GoTo RADIO01CREATED

	Label 100122
	Stream_Create 1,"radio\radio01-22.ogg"
	GoTo RADIO01CREATED

	Label 100123
	Stream_Create 1,"radio\radio01-23.ogg"
	GoTo RADIO01CREATED

Label RADIO01CREATED
Stream_SetPos 1,16
CommandBlock 0
If Flt[9]=1,-1,ISREPLAY1
Let Flt[6]=Flt[1]
Label ISREPLAY1
If Flt[19]=1,REPLAY1,-1


Label RADIO02CREATE
CommandBlock 1
Let Flt[20]=Flt[13]+100200
GoTo Flt[20]

	Label 100200
	Stream_Create 2,"radio\radio02-00.ogg"
	GoTo RADIO02CREATED

	Label 100201
	Stream_Create 2,"radio\radio02-01.ogg"
	GoTo RADIO02CREATED

	Label 100202
	Stream_Create 2,"radio\radio02-02.ogg"
	GoTo RADIO02CREATED

	Label 100203
	Stream_Create 2,"radio\radio02-03.ogg"
	GoTo RADIO02CREATED

	Label 100204
	Stream_Create 2,"radio\radio02-04.ogg"
	GoTo RADIO02CREATED

	Label 100205
	Stream_Create 2,"radio\radio02-05.ogg"
	GoTo RADIO02CREATED

	Label 100206
	Stream_Create 2,"radio\radio02-06.ogg"
	GoTo RADIO02CREATED

	Label 100207
	Stream_Create 2,"radio\radio02-07.ogg"
	GoTo RADIO02CREATED

	Label 100208
	Stream_Create 2,"radio\radio02-08.ogg"
	GoTo RADIO02CREATED

	Label 100209
	Stream_Create 2,"radio\radio02-09.ogg"
	GoTo RADIO02CREATED

	Label 100210
	Stream_Create 2,"radio\radio02-10.ogg"
	GoTo RADIO02CREATED

	Label 100211
	Stream_Create 2,"radio\radio02-11.ogg"
	GoTo RADIO02CREATED

	Label 100212
	Stream_Create 2,"radio\radio02-12.ogg"
	GoTo RADIO02CREATED

	Label 100213
	Stream_Create 2,"radio\radio02-13.ogg"
	GoTo RADIO02CREATED

	Label 100214
	Stream_Create 2,"radio\radio02-14.ogg"
	GoTo RADIO02CREATED

	Label 100215
	Stream_Create 2,"radio\radio02-15.ogg"
	GoTo RADIO02CREATED

	Label 100216
	Stream_Create 2,"radio\radio02-16.ogg"
	GoTo RADIO02CREATED

	Label 100217
	Stream_Create 2,"radio\radio02-17.ogg"
	GoTo RADIO02CREATED

	Label 100218
	Stream_Create 2,"radio\radio02-18.ogg"
	GoTo RADIO02CREATED

	Label 100219
	Stream_Create 2,"radio\radio02-19.ogg"
	GoTo RADIO02CREATED

	Label 100220
	Stream_Create 2,"radio\radio02-20.ogg"
	GoTo RADIO02CREATED

	Label 100221
	Stream_Create 2,"radio\radio02-21.ogg"
	GoTo RADIO02CREATED

	Label 100222
	Stream_Create 2,"radio\radio02-22.ogg"
	GoTo RADIO02CREATED

	Label 100223
	Stream_Create 2,"radio\radio02-23.ogg"
	GoTo RADIO02CREATED

Label RADIO02CREATED
Stream_SetPos 2,17
CommandBlock 0
If Flt[9]=2,-1,ISREPLAY2
Let Flt[6]=Flt[2]
Label ISREPLAY2
If Flt[19]=1,REPLAY2,-1


Label RADIO03CREATE
CommandBlock 1
Let Flt[20]=Flt[14]+100300
GoTo Flt[20]

	Label 100300
	Stream_Create 3,"radio\radio03-00.mp3"
	GoTo RADIO03CREATED

	Label 100301
	Stream_Create 3,"radio\radio03-01.mp3"
	GoTo RADIO03CREATED

	Label 100302
	Stream_Create 3,"radio\radio03-02.mp3"
	GoTo RADIO03CREATED

	Label 100303
	Stream_Create 3,"radio\radio03-03.mp3"
	GoTo RADIO03CREATED

	Label 100304
	Stream_Create 3,"radio\radio03-04.mp3"
	GoTo RADIO03CREATED

	Label 100305
	Stream_Create 3,"radio\radio03-05.mp3"
	GoTo RADIO03CREATED

	Label 100306
	Stream_Create 3,"radio\radio03-06.mp3"
	GoTo RADIO03CREATED

	Label 100307
	Stream_Create 3,"radio\radio03-07.mp3"
	GoTo RADIO03CREATED

	Label 100308
	Stream_Create 3,"radio\radio03-08.mp3"
	GoTo RADIO03CREATED

	Label 100309
	Stream_Create 3,"radio\radio03-09.mp3"
	GoTo RADIO03CREATED

	Label 100310
	Stream_Create 3,"radio\radio03-10.mp3"
	GoTo RADIO03CREATED

	Label 100311
	Stream_Create 3,"radio\radio03-11.mp3"
	GoTo RADIO03CREATED

	Label 100312
	Stream_Create 3,"radio\radio03-12.mp3"
	GoTo RADIO03CREATED

	Label 100313
	Stream_Create 3,"radio\radio03-13.mp3"
	GoTo RADIO03CREATED

	Label 100314
	Stream_Create 3,"radio\radio03-14.mp3"
	GoTo RADIO03CREATED

	Label 100315
	Stream_Create 3,"radio\radio03-15.mp3"
	GoTo RADIO03CREATED

	Label 100316
	Stream_Create 3,"radio\radio03-16.mp3"
	GoTo RADIO03CREATED

	Label 100317
	Stream_Create 3,"radio\radio03-17.mp3"
	GoTo RADIO03CREATED

	Label 100318
	Stream_Create 3,"radio\radio03-18.mp3"
	GoTo RADIO03CREATED

	Label 100319
	Stream_Create 3,"radio\radio03-19.mp3"
	GoTo RADIO03CREATED
	
	Label 100320
	Stream_Create 3,"radio\radio03-20.mp3"
	GoTo RADIO03CREATED

	Label 100321
	Stream_Create 3,"radio\radio03-21.mp3"
	GoTo RADIO03CREATED

	Label 100322
	Stream_Create 3,"radio\radio03-22.mp3"
	GoTo RADIO03CREATED

	Label 100323
	Stream_Create 3,"radio\radio03-23.mp3"
	GoTo RADIO03CREATED

	Label 100324
	Stream_Create 3,"radio\radio03-24.mp3"
	GoTo RADIO03CREATED

	Label 100325
	Stream_Create 3,"radio\radio03-25.mp3"
	GoTo RADIO03CREATED

	Label 100326
	Stream_Create 3,"radio\radio03-26.mp3"
	GoTo RADIO03CREATED

Label RADIO03CREATED
Stream_SetPos 3,18
CommandBlock 0
If Flt[9]=3,-1,ISREPLAY3
Let Flt[6]=Flt[3]
Label ISREPLAY3
If Flt[19]=1,REPLAY3,-1

Return


Label CHECK
CommandBlock 1
GoSub POSITION
CommandBlock 0
Human_GetSeatIdx 0,7
If Flt[7]=-1,CAR_OUT,CAR_IN



Label CAR_IN
	Ctrl_Read 5,JUMP1
	If Flt[5]=0,-1,RADIO_UP
	Label READ_DOWN
	Ctrl_Read 5,CROUCH1
	If Flt[5]=0,-1,RADIO_DOWN
Label CHECKPLAY

If Flt[4]=0,-,CHECK
//CityMusic_Off
Wait 500
GoSub RADIO_READ
If Flt[9]>-1,-1,RADIO_OFF
GoSub RADIOCREATE
GoSub RADIO_PLAY
Let Flt[20]=Flt[9]+2000
GoSub Flt[20]
Label RADIO_OFF
If Flt[9]=-1,-1,ADIRDA
Console_AddText 90000000
Label ADIRDA
Let Flt[4]=1
GoTo CHECK



Label CAR_OUT
If Flt[4]=1,-1,CHECK
CommandBlock 1
GoSub RADIO_DESTROY
Let Flt[4]=0
GoSub RADIO_SAVE
CommandBlock 0
GoTo CHECK



Label RADIO_UP
CommandBlock 1
If Flt[9]=-1,-1,CHANGEUP
GoSub RADIOCREATE
GoSub RADIO_PLAY
Label CHANGEUP
Stream_Fadevol 6,1,0,0
Let Flt[9]=Flt[9]+1
If Flt[9]>3,-1,CHANGEDUP
Let Flt[9]=-1
Label CHANGEDUP
Let Flt[20]=Flt[9]+2000
GoSub Flt[20]
CommandBlock 0

Let Flt[7]=0
Label 3333
Ctrl_Read 5,JUMP1
If Flt[5]=1,-1,READ_DOWN
Wait 200
Let Flt[7]=Flt[7]+1
If Flt[7]<5,3333,-1
GoTo READ_DOWN



Label RADIO_DOWN
CommandBlock 1
If Flt[9]=-1,-1,CHANGEDOWN
GoSub RADIOCREATE
GoSub RADIO_PLAY
Label CHANGEDOWN
Stream_Fadevol 6,1,0,0
Let Flt[9]=Flt[9]-1
If Flt[9]<-1,-1,CHANGEDDOWN
Let Flt[9]=3
Label CHANGEDDOWN
Let Flt[20]=Flt[9]+2000
GoSub Flt[20]
CommandBlock 0

Let Flt[7]=0
Label 2222
Ctrl_Read 5,CROUCH1
If Flt[5]=1,-1,CHECKPLAY
Wait 200
Let Flt[7]=Flt[7]+1
If Flt[7]<5,2222,-1
GoTo CHECKPLAY


Label 1999
GoSub RADIO_DESTROY
Console_AddText 90000000
Return

Label 2000
Let Flt[6]=Flt[0]
Stream_Fadevol 6,1,1,1
Console_AddText 90000001
Return

Label 2001
Let Flt[6]=Flt[1]
Stream_Fadevol 6,1,1,1
Console_AddText 90000002
Return

Label 2002
Let Flt[6]=Flt[2]
Stream_Fadevol 6,1,1,1
Console_AddText 90000003
Return

Label 2003
Let Flt[6]=Flt[3]
Stream_Fadevol 6,1,1,1
Console_AddText 90000004
Return



Label RADIO_PLAY
CommandBlock 1
Stream_Fadevol 0,1,0,0
Stream_Play 0
Stream_Fadevol 1,1,0,0
Stream_Play 1
Stream_Fadevol 2,1,0,0
Stream_Play 2
Stream_Fadevol 3,1,0,0
Stream_Play 3
CommandBlock 0
Return



Label RADIO_DESTROY
Stream_GetPos 0,15
Stream_Fadevol 0,1,0,0
Stream_Pause 0
Stream_Destroy 0

Stream_GetPos 1,16
Stream_Fadevol 1,1,0,0
Stream_Pause 1
Stream_Destroy 1

Stream_GetPos 2,17
Stream_Fadevol 2,1,0,0
Stream_Pause 2
Stream_Destroy 2

Stream_GetPos 3,18
Stream_Fadevol 3,1,0,0
Stream_Pause 3
Stream_Destroy 3
Return



Label POSITION
If Flt[4]=0,POSITION_END,-1
If Flt[9]=-1,POSITION_END,-1
GetGameTime 7
Let Flt[10]=Flt[7]-Flt[8]
If Flt[10]<500,POSITION_END,-1
Let Flt[8]=Flt[7]

	Label GETPOS0
	Stream_GetPos 0,7
	If Flt[7]=Flt[15],RADIO0END,-1
	Let Flt[15]=Flt[7]
	GoTo GETPOS1
	Label RADIO0END
	Stream_Fadevol 0,1,0,0
	Stream_Pause 0
	Stream_Destroy 0
	Label RAND0
	Rnd 10,23
	If Flt[11]=Flt[10],RAND0,-1
	Let Flt[11]=Flt[10]
	Let Flt[19]=1
	Let Flt[15]=0
	GoTo RADIO00CREATE
	Label REPLAY0
	CommandBlock 1
	Stream_Fadevol 0,1,0,0
	Stream_Play 0
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=0,-1,GETPOS1
	Let Flt[6]=Flt[0]
	Stream_Fadevol 0,1,1,1

	Label GETPOS1
	Stream_GetPos 1,7
	If Flt[7]=Flt[16],RADIO1END,-1
	Let Flt[16]=Flt[7]
	GoTo GETPOS2
	Label RADIO1END
	Stream_Fadevol 1,1,0,0
	Stream_Pause 1
	Stream_Destroy 1
	Label RAND1
	Rnd 10,24
	If Flt[12]=Flt[10],RAND1,-1
	Let Flt[12]=Flt[10]
	Let Flt[19]=1
	Let Flt[16]=0
	GoTo RADIO01CREATE
	Label REPLAY1
	CommandBlock 1
	Stream_Fadevol 1,1,0,0
	Stream_Play 1
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=1,-1,GETPOS2
	Let Flt[6]=Flt[1]
	Stream_Fadevol 1,1,1,1

	Label GETPOS2
	Stream_GetPos 2,7
	If Flt[7]=Flt[17],RADIO2END,-1
	Let Flt[17]=Flt[7]
	GoTo GETPOS3
	Label RADIO2END
	Stream_Fadevol 2,1,0,0
	Stream_Pause 2
	Stream_Destroy 2
	Label RAND2
	Rnd 10,24
	If Flt[13]=Flt[10],RAND2,-1
	Let Flt[13]=Flt[10]
	Let Flt[19]=1
	Let Flt[17]=0
	GoTo RADIO02CREATE
	Label REPLAY2
	CommandBlock 1
	Stream_Fadevol 2,1,0,0
	Stream_Play 2
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=2,-1,GETPOS3
	Let Flt[6]=Flt[2]
	Stream_Fadevol 2,1,1,1

	Label GETPOS3
	Stream_GetPos 3,7
	If Flt[7]=Flt[18],RADIO3END,-1
	Let Flt[18]=Flt[7]
	GoTo POSITION_END
	Label RADIO3END
	Stream_Fadevol 3,1,0,0
	Stream_Pause 3
	Stream_Destroy 3
	Label RAND3
	Rnd 10,27
	If Flt[14]=Flt[10],RAND3,-1
	Let Flt[14]=Flt[10]
	Let Flt[19]=1
	Let Flt[18]=0
	GoTo RADIO03CREATE
	Label REPLAY3
	CommandBlock 1
	Stream_Fadevol 3,1,0,0
	Stream_Play 3
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=3,-1,POSITION_END
	Let Flt[6]=Flt[3]
	Stream_Fadevol 3,1,1,1

Label POSITION_END
Return



Label RADIO_READ
CommandBlock 1
Let Flt[30]=0
FindNearActor 0,10,Car

CompareActors 11,12,7
If Flt[7]=0,-1,FIRSTCAR
CompareActors 11,10,7
If Flt[7]=0,-1,FIRSTCAR
Rnd 9,5
Let Flt[9]=Flt[9]-1
Label FIRSTCAR

CompareActors 10,11,7
Set_Remote_Actor 10,12,11
If Flt[7]=0,-1,RADIO_READED

	Label COMPARE_ENT1
	CompareActors 10,1,7
	If Flt[7]=1,-1,COMPARE_ENT2
	Let Flt[9]=Flt[21]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT2
	CompareActors 10,2,7
	If Flt[7]=1,-1,COMPARE_ENT3
	Let Flt[9]=Flt[22]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT3
	CompareActors 10,3,7
	If Flt[7]=1,-1,COMPARE_ENT4
	Let Flt[9]=Flt[23]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT4
	CompareActors 10,4,7
	If Flt[7]=1,-1,COMPARE_ENT5
	Let Flt[9]=Flt[24]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT5
	CompareActors 10,5,7
	If Flt[7]=1,-1,COMPARE_ENT6
	Let Flt[9]=Flt[25]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT6
	CompareActors 10,6,7
	If Flt[7]=1,-1,COMPARE_ENT7
	Let Flt[9]=Flt[26]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT7
	CompareActors 10,7,7
	If Flt[7]=1,-1,COMPARE_ENT8
	Let Flt[9]=Flt[27]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT8
	CompareActors 10,8,7
	If Flt[7]=1,-1,COMPARE_ENT9
	Let Flt[9]=Flt[28]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT9
	CompareActors 10,9,7
	If Flt[7]=1,-1,COMPARE_ENT0
	Let Flt[9]=Flt[29]
	Let Flt[30]=1
	GoTo COMPARE_ENT0

Label COMPARE_ENT0
If Flt[30]=1,RADIO_READED,-1
GoSub RADIO_WRITE
Label RADIO_READED
CommandBlock 0
Return



Label RADIO_SAVE
CommandBlock 1

	Label COMPARE_EXIT1
	CompareActors 10,1,7
	If Flt[7]=1,-1,COMPARE_EXIT2
	Let Flt[21]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT2
	CompareActors 10,2,7
	If Flt[7]=1,-1,COMPARE_EXIT3
	Let Flt[22]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT3
	CompareActors 10,3,7
	If Flt[7]=1,-1,COMPARE_EXIT4
	Let Flt[23]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT4
	CompareActors 10,4,7
	If Flt[7]=1,-1,COMPARE_EXIT5
	Let Flt[24]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT5
	CompareActors 10,5,7
	If Flt[7]=1,-1,COMPARE_EXIT6
	Let Flt[25]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT6
	CompareActors 10,6,7
	If Flt[7]=1,-1,COMPARE_EXIT7
	Let Flt[26]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT7
	CompareActors 10,7,7
	If Flt[7]=1,-1,COMPARE_EXIT8
	Let Flt[27]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT8
	CompareActors 10,8,7
	If Flt[7]=1,-1,COMPARE_EXIT9
	Let Flt[28]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT9
	CompareActors 10,9,7
	If Flt[7]=1,-1,COMPARE_EXIT0
	Let Flt[29]=Flt[9]
	GoTo COMPARE_EXIT0

Label COMPARE_EXIT0
CommandBlock 0
Return



Label RADIO_WRITE
Set_Remote_Actor 8,12,9
Let Flt[29]=Flt[28]
Set_Remote_Actor 7,12,8
Let Flt[28]=Flt[27]
Set_Remote_Actor 6,12,7
Let Flt[27]=Flt[26]
Set_Remote_Actor 5,12,6
Let Flt[26]=Flt[25]
Set_Remote_Actor 4,12,5
Let Flt[25]=Flt[24]
Set_Remote_Actor 3,12,4
Let Flt[24]=Flt[23]
Set_Remote_Actor 2,12,3
Let Flt[23]=Flt[22]
Set_Remote_Actor 1,12,2
Let Flt[22]=Flt[21]
Set_Remote_Actor 10,12,1
Let Flt[21]=Flt[9]
Return
[свернуть]
цитата
Поблагодарил:
Kaiser (31.10.2020)
Старый 26.10.2020, 07:21   #222
1MAMOHT1 вне форума 1MAMOHT1
Аватар для 1MAMOHT1
Mafia Modding Crew
Сообщений: 49
Репутация: 31
1MAMOHT1 is on a distinguished road
Detective
Информация о репутации (1MAMOHT1)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
1MAMOHT1 / 31
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
У меня тоже версия 1.2 (steam) и папка sounds распакована.
Цитата:
У меня версия 1.2 репак от R.G. Element Arts
Как же вы скрипт юзаете, из сцены!? А как миссии проходить с радио..?
Цитата:
Написал процедуру, чтобы скрипт помнил последние девять тачек
На сколько я помню, в екзе есть функция, которая следит за количеством юзанных тачек, каждая пятая, юзанная нами тачка, уничтожает первую, которая вне видимости Томми...
На девять тачек наверное многовато даже для фрирайда Хотя это мега круто

Последний раз редактировалось 1MAMOHT1; 26.10.2020 в 07:22.
цитата
Старый 26.10.2020, 08:26   #223
KlassenAS вне форума KlassenAS
Аватар для KlassenAS
Senior Member
Сообщений: 341
Репутация: 287
KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough
Enforcer
Информация о репутации (KlassenAS)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
KlassenAS / 287
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от 1MAMOHT1 Посмотреть сообщение
Как же вы скрипт юзаете, из сцены!? А как миссии проходить с радио..?
Нормально юзаем. С Mafia Parcher.
Даже включили его в архив.
Он как раз и сделан для версий 1.0 и 1.2
Работает во всех сценах, без исключения, специально в сцены импортировать не нужно.
Цитата:
Сообщение от 1MAMOHT1 Посмотреть сообщение
На сколько я помню, в екзе есть функция, которая следит за количеством юзанных тачек, каждая пятая, юзанная нами тачка, уничтожает первую, которая вне видимости Томми...
На девять тачек наверное многовато даже для фрирайда Хотя это мега круто
Во-первых, кроме трафиковых авто, есть ещё и помещённые в сцены. В стандартном фрирайде "Город - День", например, их четыре, вроде: Сильвер Флэтчер, Бруно Спидстер, и два Ласситера. Вместе с трафиком уже девять.
Плюс у тебя целый гараж Сальери. При старте новой миссии или загрузке сейва все скриптовые "запоминалки" сбрасываются, но зато в рамках одной миссии раздолье )
Плюс, запоминание авто безупречно работает только с авто из сцены, а тачки из трафика, иногда, запоминает по два раза.
Хз, почему. Следовательно, с учётом игровых глюков, для пяти авто нужен резерв.
Поэтому девять.
Три тачки запоминать, или девять - скрипт от этого принципиально сложнее не становится, в нём лишь появляется больше копипаста с однообразными блоками команд.
То же самое, если приспичит увеличить количество радиостанций с 4 до 100.
По три дополнительных переменных на каждую радиостанцию, всё остальное - копипаст с исправлением номеров.

Последний раз редактировалось KlassenAS; 26.10.2020 в 10:42.
цитата
Старый 26.10.2020, 11:16   #224
Abradox вне форума Abradox
Аватар для Abradox
Modding Crew
Сообщений: 2,771
Репутация: 1311
Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of
Councilor
Информация о репутации (Abradox)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Abradox / 1311
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от 1MAMOHT1 Посмотреть сообщение
А как миссии проходить с радио..?
Всё просто. По умолчанию, радио во всех машинах выключено и его нужно включить самому. Т.е. даже, если Том садится в машину в катсцене, то радио не включается и не мешает (раньше включалось ). А когда ты подъезжаешь к миссии и знаешь что будет катсцена с машиной, то нужно самому выключить радио, чтобы оно не мешало.
В общем это не сложно, но играть приятнее. Треки из Mafia Defenitive Edition и те что мы подобрали сами, очень хорошо подходят к атмосфере оригинальной Mafia.
цитата
Старый 26.10.2020, 23:21   #225
GOLOD55 вне форума GOLOD55
VIP
Сообщений: 100
Репутация: 152
GOLOD55 has a spectacular aura about GOLOD55 has a spectacular aura about
Thug
Информация о репутации (GOLOD55)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
GOLOD55 / 152
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
чуток оптимизации скрипту..

1. а есть необходимость определять акторы 1-11 актором скрипта?
оно сработает только один раз(при старте скрипта), а при этом данный стек все равно пустой.

2. фильтр перед Label dan_on-овский не мешает в сценах2 и его не требуется удалять. он просто инактивирует скрипт в миссиях без плеер_актора.
а вот флт4 обнулить не мешает ниже, ога.

3. аналогично актор_стеку, стек флт-х также при старте скрипта пустой. другими словами говоря, изначально все значения переменных равны 0 и нет необходимости в командах типа Let Flt[]=0 (кроме флт4).
А присвоение значение "-1" компактнее сделать через вектор.

Итого кусочек скрипта наверное может выглядеть так:
Human_GetProperty 0,4,Energy
If Flt[4]=0,-1,dan_on
Act_SetState 100,Off
Label dan_on

CityMusic_Off

Let Flt[4]=0
vect_set 9,-1,-1,-1
vect_set 12,-1,-1,-1
vect_set 21,-1,-1,-1
vect_set 24,-1,-1,-1
vect_set 27,-1,-1,-1
цитата
Поблагодарили: 4
Abradox (26.10.2020), Firefox3860 (27.10.2020), Kaiser (31.10.2020), KlassenAS (26.10.2020)
Старый 27.10.2020, 00:07   #226
KlassenAS вне форума KlassenAS
Аватар для KlassenAS
Senior Member
Сообщений: 341
Репутация: 287
KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough
Enforcer
Информация о репутации (KlassenAS)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
KlassenAS / 287
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от GOLOD55 Посмотреть сообщение
1. а есть необходимость определять акторы 1-11 актором скрипта?
оно сработает только один раз(при старте скрипта), а при этом данный стек все равно пустой.
Присвоение всех акторов, пожалуй, действительно лишнее. Но 10 и 11 я сравниваю между собой и с 12 актором, чтобы определить, первый ли раз, после старта миссии Томми сел в машину. Чтобы радио было выкл. Хотя я ещё подумаю. Может, эту часть тоже можно оптимизировать.

Цитата:
Сообщение от GOLOD55 Посмотреть сообщение
2. фильтр перед Label dan_on-овский не мешает в сценах2 и его не требуется удалять. он просто инактивирует скрипт в миссиях без плеер_актора.
а вот флт4 обнулить не мешает ниже, ога
Знаю, что не мешает, это, скорее, для оптимизации. Хотя, мне ли говорить об оптимизации, с таким размером скрипта )

Цитата:
Сообщение от GOLOD55 Посмотреть сообщение
3. аналогично актор_стеку, стек флт-х также при старте скрипта пустой. другими словами говоря, изначально все значения переменных равны 0 и нет необходимости в командах типа Let Flt[]=0 (кроме флт4).
А присвоение значение "-1" компактнее сделать через вектор.

Итого кусочек скрипта наверное может выглядеть так:
Human_GetProperty 0,4,Energy
If Flt[4]=0,-1,dan_on
Act_SetState 100,Off
Label dan_on

CityMusic_Off

Let Flt[4]=0
vect_set 9,-1,-1,-1
vect_set 12,-1,-1,-1
vect_set 21,-1,-1,-1
vect_set 24,-1,-1,-1
vect_set 27,-1,-1,-1
А с вектором ты хитро придумал, одной командой три переменные присваивать )
Умён!
Я не был уверен, что переменные создаются с нулём и страховался от возможных рандомных значений.
Кроме того, мне нужно было расписать значение каждой переменной и комментарий к ней, чтобы не запутаться.
Всё-таки удержать в голове значения и назначение тридцати переменных - задача нетривиальная.

Большое спасибо за советы и замечания!
Поколдую теперь немного над оптимизацией.
Тем более, у меня ещё была мысль насчёт процедуры создания потоков. Тоже оптимизировать и выкинуть одну переменную.


UPD:
Поработал над оптимизацией версий 2.0 и 2.1
В архив с версией 2.1 положил папку sounds с шестью wav-файлами. чтобы гарантированно воспроизводились у всех.
Ждём день. если новых замечаний и идей для улучшения не найдётся, тогда, наконец-то, оформим релиз.

Ver. 2.1
https://drive.google.com/file/d/1jQK...ew?usp=sharing

Ver. 2.0
https://drive.google.com/file/d/1bJV...ew?usp=sharing

Развернуть для просмотра

Код:
//Radio Script Ver. 2.1 27-10-2020 By KlassenAS For Abradox

Dim_Act 13
Dim_Flt 30
GetActivePlayer 0
FindActor 10
FindActor 11
FindActor 12
//Акторы 1-9 - для запоминания машин
//Актор 10 - для текущей машины
//Актор 11 - для прошлой машины
//Актор 12 - данный скрипт

Human_GetProperty 0,4,Energy
If Flt[4]=0,-1,dan_on
Act_SetState 100,Off
Label dan_on

CityMusic_Off

//ПЕРЕМЕННЫЕ:
//0-3 - идентификаторы потоков
//4 - Логика
//5 - Нажатие клавиш вперёд1 и назад1
//6 - Последний активный поток
//7 - Сиденье/Время с начала игры/текущее время потока/
//8 - Прошлое время с начала игры
//Номер радиостанции
//9 - Номер играющей радиостанции
//10 - Рандом для radio/разница во времени игры
//11-14 - Номера треков на радиостанциях 0 - 3
//15-18 - для позиций потоков 0-3
//19 - Логика запоминания тачек
//20 - Для перехода к меткам треков
//21-29 - Номера радиостанций в запомненных тачках 1-9
Let Flt[4]=0
Vect_Set 9,-1,-1,-1
Vect_Set 21,-1,-1,-1
Vect_Set 24,-1,-1,-1
Vect_Set 27,-1,-1,-1

Rnd 11,23
Rnd 12,24
Rnd 13,24
Rnd 14,27

GoTo CHECK



Label RADIOCREATE
	GoSub RADIO00CREATE
	GoSub RADIO01CREATE
	GoSub RADIO02CREATE
	GoSub RADIO03CREATE
Return



Label RADIO00CREATE
CommandBlock 1
Let Flt[20]=Flt[11]+100000
GoTo Flt[20]

	Label 100000
	Stream_Create 0,"sounds\03_music.wav"
	GoTo RADIO00CREATED

	Label 100001
	Stream_Create 0,"sounds\13b_music.wav"
	GoTo RADIO00CREATED

	Label 100002
	Stream_Create 0,"sounds\14_Coucou.wav"
	GoTo RADIO00CREATED

	Label 100003
	Stream_Create 0,"sounds\18_radio.wav"
	GoTo RADIO00CREATED

	Label 100004
	Stream_Create 0,"sounds\s_music1.wav"
	GoTo RADIO00CREATED

	Label 100005
	Stream_Create 0,"sounds\s_music3.wav"
	GoTo RADIO00CREATED

	Label 100006
	Stream_Create 0,"sounds\s_music5.wav"
	GoTo RADIO00CREATED

	Label 100007
	Stream_Create 0,"sounds\music\city_music_01.ogg"
	GoTo RADIO00CREATED

	Label 100008
	Stream_Create 0,"sounds\music\city_music_02.ogg"
	GoTo RADIO00CREATED

	Label 100009
	Stream_Create 0,"sounds\music\city_music_03.ogg"
	GoTo RADIO00CREATED

	Label 100010
	Stream_Create 0,"sounds\music\city_music_04.ogg"
	GoTo RADIO00CREATED

	Label 100011
	Stream_Create 0,"sounds\music\city_music_05.ogg"
	GoTo RADIO00CREATED

	Label 100012
	Stream_Create 0,"sounds\music\city_music_06.ogg"
	GoTo RADIO00CREATED

	Label 100013
	Stream_Create 0,"sounds\music\city_music_07.ogg"
	GoTo RADIO00CREATED

	Label 100014
	Stream_Create 0,"sounds\music\city_music_08.ogg"
	GoTo RADIO00CREATED

	Label 100015
	Stream_Create 0,"sounds\music\city_music_09.ogg"
	GoTo RADIO00CREATED

	Label 100016
	Stream_Create 0,"sounds\music\city_music_10.ogg"
	GoTo RADIO00CREATED

	Label 100017
	Stream_Create 0,"sounds\music\city_music_11.ogg"
	GoTo RADIO00CREATED

	Label 100018
	Stream_Create 0,"sounds\music\city_music_12.ogg"
	GoTo RADIO00CREATED

	Label 100019
	Stream_Create 0,"sounds\music\city_music_13.ogg"
	GoTo RADIO00CREATED

	Label 100020
	Stream_Create 0,"sounds\music\city_music_15.ogg"
	GoTo RADIO00CREATED

	Label 100021
	Stream_Create 0,"sounds\music\12_scene music.ogg"
	GoTo RADIO00CREATED

	Label 100022
	Stream_Create 0,"sounds\music\mise02-ulicka.ogg"
	GoTo RADIO00CREATED

Label RADIO00CREATED
Stream_SetPos 0,15
CommandBlock 0
If Flt[9]=0,-1,CREATED00
Let Flt[6]=Flt[0]
Label CREATED00
Return


Label RADIO01CREATE
CommandBlock 1
Let Flt[20]=Flt[12]+100100
GoTo Flt[20]

	Label 100100
	Stream_Create 1,"radio\radio01-00.ogg"
	GoTo RADIO01CREATED

	Label 100101
	Stream_Create 1,"radio\radio01-01.ogg"
	GoTo RADIO01CREATED

	Label 100102
	Stream_Create 1,"radio\radio01-02.ogg"
	GoTo RADIO01CREATED	

	Label 100103
	Stream_Create 1,"radio\radio01-03.ogg"
	GoTo RADIO01CREATED

	Label 100104
	Stream_Create 1,"radio\radio01-04.ogg"
	GoTo RADIO01CREATED

	Label 100105
	Stream_Create 1,"radio\radio01-05.ogg"
	GoTo RADIO01CREATED

	Label 100106
	Stream_Create 1,"radio\radio01-06.ogg"
	GoTo RADIO01CREATED

	Label 100107
	Stream_Create 1,"radio\radio01-07.ogg"
	GoTo RADIO01CREATED

	Label 100108
	Stream_Create 1,"radio\radio01-08.ogg"
	GoTo RADIO01CREATED
	
	Label 100109
	Stream_Create 1,"radio\radio01-09.ogg"
	GoTo RADIO01CREATED

	Label 100110
	Stream_Create 1,"radio\radio01-10.ogg"
	GoTo RADIO01CREATED

	Label 100111
	Stream_Create 1,"radio\radio01-11.ogg"
	GoTo RADIO01CREATED

	Label 100112
	Stream_Create 1,"radio\radio01-12.ogg"
	GoTo RADIO01CREATED	
	
	Label 100113
	Stream_Create 1,"radio\radio01-13.ogg"
	GoTo RADIO01CREATED

	Label 100114
	Stream_Create 1,"radio\radio01-14.ogg"
	GoTo RADIO01CREATED

	Label 100115
	Stream_Create 1,"radio\radio01-15.ogg"
	GoTo RADIO01CREATED

	Label 100116
	Stream_Create 1,"radio\radio01-16.ogg"
	GoTo RADIO01CREATED	
	
	Label 100117
	Stream_Create 1,"radio\radio01-17.ogg"
	GoTo RADIO01CREATED

	Label 100118
	Stream_Create 1,"radio\radio01-18.ogg"
	GoTo RADIO01CREATED

	Label 100119
	Stream_Create 1,"radio\radio01-19.ogg"
	GoTo RADIO01CREATED

	Label 100120
	Stream_Create 1,"radio\radio01-20.ogg"
	GoTo RADIO01CREATED	
	
	Label 100121
	Stream_Create 1,"radio\radio01-21.ogg"
	GoTo RADIO01CREATED

	Label 100122
	Stream_Create 1,"radio\radio01-22.ogg"
	GoTo RADIO01CREATED

	Label 100123
	Stream_Create 1,"radio\radio01-23.ogg"
	GoTo RADIO01CREATED

Label RADIO01CREATED
Stream_SetPos 1,16
CommandBlock 0
If Flt[9]=1,-1,CREATED01
Let Flt[6]=Flt[1]
Label CREATED01
Return


Label RADIO02CREATE
CommandBlock 1
Let Flt[20]=Flt[13]+100200
GoTo Flt[20]

	Label 100200
	Stream_Create 2,"radio\radio02-00.ogg"
	GoTo RADIO02CREATED

	Label 100201
	Stream_Create 2,"radio\radio02-01.ogg"
	GoTo RADIO02CREATED

	Label 100202
	Stream_Create 2,"radio\radio02-02.ogg"
	GoTo RADIO02CREATED

	Label 100203
	Stream_Create 2,"radio\radio02-03.ogg"
	GoTo RADIO02CREATED

	Label 100204
	Stream_Create 2,"radio\radio02-04.ogg"
	GoTo RADIO02CREATED

	Label 100205
	Stream_Create 2,"radio\radio02-05.ogg"
	GoTo RADIO02CREATED

	Label 100206
	Stream_Create 2,"radio\radio02-06.ogg"
	GoTo RADIO02CREATED

	Label 100207
	Stream_Create 2,"radio\radio02-07.ogg"
	GoTo RADIO02CREATED

	Label 100208
	Stream_Create 2,"radio\radio02-08.ogg"
	GoTo RADIO02CREATED

	Label 100209
	Stream_Create 2,"radio\radio02-09.ogg"
	GoTo RADIO02CREATED

	Label 100210
	Stream_Create 2,"radio\radio02-10.ogg"
	GoTo RADIO02CREATED

	Label 100211
	Stream_Create 2,"radio\radio02-11.ogg"
	GoTo RADIO02CREATED

	Label 100212
	Stream_Create 2,"radio\radio02-12.ogg"
	GoTo RADIO02CREATED

	Label 100213
	Stream_Create 2,"radio\radio02-13.ogg"
	GoTo RADIO02CREATED

	Label 100214
	Stream_Create 2,"radio\radio02-14.ogg"
	GoTo RADIO02CREATED

	Label 100215
	Stream_Create 2,"radio\radio02-15.ogg"
	GoTo RADIO02CREATED

	Label 100216
	Stream_Create 2,"radio\radio02-16.ogg"
	GoTo RADIO02CREATED

	Label 100217
	Stream_Create 2,"radio\radio02-17.ogg"
	GoTo RADIO02CREATED

	Label 100218
	Stream_Create 2,"radio\radio02-18.ogg"
	GoTo RADIO02CREATED

	Label 100219
	Stream_Create 2,"radio\radio02-19.ogg"
	GoTo RADIO02CREATED

	Label 100220
	Stream_Create 2,"radio\radio02-20.ogg"
	GoTo RADIO02CREATED

	Label 100221
	Stream_Create 2,"radio\radio02-21.ogg"
	GoTo RADIO02CREATED

	Label 100222
	Stream_Create 2,"radio\radio02-22.ogg"
	GoTo RADIO02CREATED

	Label 100223
	Stream_Create 2,"radio\radio02-23.ogg"
	GoTo RADIO02CREATED

Label RADIO02CREATED
Stream_SetPos 2,17
CommandBlock 0
If Flt[9]=2,-1,CREATED02
Let Flt[6]=Flt[2]
Label CREATED02
Return


Label RADIO03CREATE
CommandBlock 1
Let Flt[20]=Flt[14]+100300
GoTo Flt[20]

	Label 100300
	Stream_Create 3,"radio\radio03-00.mp3"
	GoTo RADIO03CREATED

	Label 100301
	Stream_Create 3,"radio\radio03-01.mp3"
	GoTo RADIO03CREATED

	Label 100302
	Stream_Create 3,"radio\radio03-02.mp3"
	GoTo RADIO03CREATED

	Label 100303
	Stream_Create 3,"radio\radio03-03.mp3"
	GoTo RADIO03CREATED

	Label 100304
	Stream_Create 3,"radio\radio03-04.mp3"
	GoTo RADIO03CREATED

	Label 100305
	Stream_Create 3,"radio\radio03-05.mp3"
	GoTo RADIO03CREATED

	Label 100306
	Stream_Create 3,"radio\radio03-06.mp3"
	GoTo RADIO03CREATED

	Label 100307
	Stream_Create 3,"radio\radio03-07.mp3"
	GoTo RADIO03CREATED

	Label 100308
	Stream_Create 3,"radio\radio03-08.mp3"
	GoTo RADIO03CREATED

	Label 100309
	Stream_Create 3,"radio\radio03-09.mp3"
	GoTo RADIO03CREATED

	Label 100310
	Stream_Create 3,"radio\radio03-10.mp3"
	GoTo RADIO03CREATED

	Label 100311
	Stream_Create 3,"radio\radio03-11.mp3"
	GoTo RADIO03CREATED

	Label 100312
	Stream_Create 3,"radio\radio03-12.mp3"
	GoTo RADIO03CREATED

	Label 100313
	Stream_Create 3,"radio\radio03-13.mp3"
	GoTo RADIO03CREATED

	Label 100314
	Stream_Create 3,"radio\radio03-14.mp3"
	GoTo RADIO03CREATED

	Label 100315
	Stream_Create 3,"radio\radio03-15.mp3"
	GoTo RADIO03CREATED

	Label 100316
	Stream_Create 3,"radio\radio03-16.mp3"
	GoTo RADIO03CREATED

	Label 100317
	Stream_Create 3,"radio\radio03-17.mp3"
	GoTo RADIO03CREATED

	Label 100318
	Stream_Create 3,"radio\radio03-18.mp3"
	GoTo RADIO03CREATED

	Label 100319
	Stream_Create 3,"radio\radio03-19.mp3"
	GoTo RADIO03CREATED
	
	Label 100320
	Stream_Create 3,"radio\radio03-20.mp3"
	GoTo RADIO03CREATED

	Label 100321
	Stream_Create 3,"radio\radio03-21.mp3"
	GoTo RADIO03CREATED

	Label 100322
	Stream_Create 3,"radio\radio03-22.mp3"
	GoTo RADIO03CREATED

	Label 100323
	Stream_Create 3,"radio\radio03-23.mp3"
	GoTo RADIO03CREATED

	Label 100324
	Stream_Create 3,"radio\radio03-24.mp3"
	GoTo RADIO03CREATED

	Label 100325
	Stream_Create 3,"radio\radio03-25.mp3"
	GoTo RADIO03CREATED

	Label 100326
	Stream_Create 3,"radio\radio03-26.mp3"
	GoTo RADIO03CREATED

Label RADIO03CREATED
Stream_SetPos 3,18
CommandBlock 0
If Flt[9]=3,-1,CREATED03
Let Flt[6]=Flt[3]
Label CREATED03
Return


Label CHECK
CommandBlock 1
GoSub POSITION
CommandBlock 0
Human_GetSeatIdx 0,7
If Flt[7]=-1,CAR_OUT,CAR_IN



Label CAR_IN
	Ctrl_Read 5,JUMP1
	If Flt[5]=0,-1,RADIO_UP
	Label READ_DOWN
	Ctrl_Read 5,CROUCH1
	If Flt[5]=0,-1,RADIO_DOWN
Label CHECKPLAY

If Flt[4]=0,-,CHECK
//CityMusic_Off
Wait 500
GoSub RADIO_READ
If Flt[9]>-1,-1,RADIO_OFF
GoSub RADIOCREATE
GoSub RADIO_PLAY
Let Flt[20]=Flt[9]+2000
GoSub Flt[20]
Label RADIO_OFF
If Flt[9]=-1,-1,ADIRDA
Console_AddText 90000000
Label ADIRDA
Let Flt[4]=1
GoTo CHECK



Label CAR_OUT
If Flt[4]=1,-1,CHECK
CommandBlock 1
GoSub RADIO_DESTROY
Let Flt[4]=0
GoSub RADIO_SAVE
CommandBlock 0
GoTo CHECK



Label RADIO_UP
CommandBlock 1
If Flt[9]=-1,-1,CHANGEUP
GoSub RADIOCREATE
GoSub RADIO_PLAY
Label CHANGEUP
Stream_Fadevol 6,1,0,0
Let Flt[9]=Flt[9]+1
If Flt[9]>3,-1,CHANGEDUP
Let Flt[9]=-1
Label CHANGEDUP
Let Flt[20]=Flt[9]+2000
GoSub Flt[20]
CommandBlock 0

Let Flt[7]=0
Label 3333
Ctrl_Read 5,JUMP1
If Flt[5]=1,-1,READ_DOWN
Wait 200
Let Flt[7]=Flt[7]+1
If Flt[7]<5,3333,-1
GoTo READ_DOWN



Label RADIO_DOWN
CommandBlock 1
If Flt[9]=-1,-1,CHANGEDOWN
GoSub RADIOCREATE
GoSub RADIO_PLAY
Label CHANGEDOWN
Stream_Fadevol 6,1,0,0
Let Flt[9]=Flt[9]-1
If Flt[9]<-1,-1,CHANGEDDOWN
Let Flt[9]=3
Label CHANGEDDOWN
Let Flt[20]=Flt[9]+2000
GoSub Flt[20]
CommandBlock 0

Let Flt[7]=0
Label 2222
Ctrl_Read 5,CROUCH1
If Flt[5]=1,-1,CHECKPLAY
Wait 200
Let Flt[7]=Flt[7]+1
If Flt[7]<5,2222,-1
GoTo CHECKPLAY


Label 1999
GoSub RADIO_DESTROY
Console_AddText 90000000
Return

Label 2000
Let Flt[6]=Flt[0]
Stream_Fadevol 6,1,1,1
Console_AddText 90000001
Return

Label 2001
Let Flt[6]=Flt[1]
Stream_Fadevol 6,1,1,1
Console_AddText 90000002
Return

Label 2002
Let Flt[6]=Flt[2]
Stream_Fadevol 6,1,1,1
Console_AddText 90000003
Return

Label 2003
Let Flt[6]=Flt[3]
Stream_Fadevol 6,1,1,1
Console_AddText 90000004
Return



Label RADIO_PLAY
CommandBlock 1
Stream_Fadevol 0,1,0,0
Stream_Play 0
Stream_Fadevol 1,1,0,0
Stream_Play 1
Stream_Fadevol 2,1,0,0
Stream_Play 2
Stream_Fadevol 3,1,0,0
Stream_Play 3
CommandBlock 0
Return



Label RADIO_DESTROY
Stream_GetPos 0,15
Stream_Fadevol 0,1,0,0
Stream_Pause 0
Stream_Destroy 0

Stream_GetPos 1,16
Stream_Fadevol 1,1,0,0
Stream_Pause 1
Stream_Destroy 1

Stream_GetPos 2,17
Stream_Fadevol 2,1,0,0
Stream_Pause 2
Stream_Destroy 2

Stream_GetPos 3,18
Stream_Fadevol 3,1,0,0
Stream_Pause 3
Stream_Destroy 3
Return



Label POSITION
If Flt[4]=0,POSITION_END,-1
If Flt[9]=-1,POSITION_END,-1
GetGameTime 7
Let Flt[10]=Flt[7]-Flt[8]
If Flt[10]<500,POSITION_END,-1
Let Flt[8]=Flt[7]

	Label GETPOS0
	Stream_GetPos 0,7
	If Flt[7]=Flt[15],RADIO0END,-1
	Let Flt[15]=Flt[7]
	GoTo GETPOS1
	Label RADIO0END
	Stream_Fadevol 0,1,0,0
	Stream_Pause 0
	Stream_Destroy 0
	Label RAND0
	Rnd 10,23
	If Flt[11]=Flt[10],RAND0,-1
	Let Flt[11]=Flt[10]
	Let Flt[19]=1
	Let Flt[15]=0
	GoSub RADIO00CREATE
	CommandBlock 1
	Stream_Fadevol 0,1,0,0
	Stream_Play 0
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=0,-1,GETPOS1
	Let Flt[6]=Flt[0]
	Stream_Fadevol 0,1,1,1

	Label GETPOS1
	Stream_GetPos 1,7
	If Flt[7]=Flt[16],RADIO1END,-1
	Let Flt[16]=Flt[7]
	GoTo GETPOS2
	Label RADIO1END
	Stream_Fadevol 1,1,0,0
	Stream_Pause 1
	Stream_Destroy 1
	Label RAND1
	Rnd 10,24
	If Flt[12]=Flt[10],RAND1,-1
	Let Flt[12]=Flt[10]
	Let Flt[19]=1
	Let Flt[16]=0
	GoSub RADIO01CREATE
	CommandBlock 1
	Stream_Fadevol 1,1,0,0
	Stream_Play 1
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=1,-1,GETPOS2
	Let Flt[6]=Flt[1]
	Stream_Fadevol 1,1,1,1

	Label GETPOS2
	Stream_GetPos 2,7
	If Flt[7]=Flt[17],RADIO2END,-1
	Let Flt[17]=Flt[7]
	GoTo GETPOS3
	Label RADIO2END
	Stream_Fadevol 2,1,0,0
	Stream_Pause 2
	Stream_Destroy 2
	Label RAND2
	Rnd 10,24
	If Flt[13]=Flt[10],RAND2,-1
	Let Flt[13]=Flt[10]
	Let Flt[19]=1
	Let Flt[17]=0
	GoSub RADIO02CREATE
	CommandBlock 1
	Stream_Fadevol 2,1,0,0
	Stream_Play 2
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=2,-1,GETPOS3
	Let Flt[6]=Flt[2]
	Stream_Fadevol 2,1,1,1

	Label GETPOS3
	Stream_GetPos 3,7
	If Flt[7]=Flt[18],RADIO3END,-1
	Let Flt[18]=Flt[7]
	GoTo POSITION_END
	Label RADIO3END
	Stream_Fadevol 3,1,0,0
	Stream_Pause 3
	Stream_Destroy 3
	Label RAND3
	Rnd 10,27
	If Flt[14]=Flt[10],RAND3,-1
	Let Flt[14]=Flt[10]
	Let Flt[19]=1
	Let Flt[18]=0
	GoSub RADIO03CREATE
	CommandBlock 1
	Stream_Fadevol 3,1,0,0
	Stream_Play 3
	Let Flt[19]=0
	CommandBlock 0
	If Flt[9]=3,-1,POSITION_END
	Let Flt[6]=Flt[3]
	Stream_Fadevol 3,1,1,1

Label POSITION_END
Return



Label RADIO_READ
CommandBlock 1
Let Flt[19]=0

CompareActors 10,12,7
If Flt[7]=0,-1,NORANDOMRADIO
CompareActors 10,11,7
If Flt[7]=0,-1,NORANDOMRADIO
Rnd 9,5
Let Flt[9]=Flt[9]-1
Label NORANDOMRADIO

FindNearActor 0,10,Car
CompareActors 10,11,7
Set_Remote_Actor 10,12,11
If Flt[7]=0,-1,RADIO_READED



	Label COMPARE_ENT1
	CompareActors 10,1,7
	If Flt[7]=1,-1,COMPARE_ENT2
	Let Flt[9]=Flt[21]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT2
	CompareActors 10,2,7
	If Flt[7]=1,-1,COMPARE_ENT3
	Let Flt[9]=Flt[22]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT3
	CompareActors 10,3,7
	If Flt[7]=1,-1,COMPARE_ENT4
	Let Flt[9]=Flt[23]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT4
	CompareActors 10,4,7
	If Flt[7]=1,-1,COMPARE_ENT5
	Let Flt[9]=Flt[24]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT5
	CompareActors 10,5,7
	If Flt[7]=1,-1,COMPARE_ENT6
	Let Flt[9]=Flt[25]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT6
	CompareActors 10,6,7
	If Flt[7]=1,-1,COMPARE_ENT7
	Let Flt[9]=Flt[26]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT7
	CompareActors 10,7,7
	If Flt[7]=1,-1,COMPARE_ENT8
	Let Flt[9]=Flt[27]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT8
	CompareActors 10,8,7
	If Flt[7]=1,-1,COMPARE_ENT9
	Let Flt[9]=Flt[28]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

	Label COMPARE_ENT9
	CompareActors 10,9,7
	If Flt[7]=1,-1,COMPARE_ENT0
	Let Flt[9]=Flt[29]
	Let Flt[19]=1
	GoTo COMPARE_ENT0

Label COMPARE_ENT0
If Flt[19]=1,RADIO_READED,-1
GoSub RADIO_WRITE
Label RADIO_READED
CommandBlock 0
Return



Label RADIO_SAVE
CommandBlock 1

	Label COMPARE_EXIT1
	CompareActors 10,1,7
	If Flt[7]=1,-1,COMPARE_EXIT2
	Let Flt[21]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT2
	CompareActors 10,2,7
	If Flt[7]=1,-1,COMPARE_EXIT3
	Let Flt[22]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT3
	CompareActors 10,3,7
	If Flt[7]=1,-1,COMPARE_EXIT4
	Let Flt[23]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT4
	CompareActors 10,4,7
	If Flt[7]=1,-1,COMPARE_EXIT5
	Let Flt[24]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT5
	CompareActors 10,5,7
	If Flt[7]=1,-1,COMPARE_EXIT6
	Let Flt[25]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT6
	CompareActors 10,6,7
	If Flt[7]=1,-1,COMPARE_EXIT7
	Let Flt[26]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT7
	CompareActors 10,7,7
	If Flt[7]=1,-1,COMPARE_EXIT8
	Let Flt[27]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT8
	CompareActors 10,8,7
	If Flt[7]=1,-1,COMPARE_EXIT9
	Let Flt[28]=Flt[9]
	GoTo COMPARE_EXIT0

	Label COMPARE_EXIT9
	CompareActors 10,9,7
	If Flt[7]=1,-1,COMPARE_EXIT0
	Let Flt[29]=Flt[9]
	GoTo COMPARE_EXIT0

Label COMPARE_EXIT0
CommandBlock 0
Return



Label RADIO_WRITE
Set_Remote_Actor 8,12,9
Let Flt[29]=Flt[28]
Set_Remote_Actor 7,12,8
Let Flt[28]=Flt[27]
Set_Remote_Actor 6,12,7
Let Flt[27]=Flt[26]
Set_Remote_Actor 5,12,6
Let Flt[26]=Flt[25]
Set_Remote_Actor 4,12,5
Let Flt[25]=Flt[24]
Set_Remote_Actor 3,12,4
Let Flt[24]=Flt[23]
Set_Remote_Actor 2,12,3
Let Flt[23]=Flt[22]
Set_Remote_Actor 1,12,2
Let Flt[22]=Flt[21]
Set_Remote_Actor 10,12,1
Let Flt[21]=Flt[9]
Return
[свернуть]




UPD:
Прошло даже два дня.
Новых косяков не обнаружилось. Идей для улучшения и большего усложнения скрипта пока нет.
Все работает, как задумано.
Думаю, можно оформить релиз.

Вопрос: А как будем оформлять?

Последний раз редактировалось KlassenAS; 29.10.2020 в 17:50.
цитата
Старый 30.10.2020, 23:09   #227
Abradox вне форума Abradox
Аватар для Abradox
Modding Crew
Сообщений: 2,771
Репутация: 1311
Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of Abradox has much to be proud of
Councilor
Информация о репутации (Abradox)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Abradox / 1311
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Вроде скрипт не должен был затрагивать сюжетную музыку?
В Миссии Creme de la Creme, когда в аэропорту глохнет машина, то при выходе из нее перестает играть сюжетная музыка. Включается она уже только в катсцене с падением самолета.

Добавлено через 2 минуты
Цитата:
Сообщение от KlassenAS Посмотреть сообщение
Ты темой промахнулся )
Я проверю, но уйдёт время, у меня сохранения заглючило, теперь всё с начала прохожу.
Ты тоже проверь, загрузи без скрипта. Вдруг, так и должно быть, а мы забыли.
Проверил. Нет, так не должно быть, без скрипта музыка играет, со скриптом выключается при выходе из машины.
цитата
Старый 31.10.2020, 11:33   #228
Kaiser вне форума Kaiser
Аватар для Kaiser
Mafia Modding Crew
Сообщений: 229
Репутация: 242
Kaiser has a spectacular aura about Kaiser has a spectacular aura about Kaiser has a spectacular aura about
Judge
Информация о репутации (Kaiser)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Kaiser / 242
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Ребята, у меня уже складывается впечатление, что я попал на экзамен по высшей математике))
__________________
Моя моддинговая страничка: https://vk.com/kaiser_edition
цитата
Старый 31.10.2020, 13:54   #229
KlassenAS вне форума KlassenAS
Аватар для KlassenAS
Senior Member
Сообщений: 341
Репутация: 287
KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough KlassenAS is a jewel in the rough
Enforcer
Информация о репутации (KlassenAS)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
KlassenAS / 287
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от Abradox Посмотреть сообщение
Проверил. Нет, так не должно быть, без скрипта музыка играет, со скриптом выключается при выходе из машины.
А вот это очень странно.
Потому, что активная команда SityMusic_Off только в начале скрипта.
И, при выходе из машины, скрипт либо уничтожает аудиопотоки, если радио играло, либо не делает ничего.
По крайней мере, по логике так.
Буду разбираться, чё как.

Цитата:
Сообщение от Kaiser Посмотреть сообщение
Ребята, у меня уже складывается впечатление, что я попал на экзамен по высшей математике))
Ты близок к истине.
Разработка подобного сложного алгоритма - обычное дело, когда пишешь курсач по программированию )
Я больше скажу - программа, которую я писал для дипломной работы, лишь пять раз объёмнее этого скрипта.


UPD:
Наконец-то дошли руки.
Действительно, была ошибка в логике скрипта.
После того, как я сделал, чтобы радио по умолчанию при старте скрипта было выключено, потоки не создавались, а при выходе из машины либо при выключении радио, уничтожались, я не уследил за логикой и при выходе из машины, при выключенном радио, скрипт выполнял ненужную процедуру уничтожения потоков.
Любопытно, что не имея доступа к "своим" потокам, скрипт уничтожал "чужие" потоки, вырубая миссионную музыку.
Жаль только, что это работает лишь в отношении потоков, созданных в миссии, а не загруженных из сохранения.

Как бы то ни было, я дописал в обработку выхода из машины пару строк, чтобы процедура не выполнялась, когда не нужна.
Теперь конфликта с миссионной музыкой нет.

Обновлённые версии скриптов:
Ver. 2.1
https://drive.google.com/file/d/1ARu...ew?usp=sharing

Ver. 2.0
https://drive.google.com/file/d/1kb0...ew?usp=sharing

Ver. 1.1
https://drive.google.com/file/d/13kA...ew?usp=sharing

Последний раз редактировалось KlassenAS; 02.11.2020 в 21:46.
цитата
Поблагодарили: 5
Abradox (31.10.2020), EmptyBowl (09.11.2020), Firefox3860 (08.11.2020), grandshot (31.10.2020), Kaiser (31.10.2020)
Старый 08.11.2020, 20:42   #230
Firefox3860 вне форума Firefox3860
Аватар для Firefox3860
Mafia Modding Crew
Сообщений: 687
Репутация: 773
Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold Firefox3860 is a splendid one to behold
Priest
Информация о репутации (Firefox3860)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Judge
159
Enforcer
260
Firefox3860 / 773
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от KlassenAS Посмотреть сообщение
Обновлённые версии скриптов:
Круто, работает. Случайный выбор станции в машине и вправду добавляет реализма.
Надо как-нибудь целый релиз тогда оформить...
цитата
Поблагодарили: 3
EmptyBowl (09.11.2020), Kaiser (09.11.2020), KlassenAS (08.11.2020)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Регистрация
×
Чтобы оставлять на форуме Mafia-Game Forum сообщения, необходимо сначала зарегистрироваться.
Пожалуйста, укажите ваше имя пользователя, адрес электронной почты и прочую обязательную информацию о себе в форме ниже.
Имя:
Пароль / Адрес электронной почты
Пароль:
Подтвердите пароль:
Адрес электронной почты:
Подтвердите адрес:
Реферер
Если вы пришли на этот форум по совету одного из участников, то, пожалуйста, введите его имя пользователя.
Реферер:
Время на форуме может быть выставлено в соответствии с тем, где вы находитесь. Выберите свой часовой пояс из списка ниже.
Учитывать переход на летнее или зимнее время (DST).
Получать электронные письма
Время от времени администрация может посылать вам сообщения по электронной почте.

Если вы не хотите получать эти сообщения, отключите эту опцию.
Разрешить другим участникам писать вам по электронной почте.
Правила форума

Текущее время: 04:39. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.11 Release Candidate 2
Copyright ©2000 - 2024, vBulletin Solutions Inc. Перевод: zCarot (VK2425)