Автор: aN00B1s: Дата: 03.13.2009
В последнее время заметил, что очень много людей ищут Авто-Эвент "РФУЛ", вот моя версия.
Написал качественно с нуля, максимум оптимизации, очень много проверок и аннонсов (Пеко-Пеко, на 0 человек, сколько осталось на карте), проверка на победителя идёт не по таймеру, а после смерти игрока, когда предпоследний умрёт - телепортируется в Пронтеру уже живым.
Не люблю в Авто-Эвентах всяких призовых монстров, сделал просто однощелчкового НПС с задержкой.В последнее время заметил, что очень много людей ищут Авто-Эвент "РФУЛ", вот моя версия.
Написал качественно с нуля, максимум оптимизации, очень много проверок и аннонсов (Пеко-Пеко, на 0 человек, сколько осталось на карте), проверка на победителя идёт не по таймеру, а после смерти игрока, когда предпоследний умрёт - телепортируется в Пронтеру уже живым.
Не люблю в Авто-Эвентах всяких призовых монстров, сделал просто однощелчкового НПС с задержкой.
[COLOR=#ff0000]Кучу всего сделал, что придумал: снятие умений при входе, проверка на мальчика/девочку, телепортирование в Пронтеру живым с оповещением при смерти и так далее.
Предлагайте идеи, допишу с удовольствием, хочется сделать лучший рфул.[/COLOR]
//---Авто-Эвент RFYL.---//
//---Скрипт написал aN00B1s (ICQ: 722-45-30)---//
//---Объявление об эвенте.---//
- script announce_rfyl -1,{
//---Время, когда эвент будет начинаться.---//
OnClock1030:
OnClock1530:
OnClock2030:
//---Аннонс Эвента + проверки.---//
announce "Эвент 'Убеги от монстра' начнётся через 3 минуты!",0;
killmonsterall "quiz_01";
sleep 50000;
announce "В Пронтере появился НПС 'Убеги от монстра'!",0;
enablenpc "Убеги от монстра";
sleep 10000;
announce "Эвент 'РФУЛ' начнётся через 2 минуты!",0;
sleep 60000;
announce "Эвент 'РФУЛ' начнётся через 1 минуту!",0;
sleep 30000;
mapannounce "quiz_01","Через 30 секунд будет запущен монстр!",0;
sleep 25000;
announce "Эвент 'РФУЛ' начнётся через -5-",0;
sleep 1000;
announce "Эвент 'РФУЛ' начнётся через -4-",0;
sleep 1000;
announce "Эвент 'РФУЛ' начнётся через -3-",0;
sleep 1000;
announce "Эвент 'РФУЛ' начнётся через -2-",0;
sleep 1000;
announce "Эвент 'РФУЛ' начнется через -1-",0;
sleep 1000;
announce "Эвент 'Убеги от монстра' начался, пусть победит сильнейший!",0,0x00FF00;
monster "quiz_01",42,369,"Убийца",1640,1;
disablenpc "Убеги от монстра";
initnpctimer;
end;
OnTimer5000: // Каждые 5 секунд проверка на количество игроков + аннонс.
if ( getmapusers("quiz_01") == 0 )
{
killmonsterall "quiz_01"; // Если всех убили - эвент заканчивается.
announce "Эвент 'РФУЛ' закончился, так как игроков на Эвенте нет.",0;
disablenpc "Киса";
stopnpctimer;
end;
}
else if ( getmapusers("quiz_01") > 1 )
{
mapannounce "quiz_01",getmapusers("quiz_01") +" игрока(ов) всё ещё находятся на Эвенте.",0,0x00FF00; // Если 2+ игроков на эвенте - аннонс.
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","Поздравляю, Вы выиграли, подойдите пожалуйста к Кисе.",0;
enablenpc "Киса";
stopnpctimer;
end;
}
end;
}
//---Выигрыш.---//
quiz_01,42,369,3 script Киса 876,{
if (sex == 1) { // Мальчик.
announce "В 'РФУЛе' победил "+ strcharinfo(0) +"! Поздравляем его!",0;
}
else { // Остальные (девочка).
announce "В 'РФУЛе' победила "+ strcharinfo(0) +"! Поздравляем её!",0;
};
getitem 7227,1; // Можно поставить свой приз.
warp "prontera",156,223;
sleep2 250;
disablenpc "Киса";
end;
}
//---Регистрация на Эвент.---//
prontera,147,147,3 script Убеги от монстра 736,{
mes "[^0000FFУбеги от монстра^000000]";
mes "Вы хотите попасть на Эвент '^FF0000Убеги от монстра^000000'?";
next;
switch(select("Да","Нет")) {
case 1:
if (checkriding()) { // Проверка на Пеко-Пеко.
mes "[^0000FFУбеги от монстра^000000]";
mes "Пожалуйста, снемите Пеко Пеко.";
close;
}
sc_end SC_ALL;
percentheal 100,100;
warp "quiz_01",42,369;
end;
break;
case 2:
mes "[^0000FFУбеги от монстра^000000]";
mes "Хорошо, приходите, когда захотите.";
close;
break;
}
OnInit: // При запуске сервера убераем НПС.
disablenpc "Убеги от монстра";
disablenpc "Киса";
end;
}
//---МапФлаги.---//
quiz_01 mapflag pvp off
quiz_01 mapflag noteleport
quiz_01 mapflag nosave SavePoint
quiz_01 mapflag nowarp
quiz_01 mapflag noreturn
quiz_01 mapflag nomemo
quiz_01 mapflag nowarpto
quiz_01 mapflag noskill
quiz_01 mapflag pvp noparty
quiz_01 mapflag restricted 5 // Не забывайте добавить зелья, которые нельзя кушать и спид потионы в db/item_noequip.txt
Автор: SergeiX: Дата: 05.01.2009
Супер!
Автор: Cole McCormick: Дата: 05.02.2009
aN00B1s ничего лишнего ненапишет
Автор: SergeiX: Дата: 05.02.2009
sergeidead есть skype нужна маленькая помошь)
Автор: SergeiX: Дата: 05.02.2009
м чтот типо того помошь нужна хД)
Автор: aN00B1s: Дата: 05.02.2009
[color=Red]Алёшка, скрипт повнимательнее изучите, поймёте.
[/color]
Автор: ArTuR: Дата: 05.11.2009
блин люди киньте по норму скрипт а то тут нада 100 сообшений!!!!!! пож!!!!!
Автор: hajikov: Дата: 05.11.2009
Ну а кому сейчас легко?? Это защита от тех, кто только клянчить умеет или тырит с чужих ресурсов и пытается выдать за свое.
Автор: Мяфк: Дата: 05.11.2009
Originally posted by hajikov;10097
Ну а кому сейчас легко?? Это защита от тех, кто только клянчить умеет или тырит с чужих ресурсов и пытается выдать за свое.
Автор: 007asha: Дата: 05.21.2009
nnnnnnnn
Raf: предупреждение за флуд. затем бан.
Автор: hajikov: Дата: 05.21.2009
Такс, еще один флудераст начинающий. Будем знать до кого доё... в будущем))
Автор: Hatzel: Дата: 05.22.2009
Так, флудерасты.
Еще один лишний пост в этой теме - бан 3 дня.
Автор: Hatzel: Дата: 05.22.2009
Автору на заметку..
Тут баг, в код смотреть лень, но суть такова:
было 3 чара. Одного я убил, второй вышел из комнаты.. вобщем эвент, если верить анонсам, еще не начался, а приз я все же получил. Вобще я подумал что просто выиграл и всё, но через нпц продолжал регистрацию, и там какой-то парень выиграл 2й приз.. вобщем как-то так))
Автор: aN00B1s: Дата: 05.26.2009
[color=Red]Багов нет.
Код порой полезно смотреть.
@reloadscript пробовали?
[/color]
Автор: nomn: Дата: 05.26.2009
За этот Эвент Анубису спасибо, написан оч хорошо, со всеми проверками, анонсами и прочим. Лично его использую, нет неединного замечания к данному скрипту. Ищи у себя ошибки (если брал и ничего не менял - то чудеса (с) Raf....)
Автор: Hatzel: Дата: 05.27.2009
Originally posted by aN00B1s;11080
[color=Red]Багов нет.
Код порой полезно смотреть.
@reloadscript пробовали?
[/color]
Автор: aN00B1s: Дата: 05.27.2009
[color=Red]Hatzel, не вижу там дыр/багов вообще...
[/color]
Автор: 54546: Дата: 05.27.2009
Хочется задать Вопрос aN00B1s-у. Если убить моба который появляется. СИны его спокойно убьют, что тогда произойдет?
Автор: nomn: Дата: 05.28.2009
эвент не закончится и будет каждые 5 секунд писать сколько людей на карте осталось.
а если мозг подумать?) зачем mob_db? эвент расчитан на 99\70. Лично на моём сервере бегает кошка и убивает всех азурами и фо)))) у неё 100кк НР и полный анвиз к домагу :)))
Автор: Dante: Дата: 05.30.2009
Тру.
Автор: hajikov: Дата: 05.30.2009
Dante: Здесь не нужно писать свое личное мнение, а только по делу, перечитай еще раз правила форума на счет флуда и набивания счетчика сообщений, а ты именно его набиваешь, тк не можешь увидеть сам скрипт (у тебя только 6 сообщений, а нужно 100).
ЗЫ: Модератор, пожалуйста, удали мое сообщение. Надеюсь что он успеет его это прочесть.
Автор: jonikkk3: Дата: 06.10.2009
Мм а можно сделать так что при нажатий на нпц сразу тпешился на ивент!!! а то плохая дырочка получается там!!!
Автор: Eleidan: Дата: 06.20.2009
У меня евент не запускается(
Пишет error в 11 строке где
- script announce_rfyl -1,{
потом эту строку заменил на нахождение непися с координатами и с невидимым спрайтом, пишет ошибку в
OnClock1030:
Видимо афина тупая, или что такое?(
Автор: DiS[IP]: Дата: 06.20.2009
Табуляцию ставил?
Автор: Eleidan: Дата: 06.20.2009
Во ! Спасибо, помогло) Чот я и не подумал)
Автор: d[artiir]: Дата: 01.20.2011
//---Регистрация на Эвент.---//
prontera,147,147,3 script Убеги от монстра 736,{
[COLOR="Red"]//mes "[^0000FFУбеги от монстра^000000]";
//mes "Вы хотите попасть на Эвент '^FF0000Убеги от монстра^000000'?";
//next;
//switch(select("Да","Нет")) {
//case 1: [/COLOR]
if (checkriding()) { // Проверка на Пеко-Пеко.
mes "[^0000FFУбеги от монстра^000000]";
mes "Пожалуйста, снемите Пеко Пеко.";
close;
}
sc_end SC_ALL;
percentheal 100,100;
warp "quiz_01",42,369;
end;
[COLOR="red"]//break;
//case 2:
//mes "[^0000FFУбеги от монстра^000000]";
//mes "Хорошо, приходите, когда захотите.";
//close;
//break;
//} [/COLOR]
OnInit: // При запуске сервера убераем НПС.
disablenpc "Убеги от монстра";
disablenpc "Киса";
end;
}
Автор: dimjke: Дата: 02.01.2011
Цитата d[artiir];30790://---Регистрация на Эвент.---//
prontera,147,147,3 script Убеги от монстра 736,{
[COLOR="Red"]//mes "[^0000FFУбеги от монстра^000000]";
//mes "Вы хотите попасть на Эвент '^FF0000Убеги от монстра^000000'?";
//next;
//switch(select("Да","Нет")) {
//case 1: [/COLOR]
if (checkriding()) { // Проверка на Пеко-Пеко.
mes "[^0000FFУбеги от монстра^000000]";
mes "Пожалуйста, снемите Пеко Пеко.";
close;
}
sc_end SC_ALL;
percentheal 100,100;
warp "quiz_01",42,369;
end;
[COLOR="red"]//break;
//case 2:
//mes "[^0000FFУбеги от монстра^000000]";
//mes "Хорошо, приходите, когда захотите.";
//close;
//break;
//} [/COLOR]
OnInit: // При запуске сервера убераем НПС.
disablenpc "Убеги от монстра";
disablenpc "Киса";
end;
}
Выделенные строки, по моему мнению, являются лишние. Когда начинается эвент нпц прячется, а вот меню остаётся, если ты сидишь в 5 окон, можешь под конец со спокойной душой заходить и побеждать!