Форум - Скриптинг в GTA
20 Сентября 2017, 07:31:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
   Начало   Помощь Поиск Календарь Войти Регистрация  
Страниц: 1 ... 4 5 [6] 7 8 ... 17   Вниз
  Печать  
Автор Тема: Помощь начинающим скриптерам  (Прочитано 103155 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
yelmi
Администратор
*****
Офлайн Офлайн

Сообщений: 321



« Ответ #75 : 17 Июня 2008, 19:07:56 »

Проще сделать так
Код:
{$CLEO .cs}
0000:

:NONAME_2
wait 0
if and
   Player.Defined($PLAYER_CHAR)
   not Actor.Driving($PLAYER_ACTOR)
  $ONMISSION == 0
else_jump @NONAME_2
if// and
// not Actor.Animation($PLAYER_ACTOR) == "PHONE_TALK"  // Эта проверка нужна лишь в том случае если игрок уже выполняет эту анимацию
 0AB0:   key_pressed 72
jf @NONAME_2

:BIG_1
0001: wait 0 ms
03CF: load_wav 23000 as 3
0247: load_model #CELLPHONE
038B: load_requested_models
00D6: if and
03D0:   wav 3 loaded
0248:   model #CELLPHONE available
004D: jump_if_false @BIG_1
03D1: play_wav 3
0001: wait 2000 ms
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
{Вместо wait 5000 можешь добавить все, что тебе нужно, звук, текст}
wait 5000
040D: unload_wav 3
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
Model.Destroy(#CELLPHONE)
wait 1000
jump @NONAME_2

На остальные вопросы позже отвечу, пока нет времени.
Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #76 : 17 Июня 2008, 23:57:34 »

Yelmi
понимаеш, это у меня своего рода извращенство, лёгких путей не нахожу =)
Когда я предметы и интерьеры просматриваю, подбираю побрякушки которые мне могут пригодиться в создании миссий. Поэтому проигрываю их в мини скриптах.
Прежде чем городить миссию я Изучаю и всётаки пытаюсь понять построение скриптов.
Жутко долго доходит.  Целующий
Записан
s3ry09a198
Новичок
*
Офлайн Офлайн

Сообщений: 3


« Ответ #77 : 18 Июня 2008, 14:55:41 »

всем привет
вот собрал из Александровских исходников скриптик

у меня проблема незнаю как вставить специального актера например SMOKEV
при вставлении его вместо грувовца игра вылетает

также я скопировал этот скрипт поменял координаты сменил грувовца на балласа но при изменении оружия у него в руках всеравно м4
тоесть у меня 2 клеоскрипта почти идентичных но во втором не меняеться оружие
а также после теста(смерти актера) игра вылетает
Код:
{$CLEO .cs}
0000:

:MyGuarder
wait 0
model.Load(#FAM2)
model.Load(#M4)
038B: load_requested_models
marker.CreateIconAndSphere($Mark,18,2508.7458,-1683.5065,13.5561)

:MyGuarder_2
wait 0
if and
model.Available(#FAM2)
model.Available(#M4)
0101: actor $PLAYER_ACTOR stopped_near_point 2508.7458 -1683.5065 13.56 radius 3.0 3.0 10.0 sphere 1
jf @MyGuarder_2
wait 2000
actor.Create($Man,CivMale,#FAM2,2514.2583,-1691.2355,14.046)
01B2: give_actor $Man weapon 31 ammo 6000
05D3: AS_actor $Man go_to 2509.0459 -1686.9645 13.5669 speed 4 5000 ms
wait 5000
0631: put_actor $Man in_group $PLAYER_GROUP
Actor.WeaponAccuracy($Man) = 100
Actor.Health($Man) = 2000
0568: (unknown) $Man 1
0446: set_actor $Man immune_to_headshots 0
08AF: (unknown) $Man 7000
077A: (unknown) $Man 4 25
marker.CreateAboveActor($ActMark,$Man)
marker.SetColor($ActMark,1)
marker.Disable($Mark)

:MyGuarder_3
wait 0
if
actor.Dead($Man)
jf @MyGuarder_3
marker.Disable($ActMark)
jump @MyGuarder
Вот ешё
скрипт на удивление работает в Клео но скрипт то обычный:)
после уничтожения автомобиля через время игра вылетает!
Код:
{$CLEO .cs}
0000:
:Anims    // начинаем поток
wait 0    // ждём 0 мс,если не напишем,то может вылететь
#REMINGTN.Load    // объявляем нужную модель машины - Ремингтон
#FAM2.Load    // объявляем нужную модель актёра - Член Грув Стрит банды
038B: load_requested_models    // загружаем ранее объявленые модели

:Anims_2    // создаём второй label
wait 0    // ждём 0 мс,если не напишем,то может вылететь
if and    // условие с выполнением всех подусловий(проверок)
#REMINGTN.Available    // проверка (загрузилась ли модель #REMINGTN)
#FAM2.Available    // проверка (загрузилась ли модель #FAM2)
player.Defined($PLAYER_CHAR)    // проверка (существует ли игрок)
jf @Anims_2    // если хоть одна из проверок возвратила значение False,
    // т.е. не выполнилась, то переходим к началу label'a
wait 5000    // ждём 5 мс,просто для удобства
car.Create(4@,#REMINGTN,2492.6,-1669.5,13.4)
 // создаём тачку напротив дома Карла
0129: 5@ = create_actor 4 #FAM2 in_car 4@ driverseat
 // создаём актёра в этой машине
wait 3000    // ждём 3 мс,просто для удобства
Car.ToggleHydraulics(4@) = True
// устанавливаем на машину гидравлику, если
    // не поставим, то финтов машина делать не будет
$Timer = 25   // Создаём переменную,и приравниваем её к 25, это будет наш таймер

:Anims_3    // создаём следующий label
wait 0        // ждём 0 мс,если не напишем,то может вылететь
REPEAT    // начинаем цикл
wait 10    // ждём 10 мс
07F5: car 4@ control_hydraulics 1000.0 0.0 0.0 0.0
  // машина поднимает к-л колесо, вот номера колёс 1000.0 - переднее левое,
 // 0.0 - заднее левое, следующий 0.0 - переднее правое и
 // последний 0.0 - заднее правое.
$Timer -= 1    // отнимаем от нашей переменной 1
UNTIL $Timer <= 1
 // пока таймер не будет меньше либо равен 1, наш цикл будет выполнятся,
 // так всё запутано из-за того, что чтобы поднять колесо надо выоплнить
 // эту команду большое количество раз и за маленькое время, и чтобы колесо
 // держалось навису эту команду тоже надо поддерживать
 // принцип действия заключается в том, что мы задаём переменной $Timer
 //значение 25, и с каждым разом когда мы выполняем команду поднятия колеса,
 // от этой переменной отнимается еденица,
 // команда выполняется каждые 10 мс(wait 10), и когда $Timer становится
 //равной или меньше единицы, мы переходим к следующему действию,
 //поднятие уже другого колеса, но предварительно опять
 // задаём переменной $Timer значение 25, а то если она равна нулю,
 // то выполнение перекинется на поднятие другого колеса,
 // и так пока не будет найдено хоть одно нормальное значение $Timer
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 0.0 1000.0 0.0 0.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 0.0 0.0 1000.0 0.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 0.0 0.0 0.0 1000.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 1000.0 0.0 1000.0 0.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 0.0 1000.0 0.0 1000.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 1000.0 1000.0 0.0 0.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
REPEAT
wait 10
07F5: car 4@ control_hydraulics 0.0 0.0 1000.0 1000.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 120
REPEAT
wait 10
07F5: car 4@ control_hydraulics 1000.0 0.0 0.0 1000.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 120
REPEAT
wait 10
07F5: car 4@ control_hydraulics 0.0 1000.0 1000.0 0.0
$Timer -= 1
UNTIL $Timer <= 1
$Timer = 25
jump @Anims_3    // тут прыгаем на начало label'a , чтобы все действия
    // поднятия колёс у машины пошли заново
« Последнее редактирование: 18 Июня 2008, 18:20:58 от s3ry09a198 » Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #78 : 18 Июня 2008, 18:32:54 »

Yelmi что то не понимаю.
Вообщем суть в следующем:
Сделал 2 скрипта.
В первом скрипте появляется человек с магнитафоном, если подхожу к магнитафону начинается действие.
Во втором скрипте сделал дверь подойдя к которой, я могу переместится в заданные координаты.

Но вот проблема если скрипты Оба стоят , то Дверь Появляется у чела вместо магнитафона. Показывает язык
Чё делать?  Злой
Я делал разрыв  в начале каждого скрипта .
 Рот на замке 0000: NOP
 0000: POL

Я только понял как скрипт работает и тут Опять палка в колесе, очевидно не всё уяснил.  Смеющийся
Записан
s3ry09a198
Новичок
*
Офлайн Офлайн

Сообщений: 3


« Ответ #79 : 19 Июня 2008, 13:13:12 »

собсно скрипт

цель скрипта в том чтобы по нажатию key_pressed 0 11(нет)
при условиях

not actor.Driving($PLAYER_CHAR не за рулем
player.Defined($PLAYER_CHAR) сушествуем:))

но вот загвоздка игра вылетает при запуске сразу

вот собсно сам код
Код:
{$CLEO .cs}
0000:
{my script}
//script super puper AAAA!!!!
:MYSCRIPT_1 //начало потока MYSCRIPT
wait 0 ms //не вылетаем  перед проверкой
if and //условия для действия
player.Defined($PLAYER_CHAR)// игрок жив
not actor.Driving($PLAYER_CHAR)// actor или player в нашем случаи
//не за рулем чего либо
$ONMISSION == 0 //миссия не запушена
{Если условия выполн. то джамп на метку} else_jump @MYSCRIPT_1
if
00E1: key_pressed 0 11 // жмем нет и происходит действие
jf @MYSCRIPT_1

:ACTION_1
wait 100 ms // не вылетаем
0247: load_model #CHEETAH // загружаем гепарда аналог феррари
038B: load_requested_models // проверяем
if and //и если модель загружена идем ниже
0248:   model #CHEETAH available
004D: jump_if_false @ACTION_1 // если модель не в памяти то повторяем загрузку
wait 0 ms
car.Create(1@ #CHEETAH, 2492.6, -1669.5, 13.4)
wait 2000 ms
Model.Destroy(#CHEETAH)
jump  @MYSCRIPT_1
Записан
yelmi
Администратор
*****
Офлайн Офлайн

Сообщений: 321



« Ответ #80 : 19 Июня 2008, 17:48:12 »

у меня проблема незнаю как вставить специального актера например SMOKEV
при вставлении его вместо грувовца игра вылетает
также я скопировал этот скрипт поменял координаты сменил грувовца на балласа но при изменении оружия у него в руках всеравно м4
Еще раз повторяю, в CLEO – скриптах не используйте глобальные переменные. Можно использовать только $PLAYER_ACTOR, $PLAYER_CHAR, $ONMISSION.
Код:
{$CLEO .cs}
0000:

:MyGuarder
wait 0
marker.CreateIconAndSphere(0@,18,2508.7458,-1683.5065,13.5561)

:MyGuarder_2
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2508.7458 -1683.5065 13.56 radius 3.0 3.0 10.0 sphere 0
jf @MyGuarder_2
023C: load_special_actor 'SMOKEV' as 1
model.Load(#minigun)
038B: load_requested_models

:MyGuarder_3
wait 0
if and
023D:  special_actor 1 loaded
model.Available(#minigun)
jf @MyGuarder_2
marker.Disable(0@)
wait 250
actor.Create(1@,CivMale,#SPECIAL01,2514.2583,-1691.2355,14.046)
01B2: give_actor 1@ weapon 38 ammo 6000
marker.CreateAboveActor(2@,1@)
marker.SetColor(2@,1)
05D3: AS_actor 1@ go_to 2509.0459 -1686.9645 13.5669 speed 4 5000 ms
wait 5000
0631: put_actor 1@ in_group $PLAYER_GROUP
Actor.WeaponAccuracy(1@) = 100
Actor.Health(1@) = 2000
0568: (unknown) 1@ 1
0446: set_actor 1@ immune_to_headshots 0
08AF: (unknown) 1@ 1000
077A: (unknown) 1@ 4 25

:MyGuarder_4
wait 0
if or
actor.Dead($PLAYER_ACTOR)
0741:   actor $PLAYER_ACTOR busted
actor.Dead(1@)
jf @MyGuarder_4
actor.RemoveReferences(1@)
marker.Disable(2@)
0296: unload_special_actor 1
model.Destroy(#minigun) 
jump @MyGuarder
Цитировать
Вот ешё
скрипт на удивление работает в Клео но скрипт то обычный:)
после уничтожения автомобиля через время игра вылетает!
Естественно игра и будет вылетать, поскольку идет обращение к несуществующему автомобилю.
not actor.Driving($PLAYER_CHAR не за рулем
player.Defined($PLAYER_CHAR) сушествуем:))
но вот загвоздка игра вылетает при запуске сразу

player.Defined($PLAYER_CHAR)// игрок существует
not actor.Driving($PLAYER_ACTOR) //актер не в автомобиле
Но вот проблема если скрипты Оба стоят , то Дверь Появляется у чела вместо магнитафона. Показывает язык
Код нужно смотреть.
Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #81 : 19 Июня 2008, 18:00:16 »

Цитировать
цель скрипта в том чтобы по нажатию key_pressed 0 11(нет)
при условиях

 Непонимающий Все мы кАсманавты я тожа начинающий.
цепляй поэксперементируй. В клео есть Папка хелп Открой её Там есть инструктаж на Русском. Ищи там Описание Объектов Машин Людей, куча примеров. Сначала пробуй сам, так быстрее научишся, ну и Эту страничку Форума прочитай с начала. Я именно так начинал, теперь разобрался и продолжаю учиться.
Код:
{$Cleo}
0000:NOP

model.load(#CHEETAH)
model.load(#2528)
038B: load_requested_models

:CAR_1        //Проверка 1
wait 0
 if and
   Player.Defined($PLAYER_CHAR)
  not Actor.Driving($PLAYER_ACTOR)
  $ONMISSION == 0
  model.Available(#CHEETAH)
  model.Available(#2528)
  Else_jump @CAR_1          //Подусловие для продолжении проверки
  if
   0AB0:   key_pressed 72 //Кнопка Н- создать гепарда
   else_jump @CAR_1
   car.Create($FERRARI,#CHEETAH, 2492.6, -1669.5, 14.4)//
   model.Destroy(#CHEETAH)  //Удаляем модель из памяти.И переходим к выполнению следующей проверки.
   
   :RICOSHET_1            //Вторая проверка
   wait 0
    if and                //Условие после которого будет выполненно действие
      $ONMISSION == 0                  //Миссия неактивна
      0AB0:   key_pressed 74               //клавиша - j -установить тюнинг
      Actor.DrivingVehicleType($PLAYER_ACTOR,#CHEETAH)  //АКТЁР в определённой машине
      Else_jump  @RICOSHET_1               //Если условия не выполнены то проверяем снова :RICOSHET_1
      0394: play_music 1
      car.SetImmunities($FERRARI,1,1,1,1,1)
       object.Create($NITRO,2528,0.0,0.0,0.0)
       model.Destroy(2528)
       0681: attach_object $NITRO to_car $FERRARI at_offset 0.0 -0.9 0.50 rotation 0.0 0.0 180.0
      wait 1000
      jump @CAR_1       //Действие было выполненно и возвращаемся к первой проверке.
Обрати внимание что проверки идут друг за другом, Тоисть нажали кнопку Н- гепард появился, повторное нажатие ничего не даст, только после того как будет выполнено условие ДВА.
Игрок сидит в машине и нажимает кнопку J. Затем проверка переходит в начало и так по кругу.
« Последнее редактирование: 15 Сентября 2008, 10:37:43 от Gadina » Записан
yelmi
Администратор
*****
Офлайн Офлайн

Сообщений: 321



« Ответ #82 : 21 Июня 2008, 11:43:17 »

Сколько раз можно повторять о том, что в CLEO – скриптах нельзя использовать глобальные переменные.
07FB: set_interior 'GF3' access 1 - никогда не был условным опкодом. Да и зачем давать доступ в интерьер, который никак не используется у тебя в скрипте? Анимацию “PED” не нужно загружать. Научись различать команды имеющие отношение к объектам и опкоды работающие с моделями.

Object.Destroy(0@) – удаляет созданный объект, у тебя прописана модель объекта Object.Destroy(1498).
Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #83 : 21 Июня 2008, 19:03:17 »

Yolmi
Ещё разок про глобальные переменные:
2@ - Не является глобальной переменной?
$PED-Является  глобальной переменной ?
 
Вот смотри в учебнике пишут, что ипользование анимации PED не требует загрузки, но требует проверки на загрузку. Что я опять не так сделал с анимацией. ?

Цитировать
-загрузить командой 04ED: load_animation "File"
-потом проверить на загруженность командой (провекрой) 04EE: animation "LOWRIDER" loaded
Записан
yelmi
Администратор
*****
Офлайн Офлайн

Сообщений: 321



« Ответ #84 : 21 Июня 2008, 19:19:06 »

Читай Sanny Builder Help: Кодинг/Типы данных, там все подробно написано о переменных.
Проверять на загрузку нужно только то, что сам загружаешь. 
Скачай здесь программу, там сможешь получить код загрузки, проверки и удаления анимации.
Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #85 : 21 Июня 2008, 21:10:42 »

Yolmi У меня не получилось оживить актёра.
Как сделать так чтобы лежащий мёртвый актёр смог подняться?

_________________________________
Вот смотри как будет правильно сделать Загрузку внешнего звука:
Код:
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP
0AAC: 3@ = load_mp3 "F:\gta_LC_radio\01_A Day In The Life.mp3"

:NONAME_2
wait 0
if and
   Player.Defined($PLAYER_CHAR)
0AB0:   key_pressed 74
004d: jump_if_false @NONAME_2
wait 1000
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1  // ~r~MCC• ’POBA‚EHA!
0394: play_music 1   // ~z~4TO TAKOE, CBT?
jump @ZVUK_01


:ZVUK_01
 wait 3000
  0AAD: set_mp3 3@ perform_action 1
  0AAF: 0@ = get_mp3_length 3@
  jump @NONAME_2
Вот смотри там написанно что нужно обязательно выгрузить. Но в какой момент можно это сделать?
Я пробовал выгружать, у меня не получилось.
Пробовал выгрузить просто командой :
0AAE: release_mp3 3@ -Вылетел.
пробовал поставить  выгрузку по длинне мп3 файла:
Код:
wait 3000
  0AAD: set_mp3 3@ perform_action 1
  0AAF: 0@ = get_mp3_length 3@
Wait 0@
0AAE: release_mp3 3@
  jump @NONAME_2
тоже вылетел. Как всётаки правильно будет?
Работает отлично без выгрузки файла Играет. Но через некоторое колличество нажатий на клавиши Вылетает.

_______________________________________
Вопрос насчёт переменных:
3@
00003@
Вот в таком варианте, Эти переменные будут одинаковыми или разными?


« Последнее редактирование: 23 Июня 2008, 00:43:35 от Gadina » Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #86 : 23 Июня 2008, 20:14:42 »

КАК сделать повреждение Стекла в Автомобиле?

096D: get_car $Car car_component 7 on_slot $Comp - записывает в переменную компонент машины из определённого места(капот,дверь...)

А вот можно продолжить?
« Последнее редактирование: 23 Июня 2008, 20:17:37 от Gadina » Записан
yelmi
Администратор
*****
Офлайн Офлайн

Сообщений: 321



« Ответ #87 : 24 Июня 2008, 01:13:13 »

Yolmi У меня не получилось оживить актёра.
Как сделать так чтобы лежащий мёртвый актёр смог подняться?
Создать нового на том же месте.
Цитировать
Как всётаки правильно будет?
Работает отлично без выгрузки файла Играет. Но через некоторое колличество нажатий на клавиши Вылетает.
Я вообще не люблю работать с этим MP3, поскольку при выходе в меню и завершении игры происходит вылет игры. Автор CLEO3 сам пока не знает, почему это происходит.
Код:
{$CLEO}

0000: NOP
0001: wait 3000 ms

:Noname_7
0001: wait 0 ms
00D6: if and
0256:   player $PLAYER_CHAR defined
0038:   $ONMISSION == 0
004D: jump_if_false @Noname_7
0AAC: 0@ = load_mp3 "E:\audio\Shakira\Bonus\11 - La tortura.mp3"
0001: wait 1000 ms
0AAD: set_mp3 0@ perform_action 1 // проигрываем mp3

:Noname_95
0001: wait 0 ms
0AB9: get_mp3 0@ state_to 7@ // получаем статус mp3
00D6: if
0039:   7@ == -1 // если равно -1 значит трек окончен
004D: jump_if_false @Noname_95
0AAE: release_mp3 0@ //выгружаем
0001: wait 1000 ms
0002: jump @Noname_7 //ожидаем 1 секунду и начинаем все сначала.

Цитировать
Вопрос насчёт переменных:
3@
00003@
Вот в таком варианте, Эти переменные будут одинаковыми или разными?
Локальные переменные могут быть только 0@ ..31@ - для потоков и для миссий  0@ ..31@, 34@ …1024@.
32@ и 33@ - это таймеры.
КАК сделать повреждение Стекла в Автомобиле?
0730: car 8@ damage_component 4
Цитировать
096D: get_car $Car car_component 7 on_slot $Comp - записывает в переменную компонент машины из определённого места(капот,дверь...)
А вот можно продолжить?
096D записываем в переменную наличие компонента, например, нитро.
Записан
Gadina
Пользователь
**
Офлайн Офлайн

Сообщений: 148


мастерство не пропьёш...


« Ответ #88 : 24 Июня 2008, 02:19:22 »

Ну наконецто разъяснили. спс понял.
Ты меня опять убил.  Шокированный
_______________________
 Yelmi вот смотри я ставлю гоночный чекпоинт.

06D5: 8@ = create_racing_checkpoint_at 1536.3915 78.379 27.8352 point_to 3.0 3.0 10.0 type 1 radius 6.0
Создаёт гоночный чекпоинт
8@ Название маркера
1536.3915 78.379 27.8352 -Координаты чекпоинта
3.0 3.0 10.0 -Стрелка Направления следующего чекпоинта
type 1 radius 6.0 -Тип чекпоинта 1 и его радиус 6.0
1-Стартовый чекпоинт
0-Промежуточный чекпоинт с указателем стрелкой в середине.
2-Промежуточный чекпоинт без стрелки
3-Чекпоинт в форме Кольца
4-Чекпоинт в форме кольца наклоненый.

Вопрос, как его убрать?
---------------------------------------------------------------
Вопрос:
Какой командой проверить проезжал ли чекпоинт актёр или нет.
Вот эта команда работает если только остановился в зоне:
Код:
0101:   actor $PLAYER_ACTOR in_sphere 1536.3915 78.379 27.8352 radius 3.0 3.0 6.0 sphere 1 stopped


 а вот если нужно не останавливаться, а просто проехать зону?
« Последнее редактирование: 24 Июня 2008, 18:54:51 от Gadina » Записан
yelmi
Администратор
*****
Офлайн Офлайн

Сообщений: 321



« Ответ #89 : 26 Июня 2008, 00:08:33 »

06D5: 449@ = create_racing_checkpoint_at X Y Z point_to X1 Y1 Z1 type 0 radius 6.0
Создаем racing_checkpoint в координатах X Y Z
Стрелка будет указывать в направлении X1 Y1 Z1
X1 Y1 Z1 – чаще всего координаты следующего racing_checkpoint

Цитировать
Вопрос, как его убрать?
Код:
06D6: disable_racing_checkpoint 449@
Цитировать
а вот если нужно не останавливаться, а просто проехать зону?
Код:
00FE:   actor $PLAYER_ACTOR sphere 0 in_sphere 658.0068 -1866.313 4.4537 radius 15.0 15.0 15.0
00FF:   actor $PLAYER_ACTOR sphere 0 in_sphere $X_JOHNSON_HOUSE $Y_JOHNSON_HOUSE $Z_JOHNSON_HOUSE radius 1.0 1.0 2.0 on_foot
0100:   actor $PLAYER_ACTOR in_sphere 1793.068 -1904.254 12.3989 radius 4.0 4.0 4.0 sphere 1 in_car
0101:   actor $PLAYER_ACTOR in_sphere 10@ 11@ 12@ radius 5.0 5.0 3.0 sphere 0 stopped
0102:   actor $PLAYER_ACTOR in_sphere 2468.8 -1278.2 29.1 radius 1.2 1.2 3.0 sphere 1 stopped_on_foot
0103:   actor $PLAYER_ACTOR in_sphere -1577.942 52.6333 16.3281 radius 4.0 4.0 6.0 sphere 0 stopped_in_car

выбирай нужный тебе.
А вообще в СБ есть функция поиска опкодов Ctrl+Alt+2,а открыть help – F12.
Записан
Страниц: 1 ... 4 5 [6] 7 8 ... 17   Вверх
  Печать  
 
Перейти в:  

Яндекс.Метрика Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!
Страница сгенерирована за 0.256 секунд. Запросов: 20.

Google visited last this page 27 Мая 2017, 23:52:00