Mafia-Game Forum

Mafia-Game Forum (https://mafia-game.ru/forum/index.php)
-   Скриптинг (https://mafia-game.ru/forum/forumdisplay.php?f=10)
-   -   Скрипт автомобильного радио (https://mafia-game.ru/forum/showthread.php?t=1047)

Firefox3860 11.10.2020 18:30

KlassenAS, Круто ты постарался, далеко не каждый смог бы такое на mafiascript'е сделать :)

Цитата:

Сообщение от KlassenAS (Сообщение 12454)
Единственное, что меня сейчас смущает: при выходе из машины, когда треки ставятся на паузу, не всегда срабатывает команда CityMusic_On.
Причём, чаще не срабатывает.

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

Цитата:

Сообщение от KlassenAS (Сообщение 12454)
Да, кстати, Firefox3860, я нашёл прямые ссылки на mp3 десяти радиостанций, транслирующих джаз и блюз.
Самое то для "Мафии".
Но все они намертво вешают игру.
В игре нормально аботает только та ссылка на джойрадио, которую ты мне скинул.
Не знаешь, почему?

Все сразу или по отдельности? Та ссылка, что я кинул, тоже вешает, но не надолго. Я думал, что в это время игра пытается подключиться к сайту через интернет и начать прогрузку. Возможно, в случаях с другими ссылками она не может сделать подключение или действительно с форматом у них что-то не то.

KlassenAS 11.10.2020 20:14

Ядрёна вошь! Опять этот баг после сохранения появился!
Почему до этого весь день не было?!
Вообще не понимаю, что происходит.
Реально, что-ли, при каждом выходе из машины все потоки уничтожать надо?
И что это будет?
Каждый раз, как садишься в машину, всё заново?

Цитата:

Сообщение от Firefox3860 (Сообщение 12460)
Я так думаю, что она срабатывает, но музыка не включается сразу потому, что в этот момент игрок находится за пределами области города, в которой включается определённая citymusic. Такое бывает, надо поперемещаться по городу, и тогда она должна заиграть.

Ну так я-то не за пределами города, я возде бара Сальери.

Цитата:

Сообщение от Firefox3860 (Сообщение 12460)
Все сразу или по отдельности?

По отдельности. Достаточно одной.

Abradox, родную мафиозную музыку я в скрипт вписал. Первая радиостанция будет.
Какие планы у нас дальше?

UPD: Поздравьте меня, друзья, я идиот!
Я же сам использовал команды Stream_GetPos и Stream_SetPos для определения окончания трека и для его перезапуска, если нужно.
Я же могу, при выходе из машины, запоминать позицию каждого потока, уничтожать потоки, а при возвращении в машину всё восстанавливать!
Похоже, мне предстоит снова хорошенько перелопатить все версии скрипта...

GOLOD55 11.10.2020 23:53

точно лол, ж есть стрим_сетпос:)
помнится, в музтомате я замутил ею прикол: если один и тот же трек выбирать слушать, то "игла граммафона" начинала иной раз перескакивать "дорожки":)

KlassenAS 12.10.2020 10:18

Ну вот! Наконец-то!
И команда CityMusic_On нормально работать стала, и сетлупить можно спокойно, не прибегая к изощрённым способам определения длительности, когда это не нужно.

Ver. 1.0
Kaiser, проверяй, теперь у тебя вообще не должно быть проблем с использованием скрипта.

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

Код:

//Radio Script Ver. 1.0 12-10-2020 By KlassenAS For Kaiser
//Одна радиостанция с одним треком.
//Поле окончания трек сбрасывается на начало.
//Этот скрипт хорош, если у Вас файл с длиннющей записью реального либо фейкового радиоэфира.
Dim_Act 2
Dim_Flt 8
GetActivePlayer 0
FindActor 1, "fire"


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

Let Flt[0]=0  //поток 00
Let Flt[1]=0  //логика
Let Flt[2]=-1 //сиденье/Время с начала игры/
Let Flt[3]=0  //Прошлое время с начала игры
Let Flt[4]=-1 //разница во времени игры
Let Flt[5]=-1 //прошлое время потока
Let Flt[7]=0 //текущее время потока


Label CHECK
CompareOwnerWithEx 0,1,CAR_IN,CAR_OUT
//Human_GetSeatIdx 0,2
//If Flt[2]=-1,CAR_OUT,CAR_IN

Label CAR_IN
If Flt[1]=0,-,CHECK
CityMusic_Off
Wait 500
CommandBlock 1
Stream_Create 0,"sounds\music\fireradio.ogg"
Stream_SetLoop 0,1
Stream_FadeVol 0,1,0,0
Stream_SetPos 0,7
Stream_Play 0
Stream_FadeVol 0,1,1,1
Let Flt[1]=1
CommandBlock 0
GoTo CHECK

Label CAR_OUT
If Flt[1]=1,-1,CHECK
Stream_GetPos 0,7
Stream_FadeVol 0,1,0,0
Stream_Pause 0
Stream_Destroy 0
CityMusic_On
Let Flt[1]=0
GoTo CHECK

[свернуть]

Позже обновлю остальные версии скрипта.

Abradox 12.10.2020 12:38

Цитата:

Сообщение от KlassenAS (Сообщение 12463)
Abradox, родную мафиозную музыку я в скрипт вписал. Первая радиостанция будет.
Какие планы у нас дальше?

Я думаю, что нужно добавить радиостанции с музыкой из ремейка Мафии.

Kaiser 12.10.2020 19:58

2 KlassenAS

Спасибо, ты мозг! Давай М4 сделаем))

