[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 32 из 125«123031323334124125»
Форум » Игры серии GTA » GTA San Andreas » Вопросы по скриптингу Sanny Builder и заказы (Вы можете получить ответы на вопросы по SB и сделать заказ)
Вопросы по скриптингу Sanny Builder и заказы
wmysterio
Администраторы
Скриптер
22.11.11 21:52
Offline
Если у вас возник вопрос по скриптингу Sanny Builder, обращайтесь! Мы постараемся решить вашу проблему wink Это ещё не значит, что все прям бросятся решать во чтобы то не стало, но ответ вы сможете вы получить как вариант решения или как невозможность или сложность решения.
УВАЖАЕМЫЕ ПОЛЬЗОВАТЕЛИ! ПРОСЬБА КОД СКРИПТОВ ПОМЕЩАТЬ В КОНСТРУКЦИЮ КОДА:

или

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

Внимание! От этого момента тема предназначена ещё и для заказов скриптов и миссий. Я это сделал по одной причине - пользователи постоянно путают/или не ищут темы и приводят заказ здесь. Теперь этой путаницы не будет. Здесь можно проводить заказы, но Вы должны указать в начале поста текст "НА ЗАКАЗ". Постарайтесь как можно детальнее объяснить суть скрипта.
Прикрепления: 0248203.png(1Kb) · 9085525.png(0Kb)

Slivkin-Sergey
Модераторы
27.07.12 16:50
Offline
Code
// 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---------------
thread 'SPEAK'

:SPEAK_1
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @SPEAK_1
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 0@ closest_ped_to 1@
if
Actor.Defined(1@)
jf @SPEAK_1
if and
00F3:   actor $PLAYER_ACTOR near_actor 1@ radius 3.0 3.0 3.0 on_foot
0AB0: key_pressed 15
03A3: actor 1@ male
jf @SPEAK_1
0AAC: 2@ = load_audiostream "CLEO\Words\Good1.wav"  
0AAC: 3@ = load_audiostream "CLEO\Words\Good2.wav"
0AAC: 4@ = load_audiostream "CLEO\Words\Bad1.wav"
0AAC: 5@ = load_audiostream "CLEO\Words\Bad2.wav"

:SPEAK_2
wait 0
0209: 6@ = random_int_in_ranges 0 3  
      if  
      6@ == 0  
      then  
      0AAD: set_audiostream 2@ perform_action 1  
      end  
      if  
      6@ == 1  
      then  
      0AAD: set_audiostream 3@ perform_action 1  
      end  
      if  
      6@ == 2  
      then  
      0AAD: set_audiostream 4@ perform_action 1  
      end  
      if  
      6@ == 3  
      then  
      0AAD: set_audiostream 5@ perform_action 1  
      end
jump @SPEAK_1

Не работает. Дело конечно привычное, но все же, почему?


wmysterio
Администраторы
Скриптер
27.07.12 17:15
Offline
Quote (Slivkin-Sergey)
Не работает. Дело конечно привычное, но все же, почему?
А где ты взял эту клавишу
Code
0AB0: key_pressed 15
? Я посмотрел в справке - нету такой smile

Slivkin-Sergey
Модераторы
27.07.12 17:27
Offline
wmysterio, спасибо, все работает. Только два нюанса:
1. Вокруг педа создается красная сфера.
2. Звук воспроизводится несколько раз.

wmysterio
Администраторы
Скриптер
27.07.12 17:43
Offline
Quote (Slivkin-Sergey)
1. Вокруг педа создается красная сфера.
Ого ) наверное опкод 00F3 создаёт его, пробуй в место него
Code
00F2:   actor $PLAYER_ACTOR near_actor 1@ radius 3.0 3.0 0
Quote
Звук воспроизводится несколько раз.
Сделай задержку побольше, например 1000 или проверь на завершения воспроизведения звука

Slivkin-Sergey
Модераторы
27.07.12 17:51
Offline
Quote (wmysterio)
Сделай задержку побольше, например 1000 или проверь на завершения воспроизведения звука

Вот я никак и не могу вставить в код эту проверку.

wmysterio
Администраторы
Скриптер
27.07.12 18:02
Offline
Quote (Slivkin-Sergey)
Вот я никак и не могу вставить в код эту проверку.
Вот:
Code
// 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---------------
thread 'SPEAK'

:SPEAK_1
wait 0
0AAC: 2@ = load_audiostream "CLEO\Words\Good1.wav"       
0AAC: 3@ = load_audiostream "CLEO\Words\Good2.wav"
0AAC: 4@ = load_audiostream "CLEO\Words\Bad1.wav"
0AAC: 5@ = load_audiostream "CLEO\Words\Bad2.wav"

