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

Скрипты для начинающих

Аватар пользователя
#393
AngryTapok1337

Хотел снова идти сюда просить помощи со скриптом но каким-то невероятным образом смог заставить его работать. smile

 

Скрипт передает игроку город и героя когда он завершает задание(В моем случае задание изначально скрыто, поэтому просто оставить OBJECTIVE_STATE_CHANGE_TRIGGER я не мог). Скорее всего это можно было написать проще, и если так, то меня поправят. Но короче оставлю, мало ли кому-то пригодится.

 

function InfernoF()
 if ( GetObjectiveState("KillDruid") == OBJECTIVE_COMPLETED ) then
         MessageBox ("/Maps/SingleMissions/ZimaMap1v2NoScriptsNoQuests/Succubus2.txt")
         sleep(1)
         SetObjectOwner( "InfTown", 1 )
         DeployReserveHero( "Biara", 28, 21, UNDERGROUND )
 end
end

Trigger(OBJECTIVE_STATE_CHANGE_TRIGGER, "KillDruid", "InfernoF")

 



Добавлено через 4 минуты

И опять я прошу помощи.

Суть в чем? У меня были нормальные рабочие скрипты для того, чтобы герой входил в регион и начиналась битва. Все работало отлично. Но внезапно мне под хвост ударила вожжа и я захотел сделать игроку на старте двоих героев(отчасти потому что карта большая и одним героем ее пылесосить можно до второго пришествия, но не суть). И вот я поставил второго героя игроку, и тут же все пошло по одному месте - скрипт работает штатно и бой начинается, но... бой ведет только первый герой(Далее - герой1). Т.е когда в скриптовый регион заходит герой2 то битву все равно ведет герой1, не взирая на то где он сейчас находится. 

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

Скрипт прилагается.

function Region1F ()
         MessageBox ("/Maps/SingleMissions/ZimaMap1v2NoScriptsNoQuests/Spasenie1.txt")
         StartCombat("RedHeavenHero04", nil, 4, 93, 100, 93, 100, 95, 75, 101, 15, nil)
         RemoveObject('g1')
         RemoveObject('g2')
         RemoveObject('g3')
         RemoveObject('g4')
         RemoveObject('g5')
         RemoveObject('g6')
         sleep(1)
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1",nil)
end
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1","Region1F")

 

Заранее спасибо!

Напишу только скрипт, т.к. лень объяснять. 
function Region1F (hero)
MessageBox ("/Maps/SingleMissions/ZimaMap1v2NoScriptsNoQuests/Spasenie1.txt")
StartCombat(hero, nil, 4, 93, 100, 93, 100, 95, 75, 101, 15, nil)
RemoveObject('g1')
RemoveObject('g2')
RemoveObject('g3')
RemoveObject('g4')
RemoveObject('g5')
RemoveObject('g6')
sleep(1)
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1",nil)
end
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1","Region1F")

Мои карты:
Падший рыцарь
Сердце Хаоса

Мои моды:
Визуальные:
Изменение внешнего вида героев-некромантов
Существа-жители и кое-что по мелочи в городах Ордена Порядка, Некрополиса и Инферно

NCF-существа:
Странствующие рыцари
Наемники