Firefox3860 12.10.2020 20:10

KlassenAS, Что, терперь вообще без багов? Не включется само при загрузке? Но теперь получается, что когда ты не в машине, радио останавливает эфир, так?

Цитата:

Сообщение от Abradox (Сообщение 12475)
Я думаю, что нужно добавить радиостанции с музыкой из ремейка Мафии.

Я достал из М1DE файлы музыки на радио (скачал выдернутую из стима невзломанную игру, она не запускается, но файлы на месте). Могу отобрать оттуда записи и распределить их по 3-м оставшимся станциям. Или по по 2-м, чтобы одну станцию оставить для какой-то другой музыки, как лучше? Займусь, когда время будет.

Цитата:

Сообщение от Kaiser (Сообщение 12483)
Давай М4 сделаем))

хехе, "сделаем" )))

Abradox 12.10.2020 23:21

Цитата:

Сообщение от Firefox3860 (Сообщение 12484)
Я достал из М1DE файлы музыки на радио (скачал выдернутую из стима невзломанную игру, она не запускается, но файлы на месте). Могу отобрать оттуда записи и распределить их по 3-м оставшимся станциям. Или по по 2-м, чтобы одну станцию оставить для какой-то другой музыки, как лучше? Займусь, когда время будет.

Сколько радиостанций в M1DE? Делай их столько же сколько их там. Оставшуюся радиостанцию забьем другой музыкой того времени.

KlassenAS 13.10.2020 09:47

Цитата:

Сообщение от Kaiser (Сообщение 12483)
2 KlassenAS

Спасибо, ты мозг! Давай М4 сделаем))

Сколько там стоит купить права на франшизу?
Ты ведь имел в виду игру, а не карабин М4? :D
Цитата:

Сообщение от Abradox (Сообщение 12487)
Сколько радиостанций в M1DE? Делай их столько же сколько их там. Оставшуюся радиостанцию забьем другой музыкой того времени.

Когда скрипт будет полностью отлажен, нет проблем масштабировать его под любое количество радиостанций.
Не обязательно забивать все 4 станции, можно урезать до 3 или расширить до 1024 )
Правда, я пока успел переделать только версию 1.0, 1.1 и 1.2
Так же, нашёл мелкую ошибку в переключении радиостанций, исправил.
С версией 4х10 дела обстоят сложнее, там нюансов больше, ещё не закончил переделку скрипта.
Для личного пользования потом думаю себе сделать версию, в которой будет музыка из оригинала, радио из ремейка, из мафии2, из мафии3, пара кастомных плейлистов с рок-н-роллом типа AC/DC, и ссылочка на реальное "джойрадио".
Цитата:

Сообщение от Firefox3860 (Сообщение 12484)
KlassenAS, Что, теперь вообще без багов? Не включится само при загрузке? Но теперь получается, что когда ты не в машине, радио останавливает эфир, так?

Да, благодаря запоминанию времени трека получается, как будто поставили на паузу.
Вообще, если бы была функция, позволяющая узнать продолжительность трека, можно было бы заморочиться, и реализовать пропуск части радиоэфира, пока находишься не в машине, засекать время вне машины и перематывать на это время трек, если нужно, переключать на следующий и перематывать остаток и всё в таком роде.
Но такой функции нет )

Abradox 13.10.2020 12:38

Мне хотелось бы так: музыка из Мафии, радиостанции из M1DE, папка куда можно кидать свои свою музыку.
Есть возможность кинуть в папку свою музыку и ничего никуда не прописывать вручную?


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

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