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

Помогите со скриптом


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

И вот я опять обращаюсь к людям, ибо в скиптописании я не силен. Как сделать скрипт чтобы когда дверь открывается ключом то при ее закрытие замок опять появлялся. Ну например пришел я в свой дом и зашол в оружейню котороя закрытая на замок. У меня есть ключ я отрываю дверь а когда закрываю надо чтобы замок ставал на место.
Ссылка на комментарий
Поделиться на другие сайты

Задумал сделать плаг. Но мне нужен скрипт. Например:

Идеш до торговца и купляеш бумаги на мебель, и когда эта бумага у тебя в определённой хате появляется мебель которая указана в этой бумаге. И чтобы когда эту бумагу продал назад те вещи пропадали.

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

сделай глобальную переменную типа например listmebel

сделай копии нужной мебели с уникальными ID, она расставляется в домах, ставится активатор в доме у входа на который вешается скриипт

begin mebel

short once

if ( menumode == 1) 
return 
endif

if ( once == 0 ); один раз при заходе в ячейку проверяется
if ( listmebel == 1 ); наличие покупки мебеля
	ID_мебели1 -> enable
	весь список мебели которая должна появится
else
	ID_мебели1 -> disable
	весь список мебели которая должна убратся
endif
set once to 1
endif

end mebel

 

в разговор, при покупке бумаги этой в поле результата

Player->AddItem "ID купчей" 1

set listmebel to 1

в продажу (не забыть условие проверки наличия бумажки для этого топика по ID)

Player->RemoveItem "ID купчей" 1

set listmebel to 0

 

кста можно и глобальными скриптами выполнить типа

при покупке в результ разговора вписать StartScript mebelenable

при продаже в результ вписать StartScript mebeldisable

тогда активатор со скриптом в ячейке не нужен

 

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

begin mebelenable

ID_мебели1 -> enable
весь список мебели которая должна появится
StopScript mebelenable

end mebelenable

 

begin mebeldisable

ID_мебели1 -> disable
весь список мебели которая должна исчезнуть
StopScript mebeldisable

end mebeldisable

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

Спасибо все "OK".

У меня еще 1 вопрос. Как сделать скрипт чтобы в дверь мог зайти только Неревар, или глава гильдии.

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

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

Но мне нужно что-бы у всех членов гильдии появилась тема повышение, а потом выбор рангов до которых можно повысить.
Ссылка на комментарий
Поделиться на другие сайты

Я сам делаю этот скрипт (не копирую прям отсуда), но у меня выбивает ошибку

 

Object 'furn_com_pm_chair_02' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_r_chair_01' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_pm_chair_02' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_r_chair_01' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_pm_chair_02' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_r_chair_01' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_pm_chair_02' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_r_chair_01' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_pm_chair_02' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_r_chair_01' is not persistent. Its presence is not guaranteed in game.

Object 'furn_com_pm_chair_02' is not persistent. Its presence is not guaranteed in game.

 

Вот сам скрипт

 

Begin _mebel

 

short once

 

if ( menumode == 1 )

return

endif

 

if ( once == 1 )

if ( listmebel == 1)

 

_furn_com_pm_chair_02 -> enable

_furn_com_r_chair_01 -> enable

 

else

 

_furn_com_pm_chair_02 -> disable

_furn_com_r_chair_01 -> disable

 

endif

 

set once to 1

 

endif

 

end _mebel

 

Cкажите что не так

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

Begin _mebel

 

short once - объявленная переменная-согласен!

short listmebel - думаю тоже надо объявить(если это не глобальная переменная)

 

if ( menumode == 1 )

return

endif

 

if ( once == 1 )

if ( listmebel == 1)

 

"_furn_com_pm_chair_02" -> enable если ID начинается с подчеркивания, то обязательно берется в кавычки!!!

"_furn_com_r_chair_01" -> enable

 

else

 

"_furn_com_pm_chair_02" -> disable

"_furn_com_r_chair_01" -> disable

 

endif

 

set once to 1

 

endif

 

end _mebel

 

 

возможно, что ты не поставил на своих стульях галочку на References Persist

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

Теперь этот скрипт выбивает ошибки

 

Script _mebel

Syntax Error Line 12

Miss mached quotes

 

Script _mebel

Line 12 function reference object

"if" not fount

 

 

Script _mebel

Syntax Error Line 12

"_furn_com_pm_char_02 enable"

 

Could not parse this line

Miss mached if/else/endif

starting on line 9

 

Сам скрипт

 

Begin _mebel

 

Short once

 

if ( menumode == 1 )

return

endif

 

if ( once == 1 )

if ( listmebel == 1 )

 

"_furn_com_pm_chair_02" -> enable

"_furn_com_r_chair_01" -> enable

 

else

 

"_furn_com_pm_chair_02" -> disable

"_furn_com_r_chair_01" -> disable

 

endif

 

set once to 1

 

endif

 

end _mebel

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

begin 1_mebel

Short once
short listmebel; ?

if ( menumode == 1 )
return
endif

if ( once == 1 )
if ( listmebel == 1 )
	 enable
else
	disable
	set once to 1
endif
endif

end

 

этот скрипт приаттач к _furn_com_pm_chair_02 и к _furn_com_r_chair_01 и все будет работать!

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

сделай глобальную переменную типа например listmebel

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

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

сделай глобальную переменную типа например listmebel

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

 

будет! еще как будет! даже delitеться будет, только не в том же фрейме! (я имею в виду без вылета игры!)

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

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

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

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

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

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

Войти

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

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

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