[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 111 из 128«12109110111112113127128»
Форум » Игры серии 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)

pro12
Пользователи
08.01.15 23:42
Offline
Цитата wmysterio ()
Если это вопрос, то я понятия не имею как на него отвечать Но то, что не может убить то это вполне естественно. "напарники" в игре обычно такими и выходят 

Тогда нужен опкод на убийства/смерть людей ?

wmysterio
Администраторы
Скриптер
09.01.15 00:27
Offline
Цитата pro12 ()
Тогда нужен опкод на убийства/смерть людей ?
Попробуйте это:
Код
{$CLEO}
Model.Load(#FAM2)
model.Load(#TEC9)
038B: load_requested_models

while true
wait 0
     if
     not Player.Defined($PLAYER_CHAR)
     then
     break
     end
     if  
     056D:   actor 0@ defined
     then
         if
         Actor.Dead(0@)
         then
         Actor.RemoveReferences(0@)
         Actor.DestroyInstantly(0@)
         Marker.Disable(4@)
         end
     else
         if
         0AB0:   key_pressed 9 // TAB
         then
         04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 0.0 -1.0
         0@ = Actor.Create(8, #FAM2, 1@, 2@, 3@)
         Actor.Health(0@) = 2000
         Actor.WeaponAccuracy(0@) = -1
         077A: set_actor 0@ acquaintance 0 to_actors_pedtype 0  
         Actor.GiveWeaponAndAmmo(0@, 32, 6000)
         0114: set_actor 0@ weapon 32 add_ammo 200000
         01B9: set_actor 0@ armed_weapon_to 32
         0631: put_actor 0@ in_group $PLAYER_GROUP
         099F: AS_actor 0@ ignore_weapon_range 1
         0946: set_actor 0@ actions_uninterupted_by_weapon_fire 1
         06F0: set_group 0@ distance_limit_to 3.0
         081A: set_actor 0@ weapon_skill_to 2
         Marker.CreateAboveActor(4@, 0@)
         07E0: set_marker 4@ type_to 1
         end    
     end
end

0A93: end_custom_thread
Если нажать ТАВ, то появится охранник. Если не поможет убивать, то установите ему иммунитеты, тогда уже наверняка не умрёт первым:
Код
Actor.SetImmunities(0@,1,1,1,1,1)

softcrasoft
Пользователи
09.01.15 00:40
Offline
wmysterio, так понятно еще никто не объяснял, спасибо!
Ребят, еще такой вопрос, где ошибка в этом коде, если вы поможете я буду как говориться на седьмом небе от счастья, даже на семдесят седьмом, вот код:
Код
// This file was decompiled using SASCM.ini published by Seemann ([url=http://sannybuilder.com/files/SASCM.rar]http://sannybuilder.com/files/SASCM.rar[/url]) on 13.10.2007
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_2
wait 0
if
0ADC:   test_cheat "PER"
else_jump @NONAME_2
wait 0
Model.Load(#VLA3)
038B: load_requested_models
:NONAME_50
wait 0
if
Model.Available(#VLA3)
else_jump @NONAME_50
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 3.0 0.0
4@ = Actor.Create(Cop, #VLA3, 1@, 2@, 3@)
end_thread
актер не создается не в какую.
И еще такой вопрос, где можно узнать все переменные стандартные. Например здоровья, деньги и т.д.
Жду полета на семдесят седьмое небо с не терпением!
Заранее благодарен.

pro12
Пользователи
09.01.15 01:00
Offline
Это: 04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 3.0 0.0 замени на это 04C4: create_coordinate 1@ 2@ 3@ from_actor $PLAYER_ACTOR offset 0.0 1.2 0.0
Отредактировал pro12 - Пятница, 09.01.15, 01:01

wmysterio
Администраторы
Скриптер
09.01.15 01:05
Offline
Цитата softcrasoft ()
актер не создается не в какую.
Вот:
Код
{$CLEO .cs}  
0000:

:NONAME_2
wait 0  
if  
Player.Defined($PLAYER_CHAR)  
jf @NONAME_2  
if  
0ADC:   test_cheat "PER"  
jf @NONAME_2  
Model.Load(#VLA3)  
038B: load_requested_models  

:NONAME_50  
wait 0  
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 3.0 0.0  
4@ = Actor.Create(Cop, #VLA3, 1@, 2@, 3@)  
model.Destroy(#VLA3)
0A93: end_custom_thread
Вводит чит "PER", и актёт устанавливается в нужных координатах. На будущее, используйте 0A93: end_custom_thread в место end_thread в CLEO-скриптах!

wmysterio
Администраторы
Скриптер
09.01.15 01:07
Offline
Цитата softcrasoft ()
И еще такой вопрос, где можно узнать все переменные стандартные. Например здоровья, деньги и т.д.
ну, на это нужно очень много времени приделять, потому, что таких очень много. Первое, что приходит в голову помотрите, что выдаёт вам команда Actor., второе - читайте уроки в архиве, там тоже можно много узнать.

pro12
Пользователи
09.01.15 01:15
Offline
Цитата wmysterio ()
Если нажать ТАВ, то появится охранник. Если не поможет убивать, то установите ему иммунитеты, тогда уже наверняка не умрёт первым:
Когда охранник бегает рядом с CJ-ем,все нормально всех убивает как у меня по скрипту было,но когда он сидит на мотоцикле полиции,или машине полиции с CJ-ем убить преступника с них не может.
Отредактировал pro12 - Пятница, 09.01.15, 01:15

wmysterio
Администраторы
Скриптер
09.01.15 01:54
Offline
Цитата pro12 ()
машине полиции с CJ-ем убить преступника с них не может
Попробуйте так:
Код
{$CLEO}
Model.Load(#FAM2)
model.Load(#TEC9)
038B: load_requested_models

while true
wait 0
     if
     not Player.Defined($PLAYER_CHAR)
     then
     break
     end
     if  
     056D:   actor 0@ defined
     then
         if
         Actor.Dead(0@)
         then
         Actor.RemoveReferences(0@)
         Actor.DestroyInstantly(0@)
         Marker.Disable(4@)
         end
     else
         if
         0AB0:   key_pressed 9 // TAB
         then
         04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 0.0 -1.0
         0@ = Actor.Create(8, #FAM2, 1@, 2@, 3@)
         Actor.Health(0@) = 2000
         Actor.WeaponAccuracy(0@) = -1
         077A: set_actor 0@ acquaintance 0 to_actors_pedtype 0  
         Actor.GiveWeaponAndAmmo(0@, 32, 6000)
         0114: set_actor 0@ weapon 32 add_ammo 200000
         01B9: set_actor 0@ armed_weapon_to 32
         0631: put_actor 0@ in_group $PLAYER_GROUP
         099F: AS_actor 0@ ignore_weapon_range 1
         0946: set_actor 0@ actions_uninterupted_by_weapon_fire 1
         06F0: set_group 0@ distance_limit_to 3.0
         081A: set_actor 0@ weapon_skill_to 2
         Marker.CreateAboveActor(4@, 0@)
         0713: actor 0@ driveby_actor -1 car -1 point 0.0 0.0 0.0 radius 360.0 4 1 firing_rate 200 // добавил только эту строку
         07E0: set_marker 4@ type_to 1
         end    
     end
end

0A93: end_custom_thread

softcrasoft
Пользователи
09.01.15 02:08
Offline
Ребят так что менять команду актера или строчку выше?
ну а если хочу цифрами обозначать тип то какой опкод использовать?
Да и еще такой вопрос, как можно найти машину ближе к актеру и записать ее в переменную? допустим чтоб потом сделать чтоб он в нее содился.

Добавлено (09.01.15, 01:06)
---------------------------------------------
И еще такой ворос, если не по теме извеняюсь. При знаний основ клео скриптинга, некоторых опкодов, можно ли делать такие миссии как в игре? или как в gta alien city? со звуками и т.д, ил что для этого нужно прочесть?

Добавлено (09.01.15, 01:08)
---------------------------------------------
Ну и еще вопрос, ответ на который я ищу 2 года.
Вот началась миссия, цель допустим парекмахерская и т.д, как сделать в скрипте чтоб эта точка отмечалась на карте? именно как мы отмечаем правой кнопкой мыши.


wmysterio
Администраторы
Скриптер
09.01.15 02:11
Offline
Цитата softcrasoft ()
Да и еще такой вопрос, как можно найти машину ближе к актеру и записать ее в переменную? допустим чтоб потом сделать чтоб он в нее содился.

Можно:
Код
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 0@ closest_ped_to 1@
if
056E:   car 1@ defined
then
// делаем с транспортом что угодно, например:
046C: 0@ = car 1@ driver
     if
     056D:   actor 0@ defined
     then
     // делаем с актёром что угодно
     end
end
Цитата softcrasoft ()
ну а если хочу цифрами обозначать тип то какой опкод использовать?
вы можете использовать только те опкоды, которые можно получить из поисковика опкодов (CTRL+ALT+2) или если есть опыт с С++, то самому написать парочку

wmysterio
Администраторы
Скриптер
09.01.15 02:14
Offline
Цитата softcrasoft ()
При знаний основ клео скриптинга, некоторых опкодов, можно ли делать такие миссии как в игре? или как в gta alien city? со звуками и т.д, ил что для этого нужно прочесть?

Это будет лучшим вариантом. Cleo-скрипты самодостаточны, а мейн - это целая "сеть" взаимосвязанных потоков и по-моему мнению: мейн - это отличный способ научится скриптингу, так как он учит продумать эти взаимосвязи.

pro12
Пользователи
09.01.15 15:16
Offline

Цитата wmysterio ()
Код
{$CLEO}    
Model.Load(#FAM2)    
model.Load(#TEC9)    
038B: load_requested_models    

while true    
wait 0    
        if    
        not Player.Defined($PLAYER_CHAR)    
        then    
        break    
        end    
        if     
        056D:   actor 0@ defined    
        then    
            if    
            Actor.Dead(0@)    
            then    
            Actor.RemoveReferences(0@)    
            Actor.DestroyInstantly(0@)    
            Marker.Disable(4@)    
            end    
        else    
            if    
            0AB0:   key_pressed 9 // TAB    
            then    
            04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 0.0 -1.0    
            0@ = Actor.Create(8, #FAM2, 1@, 2@, 3@)    
            Actor.Health(0@) = 2000    
            Actor.WeaponAccuracy(0@) = -1    
            077A: set_actor 0@ acquaintance 0 to_actors_pedtype 0     
            Actor.GiveWeaponAndAmmo(0@, 32, 6000)    
            0114: set_actor 0@ weapon 32 add_ammo 200000    
            01B9: set_actor 0@ armed_weapon_to 32    
            0631: put_actor 0@ in_group $PLAYER_GROUP    
            099F: AS_actor 0@ ignore_weapon_range 1    
            0946: set_actor 0@ actions_uninterupted_by_weapon_fire 1    
            06F0: set_group 0@ distance_limit_to 3.0    
            081A: set_actor 0@ weapon_skill_to 2    
            Marker.CreateAboveActor(4@, 0@)    
            0713: actor 0@ driveby_actor -1 car -1 point 0.0 0.0 0.0 radius 360.0 4 1 firing_rate 200 // добавил только эту строку    
            07E0: set_marker 4@ type_to 1    
            end       
        end    
end    

0A93: end_custom_thread
Не знаю,тогда остается спросить как мой первый скрипт в main.scm добавить ?
Отредактировал pro12 - Пятница, 09.01.15, 15:41

wmysterio
Администраторы
Скриптер
09.01.15 15:30
Offline
Цитата pro12 ()
Не знаю тогда,остается спросить как мой первый скрипт в main.scm добавить ?
в потоке MAIN или с другого активного потока нужно:
Код
create_thread @MY_SCRIPT
, а после потока MAIN вставить код:
Код
:MY_SCRIPT  
thread 'MY_SCRIPT'   
  Model.Load(#FAM2)    
  model.Load(#TEC9)    
  038B: load_requested_models    

  while true    
  wait 0    
        if    
        not Player.Defined($PLAYER_CHAR)    
        then    
        break    
        end    
        if     
        056D:   actor 0@ defined    
        then    
            if    
            Actor.Dead(0@)    
            then    
            Actor.RemoveReferences(0@)    
            Actor.DestroyInstantly(0@)    
            Marker.Disable(4@)    
            end    
        else    
            if    
            0AB0:   key_pressed 9 // TAB    
            then    
            04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 1.0 0.0 -1.0    
            0@ = Actor.Create(8, #FAM2, 1@, 2@, 3@)    
            Actor.Health(0@) = 2000    
            Actor.WeaponAccuracy(0@) = -1    
            077A: set_actor 0@ acquaintance 0 to_actors_pedtype 0     
            Actor.GiveWeaponAndAmmo(0@, 32, 6000)    
            0114: set_actor 0@ weapon 32 add_ammo 200000    
            01B9: set_actor 0@ armed_weapon_to 32    
            0631: put_actor 0@ in_group $PLAYER_GROUP    
            099F: AS_actor 0@ ignore_weapon_range 1    
            0946: set_actor 0@ actions_uninterupted_by_weapon_fire 1    
            06F0: set_group 0@ distance_limit_to 3.0    
            081A: set_actor 0@ weapon_skill_to 2    
            Marker.CreateAboveActor(4@, 0@)    
            0713: actor 0@ driveby_actor -1 car -1 point 0.0 0.0 0.0 radius 360.0 4 1 firing_rate 200 // добавил только эту строку    
            07E0: set_marker 4@ type_to 1    
            end       
        end    
  end    

end_thread
Устите, что если мейн стандартный, то придётся начинать игру с самого начала. Любая существенная правка приводит к такому обязательству.

softcrasoft
Пользователи
09.01.15 16:48
Offline
Ура ребят появился норм инет поломоный был 4 дня поченили буду с вами до понедельника день и ночь.
wmysterio, не понял эти опкоды, поясни этот код коментами плиз, мне имен над записать машину в переменную, потом содить или актера, или сиджея и т.д. допустим делаю скрипт такси как в gta 4, жму e если рядом любая машина карл воспроизводит звук, и дальше рандом, если да, то удерживая f он сядит в эту машину как пассажир, и предлагаются места для доставки и тому подобны скрипты, создание актера и он содится в блежайшую машину и т.д.

wmysterio
Администраторы
Скриптер
09.01.15 17:16
Offline
Цитата pro12
Вставил, но охранник появляется без оружия ?
Попробуй установить оружие сразу:
Код
01B9: set_actor 0@ armed_weapon_to 32 // 32 - id weapon: ТЕС9


Цитата softcrasoft ()
не понял эти опкоды, поясни этот код коментами плиз, мне имен над записать машину в переменную, потом содить или актера, или сиджея и т.д. допустим делаю скрипт такси как в gta 4, жму e если рядом любая машина карл воспроизводит звук, и дальше рандом, если да, то удерживая f он сядит в эту машину как пассажир, и предлагаются места для доставки и тому подобны скрипты, создание актера и он содится в блежайшую машину и т.д.
Код:
Код
{$CLEO}
0000:

while true
wait 0
     if
     0AB0:   key_pressed 69 // если нажато E, то
     then
     0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 0@ closest_ped_to 1@ // получаем ближайшего актёра и машину
         if and
         056E:   car 0@ defined                          // если тачка существует, и
         89DE:   not actor $PLAYER_ACTOR entering_car    // если CJ не открывает двель транспорта и
         80DF:   not actor $PLAYER_ACTOR driving         // если CJ не находится в транспорте, то
         then
             if or
             0137:   car 0@ model == #CABBIE // если модель транспорта #CABBIE или
             0137:   car 0@ model == #TAXI   // если модель транспорта #TAXI, то          
             then
             05CA: AS_actor $PLAYER_ACTOR enter_car 0@ passenger_seat 0 time -1 // заставляем актёра сесть на место пассажира
             end
         end
     end
end

pro12
Пользователи
09.01.15 17:23
Offline
Цитата wmysterio ()
Вставил, но охранник появляется без оружия ?Попробуй установить оружие сразу:Код01B9: set_actor 0@ armed_weapon_to 32 // 32 - id weapon: ТЕС9
И в main не работает,больше тогда на эту тему можно не спрашивать.

softcrasoft
Пользователи
09.01.15 17:25
Offline
все равно не понял, а как записать cj-я? понял что машина это 0@ а актер 1@

wmysterio
Администраторы
Скриптер
09.01.15 17:41
Offline
Цитата softcrasoft ()
а как записать cj-я
куда записать?

softcrasoft
Пользователи
09.01.15 17:51
Offline
а я тода  не подумал, я забыл что у него своя переменная есть
Ребят еще такой вопрос, как из cleo запустить миссию стандартную из main.scm, например в скрипте выбора миссий. допустим если нажато t запустить миссию номер 2 и т.д

wmysterio
Администраторы
Скриптер
09.01.15 18:00
Offline
Цитата softcrasoft ()
как из cleo запустить миссию стандартную из main.scm
Никак. По крайней мере стандартными опкодами и без ошибок и неожиданных последствий.

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