:SPEAK_2
wait 0
if
Player.Defined($PLAYER_CHAR)
then
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 0@ closest_ped_to 1@
         if
         Actor.Defined(1@)
         then
               if and
               00F2:   actor $PLAYER_ACTOR near_actor 1@ radius 3.0 3.0 0
               0AB0: key_pressed 13 // enter
               03A3: actor 1@ male
               then
               jump @SPEAK_3
               end
         end
end
jump @SPEAK_2

:SPEAK_3
wait 0
0209: 6@ = random_int_in_ranges 0 3       
           if       
           6@ == 0       
           then       
           0AB9: get_audiostream 2@ state_to 7@
           0AB9: get_audiostream 3@ state_to 8@
           0AB9: get_audiostream 4@ state_to 9@
           0AB9: get_audiostream 5@ state_to 10@
               if AND
               7@ == -1
               8@ == -1
               9@ == -1
               10@ == -1
               then
               0AAD: set_audiostream 2@ perform_action 1       
               end
           end       
           if       
           6@ == 1       
           then       
           0AB9: get_audiostream 2@ state_to 7@
           0AB9: get_audiostream 3@ state_to 8@
           0AB9: get_audiostream 4@ state_to 9@
           0AB9: get_audiostream 5@ state_to 10@
               if AND
               7@ == -1
               8@ == -1
               9@ == -1
               10@ == -1
               then
               0AAD: set_audiostream 3@ perform_action 1       
               end       
           end       
           if       
           6@ == 2       
           then       
           0AB9: get_audiostream 2@ state_to 7@
           0AB9: get_audiostream 3@ state_to 8@
           0AB9: get_audiostream 4@ state_to 9@
           0AB9: get_audiostream 5@ state_to 10@
               if AND
               7@ == -1
               8@ == -1
               9@ == -1
               10@ == -1
               then
               0AAD: set_audiostream 4@ perform_action 1       
               end      
           end       
           if       
           6@ == 3       
           then       
           0AB9: get_audiostream 2@ state_to 7@
           0AB9: get_audiostream 3@ state_to 8@
           0AB9: get_audiostream 4@ state_to 9@
           0AB9: get_audiostream 5@ state_to 10@
               if AND
               7@ == -1
               8@ == -1
               9@ == -1
               10@ == -1
               then
               0AAD: set_audiostream 5@ perform_action 1       
               end       
           end
jump @SPEAK_2
Считываем состояние аудифайлов
Code
0AB9: get_audiostream 2@ state_to 7@
0AB9: get_audiostream 3@ state_to 8@
0AB9: get_audiostream 4@ state_to 9@
0AB9: get_audiostream 5@ state_to 10@
и проверяем значения. Если все равны -1 (воспроизведения остановлено), то дальше воспроизводим звук

Werewolf
Проверенные
27.07.12 18:16
Offline
Slivkin-Sergey, У тебя звук 5@ ни когда не будет проигрываться, у тебя в опкоде 0 3
Будет учитываться только 0, 1, 2, а вот 3 не будет учитываться, если хочешь что бы работала проверка 6@ == 3
То в 0209: 6@ = random_int_in_ranges 0 3
Поставь 0 4
Тогда все будет норм
А вот звук не знаю, вроде не должен проигрываться несколько раз

Yurko_UA
Модераторы
Модератор
27.07.12 20:12
Offline
wmysterio, Есть такой опкод, чтоб включал радио даже если игрок не в машине?

wmysterio
Администраторы
Скриптер
27.07.12 20:18
Offline
Quote (Yurko_UA)
Есть такой опкод, чтоб включал радио даже если игрок не в машине?
В базе я не находил такого опкода. Возможно через память можно это сделать

Slivkin-Sergey
Модераторы
27.07.12 21:07
Offline
Quote (Werewolf)
То в 0209: 6@ = random_int_in_ranges 0 3 Поставь 0 4 Тогда все будет норм

У меня все и так нормально.
Quote (wmysterio)
и проверяем значения. Если все равны -1 (воспроизведения остановлено), то дальше воспроизводим звук

А вот за код спасибо. Затупил жестко, не знал куда вставить.
И еще.
Code
// 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---------------  
  thread 'RADIO'
   
  :RADIO_1
  wait 0
  if
  Player.Defined($PLAYER_CHAR)
  jf @RADIO_1
  if and
  not Actor.Driving($PLAYER_ACTOR)
  not Actor.Dead($PLAYER_ACTOR)
