You are not logged in.
Actor.StoreDeadActorPos(1@)Этот опкод применяется для того, чтобы получить рандомные координаты возле актёра. Может быть применён как к мертвому педу, так и к "живому".
444andrei444 wrote:Боюсь так у меня не получится. Дело в том что мне надо это сделать со всеми жителями а не с теми которых я создал если я запишу ближайшего пешехода в переменную то если я его не успею убить его придется заново записывать. Или скажите если я так сделаю реально будет получить пикап?
{$CLEO .cs} 0000: while true if player.Defined(0) then actor.StorePos($player_actor, 0@, 1@, 2@) if 0AE1: 3@ = random_actor_near_point 0@ 1@ 2@ in_radius 2000.0 find_next false pass_deads false then repeat if actor.Dead(3@) then 0A96: 7@ = actor 3@ struct inc(7@, 0x544) 0A8D: 9@ = read_memory 7@ size 4 virtual_protect 0 if 9@ <> 123.0 then 0A8C: write_memory 7@ size 4 value 123.0 virtual_protect 0 actor.StoreDeadActorPos(3@, 4@, 5@, 6@) 8@ = pickup.Create(1240, 3, 4@, 5@, 6@) end end until 8AE1: not 3@ = random_actor_near_point 0@ 1@ 2@ in_radius 2000.0 find_next true pass_deads false end end 003D: end
Вот я думаю тут все правильно выдает ошибку (неизвестная команда then
Offline
В том то и дело что с саником потомучто у меня в других случаях такая же ошибка попробую переустановить
Offline
Сделал скрипт ложить деньги в шкаф если денег нет то взять нельзя. Но можно взять даже если их там нет. помогите с телефона сижу. Вот исходник
Last edited by 444andrei444 (02-05-2011 18:14)
Offline
Ну что я там не так сделал ?
=======!====!========
Все я понял равно не дописал сейчас все нормально все равно спасибо
Last edited by 444andrei444 (03-05-2011 13:51)
Offline
Зачем писать ключевые слова через опкоды? это ж неудобно
Для начала: у тебя нет ни одной проверки баланса игрока) деньги можно ложить, даже если их у тебя нет xD) ещё одна глупая ошибка здесь:
:NONAME6 if 1@ = 0 jf @noname18
в проверках нужно писать = дважды, т.е. так:
:NONAME6 if 1@ == 0 jf @noname18
так же ошибка тут:
if 00EC: actor $PLAYER_ACTOR 0 near_point 2496.9102 -1696.6016 radius 1.0 1.0 jf @Noname_2
взять деньги можно будет даже стоя на крыше дома нужно учитывать и координату Z:
if 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2496.9102 -1696.6016 1014.7422 radius 1.0 1.0 1.0 jf @Noname_2
вот код скрипта в исправленном виде(в игре не проверял):
// 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 :noname1 1@ = 0 :Noname_2 wait 50 if 00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2496.9102 -1696.6016 1014.7422 radius 1.0 1.0 1.0 jf @Noname_2 00BC: show_text_highpriority GXT 'AAQV' time 1500 flag 1 if 0AB0: key_pressed 89 jf @Noname5 :Noname_4B wait 50 if player.Money($PLAYER_ACTOR) < 100 then 00BC: show_text_highpriority GXT 'AAQD' time 1500 flag 1 // 'AAQD' - та запись, где написано, что у тебя нет денег jump @Noname_4B end 1@ += 100 0109: player $PLAYER_CHAR money += -100 :noname5 wait 0 if 0AB0: key_pressed 78 jf @Noname_2 :NONAME6 if 1@ == 0 jf @noname18 00BC: show_text_highpriority GXT 'AAQB' time 1500 flag 1 jump @Noname_2 :noname18 0109: player $PLAYER_CHAR money += 100 1@ += -100 jump @Noname_2
Offline
Хе хе забыл проверку денег сделать спасибо за помощь исправил я представляю сколько всего ошибок в моих скриптах делаю мод в котором новые миссии и возможности сделал уже 5 миссии и столько же возможностей кстати переустановил билдер команда then так и не стала обрабатывается, а ничего не будет если я плставлю новый ини там вроде 2 тысячи с лишним опкодов ?
Last edited by 444andrei444 (03-05-2011 17:47)
Offline
новый ини там вроде 2 тысячи с лишним опкодов?
больше опкодов, чем уже есть всё равно не будет, чтобы были новые опкоды, надо писать плагины...
кстати переустановил билдер команда then так и не стала обрабатывается
у тебя CLEO 4 стоит? если нет, попробуй установить и при установке не забудь обновить файлы саника (в установщике будет такая опция) может быть поможет...
Offline
ребят, мне нужна помощь опытных скриптеров, наверное очень опытных)) гляньте на мою разработку - http://www.youtube.com/watch?v=eVvKKqvkSS8
Вид от первого лица) Проблема в том, камера движется рывками, я об этом писал ещё пару десятков страниц назад в этой теме. Вкратце о скрипте: крепил объект к голове игрока, затем крепил на объект камеру так, чтобы она смотрела на актёра (просто любого актёра) (для этого понадобилось править опкод 067B, в этом мне помог Den_spb), который в свою очередь находится в туррете с оффсетом в пару десятков метров от объекта, который постоянно перемещается посредством записи координат игрока и перемещении в эти координаты этого самого объекта с сохранением его текущего угла (опкод 0815). В зависимости от перемещений мыши я устанавливаю нужный угол этому объекту, следственно положение актёра меняется, меняется направление взора камеры.... короче жестокий скрипт получился, но основная проблема в том, что если прикрепить объект к кости игрока (070A), а потом к нему крепить камеру (или другой объект, или машину), то она двигается рывками, будто я просто циклом перемещаю её.
Короч надо прикрепить камеру непосредственно к кости, при этом чтобы она смотрела на указанного актёра (хотя это уже можно реализовать опкодом 0159).
я так понимаю, мне никто не сможет помочь? если таки сделать такой опкод, который прикрепит камеру к кости, это ж будет самый лучший вид от первого лица! из стандартных опкодов я уже выжал всё что мог...
P.S. ещё одно видео этого же вида от первого лица - http://www.youtube.com/watch?v=Bmfl04Er9ic
кстати на видео не особо заметно рывков, т.к. не опускал вниз камеру, чтобы показать ноги, а при трюках время замедлялось скриптовым способом (015D)...
Last edited by Voron295 (03-05-2011 19:57)
Offline
Какие есть способы проигрывать звук в SA, помимо опкодов клео? Сегодня попробовал SAAP.asi 1.8, всё отлично, только игра крашится при автосейве или квиксейве. При этом обычный сейв работает нормально, что странно. Может можно вызывать функцию из bass.dll, передавая в неё нужные параметры?
UPD. Хм, а вот версия 1.1 такого бага не имеет(надеюсь, каких-нибудь других тоже).
0B51: 30@ = play_media_file "audio\16BC079B.wav" direct_path 0 volume 100 position 0.0 loop 0 menu_flag 0 0B53: set_audio 30@ volume 100 _for 0 ms position -1 loop -1 menu_flag -1
Похоже, у меня таки будет шотган со звуком из TBoGT:D
Last edited by Sergey81 (04-05-2011 22:39)
Offline
Saap вроде в alien city есть только как узнать какие там опкоды где его скачать
&&&&&&&&&&&&&&
Поиск в гугле не дал результатов
Last edited by 444andrei444 (05-05-2011 05:09)
Offline
@444andrei444 - http://gtamaps.net/forum/index.php?showtopic=11969
Версия 1.8 отлично находится в гугле. Впрочем, если у тебя работает клео 4, наверно лучше использовать опкоды клео 4, я к сожалению такой опцией не располагаю.
Offline
@444andrei444 - http://gtamaps.net/forum/index.php?showtopic=11969
Версия 1.8 отлично находится в гугле.
хммм, в гугле находится тема на гтамапс, там вроде ссылка на версию 1.8, но она ведёт на какое-то бомбоубежище для GTA III, а больше гугл ничё не показывает, короч, нужна рабочая ссыль
Offline
@Voron295 -
http://gtamaps.net/forum/index.php?act= … &id=347654 - 1.1
http://gtamaps.spb.ru/files/pafiledb.ph … ile&id=791 - 1.8
http://bit.ly/mGATd0 - вторая ссылка на версию 1.8
Offline
большое спасибо, пригодится)
Мне кстати понравилась идея радио в GTA United 1.2 - http://www.youtube.com/watch?v=NiJa-9HSXQE
Написал себе похожий скрипт, с радиостанциями из GTA3, VC, LCS и VCS.
Last edited by Sergey81 (05-05-2011 21:35)
Offline
а я собираюсь написать скрипт mp3-плеера, типа у Гг будет mp3-плеер и, примерно как в модификации радар и худ из гта 4, будет вылезать текстурка мп3-шки (в том моде был телефон...) там можно будет осуществлять стандартное управление - следующий трек, предыдущий, пауза, стоп, громкость и т.д. саму музыку нужно будет предположительно кидать в папку "GTA SA\mp3\".
Offline
Как вывести значение переменной цветным текстом читал статью но не понял?
Offline
{$cleo} 0000: while true wait 0 00BF: 0@ = current_time_hours, 1@ = current_time_minutes 03F0: enable_text_draw 1 033F: set_text_draw_letter_size 1.0 3.0 // размер буквы 081C: draw_text_outline 1 RGBA 255 255 255 255 // обводка (первый параметр - толщина обводки, четыре остальных параметра - цвет и прозрачность) 0340: set_text_draw_RGBA 30 20 160 255 // цвет текста и его прозрачность 045B: draw_text_2numbers 10.0 40.0 GXT 'TIME' numbers 0@ 1@ // вывод на экран 033F: set_text_draw_letter_size 1.0 3.0 // размер буквы 0349: set_text_draw_font 2 // шрифт 060D: draw_text_shadow 2 color_RGBA 255 255 255 255 // тень (первый параметр - расстояние тени, четыре остальных параметра - цвет и прозрачность) 0340: set_text_draw_RGBA 30 20 160 255 // цвет текста и его прозрачность 045B: draw_text_2numbers 10.0 10.0 GXT 'TIME' numbers 0@ 1@ // вывод на экран end
Offline
Спасибо сегодня испробую
Offline
@Voron295 -
Для работы нужны только:
bass.dll
bass_fx.dll
ogg.dll
QuickOpcode.asi
SAAP.asi
В версии 1.1 и того меньше, всё тоже самое, кроме bass_fx.dll и ogg.dll
Насчёт совместимости незнаю.
Offline
мне нужна именно совместимость, а то что-то я пробовал ставить все файлы из 1.8 и CLEO.asi от клео 4 - не работает... хотя может я что-то не так делаю? код скрипта:
:1 wait 0 if 0ab0: 48 jf @1 0B51: 10@ = play_audio "CLEO\test.mp3" direct_path 0 prescan 1 volume 100.0 position 0.0 loop 0 menu_flag 0 tempo 0.0 speed 100.0 pitch 0.0 synchronize speed 1 volume 1 save 1 wait 10 0B52: get_audio 0@ state 1@ volume 2@ position 2@ length 2@ loop 2@ menu_flag 2@ tempo 2@ speed 2@ pitch 2@ synchronize speed 2@ volume 2@ while 1@ == 1 wait 0 0B52: get_audio 0@ state 1@ volume 2@ position 2@ length 2@ loop 2@ menu_flag 2@ tempo 2@ speed 2@ pitch 2@ synchronize speed 2@ volume 2@ end jump @1
Offline
У меня вопрос хочу сделать скрипт создатель гонок ну типа отмечаешь место на радаре подьезжаешь к машине нажимаешь че то и начинается гонка так в тест драйве
зделал набросочный скрипт сначала он был длинее но в поиске ошибки я его сократил до минимума
проблема в том что когда я приезжаю на место которое я отметил и ничего . Вылезаю из машины вылет. меня интерисует в первую очередь вопрос как сделать так чтобы давали деньги когда я доеду до этой точки дальше я исправлю другие баги сам. Ну и еше машина противника не трогается с места ну это я может и сам сделаю
=========@======
М да походу придется самому искать решение
сделаю все заново
сначала приходишь на маркер деньги получаешь и буду изменять пока не будет результата
Last edited by 444andrei444 (09-05-2011 09:11)
Offline
@Voron295 - не работает как? Вылетает или звук не проигрывается? Потому что для проигрывания нужно после 0B51: ставить 0B53: с параметрами -1.
Пример я выше приводил.
Offline