Назад

вопрос по ивенту Новис против Зомби

Автор: ??????? ????: Дата: 03.28.2010

вот ивент- он тут ранее выкладывался.
я немножко его поменял- убрал баг когда при запуске сервера, игрок если сразу шёл к ивенту то получал нахаляву приз.

//by Sanasol 4 Mouse-ro


- script golgofa -1,{

// Время начала

OnClock0900:
OnClock1400:
OnClock1900:
OnClock2400:


announce "Zombie Vs. Novice ивент Начнется 3 минуты",0;
killmonsterall "quiz_01";
sleep 50000;
announce "скоро начнётся ивент 'Novice vs. Zombie'!",0;
enablenpc "Novice vs. Zombie";
sleep 10000;
announce "Ивент Zombie Vs. Novice начнётся через 2 минуты!",0;
sleep 60000;
announce "Ивент Zombie Vs. Novice начнётся через 1 минуту!",0;
sleep 30000;
mapannounce "quiz_01","Через 30 секунд будет запущен монстр!",0;
sleep 25000;
announce "Ивент Zombie Vs. Novice начнётся через -5-",0;
sleep 1000;
announce "Ивент Zombie Vs. Novice начнётся через -4-",0;
sleep 1000;
announce "Ивент Zombie Vs. Novice начнётся через -3-",0;
sleep 1000;
announce "Ивент Zombie Vs. Novice начнётся через -2-",0;
sleep 1000;
announce "Ивент Zombie Vs. Novice начнется через 1",0;
sleep 1000;
announce "Ивент 'Zombie Vs. Novice' начался!",0,0x00FF00;
monster "quiz_01",42,369,"Зомби",1015,13;
monster "quiz_01",41,369,"Зомби",1015,13;
disablenpc "Zombie Vs. Novice";
initnpctimer;
end;

OnTimer15000:
monster "quiz_01",42,369,"Зомби-2",1015,1;
OnTimer30000:
monster "quiz_01",42,369,"Зомби-3",1015,1;
OnTimer45000:
monster "quiz_01",42,369,"Зомби-4",1015,1;

OnTimer5000:
if ( getmapusers("quiz_01") == 0 )
{
killmonsterall "quiz_01";
announce "Ивент 'Новисы против Зомби' закончился, так как все умерли.",0;
disablenpc "Prize";
disablenpc "Novice vs. Zombie";
stopnpctimer;
end;
}
else if ( getmapusers("quiz_01") > 1 )
{
mapannounce "quiz_01",getmapusers("quiz_01") +" игрока(ов) всё ещё выживают на Ивенте.",0,0x00FF00;;
initnpctimer;
end;
}
initnpctimer;
end;

OnPCDieEvent:
getmapxy .@maprfyl$,.@xrfyl,.@yrfyl,0;
if ( .@maprfyl$ == "quiz_01") {
sleep2 1;
warp "prontera",156,223;
atcommand "@alive "+ strcharinfo(0);
dispbottom "Вы проиграли...";
}
sleep2 1000;
if ( .@maprfyl$ == "quiz_01" && getmapusers("quiz_01") == 1 ) {
killmonsterall "quiz_01";
mapannounce "quiz_01","Вы выиграли, подойдите пожалуйста к нпц Prize.",0;
enablenpc "Prize";
stopnpctimer;
end;
}
end;
}

quiz_01,42,369,3 script Prize 876,{
announce "В 'Zombie Vs. Novice' победил "+ strcharinfo(0) +"! Поздравляем его!",0;
getitem 7227,1;
warp "prontera",156,223;
disablenpc "Prize";
disablenpc "Novice vs. Zombie";
end;
}

quiz_02,290,250,3 script Zombie Vs. Novice 1015,{
if (BaseLevel > 1) goto NO;
if (class == 0) goto event;
if (class > 0) goto NO;
event:
mes "[^0000FFZombie Vs. Novice^000000]";
mes "Вы хотите попасть на ивент Zombie Vs. Novice?";
next;
switch(select("Да","Нет")) {
case 1:
sc_end SC_ALL;
sc_start SC_DECREASEAGI,900000,10;
percentheal 100,100;
sc_start SC_STRIPWEAPON,320000,5;
sc_start SC_STRIPSHIELD,320000,5;
sc_start SC_STRIPARMOR,320000,5;
sc_start SC_STRIPHELM,320000,5;
warp "quiz_01",42,369;
end;
break;
case 2:
mes "[^0000FFZombie Vs. Novice^000000]";
mes "Хорошо, приходите, когда захотите.";
close;
break;
NO:
mes "[^0000FFZombie Vs. Novice^000000]";
mes "Вы не новис 1 уровня";
close;
}
OnInit:
disablenpc "Prize";
disablenpc "Novice vs. Zombie";
end;
}


но теперь другая проблема. при первом проведении ивента всё норм, а когда ивент идёт во второй раз, то нпс варпающий на ивент-стоит в хайде и не появляется. Посмотрите, пожалуйста в чём ошибка.

Автор: : Дата: 01.01.1970