84AD:   not actor $PLAYER_ACTOR in_water  
0ADC: test_cheat "RADIO"
jf @RADIO_1
if or
02D8:   actor $PLAYER_ACTOR current_weapon == 0  
02D8:   actor $PLAYER_ACTOR current_weapon == 1
jf @RADIO_1  
Model.Load(2226)
038B: load_requested_models

:RADIO_2
wait 0
if
Model.Available(2226)
jf @RADIO_2
wait 0
Object.Create(13@, 2226, 0.0, 0.0, 0.0)
wait 500
09A0: actor $PLAYER_ACTOR attach_object 13@ with_offset 0.04 0.1 -0.02 on_bone 5 16 perform_animation "NULL" IFP_file "NULL" time -1  
0A93: end_custom_thread

При вводу чита "RADIO" не цепляется объект!

wmysterio
Администраторы
Скриптер
27.07.12 21:26
Offline
Quote (Slivkin-Sergey)
При вводу чита "RADIO" не цепляется объект!
используй опкод
Code
070A: AS_actor $PLAYER_ACTOR attach_to_object 13@ offset 0.04 0.1 -0.02 on_bone 5 16 perform_animation "NULL" IFP_file "NULL" time -1
Так как 09A0 используется для прицепления второй вещи к актёру.

Slivkin-Sergey
Модераторы
27.07.12 21:43
Offline
wmysterio, помогло! Только как этот объект "повернуть", чтобы СЖ держал магнитофон за ручку?

undead099032
Проверенные
27.07.12 22:58
Offline
Кто может помочь?

Я хочу сделать мод типо когда ГГ медетирует у него регенятся хп( если у него половина или мало хп) как мне это осуществить?? Как эти моды мне соединить? Так то я их по одельности сделал)

ivan
Пользователи
27.07.12 23:48
Offline
1) ivan
2) мод шага
3) хотелось бы так
- по умолчанию (просто клавишей "вперёд") вместо лёгкого бега сделать шаг, а чтобы легко бежать, нужно удерживать ту самую кнопку для шага (т.е. просто поменять эти ф-ии местами)

- ввести дополнительно чуть повышенную скорость шага:
Скорость его пусть будет ровно средняя между скоростью медленного шага и скоростью сиджея если присесть и двигаться вперёд.
Анимацию взять от шага, скорость анимации та же, но ноги пусть чуть проскальзывают вперёд, чтобы камера не тряслась в фпс моде.
Назначить спец. клавишу, переключающую между этими двумя видами медленного шага.

кто может сделать?
если встречали что-либо из модов для шага, просьба поделиться surprised
Отредактировал ivan - Пятница, 27.07.12, 23:48

NARC
Проверенные
27.07.12 23:59
Offline
ivan, я посмотрю, что можно сделать. думаю за 1-2 дня справлюсь =)

SanKing
Друзья
28.07.12 10:05
Offline
Undead099032, могу попробовать...
Вот:

P. S. end_custom_thread я не использую (вылетает игра), но ты можешь попробовать.
P. P. S. Медитацию ты можешь использовать раз в 60 секунд.
Отредактировал SanKing - Суббота, 28.07.12, 10:06

Slivkin-Sergey
Модераторы
28.07.12 11:22
Offline
Quote (SanKing)
Вот:

По-моему на медитацию похожи анимации из файла "PARK.ifp".
Кстати, кто знает, есть ли какая-либо проверка "актёр не атакует или не враг СЖ?"?

NARC
Проверенные
28.07.12 14:10
Offline
Quote (Slivkin-Sergey)
Кстати, кто знает, есть ли какая-либо проверка "актёр не атакует или не враг СЖ?"?

051A: actor 1@ damaged_by_actor $PLAYER_ACTOR
проверка актёр повредил СЖ, можно щитать, что актёр атакует

Slivkin-Sergey
Модераторы
28.07.12 15:55
Offline
Quote (NARC)
051A: actor 1@ damaged_by_actor $PLAYER_ACTOR

Не, мне нужна именно проверка "враг ли актёр для СЖ?". Например, для ментов, ведь они могут стать врагами, даже если их не дамагнуть.

vovafd
Пользователи
29.07.12 19:20
Offline
помогите пожалуйста, хочу сделать какую нибудь штуку для авто, например отрывающиеся окна, создам я в модели авто дамми с моделями стекол
так вот как сделать чтение именно нужного дамми?

Форум » Игры серии GTA » GTA San Andreas » Вопросы по скриптингу Sanny Builder и заказы (Вы можете получить ответы на вопросы по SB и сделать заказ)
Страница 32 из 125«123031323334124125»
Поиск: