• Добро пожаловать, Гость. Войдите или зарегистрируйтесь.

Автор Тема: 1 рычаг открывает\закрывает несколько дверей  (Прочитано 1491 раз)

Описание:

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн N.AN.S.

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
    • https://www.google.com/accounts/o8/id?id=AItOawnyo1u968AZIBAtLSGyNNQjI0GETWdRrnA
Как правильно сделать и написать скрипт для следующего:
Есть дверь 1, рычаг, дверь 2.
Когда дергаеш за рычаг, 1 дверь закрывается, 2 открывается.
2 раз - 2 дверь закрывается, 1 открывается.
Использую:
Двери - ChorrolArenaPlayerGate скрипты в них CGAmbushCGateSkript
Рычаг - TG11LibraryDoorSwitch со криптом TG11LibraryDoorSwitchSCRIPT

и есть 1 рычаг и множество дверей
1 раз  - 1 дверь закрывается, 2....n открываются
2 раз  - 2.....n двери закрываются, 1 открываются

Оффлайн AleksTirex

  • *
  • *
  • Сообщений: 529
  • Репутация: 57.3
  • Пол: Мужской
    • Просмотр профиля
    • Email
0
Повесь свои скрипты на переключатель и двери. Сперва скрипт на переключатель и присваиваешь ему референс, потом в скрипте дверей прописываешь этот референс вместо SwichRef. Далее скрипты дверей. Дверей может быть любое количество, работать будут синхронно соответственно скриптам (Door1 или Door2). Двери и переключатель, естественно, со своими ID.
Спойлер
scn Door1Script

begin onActivate
   If IsActionRef player
      return
   endif
end

begin gameMode
   If GetOpenState == 1
      If SwichRef.busy == 1 && isAnimPlaying == 0
         SetOpenState 0
      endif
   elseif GetOpenState == 3
      If SwichRef.busy == 0 && isAnimPlaying == 0
         SetOpenState 1
      endif
   endif
end
==========================
scn Door2Script

begin onActivate
   If IsActionRef player
      return
   endif
end

begin gameMode
   If GetOpenState == 1
      If SwichRef.busy == 0 && isAnimPlaying == 0
         SetOpenState 0
      endif
   elseif GetOpenState == 3
      If SwichRef.busy == 1 && isAnimPlaying == 0
         SetOpenState 1
      endif
   endif
end
==========================
scn SwichScript
short busy

begin onActivate
   If IsActionRef player
      If busy == 0 && isAnimPlaying == 0
         set busy to 1
         playgroup forward 0
      elseif busy == 1 && isAnimPlaying == 0
         set busy to
         playgroup backward 0
      endif
   endif
end

Будьте осторожны в своих желаниях, они могут исполниться!
Награды За огромные знания и желание делиться ими с форумчанами

Оффлайн N.AN.S.

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
    • https://www.google.com/accounts/o8/id?id=AItOawnyo1u968AZIBAtLSGyNNQjI0GETWdRrnA
0
AleksTirex, все идеально работает спасибо!
p.s. а можно ли дописывать что-то в скрипты дверей, чтоб их не могли открывать охранники и другие неписи?
« Последнее редактирование: 01 Август, 2011, 17:08:08 от N.AN.S. »

Оффлайн AleksTirex

  • *
  • *
  • Сообщений: 529
  • Репутация: 57.3
  • Пол: Мужской
    • Просмотр профиля
    • Email
0
AleksTirex, все идеально работает спасибо!
p.s. а можно ли дописывать что-то в скрипты дверей, чтоб их не могли открывать охранники?
Ничего не надо, там уже прописано "никто не откроет дверь", только рычагом можно это сделать.

Вместо return, можешь встивить сообщение message "Зря стараешься, не выйдет!", или любой другой текст, тогда при активации двери игроком, будет выскакивать такая надпись (в верху слева).
« Последнее редактирование: 01 Август, 2011, 17:17:20 от AleksTirex »
Будьте осторожны в своих желаниях, они могут исполниться!
Награды За огромные знания и желание делиться ими с форумчанами

Теги:
 

GL-ACR или несколько новый Морровинд :)

Автор GalibРаздел Проекты под TES 3: Morrowind

Ответов: 403
Просмотров: 53429
Последний ответ 18 Сентябрь, 2011, 19:06:50
от Tiara
Несколько вопросов по подгонке брони

Автор Ajax52Раздел Мастерская 3D

Ответов: 1
Просмотров: 1416
Последний ответ 28 Август, 2010, 17:49:23
от Visman
Несколько вопросов

Автор N.AN.S.Раздел Мастерская TES IV

Ответов: 4
Просмотров: 741
Последний ответ 03 Август, 2011, 17:51:14
от AleksTirex

Поиск

 
Top
SimplePortal 2.3.5 © 2008-2012, SimplePortal