Перейти к содержанию

Скрипт загадки


Рекомендуемые сообщения

Мримите заявку на скрипт по открыванию дверей. Чтобы дверь открывалась только приналичии 2 предм (определенных) и только в 00:00 часов
Ссылка на комментарий
Поделиться на другие сайты

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

Вот примерный скрипт двери, открывающейся при наличии определенных предметов:

if ( OnActivate == 1 )

if ( Player -> GetItemCount "item" == 1 ) (или >= 1, если предмет не уникален)

activate

elseif ( Player -> GetItemCount "item" == 0 )

messagebox "У тебя нет нужного предмета"

return

endif

Ссылка на комментарий
Поделиться на другие сайты

условие на время выглядит так:

if ( GameHour >= час икс ); например - 2

if ( GameHour <= час игрек ); например - 3

;что то делать - например, вывесить объяву - закрыто на обед

else

return , или MessageBox или что там еще; например, открыть

endif

endif

 

то есть если в заведении обед с двух до трех, то ты туда и не попадешь...

или наоборот - как угодно...

Ссылка на комментарий
Поделиться на другие сайты

begin LockScript

short item1
short item2
short sum
short active
short istime

if ( OnActivate == 1 )
  set active to 1
endif

if ( active == 1 )
  if ( player -> GetItemCount "Item1" >= 1 )
  set item1 to 1
  else
  set item1 to 0
  endif
  if ( player -> GetItemCount "Item2" >= 1 )
  set item2 to 1
  else
  set item2 to 0
  endif
  set sum to ( item1 + item2 )
  if ( GameHour >= XX ); например - 2
  if ( GameHour <= XX )
	 set istime to 1
  else
	 set istime to 0
 endif
  else
  set istime to 0
  endif
  if ( istime == 0 )
  Message, "Вы пришли невовремя"
  elseif ( istime == 1 )
  if ( sum != 2 )
	Message, "У вас не все есть"
 elseif ( sum == 2 )
  set active to 0
  set sum to 0
  set istime to 0
  activate
endif
  endif
endif

end

 

Пробуйте.

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...