You are not logged in.
Deniska, не проще ли использовать мой плеер?:crazy: Нагружаешь Алиена той же работой, которую я сделал, к тому же он не хотел добавлять новые опкоды, но если хочет - пусть делает. Я лично переписываю щас свой плеер под C++ и ещё есть такая функция - синхронизация громкости с громкостью звуков/радио игры, хотя я считаю не особо трудно скриптом сделать.
Offline
Желательно.
Я хочу, чтобы выполнять функции системы, такие как арктангенс операции.
Кроме того, MTASA или даже преобразования SAMP и другие файлы сценария
Я надеюсь, что.
Вот и все.
Offline
Приветствую всех,
Давненько не был на этом форуме, да и про существование CLEO 4 узнал практически случайно
Alien, должен поблагодарить тебя за проделанную работу, в частности, со звуками. Поддержка 3D звуков очень помогает в создании модов, но наткнулся на одну неприятную особенность. При удалении нескольких аудио-потоков через опкод 0AAE подряд (у меня было 5 потоков), игра заметно подвисает. Процессор у меня далеко не слабенький, да и памяти хватает, но создаётся впечатление, что я сижу за какой-то рухлядью, которая нормально даже звуки выгрузить не может. Понимаю, что здесь практически нечего сделать для ускорения данного процесса, но не мог бы ты отделить выгрузку аудио-потоков в отдельный поток в процессе?
Offline
подскажите , кто сталкивался или знает:
почему при использовани 3d звука в определенном месте звук играет фоном как при обычном мп3? может надо дополнительно плагины или библиотеки ставить? или приведите пример кода для прикрепления 3d звука к определенному месту или актеру или машине...
Offline
Желательно.
Я хочу, чтобы выполнять функции системы, такие как арктангенс операции.
Особенности перевода гугла?
Аркатгенс операции можно выполнять простыми вычислениями (на форуме много таких примеров).
Offline
Вот на что наткнулся недавно при написании и тестировании скрипта, игра вылетает когда я получаю тачку актера через
03C0: 30@ = actor 30@ car
ошибка возникает тогда, когда проверяешь или используешь такой хендл в дальнейшем.
например, проверив так
not Car.Wrecked(30@)
но вот что интересно, хендл оказывается отрицательным при просмотре ошибки в scmlog.log.
Может ли хендл быть отрицательным, хм...
Может есть ошибка в CLEO? Но ведь это стандартный опкод, да-к в чем же дело?
I know everything and nothing...
Offline
Надо проверить сам хендл (30@ <> -1) или использовать опкод car defined
Offline
Там вот какая фишка выходит, хендл получается отрицательным, но не минус один, а там число большое, когда его проверяешь на Car.Defined, то проверку проходит, а вот not Car.Wrecked вылет, и остальные опкоды дают вылет.
I know everything and nothing...
Offline
@mfisto - а ты читал приписку к этому опкоду? Он работает только на миссиях. У меня такая же фигня была, пришлось получать хендл машины через closest car.
Offline
03C0: $2197 = actor $PLAYER_ACTOR car // mission only
У меня так помечен. И да, он не работает, хендл машины искать ни в какую не хочет.
Я конечно понимаю, что проще сослаться на то, что "у меня всё работает" и ничего не исправлять.
Offline
:lol::D
Offline
Sw[ee]t, у тебя наверно нелицензионный Санни Билдер
Шутник
Заметил такую фиговину, при рандомном поиске объекта или педа, а потом сравнении их любой командой, проверяющей, то ли это что нам нужно, игра вылетает
Опкоды типа:
09CC: object %1% model_is %2% 02F2: actor %1% model == %2%
Offline
Sw[ee]t, у тебя наверно нелицензионный Санни Билдер
А такой существует? Я говорю что опкод не работает, исправьте.
Offline
Во общем получается так, что раньше я такого не замечал за опкодом 03C0: однако сейчас это проявляется. Дело в том, что я действительно воспользовался проверкой Actor.Driving(30@) (по совету Den_spb), которую я упускал в силу того, что при отсутствии актера в машине, опкод выдавал всегда -1 и этого было достаточно, а сейчас что-то с этим опкодом не то.
Я прошу Alien'a проверить все как следует, хотя опять же меня смущает, что это стандартный опкод, но все же.
I know everything and nothing...
Offline
работает всё, руки вправь
Во общем получается так, что раньше я такого не замечал за опкодом 03C0: однако сейчас это проявляется. Дело в том, что я действительно воспользовался проверкой Actor.Driving(30@) (по совету Den_spb), которую я упускал в силу того, что при отсутствии актера в машине, опкод выдавал всегда -1 и этого было достаточно, а сейчас что-то с этим опкодом не то.
Я прошу Alien'a проверить все как следует, хотя опять же меня смущает, что это стандартный опкод, но все же.
@3Doomer - специально для тебя приводил текст:
Я конечно понимаю, что проще сослаться на то, что "у меня всё работает" и ничего не исправлять.
Offline
Заметил такую фиговину, при рандомном поиске объекта или педа, а потом сравнении их любой командой, проверяющей, то ли это что нам нужно, игра вылетает
Надо сначала убедиться, что пед (объект, машина) найден (применить проверку на существование), а лишь потом производить над ним действия.
Offline
@Alien, не подскажешь, где в памяти опкод 0AE1 хранит последнего найденного актёра?
Offline
А как он его может хранить. Тем более найденного? Регистр хранит указатель на актёра (предполагаемого, берётся из пула педов) и в скрипте проверяется "существует-ли актёр", и если да - опкод 056E возвращает true, в противном случае - false. Короче, много лишнего написал, это на случай если ты не представляешь себе как это работает
Offline
0AE1 хранит последеного найденного актера либо в стурктуре CCustomThread, либо в статической переменной (если это CScriptThread).
static int gLastIdx = 0; CCustomThread *asCustom = this->AsCustom(); int *lastIdx = asCustom ? &asCustom->lastFoundActor : &gLastIdx;
Offline