Serg9408 Опубликовано 22 января, 2010 Жалоба Поделиться Опубликовано 22 января, 2010 Эти два блока - это полный текст скрипта? В скрипте никаких различий по типам стражников вроде бы нет.Скрипт точно тот самый? Ссылка на комментарий Поделиться на другие сайты Поделиться
KABASYA Опубликовано 22 января, 2010 Жалоба Поделиться Опубликовано 22 января, 2010 Эти два блока - это полный текст скрипта? В скрипте никаких различий по типам стражников вроде бы нет.Скрипт точно тот самый?Вот полный текст[buspoiler]begin mca_guards_all short environmentcheckedshort willstayshort canbedeletedshort helpingshort noidleshort nohello if ( MenuMode == 1 ) Returnendif if ( GetCurrentAiPackage == -1 ) AiWander, 2000, 5, 0, 60, 20, 20, 20, 0, 0, 0, 20 set helping to 0elseif ( GetCurrentAiPackage == 2 )if ( CellChanged == 1 ) AiWander, 2000, 5, 0, 60, 20, 20, 20, 0, 0, 0, 20 set helping to 0endifendif if ( MCA_FightingBandits > 0 )if ( helping != 1 ) AiEscort, "player" 0 0 0 0 set helping to 1endifendif if ( helping == 1 )if ( MCA_FightingBandits == 0 ) AiWander, 2000, 5, 0, 60, 20, 20, 20, 0, 0, 0, 20 set helping to 2endifendif if ( GetInterior == 0 )if ( canbedeleted == 0 )if ( GetDistance, "player" < 500 ) set canbedeleted to 1endifendifendif if ( CellChanged == 1 )if ( GetInterior == 1 ) set environmentchecked to 0elseif ( canbedeleted == 1 )if ( GetDistance, "player" > 3000 ) Disableendifendifendif if ( GetDisabled == 1 ) SetDelete, 1endif if ( environmentchecked == 1 ) Returnendif set willstay to Random, 5 if ( willstay == 0 ) Disable Returnelseif ( GetInterior == 1 ) aiwander, 0, 5, 0, 60, 20, 10, 10, 0, 0, 0, 0 set environmentchecked to 1 Returnendif set environmentchecked to 1 end[/buspoiler] Ссылка на комментарий Поделиться на другие сайты Поделиться
Destruct Опубликовано 22 января, 2010 Жалоба Поделиться Опубликовано 22 января, 2010 Лол?Зачем так парились в скрипте то?Никакой там не нужен гет батон пресд!!!Зачем так усложнять скрипт?! Убираешь в скрипте строчки set button to getButtonpressed if (button == 0) Убираешь переменную getButtonpressed А в начале скрипта ставишь: if ( MenuMode == 1 )returnendif Не нужно никаких усложнений Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 24 января, 2010 Жалоба Поделиться Опубликовано 24 января, 2010 А разве когда висит сообщение, это считается MenuMode? В МСФД в самом начале приведен скрипт с этим блоком, но в нем есть сообщения... KABASYAВ скрипте ничего такого не сказано. Проверь еще раз, те ли скрипты висят на стражниках и на бандитах. И нет ли более позднего плага, затрагивающего имперских стражников. Ссылка на комментарий Поделиться на другие сайты Поделиться
Destruct Опубликовано 24 января, 2010 Жалоба Поделиться Опубликовано 24 января, 2010 (изменено) Вообще, если висят эти строки, то кнопка должна нажиматся.Сейчас пороюсь в скрипте из ЧарГена приведу пример begin CharGenFatigueBarrel ;barrel in courtyard that shows map menu short done if ( menumode == 1) returnendif if ( done == 0 ) if ( GetDistance, Player < 400 ) enablemapmenu MessageBox "Теперь у вас есть меню карты. Оно показывает название местности, в которой вы находитесь, и то, в каком направлении вы стоите лицом.", "Готово" EnablePlayerJumping enableplayerfighting enableplayermagic set done to 1 endif endif end Изменено 24 января, 2010 пользователем Destruct Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 24 января, 2010 Жалоба Поделиться Опубликовано 24 января, 2010 Я не про то, что кнопка не будет нажиматься. Задача была - воскресить непися после нажатия кнопки, а не после появления сообщения (что было сказано открытым текстом). Для чего это было надо - не знаю. В примере все возможности даются ГГ в момент появления сообщения, а блок проверки на меню нужен, как мне кажется, только для увеличения производительности. Ссылка на комментарий Поделиться на другие сайты Поделиться
Destruct Опубликовано 24 января, 2010 Жалоба Поделиться Опубликовано 24 января, 2010 Ну так если обьявить resurrect после сообщения, он разве не будет воскрешать? Ссылка на комментарий Поделиться на другие сайты Поделиться
KABASYA Опубликовано 24 января, 2010 Жалоба Поделиться Опубликовано 24 января, 2010 (изменено) Со стражниками и бандитами разобрался, благодарю за помощь, теперь предстал перед иной делемой, вот три скрипта:1. Атака бандитов[buspoiler]begin mca_bandits short willspawnothersshort companionclassshort fighting if ( fighting == 1 )if ( OnDeath == 1 ) set MCA_FightingBandits to ( MCA_FightingBandits - 1 )elseif ( CellChanged == 1 ) set MCA_FightingBandits to ( MCA_FightingBandits - 1 ) set fighting to 0endifendif if ( GetTarget, "player" == 1 )if ( fighting == 0 ) set MCA_FightingBandits to ( MCA_FightingBandits + 1 ) set fighting to 1endifendif if ( willspawnothers > 0 ) Returnendif set willspawnothers to Random, 4set companionclass to Random, 32 if ( willspawnothers == 0 )if ( companionclass == 0 ) Placeatme, "_MCA_bandit_bos_f01", 1, 128, 1elseif ( companionclass == 1 ) Placeatme, "_MCA_bandit_bos_f02", 1, 128, 2elseif ( companionclass == 2 ) Placeatme, "_MCA_bandit_bos_m01", 1, 128, 1elseif ( companionclass == 3 ) Placeatme, "_MCA_bandit_bos_m02", 1, 128, 2elseif ( companionclass == 4 ) Placeatme, "_MCA_bandit_bret_f01", 1, 128, 1elseif ( companionclass == 5 ) Placeatme, "_MCA_bandit_bret_f02", 1, 128, 2elseif ( companionclass == 6 ) Placeatme, "_MCA_bandit_bret_m01", 1, 128, 1elseif ( companionclass == 7 ) Placeatme, "_MCA_bandit_bret_m02", 1, 128, 2elseif ( companionclass == 8 ) Placeatme, "_MCA_bandit_dun_f01", 1, 128, 1elseif ( companionclass == 9 ) Placeatme, "_MCA_bandit_dun_f02", 1, 128, 2elseif ( companionclass == 10 ) Placeatme, "_MCA_bandit_dun_m01", 1, 128, 1elseif ( companionclass == 11 ) Placeatme, "_MCA_bandit_dun_m02", 1, 128, 2elseif ( companionclass == 12 ) Placeatme, "_MCA_bandit_imp_f01", 1, 128, 1elseif ( companionclass == 13 ) Placeatme, "_MCA_bandit_imp_f02", 1, 128, 2elseif ( companionclass == 14 ) Placeatme, "_MCA_bandit_imp_m01", 1, 128, 1elseif ( companionclass == 15 ) Placeatme, "_MCA_bandit_imp_m02", 1, 128, 2elseif ( companionclass == 16 ) Placeatme, "_MCA_bandit_khaj_f01", 1, 128, 1elseif ( companionclass == 17 ) Placeatme, "_MCA_bandit_khaj_f02", 1, 128, 2elseif ( companionclass == 18 ) Placeatme, "_MCA_bandit_khaj_m01", 1, 128, 1elseif ( companionclass == 19 ) Placeatme, "_MCA_bandit_khaj_m02", 1, 128, 2elseif ( companionclass == 20 ) Placeatme, "_MCA_bandit_nord_f01", 1, 128, 1elseif ( companionclass == 21 ) Placeatme, "_MCA_bandit_nord_f02", 1, 128, 2elseif ( companionclass == 22 ) Placeatme, "_MCA_bandit_nord_m01", 1, 128, 1elseif ( companionclass == 23 ) Placeatme, "_MCA_bandit_nord_m02", 1, 128, 2elseif ( companionclass == 24 ) Placeatme, "_MCA_bandit_orc_f01", 1, 128, 1elseif ( companionclass == 25 ) Placeatme, "_MCA_bandit_orc_f02", 1, 128, 2elseif ( companionclass == 26 ) Placeatme, "_MCA_bandit_orc_m01", 1, 128, 1elseif ( companionclass == 27 ) Placeatme, "_MCA_bandit_orc_m02", 1, 128, 2elseif ( companionclass == 28 ) Placeatme, "_MCA_bandit_red_f01", 1, 128, 1elseif ( companionclass == 29 ) Placeatme, "_MCA_bandit_red_f02", 1, 128, 2elseif ( companionclass == 30 ) Placeatme, "_MCA_bandit_red_m01", 1, 128, 1elseif ( companionclass == 31 ) Placeatme, "_MCA_bandit_red_m02", 1, 128, 2endifendif set willspawnothers to 1 end[/buspoiler]2. Атака вампиров[buspoiler]begin dg_Vampire_Berne_Ranger short doneshort fightsetshort cattlekilledshort noloreshort nohelloshort nofleeshort noidleshort nointrudershort nothiefshort sFlagshort sHuntershort sFightStateshort OnPCHitMeshort sAttack float fPCAnglefloat fPCXfloat fPCYfloat fdxfloat fdyfloat fRatiofloat fCrimeLevel short sFrameshort sStateshort sOnce if ( GetJournalIndex "VA_VampCountess" == 70 ) setFight 100 setDisposition 0 set cattlekilled to -1 set sHunter to 1else set sHunter to 0endif if ( OnDeath == 1 ) if ( sHunter == 0 ) if ( GetJournalIndex "VA_VampHunter" == 90 ) if ( VampClan == 1 ) set VampKills to ( VampKills + 1 ) elseif ( VampClan == 2 ) set VampKills to ( VampKills - 1 ) elseif ( VampClan == 3 ) set VampKills to ( VampKills + 1 ) endif elseif ( GetJournalIndex "VA_VampAmulet" == 30 ) if ( VampClan == 1 ) set VampKills to ( VampKills + 1 ) elseif ( VampClan == 2 ) set VampKills to ( VampKills - 1 ) elseif ( VampClan == 3 ) set VampKills to ( VampKills + 1 ) endif endif AddItem "ingred_vampire_dust_01" 1 endif endif if ( sOnce == 0 ) Disable set sOnce to 1endif if ( GetHealth > 0 ) if ( GetPCSleep == 1 ) if ( GetDisabled == 0 ) Disable endif endifendif if ( MenuMode == 1 ) returnendif if ( OnPCHitMe == 1 ) if ( sFightState == 0 ) if ( player->GetPCCrimeLevel > fCrimeLevel ) PayFineThief set fTemp to ( player->GetPCCrimeLevel ) set fCrimeLevel to ( fCrimeLevel - fTemp ) player->ModPCCrimeLevel, fCrimeLevel set sFightState to 1 endif startcombat, player endif endif set fCrimeLevel to ( player->GetPCCrimeLevel ) set sAttack to 0 if ( GetSpellReadied == 1 )set sAttack to 1elseif ( GetWeaponDrawn == 1 )set sAttack to 1endif if ( sAttack == 1 ) if ( sFightState == 0 ) if ( GetTarget, Player ) set sFightState to 1 endif endifelse if ( sFightState == 1 ) StartCombat, Player endifendif if ( GetDistance, Player > 2000 ) set sAttack to 0endif ;if guards are attacking, they won't notice crime. so make the creature notice insteadif ( NPCGuardAttack > 0 ) SetAlarm, 100else SetAlarm, 0endif ;reset flag if global is 0if ( NPCCreatureAttack < 1 ) set sFlag to 0 endif if ( sFlag == 0 ) ;return if dead if ( GetHealth > 0 ) if ( GetDisabled == 0 ) ;if close to player increase the attacking NPC variable if ( sAttack == 1 ) set NPCCreatureAttack to ( NPCCreatureAttack + 1 ) set sFlag to 1 if ( ScriptRunning, dg_NPCAttackFixScript == 0 ) StartScript dg_NPCAttackFixScript endif endif endif endif else ;clear the NPC attack flag if dead or far or disable if ( sAttack == 0 ) set sFlag to 0 elseif ( GetDisabled == 1 ) set sFlag to 0 ;reduce if dead elseif ( GetHealth < 1 ) set sFlag to 0 endif if ( sFlag == 0 ) if( NPCCreatureAttack > 0 ) set NPCCreatureAttack to ( NPCCreatureAttack - 1 ) endif endifendif set sFrame to ( sFrame + 1 ) if ( sFrame < 10 )returnendif set sState to 0set sFrame to 0 if ( GetDisabled == 1 ) if ( GameHour > 20 ) set sState to 1 endif if ( GameHour < 6 ) set sState to 1 endifelse if ( GameHour > 6 ) if ( GameHour < 20 ) set sState to 2 endif endifendif if ( GetHealth < 1 ) set sState to 0endif if ( GetInterior == 1 ) set sState to 0endif if ( GetDistance, Player < 256 ) set sState to 0endif if ( sState != 0 ) if ( GetDistance, Player > 7168 ) set sState to ( sState + 2 )else set fPCX to ( player->GetPos, X )set fPCY to ( player->GetPos, Y )set fPCAngle to ( player->GetAngle, Z ) set fdx to GetPos, Xset fdy to GetPos, Y set fdx to ( fdx - fPCX )set fdy to ( fdy - fPCY ) set fRatio to ( fdx / fdy ) ;MessageBox "angle: %f, fdx : %f, fdy: %f, ratio: %f", fPCAngle, fdx, fdy, fRatio if ( fdx > 0 ) if ( fdy > 0 ) if ( fRatio > 1 ) if ( fPCAngle < -45 ) set sState to ( sState + 2 ) endif else if ( fPCAngle < -90 ) set sState to ( sState + 2 ) endif if ( fPCAngle > 135 ) set sState to ( sState + 2 ) endif endif else if ( fRatio < -1 ) if ( fPCAngle < 0 ) if ( fPCAngle > -135 ) set sState to ( sState + 2 ) endif endif else if ( fPCAngle < 45 ) if ( fPCAngle > -90 ) set sState to ( sState + 2 ) endif endif endif endifelse if ( fdy > 0 ) if ( fRatio < -1 ) if ( fPCAngle > 45 ) set sState to ( sState + 2 ) endif else if ( fPCAngle > 90 ) set sState to ( sState + 2 ) endif if ( fPCAngle < -135 ) set sState to ( sState + 2 ) endif endif else if ( fRatio > 1 ) if ( fPCAngle > 0 ) if ( fPCAngle < 135 ) set sState to ( sState + 2 ) endif endif else if ( fPCAngle > -35 ) if ( fPCAngle < 90 ) set sState to ( sState + 2 ) endif endif endif endif endif endif if ( sState == 3 ); MessageBox "Включено" Enable ModCurrentHealth, 10000 ModCurrentFatigue, 10000 ModCurrentMagicka, 10000endif if ( sState == 4 ); MessageBox "Выключено" Disableendif endif if ( sHunter == 1 ) returnendif if ( done == -1 ) returnendif if ( done == 2 ) ;check for PC NO LONGER a Berne Vampire if ( player->GetSpell "Vampire Berne Specials" != 1 ) setfight 90 setdisposition 20 set done to -1 endif endif if ( done == 0 ) AddSpell, "Vampire Blood Berne" ;this is the blood disease AddSpell, "Vampire Attributes" AddSpell, "Vampire Skills" AddSpell, "Vampire Immunities" AddSpell, "vampire new ability" AddSpell, "Vampire Touch" AddSpell, "Vampire Berne Specials" ModRestoration 75 ;check for PC as a Berne Vampire if ( player->GetSpell "Vampire Berne Specials" == 1 ) if ( GetTarget, Player == 1 ) StopCombat endif setfight 30 set done to 2 elseif ( player->GetSpell "Vampire Berne Specials" != 1 ) if ( fightset == 0 ) setfight 90 setdisposition 20 set fightset to 1 endif endif set done to 2 endif end[/buspoiler] 3.Стражники атакуют бандитов[buspoiler]begin mca_guards_all short helping if ( MenuMode == 1 ) Returnendif if ( GetCurrentAiPackage == -1 ) AiWander, 256, 5, 0, 60, 20, 20, 20, 0, 0, 0, 20 set helping to 0elseif ( GetCurrentAiPackage == 2 )if ( CellChanged == 1 ) AiWander, 256, 5, 0, 60, 20, 20, 20, 0, 0, 0, 20 set helping to 0endifendif if ( MCA_FightingBandits > 0 )if ( helping != 1 ) AiEscort, "player" 0 0 0 0 set helping to 1endifendif if ( helping == 1 )if ( MCA_FightingBandits == 0 ) AiWander, 256, 5, 0, 60, 20, 20, 20, 0, 0, 0, 20 set helping to 2endifendif end[/buspoiler]Подскажите пожалуйста как сделать так, чтоб стражники атаковали не только бандитов а и вампиров или, чтоб стражники не штрафовали меня после убийства вампира, а то есть такое дело, ,я понимаю, что можно просто поменять скрипт вампирам, но после этого не будет возможности от них заразиться.Заранее благодарю. Изменено 24 января, 2010 пользователем KABASYA Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 25 января, 2010 Жалоба Поделиться Опубликовано 25 января, 2010 Ну так если обьявить resurrect после сообщения, он разве не будет воскрешать?Говорю еще раз: воскрешать должен не после появления сообщения, а после нажатия кнопки. Почему - не знаю. short fighting if ( fighting == 1 ) if ( OnDeath == 1 ) set MCA_FightingBandits to ( MCA_FightingBandits - 1 ) elseif ( CellChanged == 1 ) set MCA_FightingBandits to ( MCA_FightingBandits - 1 ) set fighting to 0 endif endif if ( GetTarget, "player" == 1 ) if ( fighting == 0 ) set MCA_FightingBandits to ( MCA_FightingBandits + 1 ) set fighting to 1 endif endif Этот блок добавляешь в начало вампирского скрипта. Не потеряй переменную fighting. Ссылка на комментарий Поделиться на другие сайты Поделиться
Destruct Опубликовано 25 января, 2010 Жалоба Поделиться Опубликовано 25 января, 2010 Так, это будет то же самое!Игрок нажмет кнопку и воскресит. Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 25 января, 2010 Жалоба Поделиться Опубликовано 25 января, 2010 Это-то да, поэтому и не понимаю. В общем, хватит уже нам флудить на эту тему. Ссылка на комментарий Поделиться на другие сайты Поделиться
KABASYA Опубликовано 3 февраля, 2010 Жалоба Поделиться Опубликовано 3 февраля, 2010 (изменено) Всем привет, люди, помогите в следующем вопросе: ниже скриптик, который при активации переводит все деньги на счет в банк, подскажите, что нужно добавить, чтобы снимались не все деньги, а 500000, а то я подметил, такую фишку, что крупные суммы моррик за раз не снимает, не переводит.Я вот плагин один переделывал, на покупку дома, там цены как мн7е показались маленькие, вот одному замку я назначил цену в 120 000 000, а как их перевести?[buspoiler]begin BankDepositAll long YourGold set YourGold to "Player"->GetItemCount Gold_001 set BankAccount to ( BankAccount + YourGold ) while ( YourGold >= 32000 ) Player->RemoveItem Gold_001 32000 set YourGold to ( YourGold - 32000 ) endwhile if ( YourGold >= 16384 ) Player->RemoveItem Gold_001 16384 set YourGold to (YourGold - 16384) endif if ( YourGold >=8192 ) Player->RemoveItem Gold_001 8192 set YourGold to ( YourGold - 8192 ) endif if ( YourGold >= 4096 ) Player->RemoveItem Gold_001 4096 set YourGold to (YourGold - 4096) endif if ( YourGold >= 2048 ) Player->RemoveItem Gold_001 2048 set YourGold to ( YourGold - 2048 ) endif if ( YourGold >= 1024 ) Player->RemoveItem Gold_001 1024 set YourGold to ( YourGold - 1024 ) endif if ( YourGold >= 512 ) Player->RemoveItem Gold_001 512 set YourGold to ( YourGold - 512 ) endif if ( YourGold >= 256 ) Player->RemoveItem Gold_001 256 set YourGold to ( YourGold - 256 ) endif if ( YourGold >= 128 ) Player->RemoveItem Gold_001 128 set YourGold to ( YourGold - 128 ) endif if ( YourGold >= 64 ) Player->RemoveItem Gold_001 64 set YourGold to ( YourGold - 64 ) endif if ( YourGold >= 32 ) Player->RemoveItem Gold_001 32 set YourGold to ( YourGold - 32 ) endif if ( YourGold >= 16 ) Player->RemoveItem Gold_001 16 set YourGold to ( YourGold - 16 ) endif if ( YourGold >= 8 ) Player->RemoveItem Gold_001 8 set YourGold to ( YourGold - 8 ) endif if ( YourGold >= 4 ) Player->RemoveItem Gold_001 4 set YourGold to ( YourGold - 4 ) endif if ( YourGold >= 2 ) Player->RemoveItem Gold_001 2 set YourGold to ( YourGold - 2 ) endif if ( YourGold >= 1 ) Player->RemoveItem Gold_001 1 set YourGold to ( YourGold - 1 ) endif startscript BankMembership stopscript BankDepositAll MessageBox "Перевод денег завершен." end BankDepositAll[/buspoiler] Изменено 3 февраля, 2010 пользователем KABASYA Ссылка на комментарий Поделиться на другие сайты Поделиться
bi-666 Опубликовано 3 февраля, 2010 Жалоба Поделиться Опубликовано 3 февраля, 2010 Всем привет, люди, помогите в следующем вопросе: ниже скриптик, который при активации переводит все деньги на счет в банк, подскажите, что нужно добавить, чтобы снимались не все деньги, а 500000, а то я подметил, такую фишку, что крупные суммы моррик за раз не снимает, не переводит.Я вот плагин один переделывал, на покупку дома, там цены как мн7е показались маленькие, вот одному замку я назначил цену в 120 000 000, а как их перевести?Чем не идет проверка на нужное кол-во денег с последующим их отнятием кучками по 32000 золотых с изменением переменной YourGold?Иначе говоря, надо для отнятия 500000 золотых отнять 32000 золотых 15 раз, потом - мелкими сумммами.Кстати, для переделки надо просто заменить строчку "set YourGold to "Player"->GetItemCount Gold_001" на "set YourGold to [сколько надо золтых]". Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 3 февраля, 2010 Жалоба Поделиться Опубликовано 3 февраля, 2010 Тогда он сможет у игрока деньги в минусе оставить. Ссылка на комментарий Поделиться на другие сайты Поделиться
KABASYA Опубликовано 3 февраля, 2010 Жалоба Поделиться Опубликовано 3 февраля, 2010 Тогда он сможет у игрока деньги в минусе оставить.Помогите пожалуйста скрипт составить, который при покупке дома переводил бы крупные суммы типа 120 000 000 продавцу дома и при продаже от продавца мне. Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 3 февраля, 2010 Жалоба Поделиться Опубликовано 3 февраля, 2010 Действуешь по совету bi-666, но перед строчкой set YourGold to "Player"->GetItemCount Gold_001 вставляешь следующее:if(player->GetItemCount, gold_001 < тосамоечисло) MessageBox "У вас нету такого количества денег" return endifВроде все правильно написал. Ссылка на комментарий Поделиться на другие сайты Поделиться
Siberian Crab Опубликовано 6 февраля, 2010 Жалоба Поделиться Опубликовано 6 февраля, 2010 (изменено) Вопрос: Можно ли активировать контейнер удаленно? Например: можно ли создать кольцо, при одевании которого на себя откроется сундук, находящийся в поместье Игрока? Скажу сразу, что вот этот скрипт из справочника "Скрипты для начинающих" у меня не пашет : begin RemoteContainer short OnPCEquip if ( OnPCEquip == 1 ) set OnPCEquip to 0 "dh_remote_chest_01"->Activate, player endif end Изменено 6 февраля, 2010 пользователем Colt17 Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 6 февраля, 2010 Жалоба Поделиться Опубликовано 6 февраля, 2010 Поставь у контейнера галочку References Persist, если ее нет. Если не поможет, то тогда это:Activate, playerЗамени на просто Activate - может помочь. Ссылка на комментарий Поделиться на другие сайты Поделиться
Siberian Crab Опубликовано 6 февраля, 2010 Жалоба Поделиться Опубликовано 6 февраля, 2010 Поставь у контейнера галочку References Persist, если ее нет. Если не поможет, то тогда это:Замени на просто Activate - может помочь. References Persist стоит. Просто Activate не помогло. Будем искать дальше. Ссылка на комментарий Поделиться на другие сайты Поделиться
Serg9408 Опубликовано 6 февраля, 2010 Жалоба Поделиться Опубликовано 6 февраля, 2010 Хммм... По-моему, до этого игрок должен хотя бы раз активировать сундук - ты его активировал?Ну и на всякий случай проверь - точно ли тот скрипт висит на кольце, правильно ли написано ID сундука, существует ли сундук в единственном экземпляре и прочая чепуха. Знаю, что кажется глупым, но всегда лучше еще раз проверить... Ссылка на комментарий Поделиться на другие сайты Поделиться
Siberian Crab Опубликовано 6 февраля, 2010 Жалоба Поделиться Опубликовано 6 февраля, 2010 (изменено) Хммм... По-моему, до этого игрок должен хотя бы раз активировать сундук - ты его активировал?Ну и на всякий случай проверь - точно ли тот скрипт висит на кольце, правильно ли написано ID сундука, существует ли сундук в единственном экземпляре и прочая чепуха. Знаю, что кажется глупым, но всегда лучше еще раз проверить... Нет. Глупым не кажется. Мелкие косяки - это важно. Но все это я проверял. Попробую переустановиться. Может поможет. Хммм... Как сказали знающие люди для решения этой проблемы стандартных средств КС не зватит - нужен mwsе. Изменено 6 февраля, 2010 пользователем Colt17 Ссылка на комментарий Поделиться на другие сайты Поделиться
TJ Опубликовано 7 февраля, 2010 Жалоба Поделиться Опубликовано 7 февраля, 2010 (изменено) Попробуй на сундук повесить стандартный скрипт LocalState. Беседка иногда так делает при ссылке с одного объекта на другой. Правда не думаю, что поможет. С Activate много проблем всегда. Изменено 7 февраля, 2010 пользователем TJ Ссылка на комментарий Поделиться на другие сайты Поделиться
KABASYA Опубликовано 26 февраля, 2010 Жалоба Поделиться Опубликовано 26 февраля, 2010 Скачал тут один плагин там значит компаньенка дремора, по команде может танцевать, лечь спать и т.д. попытался добавить такие же способности рабам из плага дракондровойс, вот только скрипт у дреморы уж очень сложный для меня помогите плиз из скрипта вырвать блок про танец, чтоб потом можно было его поцепить другим неписям. Вот скриптик[buspoiler]begin 1jw_dae_CompScript short noLoreshort c_moveshort compmoveshort movetimershort c_speedshort c_athleticsshort p_checkshort mp_checkshort companionshort noGreetshort oneTimeshort doOnce1short doOnce2short warpshort flyCheckshort wwCheckshort weapUseshort combatDoneshort combatCheckshort combatModeshort soundPlayedshort pacifistshort diseasedshort armoroffshort h_checkshort currentmagickashort jwandershort emmasnpcidshort alcoholshort mloveshort dayCountshort dayUpshort chatCountshort DONOTUSEshort lyingdownshort firstmeetshort athome Short DTNPS_MoveOnce_NotMenuShort DTNPS_HandlePotions Long DTNPS_Count_HealthExclusive Long DTNPS_Count_HealthQuality Long DTNPS_Count_HealthStandard Long DTNPS_Count_HealthTotal float z_fly float timer float sheatheTimer float counter float px float py float ax float ay float az float bx float by float bz float t1 float t2 float t3 float t4 float coDist1 float coDist2 float DTNPS_Timer_Health If ( GetHealth < 1 ) Set DTNPS_HandlePotions to 0 ElseIf ( GetFatigue < 1 ) Set DTNPS_HandlePotions to 0 ElseIf ( MenuMode == 1 ) Set DTNPS_HandlePotions to 0 Else Set DTNPS_HandlePotions to 1 EndIf If ( DTNPS_HandlePotions == 0 ) Set DTNPS_MoveOnce_NotMenu to 0 Set DTNPS_Timer_Health to 99 Set DTNPS_Count_HealthTotal to ( DTNPS_Count_HealthExclusive + DTNPS_Count_HealthQuality + DTNPS_Count_HealthStandard ) If ( DTNPS_Count_HealthTotal > 0 ) While ( DTNPS_Count_HealthExclusive >= 10 ) AddItem "p_restore_health_e" 10 Set DTNPS_Count_HealthExclusive to ( DTNPS_Count_HealthExclusive - 10 ) EndWhile While ( DTNPS_Count_HealthExclusive >= 1 ) AddItem "p_restore_health_e" 1 Set DTNPS_Count_HealthExclusive to ( DTNPS_Count_HealthExclusive - 1 ) EndWhile While ( DTNPS_Count_HealthQuality >= 10 ) AddItem "p_restore_health_q" 10 Set DTNPS_Count_HealthQuality to ( DTNPS_Count_HealthQuality - 10 ) EndWhile While ( DTNPS_Count_HealthQuality >= 1 ) AddItem "p_restore_health_q" 1 Set DTNPS_Count_HealthQuality to ( DTNPS_Count_HealthQuality - 1 ) EndWhile While ( DTNPS_Count_HealthStandard >= 10 ) AddItem "p_restore_health_s" 10 Set DTNPS_Count_HealthStandard to ( DTNPS_Count_HealthStandard - 10 ) EndWhile While ( DTNPS_Count_HealthStandard >= 1 ) AddItem "p_restore_health_s" 1 Set DTNPS_Count_HealthStandard to ( DTNPS_Count_HealthStandard - 1 ) EndWhile EndIf ElseIf ( DTNPS_HandlePotions == 1 ) If ( DTNPS_MoveOnce_NotMenu == 0 ) Set DTNPS_MoveOnce_NotMenu to 1 While ( GetItemCount "p_restore_health_e" > 10 ) RemoveItem "p_restore_health_e" 10 Set DTNPS_Count_HealthExclusive to ( DTNPS_Count_HealthExclusive + 10 ) EndWhile While ( GetItemCount "p_restore_health_e" > 1 ) RemoveItem "p_restore_health_e" 1 Set DTNPS_Count_HealthExclusive to ( DTNPS_Count_HealthExclusive + 1 ) EndWhile While ( GetItemCount "p_restore_health_q" >= 10 ) RemoveItem "p_restore_health_q" 10 Set DTNPS_Count_HealthQuality to ( DTNPS_Count_HealthQuality + 10 ) EndWhile While ( GetItemCount "p_restore_health_q" >= 1 ) RemoveItem "p_restore_health_q" 1 Set DTNPS_Count_HealthQuality to ( DTNPS_Count_HealthQuality + 1 ) EndWhile While ( GetItemCount "p_restore_health_s" >= 10 ) RemoveItem "p_restore_health_s" 10 Set DTNPS_Count_HealthStandard to ( DTNPS_Count_HealthStandard + 10 ) EndWhile While ( GetItemCount "p_restore_health_s" >= 1 ) RemoveItem "p_restore_health_s" 1 Set DTNPS_Count_HealthStandard to ( DTNPS_Count_HealthStandard + 1 ) EndWhile EndIf Set DTNPS_Count_HealthTotal to ( DTNPS_Count_HealthExclusive + DTNPS_Count_HealthQuality + DTNPS_Count_HealthStandard ) If ( DTNPS_Count_HealthTotal > 0 ) Set DTNPS_Timer_Health to ( DTNPS_Timer_Health + GetSecondsPassed ) If ( GetItemCount "p_restore_health_e" > 0 ) Set DTNPS_Timer_Health to 0 ElseIf ( GetItemCount "p_restore_health_q" > 0 ) Set DTNPS_Timer_Health to 0 ElseIf ( GetItemCount "p_restore_health_s" > 0 ) Set DTNPS_Timer_Health to 0 ElseIf ( DTNPS_Timer_Health >= 1 ) If ( DTNPS_Count_HealthExclusive > 0 ) AddItem "p_restore_health_e" 1 Set DTNPS_Count_HealthExclusive to ( DTNPS_Count_HealthExclusive - 1 ) ElseIf ( DTNPS_Count_HealthQuality > 0 ) AddItem "p_restore_health_q" 1 Set DTNPS_Count_HealthQuality to ( DTNPS_Count_HealthQuality - 1 ) ElseIf ( DTNPS_Count_HealthStandard > 0 ) AddItem "p_restore_health_s" 1 Set DTNPS_Count_HealthStandard to ( DTNPS_Count_HealthStandard - 1 ) EndIf EndIf EndIf EndIf set currentmagicka to ( GetMagicka ) if ( MenuMode == 1 ) if ( GetItemCount p_restore_health_b >= 1 ) set p_check to 1 elseif ( GetItemCount p_restore_health_c >= 1 ) set p_check to 1 elseif ( GetItemCount p_restore_health_e >= 1 ) set p_check to 1 elseif ( GetItemCount p_restore_health_q >= 1 ) set p_check to 1 elseif ( GetItemCount p_restore_health_s >= 1 ) set p_check to 1 else set p_check to 0 endif if ( GetItemCount p_restore_magicka_b >= 1 ) set mp_check to 1 elseif ( GetItemCount p_restore_magicka_c >= 1 ) set mp_check to 1 elseif ( GetItemCount p_restore_magicka_e >= 1 ) set mp_check to 1 elseif ( GetItemCount p_restore_magicka_q >= 1 ) set mp_check to 1 elseif ( GetItemCount p_restore_magicka_s >= 1 ) set mp_check to 1 else set mp_check to 0 endif if ( GetPCSleep == 0 ) return endif endif if ( player->GetDistance "1jw_dae_homelight" <= 4000 )if ( GetLOS Player == 1 )set athome to 1elseset athome to 0endifendif if ( GetCurrentAIPackage != 3 ) setSpeed 40 set ajw_daenear to 0 endif if ( weapUse == 1 ) if ( Player->GetWeaponType <= 8 ) setmarksman 0 elseif ( weapUse == 1 ) if ( Player->GetWeaponType >= 9 ) setmarksman 200 endif endif endif if ( combatCheck == 1 ) set sheatheTimer to sheatheTimer + GetSecondsPassed if ( GetSoundPlaying, "Weapon Swish" == 1 ) set sheatheTimer to 0 return elseif ( GetSoundPlaying, crossbowShoot == 1 ) set sheatheTimer to 0 return elseif ( GetSoundPlaying, bowShoot == 1 ) set sheatheTimer to 0 return elseif ( sheatheTimer > 4 ) if ( GetSoundPlaying "Weapon Swish" == 0 ) set sheatheTimer to 0 set soundPlayed to 1 endif elseif ( sheatheTimer > 4 ) if ( GetSoundPlaying "crossbowShoot" == 0 ) set sheatheTimer to 0 set soundPlayed to 1 endif elseif ( sheatheTimer > 4 ) if ( GetSoundPlaying "bowShoot" == 0 ) set sheatheTimer to 0 set soundPlayed to 1 endif endif endif if ( soundPlayed == 1 ) equip "silver dagger" removeitem "silver dagger" 1 set soundPlayed to 0 set combatCheck to 0 set combatMode to 0 set combatDone to 1 endif if ( combatDone == 1 ) set timer to timer + GetSecondsPassed if ( timer > 6 ) set timer to 0 set combatDone to 0 set warp to 0 endif endif if ( c_move == 1 ) if ( GetDistance Player > 100 ) set noGreet to 0 AIFollow Player 0 0 0 0 set c_move to 0 endif endif if ( GetCurrentAIPackage == 3 ) if ( GetPCSleep == 1 ) StartScript 1jw_dae_CompLevel set alcohol to 0 endif if ( flyCheck == 1 ) if ( GetWeaponDrawn == 0 ) set z_fly to ( Player->GetPos z ) SetPos z z_fly elseif ( flyCheck == 1 ) if ( GetCurrentAIPackage != 3 ) if ( GetWeaponDrawn == 0 ) set z_fly to ( GetPos z ) SetPos z z_fly endif endif endif endif if ( GetWeaponDrawn == 1 ) if ( flyCheck == 0 ) set combatCheck to 1 set combatMode to 1 set timer to 0 set warp to 1 return elseif ( GetWeaponDrawn == 1 ) if ( flyCheck == 1 ) set combatDone to 1 set combatMode to 1 set timer to 0 set warp to 1 return endif endif endif set px to ( Player->GetPos x ) set py to ( Player->GetPos y ) if ( doOnce1 == 0 ) set ax to ( Player->GetPos x ) set ay to ( Player->GetPos y ) set az to ( Player->GetPos z ) set doOnce1 to 1 endif set t1 to ( px - ax ) set t1 to ( t1 * t1 ) set t2 to ( py - ay ) set t2 to ( t2 * t2 ) set t1 to ( t1 + t2 ) set coDist1 to ( GetSquareRoot, t1 ) if ( coDist1 > 360 ) set doOnce1 to 0 endif if ( coDist1 > 180 ) if ( doOnce2 == 0 ) set bx to ( Player->GetPos x ) set by to ( Player->GetPos y ) set bz to ( Player->GetPos z ) set doOnce2 to 1 endif endif set t3 to ( px - bx ) set t3 to ( t3 * t3 ) set t4 to ( py - by ) set t4 to ( t4 * t4 ) set t3 to ( t3 + t4 ) set coDist2 to ( GetSquareRoot, t3 ) if ( coDist2 > 360 ) set doOnce2 to 0 endif if ( warp == 0 ) if ( coDist1 > 300 ) if ( GetDistance Player > 680 ) SetPos x ax SetPos y ay SetPos z az AiFollow Player 0 0 0 0 elseif ( warp == 0 ) if ( coDist2 > 300 ) if ( GetDistance Player > 680 ) SetPos x bx SetPos y by SetPos z bz AiFollow Player 0 0 0 0 endif endif endif endif endif if ( GetDistance Player <= 512 ) set ajw_daenear to 1 endif endif if ( GetDistance Player > 512 ) set ajw_daenear to 0 endif if ( counter < 20 ) set counter to counter + 1 return endif set counter to 0 if ( GetCurrentAIPackage == 3 ) if ( GetDistance Player < 250 ) setSpeed 60 setAthletics 60 elseif ( GetDistance Player > 250 ) set c_speed to ( ( Player->GetSpeed ) * 2.25 ) set c_athletics to ( ( Player->GetAthletics ) * 2.25 ) setSpeed c_speed setAthletics c_athletics endif if ( Player->GetEffect sEffectLevitate == 1 ) if ( flyCheck == 0 ) cast "1jw_dae_lev_bogus" player addspell "1jw_dae_lev" set flyCheck to 1 endif endif if ( Player->GetEffect sEffectLevitate == 0 ) if ( flyCheck == 1 ) removespell "1jw_dae_lev" set flyCheck to 0 endif endif if ( Player->GetEffect sEffectWaterWalking == 1 ) if ( wwCheck == 0 ) cast "1jw_dae_ww_bogus" player addspell "1jw_dae_ww" set wwCheck to 1 endif endif if ( Player->GetEffect sEffectWaterWalking == 0 ) if ( wwCheck == 1 ) removespell "1jw_dae_ww" set wwCheck to 0 endif endif if ( GetPCSneaking == 1 ) ForceSneak elseif ( GetPCSneaking == 0 ) ClearForceSneak endif if ( compMove == 1 ) if ( c_move == 0 ) if ( GetDistance Player < 70 ) AIWander 300 0 0 0 0 set c_move to 1 endif endif endif endif if ( dayCount != Day )set dayUp to dayUp + 1set dayCount to Dayendif If ( GetHealthGetRatio < 0.5 ) If ( combatmode == 0 ) If ( currentmagicka >= 12 ) Cast "hearth heal" player modcurrentmagicka -12 elseif ( p_check > 0 ) StartScript 1jw_dae_DrinkPotion endif endif endif If ( mp_check > 0 ) If ( combatmode == 0 ) If ( GetMagicka < 10 ) StartScript 1jw_dae_HealMag endif endif endif If ( GetCommonDisease == 1 ) set diseased to 1 elseif ( GetBlightDisease == 1 ) set diseased to 2 else set diseased to 0 endif set emmasnpcid to 910 end[/buspoiler] Ссылка на комментарий Поделиться на другие сайты Поделиться
bi-666 Опубликовано 26 февраля, 2010 Жалоба Поделиться Опубликовано 26 февраля, 2010 (изменено) Скачал тут один плагин там значит компаньенка дремора, по команде может танцевать, лечь спать и т.д. попытался добавить такие же способности рабам из плага дракондровойс, вот только скрипт у дреморы уж очень сложный для меня помогите плиз из скрипта вырвать блок про танец, чтоб потом можно было его поцепить другим неписям. Вот скриптикВы, кстати, уверены, что тут дело в скипте, а не в диалоге? Ибо в скрипте ничего про танец нет, по крайней мере я не нашел, да. Изменено 26 февраля, 2010 пользователем bi-666 Ссылка на комментарий Поделиться на другие сайты Поделиться
KABASYA Опубликовано 26 февраля, 2010 Жалоба Поделиться Опубликовано 26 февраля, 2010 Вы, кстати, уверены, что тут дело в скипте, а не в диалоге? Ибо в скрипте ничего про танец нет, по крайней мере я не нашел, да.В результате диалога есть строчка GoodbyeAiWander 0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0 Так вот я ее поставил, непись вместо танца постоянно бок поправляет, потом прицепил файл анимационный он начал на землю ложиться, я просто с анимацией не знаком, может еще где нужно чего изменить? Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти