Муурн Шепард Опубликовано 21 ноября, 2010 Жалоба Поделиться Опубликовано 21 ноября, 2010 if ( GetPCSleep == 0 )if ( State == 2 )if ( butst == 0 )DisablePlayerControlsplayer->ModCurrentFatigue -9999MessageBox "Вы проснулись на привязи к ножке кровати. Над вами стоит старик. Он говорит вам:Чего ты не принесешь пакет. Император выпустил тебя из тюрьмы, а ты не выполняешь его приказы. У тебя выбор. В тюрьму или служить клинкам.","Служить клинкам","В тюрьму"set button to getbuttonpressedset butst to 1endifendifendif;if ( butst == 1 ) if ( button == 0 ) set count_mistake_blade to 1 set butst to 2 MessageBox "Теперь отдай мне пакет" "Готово" player->modcurrentfatigue 9999 set butst to 0 EnablePlayerControls elseif ( button == 1 ) setpccrimelevel 5000 player->setfatigue 0 startscript player_go_jail_end set butst to 0 endif;endif Вот пишу скрипт для плагина, но button он не работает. Можете пожалуйста объяснить. Ссылка на комментарий Поделиться на другие сайты Поделиться
bi-666 Опубликовано 21 ноября, 2010 Жалоба Поделиться Опубликовано 21 ноября, 2010 Перед set butst to 1 блок if ( button == -1 ) return endifставить не пробовали? Ссылка на комментарий Поделиться на другие сайты Поделиться
Муурн Шепард Опубликовано 21 ноября, 2010 Автор Жалоба Поделиться Опубликовано 21 ноября, 2010 (изменено) Перед set butst to 1 блок if ( button == -1 ) return endifставить не пробовали? Сейчас попробую.Можно пожалуйста, блок целиком. Не пойму где ставить. Изменено 21 ноября, 2010 пользователем Муурн Шепард Ссылка на комментарий Поделиться на другие сайты Поделиться
bi-666 Опубликовано 21 ноября, 2010 Жалоба Поделиться Опубликовано 21 ноября, 2010 Сейчас попробую.Можно пожалуйста, блок целиком. Не пойму где ставить.if ( GetPCSleep == 0 ) if ( State == 2 ) if ( butst == 0 ) DisablePlayerControls player->ModCurrentFatigue -9999 MessageBox "Вы проснулись на привязи к ножке кровати. Над вами стоит старик. Он говорит вам:Чего ты не принесешь пакет. Император выпустил тебя из тюрьмы, а ты не выполняешь его приказы. У тебя выбор. В тюрьму или служить клинкам.","Служить клинкам","В тюрьму" set button to getbuttonpressed if ( button == -1 ) return endif set butst to 1 endif endif endif ;if ( butst == 1 ) if ( button == 0 ) set count_mistake_blade to 1 set butst to 2 MessageBox "Теперь отдай мне пакет" "Готово" player->modcurrentfatigue 9999 set butst to 0 EnablePlayerControls elseif ( button == 1 ) setpccrimelevel 5000 player->setfatigue 0 startscript player_go_jail_end set butst to 0 endif ;endifПерсонаж, кстати, еще может на полу или на спальнике спать - может, стоит поменять сообщения на что-нибудь другое типа "Вы проснулись на полу, на спине чувствуется тяжесть кованого сапога. Его хозяин спрашивает, когда вы принесете Косадесу пакет."? Ссылка на комментарий Поделиться на другие сайты Поделиться
Муурн Шепард Опубликовано 21 ноября, 2010 Автор Жалоба Поделиться Опубликовано 21 ноября, 2010 (изменено) Если перед butst, то подвисает. Текст изменил на:"Вы проснулись на привязи к ножке кровати, в незнакомом доме.". Изменено 21 ноября, 2010 пользователем Муурн Шепард Ссылка на комментарий Поделиться на другие сайты Поделиться
bi-666 Опубликовано 21 ноября, 2010 Жалоба Поделиться Опубликовано 21 ноября, 2010 Если перед butst, то подвисает. Текст изменил на:"Вы проснулись на привязи к ножке кровати, в незнакомом доме.".Попробуйте в таком случае вот так: if ( GetPCSleep == 0 ) if ( State == 2 ) if ( butst == 0 ) DisablePlayerControls player->ModCurrentFatigue -9999 MessageBox "Вы проснулись на привязи к ножке кровати. Над вами стоит старик. Он говорит вам:Чего ты не принесешь пакет. Император выпустил тебя из тюрьмы, а ты не выполняешь его приказы. У тебя выбор. В тюрьму или служить клинкам.","Служить клинкам","В тюрьму" set button to getbuttonpressed set butst to 1 endif endif endif if ( butst == 1 ) if ( button == -1 ) return elseif ( button == 0 ) set count_mistake_blade to 1 set butst to 2 MessageBox "Теперь отдай мне пакет" "Готово" player->modcurrentfatigue 9999 set butst to 0 EnablePlayerControls elseif ( button == 1 ) setpccrimelevel 5000 player->setfatigue 0 startscript player_go_jail_end set butst to 0 endif endif Ссылка на комментарий Поделиться на другие сайты Поделиться
Муурн Шепард Опубликовано 21 ноября, 2010 Автор Жалоба Поделиться Опубликовано 21 ноября, 2010 if ( GetPCSleep == 0 ) if ( State == 2 ) if ( butst == 0 ) DisablePlayerControls player->ModCurrentFatigue -9999 MessageBox "Вы проснулись на привязи к ножке кровати, в незнакомом доме. Над вами стоит старик. Он говорит вам:Чего ты не принесешь пакет. Император выпустил тебя из тюрьмы, а ты не выполняешь его приказы. У тебя выбор. В тюрьму или служить клинкам.","Служить клинкам","В тюрьму" set button to getbuttonpressed set butst to 1 endif endif endif if ( butst == 1 ) if ( button == -1 ) return elseif ( button == 0 ) set count_mistake_blade to 1 set butst to 2 MessageBox "Теперь отдай мне пакет" "Готово" player->modcurrentfatigue 9999 set butst to 0 EnablePlayerControls elseif ( button == 1 ) setpccrimelevel 5000 player->setfatigue 0 startscript player_go_jail_end set butst to 0 endif endif Не думает. Проглатывает, выводит из выбора текста, и ничего не делает. Ссылка на комментарий Поделиться на другие сайты Поделиться
bi-666 Опубликовано 21 ноября, 2010 Жалоба Поделиться Опубликовано 21 ноября, 2010 Помнится, был в МСФД такой скрипт - Begin my_first_script Short controlvar Short button Float timer If ( MenuMode == 1 ) Return Endif If ( OnActivate == 1 ) If ( controlvar == 0 ) MessageBox “Нету голоса - все же кричит, нету крыльев, а чем-то полощет, нет зубов - норовит укусить, нету рта, но все время бормочет. Что это?”, “Летучая мышь”, “Старуха”, “Ветер”, “Дух” Set controlvar to 1 elseif controlvar > 1 activate endif endif if ( controlvar == 1 ) set button to GetButtonPressed if ( button == -1 ) return elseif ( button == 2 ) MessageBox "Ответ верный" Activate set controlvar to 2 else MessageBox "Ответ неверный" Player -> AddSpell, "Frost_Curse" set controlvar to –1 Endif elseif ( controlvar == 2 ) Activate Set controlvar to 3 elseif ( controlvar == -1 ) Set timer to ( timer + GetSecondsPassed ) if timer > 10 Player -> RemoveSpell, "Frost_Curse" set controlvar to -2 endif endif End Посему надо поставить set button to GetButtonPressed перед блоком с проверкой кнопки:if ( GetPCSleep == 0 ) if ( State == 2 ) if ( butst == 0 ) DisablePlayerControls player->ModCurrentFatigue -9999 MessageBox "Вы проснулись на привязи к ножке кровати, в незнакомом доме. Над вами стоит старик. Он говорит вам:Чего ты не принесешь пакет. Император выпустил тебя из тюрьмы, а ты не выполняешь его приказы. У тебя выбор. В тюрьму или служить клинкам.","Служить клинкам","В тюрьму" set butst to 1 endif endif endif if ( butst == 1 ) set button to getbuttonpressed if ( button == -1 ) return elseif ( button == 0 ) set count_mistake_blade to 1 set butst to 2 MessageBox "Теперь отдай мне пакет" "Готово" player->modcurrentfatigue 9999 set butst to 0 EnablePlayerControls elseif ( button == 1 ) setpccrimelevel 5000 player->setfatigue 0 startscript player_go_jail_end set butst to 0 endif endifЕсли не поможет - хз, в чем дело. Ссылка на комментарий Поделиться на другие сайты Поделиться
Муурн Шепард Опубликовано 21 ноября, 2010 Автор Жалоба Поделиться Опубликовано 21 ноября, 2010 Работает! Спасибо! Виснет из-за переменных, но я это подправлю. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти