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

Где ошибка в скрипте?


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

Скрипт:

begin M_h_s_act_1

short state
short DoOnce

if ( MenuMode == 1 )
return
endif

if ( OnActivate == 1 )
if( M_h_s_bad != 1 )
	Set M_h_s_count to ( M_h_s_count + 1 )
	if ( state == 0 )
		Set state to 1
		if ( DoOnce == 1 )
			M_h_s_statue1 -> AddSpell, "M_h_s_par"
		endif
		Set DoOnce to 1
	else
		Set state to 0
		M_h_s_statue1 -> RemoveSpell, "M_h_s_par"
	endif
else
	Set M_h_s_count to ( M_h_s_count - 5 )
	if ( state == 0 )
		Set state to 1
		if ( DoOnce == 1 )
			M_h_s_statue1 -> AddSpell, "M_h_s_par"
		endif
		Set DoOnce to 1
	else
		Set state to 0
		M_h_s_statue1 -> RemoveSpell, "M_h_s_par"
	endif
	Set M_h_s_bad to  Random, 4
	Set M_h_s_bad to M_h_s_bad + 1
endif
else
return
endif
end

 

КС по-многу раз ругается на строчки где упоминается M_h_s_statue1, говорит найти не может. Объект есть стопудово это кричер. Скрипт на активаторе. На кричере стоит Corpses persist.

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

1.Проверь, точно ли такое ID у кричера.

2.Тоже самое со спеллом.

3.Если это новый кричер, то возможны глюки с анимацией.

4.Проверь, не бегает ли он как человек(у меня был похожий глюк с ужасом клана : Он бегал выыпрямившись и у него голова в этот момент вертелась вокруг своей оси - было смешно)

5.Если это не помогло напиши здесь точный текст ошибки.

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

У тебя просто не написано, что такое M_h_s_bad.

 

Напиши вначале short M_h_s_bad

Я уже многократно разбивала лоб об такие ошибки.

 

Дополнение: а ну еще и short M_h_s_count и тому подобные нестандартые переменные, которыми ты оперируешь.

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

UraXa

1. ID копировал для исключения ошибки

2. Аналогично

3. Кричер старый из Трибунала

4. Бегает как человек, но при чем тут это. У меня же скрипт не компилируется в КСе.

5. Script M_h_s_act_1

Line 16 function object "M_h_s_statue1" not found

 

LofZ

M_h_s_bad и M_h_s_count - это глобальные переменные, срипты общаются через них. Их не надо объявлять в начале скрипта.

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

Человек Дожен стоять в окне Render Windiw иначе он будет выдовать ошибку. (кричер тоже)

 

Попробуй их потавить куда-нибудь (для теста в одну и ту же ячейку например)

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

M_h_s_bad и M_h_s_count - это глобальные переменные, срипты общаются через них. Их не надо объявлять в начале скрипта.

 

Гм. Неужели? Сужу по своему опыту: даже для глобальных скриптов мне приходилось использовать такие переменные как Day, myday. И все равно ничего не работало, если так не упомянуть о них в начале скрипта.

 

Иногда редактору не нравится, если у объекта и скрипта - одинаковое ИД.

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

2Lofz И после такого объявления у тебя все работало? Ведь локальные переменные переписывают глобальные, буде встретятся в одном скрипте. Да, кричера лучше поставить в КС и отметить Reference Persist, а не Corpse (он отвечает за неисчезновение трупов, вообще то)
Ссылка на комментарий
Поделиться на другие сайты

2Boblen ПКМ, Toggle Persistance?

Как ни странно, но поставив после строчки с Add\RemoveSpell строчку с Activate или playgroup у меня все заработало. А кричеры стояли с самого начала. Я ведь че и спросил, что не видел объективной причины ругали во стороны КС. И вот интересно почему КС ругал каждую из четырех строчек минимул по 4 раза?

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

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

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

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

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

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

Войти

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

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

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