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

[Autoevent] novice dm


poiuty

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

Нашел на флешке старые скрипты, скрипт 2008года

//====eAthena Script
//Create by poiuty на примере эвента Shadow.
//====Version:
//v.1.0
//==================

//Map one(первая мапа,где собираются на эвент)

force_1-3 mapflag pvp off
force_1-3 mapflag noicewall
force_1-3 mapflag noloot
force_1-3 mapflag nomemo
force_1-3 mapflag noteleport
force_1-3 mapflag nowarp
force_1-3 mapflag nobranch
force_1-3 mapflag nosave
force_1-3 mapflag nochat
force_1-3 mapflag novending
force_1-3 mapflag nogo
force_1-3 mapflag nodrop

//Map two(вторая мапа где происходит эвент)

force_2-3 mapflag pvp on
force_2-3 mapflag pvp_noguild
force_2-3 mapflag pvp_noparty
force_2-3 mapflag nowarp
force_2-3 mapflag noteleport
force_2-3 mapflag nosave
force_2-3 mapflag noreturn
force_2-3 mapflag nomemo
force_2-3 mapflag noloot
force_2-3 mapflag noicewall
force_2-3 mapflag nobranch
force_1-3 mapflag nochat
force_1-3 mapflag novending
force_1-3 mapflag nogo
force_1-3 mapflag nodrop

prontera,155,94,6 script Маски-Шоу 811,{
mes "[Маски-Шоу]";
mes "Привет! Хочешь принять участие";
mes "в эвенте Маски-Шоу с супер призом?";
mes "Но ты должен быть новисом или";
mes "хай новисом первого левла.";
next;
mes "[Маски-Шоу]";
// mes "При тебе обязательно должено быть";
// mes "оружие ^FF0000Knife[3]^000000 и одета"; // 1201
// mes "маска ^FF0000Oxygen Mask^000000."; // 5004
// mes "Без этого не впускаем! Лишнего не брать!";
next;
mes "[Маски-Шоу]";
if (BaseLevel > 1){
mes "Извини, но участие могут принять только новисы первого уровня.";
close;
}
if (getmapusers("force_1-3") >= $@noviscount){
mes "Извини, участие в эвенте могут принять только "+$@noviscount+" игроков";
close;
}
// if ((!isequipped(1201, 2301)) || getequipcardcnt(4)){
// mes "Извини, но ты одет не по форме!";
// close;
// }
if ((Weight/10)>60){
mes "Извини, но ты несешь с собой что то лишнее! А это - запрещено!";
close;
}
mes "Ты хочешь попасть на эвент?";
next;
switch (select("Да!","Нет!")){
case 1:
percentheal 100,100;
savepoint "prontera",155,95;
warp "force_1-3",69,19;
break;
case 2:
mes "[Маски-Шоу]";
mes "Надумаете, приходите на следующий эвент.";
close;
}
}

force_1-3,69,19,5 script Event Noobs MSG -1,{
OnENStart:
sleep 60000 * 5; // 5 Мин на сборы
disablenpc "Маски-Шоу";
if (getmapusers("force_1-3")<($@noviscount/50)){
mapannounce "force_1-3","На эвевент не собралось должного количества людей.",bc_map;
mapannounce "force_1-3","Эвент отменяется.",bc_map;
mapwarp "force_1-3","prontera",155,95;
end;
}
mapannounce "force_1-3","На этом эвенте вам будет вызвано "+$@mobspawncount+" порингов.",bc_map;
sleep 5000;
mapannounce "force_1-3","На них вы должны прокачаться по максимуму.",bc_map;
sleep 5000;
mapannounce "force_1-3","Сейчас ваша задача убить как можно больше порингов!",bc_map;
sleep 5000;
mapannounce "force_1-3","Потом у вас будет 30 секунд на распеределение статов.",bc_map;
sleep 5000;
mapannounce "force_1-3","Далее начнется жестокое новис рубилово без правил!",bc_map;
sleep 5000;
mapannounce "force_1-3","Эвент начнется через минуту.",bc_map;
sleep 60000;
mapannounce "force_1-3","Поринги запущены!!!",bc_map;
set $@mobcount, $@mobspawncount;
monster "force_1-3",61,20,"Раскачай себя, братишка!",1002,$@mobspawncount,"Event Noobs MSG::OnKillMobs";
set .@mincounter,0;
while(1) {
if ($@mobcount){
mapannounce "force_1-3", "Мочи их, братва, кач идет!",bc_map;
if (.@mincounter == 4) { // 2 min = 30 sec * 4 times
mapannounce "force_1-3", "Вы не смогли их замочить за 2 мин!! Все на выход!!",bc_map;
killmonsterall "force_1-3";
sleep 3000;
mapwarp "force_1-3","prontera",155,95;
end;
}
sleep 30000; // 30 sek
set .@mincounter,.@mincounter+1;
}else{
mapannounce "force_1-3", "Вы их сделали!! Молодцы! Распределяйте статы! 30 сек пошло!",bc_map;
break;
}
}
sleep 30000;
mapwarp "force_1-3","force_2-3",69,19;
sleep 5000;
mapannounce "force_2-3","Начинаем мясо-новисо-рубилово без правил!",bc_map;
set .@mincounter,0;
while(1) {
if (getmapusers("force_2-3")==1){
mapannounce "force_2-3", "Битва закончена! У нас есть победитель!",bc_map;
mapannounce "force_2-3", "Победитель, у тебя есть 5 минут для получения подарка!",bc_map;
enablenpc "Судья";
initnpctimer "Судья";
break;
}
if (getmapusers("force_2-3")==0){
mapannounce "force_2-3", "Битва закончена! У нас нету победителя!",bc_map;
break;
}
mapannounce "force_2-3",getmapusers("force_2-3") + " людей живы, но вживых должен остаться только один!",bc_map;
if (.@mincounter == 40) { // 20 min = 30 sec * 40 times
mapannounce "force_2-3", "Никто из вас не справился за 20 мин!! Все на выход!!",bc_map;
killmonsterall "force_2-3";
sleep 3000;
mapwarp "force_2-3","prontera",155,95;
break;
}
sleep 30000;
set .@mincounter,.@mincounter+1;
}
end;

OnKillMobs:
set $@mobcount, $@mobcount - 1;
end;
OnPCDieEvent:
if (getmapxy(.@mapname$,.@mapx,.@mapy,0,strcharinfo(0)) == 0)
if (.@mapname$ == "force_2-3") {
sleep2 2000;
warp "prontera",155,95;
}
end;
}

