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

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

Опубликовано
Можно попробовать через задний проход сделать. Поставить где-нибудь за стенкой крысу и заставить того человека на неё напасть, он её видеть-то не будет, но клинок возможно вытащит. в лучшем случае он даже не побежит в стену.
Опубликовано
А учебник по скриптам прочитать слабо!?
[ActorID.]SetAlert [0/1] - ...
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
  • 2 недели спустя...
Опубликовано
Подскажите пожалуйста, как сделать так, чтобы скрипт активировался после сна персонажа, у которого определенный навык больше 50 допустим. Извиняюсь, если есть в учебнике по скриптам, так как только начинаю читать.
Опубликовано
Когда все прочитаешь понятней будет)) Посмотри команды связанные со сном

scn Sleep ; примерно

short controlvar

Begin MenuMode 1012

If controlvar == 0
Elseif player.GetAV Destruction >= 75
Elseif ( IsPCSleeping == 1 )
wakeupPC
messagebox "ыыы"; напишешь что-нибудь в кавычках
StartQuest ms40 ; здесь название
Set controlvar to 1
endif
end



 

Опубликовано
Возможно следует использовать не GameMode, а MenuMode.
И вместо такого утверждения
Цитата
Elseif player.GetAV Destruction 75

нужно использовать сравнение.
Например: Elseif ( player.GetAV Destruction >= 75 )
И такую кучу endif использовать не надо, т.к. все if...elseif...else закрываются одним endif!
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
Опубликовано
Скрипт не работает! даже не знаю из-за чего(( МОжет что не так сделал?
scn Sleep ; примерно

short controlvar

Begin MenuMode 1012

If controlvar == 0
Elseif player.GetAV Destruction >= 75
Elseif ( IsPCSleeping == 1 )
wakeupPC
messagebox "ыыы"; напишешь что-нибудь в кавычках
setstage ms40 10 ; здесь стадия
Set controlvar to 1
endif
end
Просыпаться перс не хочет((



 

Опубликовано
А так:
scn Sleep; примерно

short controlvar

Begin MenuMode 1012

If controlvar == 1
Elseif player.GetAV Destruction < 75
Elseif ( IsPCSleeping == 1 )
wakeupPC
messagebox "ыыы"; напишешь что-нибудь в кавычках
setstage ms40 10; здесь стадия
Set controlvar to 1
endif
end
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
Опубликовано
scn Sleep; примерно

short controlvar

Begin MenuMode 1012

If controlvar == 1
Elseif player.GetAV Destruction < 75
Elseif ( IsPCSleeping == 1 )
wakeupPC
messagebox "ыыы"; напишешь что-нибудь в кавычках
setstage ms40 10; здесь стадия
Set controlvar to 1
endif
end

Тоже не работает, персонаж просто спит! (Навык такой у меня есть он равен 80) Даже не знаю, второй день парюсь и других парю))



 

Опубликовано
Вот тебе квестовый скрипт который нормально работает
scn aaaatestscript

short controlvar
float fQuestDelayTime

Begin MenuMode

if ( controlvar == 0 )
Set fQuestDelayTime to 1.0
if ( player.GetAV Destruction >= 75 )
if ( IsPCSleeping == 1 )
Set controlvar to 1
WakeUpPC
messagebox "ыыы"; напишешь что-нибудь в кавычках
setstage ms40 10; здесь стадия
endif
endif
endif

end
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
Опубликовано
'Altair' сказал(-а):
Опять не работает!!! Ужас!!! То ли я тупой, то ли я очень тупой но скрипт не работает!!!))))

Тогда добавляй по одному проверочному Message'у для проверки работы.
Сначала после первого if и смотри в игре выскакивает соощение или нет. Потом переноси этот мессейдж переноси за второй if и снова проверяй и т.д.
Где не выскакивает сообщение, возможно там и ошибка.
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
Опубликовано
Помогите мне плиз разобраться...
Я создаю новій скрипт и в основу беру скрипт DASkullofCorruptionSpellScript

scn DASkullofCorruptionSpellScript

ref target
short doOnce
ref summon


Begin ScriptEffectStart

set target to GetSelf
set DASkullofCorruption.target to GetSelf


if ( DASkullofCorruption.spellworking == 0 ) && ( IsActor == 1 ) && ( IsGuard == 0 ) && ( GetDead == 0 ) && ( GetIsCreature == 0 ) && ( GetItemCount DASkullCorruption == 0 )

set DASkullofCorruption.spellworking to 1
endif

End


Begin ScriptEffectFinish


End

Насколько я понял
DASkullofCorruption.spellworking
это переменная, только вот я меняю ту часть, что до точки на свою
KTNecroStaff.spellworking
, после этого скрипт сохранятся не хочет. Пишет что "не найдена функция "spellworking". Стандартной функции скрипта в GLOBALS нет. Что мне делать? Скажите пожалуйста!
Karponter.gif
Опубликовано
А переменную spellworking задал в квестовом скрипте висящем в квесте KTNecroStaff?
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
Опубликовано
А... дошло... Тоесть переменная это только spellworking, а KTNecroStaff это название квеста? Тогда я понял в чем проблема. Я квест по другому назвал. Спасибо большое! =)))
И еще, можна я буду обращатся сюда, если по ходу дела будут возникать проблемы с этим скриптом?
Karponter.gif
Опубликовано
'karponter' сказал(-а):
А что значит функция GetSelf???
Скрипт не хочет вешать target и KTNecroStaff.target на цель заклинания...