force_2-3,69,19,5 script Судья 811,{
switch (rand(2)) {
case 0:
set .@in$, "Бронзовые монетки";
set .@iid, 673;
break;
case 1:
set .@in$, "Серебрянные монетки";
set .@iid, 675;
break;
case 2:
set .@in$, "Золотые монетки";
set .@iid, 671;
break;
}
mes "Приветствую победитель!";
mes "Я вручаю тебе заслуженный приз - "+.@in$+"!";
next;
menu "Давай его сюда!",-;
announce "Победитель битвы новисов - "+strcharinfo(0)+"! Получает приз - "+.@in$+"!",8;
getitem .@iid,3;
warp "prontera",139,179;
disablenpc "Судья";
end;
OnTimer300000: //5 min
mapannounce "force_2-3", "Время на получение приза истекло!",bc_map;
mapwarp "force_2-3","prontera",139,179;
disablenpc "Судья";
end;
}

// Включение автоэвента.

prt_in,228,27,5 script Noob-Event 735,{
if (getgmlevel() > 40) goto gm_menu;
end;
gm_menu:
mes "[Noob-Event]";
mes "Гм, что пожелаете?";
next;
menu "Включить эвент",menu1,"Выключить эвент",menu2,"Ничего",m_end;
menu1:
announce "Маски-Шоу! Эвент для новисов активирован.",8;
announce "У вас пять минут на регистрацию в Пронтере справа от нижней Кафры!",8;
enablenpc "Маски-Шоу";
donpcevent "Event Noobs MSG::OnENStart";
close;
menu2:
disablenpc "Маски-Шоу";
disablenpc "Судья";
if (!$@mobspawncount) set $@mobspawncount, 100;
if (!$@noviscount) set $@noviscount, 100;
mes "[Noob-Event]";
mes "Эвент деактивирован";
close;
m_end:
mes "[Noob-Event]";
mes "Как скажете Гм,я всегда к вашим услугам.";
close;
}

// Авто включение эвента.

- script Noob -1,{
OnClock1000:
OnClock1600:
OnClock2300:
//Понедльник.
if((gettime(4)==1) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==1) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==1) && (gettime(3)==23)) goto L_Start;
//Вторник.
if((gettime(4)==2) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==2) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==2) && (gettime(3)==23)) goto L_Start;
//Среда.
if((gettime(4)==3) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==3) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==3) && (gettime(3)==23)) goto L_Start;
//Четверг.
if((gettime(4)==4) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==4) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==4) && (gettime(3)==23)) goto L_Start;
//Пятница.
if((gettime(4)==5) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==5) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==5) && (gettime(3)==23)) goto L_Start;
//Суббота.
if((gettime(4)==6) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==6) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==6) && (gettime(3)==23)) goto L_Start;
//Воскресение.
if((gettime(4)==7) && (gettime(3)==10)) goto L_Start;
if((gettime(4)==7) && (gettime(3)==16)) goto L_Start;
if((gettime(4)==7) && (gettime(3)==23)) goto L_Start;
end;
L_Start:
announce "Маски-Шоу! Эвент для новисов активирован.",8;
announce "У вас пять минут на регистрацию в Пронтере слева от центральной Кафры!",8;
enablenpc "Маски-Шоу";
donpcevent "Event Noobs MSG::OnENStart";
end;
OnInit:
disablenpc "Судья";
disablenpc "Маски-Шоу";
set $@mobspawncount, 100;
set $@noviscount, 100;
end;
}

Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...
×
×
  • Создать...
Яндекс.Метрика