Учи матчасть
Вам не кажется, что plаygrоund.ru есть синоним слову ворье?
Опубликовано
Матчасть посмотрел, скрин подправил, но проблема в другом скрипте...
А вот собсно и он:
scn KTNecroStaffWorkScript

ref target
ref summon
ref KTNecroSumnSkeleton
ref KTNecroSumnZombie
ref KTNecroSumnGost
ref KTNecroSumnScaryGost
short changeOnce
short deadsummon
float timer
float timer2
float spelltimer

Begin GameMode

if ( KTNecroStaff.spellworking == 2 )
set spelltimer to ( spelltimer + GetSecondsPassed )
if ( target.GetDead == 1 )
set spelltimer to 31
endif
if ( spelltimer >= 30 )
set KTNecroStaff.GoAway to 1
endif
endif


if ( KTNecroStaff.spellworking == 1 ) && ( target.Getlevel <= 3 )
set target to KTNecroStaff.target
set summon to KTNecroSumnSkeleton.CreateFullActorCopy
set KTNecroStaff.summon to summon
;set target to KTNecroStaff.target
set KTNecroStaff.spellworking to 2
set changeOnce to 1
MessageBox "Работает...2..."
elseif ( KTNecroStaff.spellworking == 1 ) && ( target.Getlevel > 3 ) && ( target.Getlevel <= 6 )
set target to KTNecroStaff.target
set summon to KTNecroSumnZombie.CreateFullActorCopy
set KTNecroStaff.summon to summon
;set target to KTNecroStaff.target
set KTNecroStaff.spellworking to 2
set changeOnce to 1
MessageBox "Работает...2..."
elseif ( KTNecroStaff.spellworking == 1 ) && ( target.Getlevel > 6 ) && ( target.Getlevel <= 9 )
set target to KTNecroStaff.target
set summon to KTNecroSumnGost.CreateFullActorCopy
set KTNecroStaff.summon to summon
;set target to KTNecroStaff.target
set KTNecroStaff.spellworking to 2
set changeOnce to 1
MessageBox "Работакт...2..."
elseif ( KTNecroStaff.spellworking == 1 ) && ( target.Getlevel == 10 )
set target to KTNecroStaff.target
set summon to KTNecroSumnScaryGost.CreateFullActorCopy
set KTNecroStaff.summon to summon
;set target to KTNecroStaff.target
set KTNecroStaff.spellworking to 2
set changeOnce to 1
MessageBox "Работает...2..."
endif

;---------------------------------------------------------------
if ( changeOnce == 1 )
set changeOnce to 2

endif

if ( changeOnce == 2 )
[u]summon.MoveTo player[/u]
set changeOnce to 3
target.kill
endif

if ( changeOnce == 3 )
summon.moddisposition player 100
summon.SetActorValue aggression 10
summon.evaluatePackage
set changeOnce to 4
MessageBox "Работаeт...3..."
endif

if ( DASkullofCorruption.goAway == 1 )

if ( timer == 0 )
summon.PlayMagicShaderVisuals effectFrostDamage
endif

set timer to ( timer + GetSecondsPassed )



if ( timer >= 1.5 )
;summon.movetomarker DASkullMarker
;summon.resurrect
;summon.removeallitems



set target to 0
set changeonce to 0
set summon to 0
;set deadsummon to 1

set KTNecroStaff.spellworking to 0
set KTNecroStaff.raceVAR to 0
set KTNecroStaff.sexVAR to 0
set KTNecroStaff.changeOnce to 0
set KTNecroStaff.raceVAR to 0
set KTNecroStaff.sexVAR to 0
set KTNecroStaff.target to 0
set KTNecroStaff.summon to 0
set KTNecroStaff.vampVAR to 0
set KTNecroStaff.goAway to 0
set timer to 0
set spelltimer to 0
MessageBox "Работает...4..."
endif

endif

if ( KTNecroStaff.spellworking > 0 )
if ( summon.GetAV Health <= 1 )
if ( deadsummon == 0 )
set deadsummon to 1
endif
endif
endif

if ( deadsummon == 1 )

;if ( timer2 == 0 )
; summon.PlayMagicShaderVisuals effectFireDamage
;endif

;set timer2 to ( timer2 + GetSecondsPassed )

;if ( timer2 >= 1.5 )
; summon.movetomarker DASkullMarker
; summon.resurrect
; summon.removeallitems
; set deadsummon to 0
; set timer2 to 0
;endif

Set KTNecroStaff.GoAway to 1
Set deadsummon to 0
MessageBox "Работает...5..."

endif

End


Проблема в том, что игра вылетает на функции "summon.MoveTo player". С чем это может быть связано?
Karponter.gif

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

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

Создать аккаунт

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

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

Войти

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

Войти
×
×
  • Создать...