Автор: Sanasol: Дата: 06.11.2010
Взял странно-дуратский кубик и переделал его.
Теперь работает на 6 цифр.
При вставании на не цифирные клетки выкидывает.
Пришлось переписать половинку от всего. :) И бегать координаты выписывать почти по-клеточно. :invalid:
На правах теста скрипта: Проверить его можно
Надо только переписать адрес варп портала.
//===== eAthena Скрипт=====//
//= Кубики =//
//===== By: ===== //
//= Sanasol && Mahina =//
//===== Сервер =====//
//= lightroserver.tk и live-metal.ru=//
//===== Версия: =====//
//= 2.0 =//
//===== Идет на: =====//
//= Эмуляторе eAthena =//
//===== Описание:===== //
//= Азартная игра=//
//== Комментарий авторов ==//
//= Скрипт работает только на хороших серверах. =//
//= Кто сотрет копирайты будет немедленно атаков ДДосом =//
//= со всех сторон. =//
//====Копирайты йухан====//
- script Dice#announcer -1,{
OnInit:
disablenpc "prtevent";
disablenpc "Кубик#dice_event";
end;
OnClock1402:
OnClock1400:
OnClock1700:
OnClock2000:
announce "Кубо-Человек: Cейчас начнется эвент 'Кубик'!.",0;
sleep2 10000;
announce "Кубо-Человек: Все желающие могут зайти в портал,который появится в центре пронтеры.",0;
sleep2 10000;
announce "Кубо-Человек: Через минуту после появления портала регистрация заканчивается и портал исчезает",0;
sleep2 10000;
announce "Кубо-Человек: Пожалуйста подойдите в центр пронтеры и зайдите в варп портал для принятия участия в эвенте!",0;
enablenpc "prtevent";
initnpctimer;
end;
OnTimer30000:
announce "Кубо-Человек: До начала осталось 30 секунд",0;
sleep2 5000;
announce "Кубо-Человек: Все желающие принять участие могут пройти в варп портал!",0;
end;
OnTimer50000:
announce "Кубо-Человек: До начала осталось 10 секунд!",0;
end;
OnTimer55000:
announce "Кубо-Человек: ~5~.",0;
end;
OnTimer56000:
announce "Кубо-Человек: ~4~.",0;
end;
OnTimer57000:
announce "Кубо-Человек: ~3~.",0;
end;
OnTimer58000:
announce "Кубо-Человек: ~2~.",0;
end;
OnTimer59000:
announce "Кубо-Человек: ~1~.",0;
end;
OnTimer60000:
announce "Кубо-Человек: Время вышло!",0;
end;
OnTimer61000:
disablenpc "prtevent";
donpcevent "Кубик#dice_event::OnEnable";
stopnpctimer;
end;
}
// Варп портал на эвент //
revencia,147,61,0 warp prtevent 2,2,quiz_00,18,117
// Получение приза //
quiz_00,20,116,6 script Кубик#dice_event 715,{
mes "[Кубо-Человек]";
mes "Назовите свое имя:";
next;
input .@name$;
if(.@name$ != strcharinfo(0)){
mes "[Кубо-Человек]";
mes "Вы уверены что это имя вашего персонажа?";
close;
}
mes "[Кубо-Человек]";
mes "Поздравляю!Вы победили!";
close2;
announce "Кубо-Человек: У нас есть победитель!Его имя: "+.@name$+"!",0;
getitem 7227,1;
warp "revencia",166,60;
disablenpc "Кубик#dice_event";
end;
OnEnable:
mapannounce "quiz_00","Кубо-Человек: Сейчас я расскажу правила эвента:",0;
sleep2 10000;
mapannounce "quiz_00","Кубо-Человек: Я бросаю кубик числом от 1 до 6",0;
sleep2 10000;
mapannounce "quiz_00","Кубо-Человек: Пример: Я бросил число 6.Игроки стоящие на клетке с номером от 1 до 5 варпаются обратно в город и считаются проигравшими!",0;
sleep2 10000;
mapannounce "quiz_00","Кубо-Человек: Игра продолжается до тех пор пока на карте не останется один человек.",0;
sleep2 10000;
mapannounce "quiz_00","Кубо-Человек: Вот и все!Начинаем эвент!",0;
sleep2 10000;
goto L_Start;
end;
L_Start:
if(getmapusers("quiz_00") == 1) goto L_Champ;
if(getmapusers("quiz_00") == 0) goto L_None;
if(getmapusers("quiz_00") > 1){
announce "Бросаю кубик!",0;
set $@number,rand(1,6);
sleep2 10000;
announce "Кубо-Человек: Я бросил кубик!Встаньте пожалуйста на любую клетку с числами!",0;
sleep2 1000;
announce "Кубо-Человек: ~3~",0;
sleep2 1000;
announce "Кубо-Человек: ~2~",0;
sleep2 1000;
announce "Кубо-Человек: ~1~",0;
sleep2 1000;
announce "Кубо-Человек: Время вышло!.",0;
donpcevent "evnt#1::OnEnable"; //Удаление стоящих не в положенном месте
announce "Кубо-Человек: Выиграшный номер: "+$@number+"!",0;
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose1; // win 1
if(($@number != 1) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose2; // win 2
if(($@number != 2) && ($@number != 1) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose3; // win 3
if(($@number != 2) && ($@number != 3) && ($@number != 1) && ($@number != 5) && ($@number != 6)) goto L_Lose4; // win 4
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 1) && ($@number != 6)) goto L_Lose5; // win 5
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 1)) goto L_Lose6; // win 6
end;
}
L_Lose1:
//Warp 2
areawarp "quiz_00",24,123,25,122,"prontera",155,182;
areawarp "quiz_00",20,101,21,100,"prontera",155,182;
//Warp 3
areawarp "quiz_00",22,105,23,104,"prontera",155,182;
areawarp "quiz_00",12,123,13,122,"prontera",155,182;
//Warp 4
areawarp "quiz_00",10,123,11,122,"prontera",155,182;
areawarp "quiz_00",18,113,21,112,"prontera",155,182;
//Warp 5
areawarp "quiz_00",24,105,25,104,"prontera",155,182;
areawarp "quiz_00",18,115,19,114,"prontera",155,182;
//Warp 6
areawarp "quiz_00",16,125,17,124,"prontera",155,182;
areawarp "quiz_00",14,107,15,106,"prontera",155,182;
areawarp "quiz_00",22,103,23,102,"prontera",155,182;
goto L_Start;
end;
L_Lose2:
//Warp 1
areawarp "quiz_00",12,125,13,124,"prontera",155,182;
areawarp "quiz_00",24,125,25,124,"prontera",155,182;
//Warp 3
areawarp "quiz_00",22,105,23,104,"prontera",155,182;
areawarp "quiz_00",12,123,13,122,"prontera",155,182;
//Warp 4
areawarp "quiz_00",10,123,11,122,"prontera",155,182;
areawarp "quiz_00",18,113,21,112,"prontera",155,182;
//Warp 5
areawarp "quiz_00",24,105,25,104,"prontera",155,182;
areawarp "quiz_00",18,115,19,114,"prontera",155,182;
//Warp 6
areawarp "quiz_00",16,125,17,124,"prontera",155,182;
areawarp "quiz_00",14,107,15,106,"prontera",155,182;
areawarp "quiz_00",22,103,23,102,"prontera",155,182;
goto L_Start;
end;
L_Lose3:
//Warp 2
areawarp "quiz_00",24,123,25,122,"prontera",155,182;
areawarp "quiz_00",20,101,21,100,"prontera",155,182;
//Warp 1
areawarp "quiz_00",12,125,13,124,"prontera",155,182;
areawarp "quiz_00",24,125,25,124,"prontera",155,182;
//Warp 4
areawarp "quiz_00",10,123,11,122,"prontera",155,182;
areawarp "quiz_00",18,113,21,112,"prontera",155,182;
//Warp 5
areawarp "quiz_00",24,105,25,104,"prontera",155,182;
areawarp "quiz_00",18,115,19,114,"prontera",155,182;
//Warp 6
areawarp "quiz_00",16,125,17,124,"prontera",155,182;
areawarp "quiz_00",14,107,15,106,"prontera",155,182;
areawarp "quiz_00",22,103,23,102,"prontera",155,182;
goto L_Start;
end;
L_Lose4:
//Warp 2
areawarp "quiz_00",24,123,25,122,"prontera",155,182;
areawarp "quiz_00",20,101,21,100,"prontera",155,182;
//Warp 3
areawarp "quiz_00",22,105,23,104,"prontera",155,182;
areawarp "quiz_00",12,123,13,122,"prontera",155,182;
//Warp 1
areawarp "quiz_00",12,125,13,124,"prontera",155,182;
areawarp "quiz_00",24,125,25,124,"prontera",155,182;
//Warp 5
areawarp "quiz_00",24,105,25,104,"prontera",155,182;
areawarp "quiz_00",18,115,19,114,"prontera",155,182;
//Warp 6
areawarp "quiz_00",16,125,17,124,"prontera",155,182;
areawarp "quiz_00",14,107,15,106,"prontera",155,182;
areawarp "quiz_00",22,103,23,102,"prontera",155,182;
goto L_Start;
end;
L_Lose5:
//Warp 2
areawarp "quiz_00",24,123,25,122,"prontera",155,182;
areawarp "quiz_00",20,101,21,100,"prontera",155,182;
//Warp 3
areawarp "quiz_00",22,105,23,104,"prontera",155,182;
areawarp "quiz_00",12,123,13,122,"prontera",155,182;
//Warp 4
areawarp "quiz_00",10,123,11,122,"prontera",155,182;
areawarp "quiz_00",18,113,21,112,"prontera",155,182;
//Warp 1
areawarp "quiz_00",12,125,13,124,"prontera",155,182;
areawarp "quiz_00",24,125,25,124,"prontera",155,182;
//Warp 6
areawarp "quiz_00",16,125,17,124,"prontera",155,182;
areawarp "quiz_00",14,107,15,106,"prontera",155,182;
areawarp "quiz_00",22,103,23,102,"prontera",155,182;
goto L_Start;
end;
L_Lose6:
//Warp 2
areawarp "quiz_00",24,123,25,122,"prontera",155,182;
areawarp "quiz_00",20,101,21,100,"prontera",155,182;
//Warp 3
areawarp "quiz_00",22,105,23,104,"prontera",155,182;
areawarp "quiz_00",12,123,13,122,"prontera",155,182;
//Warp 4
areawarp "quiz_00",10,123,11,122,"prontera",155,182;
areawarp "quiz_00",18,113,21,112,"prontera",155,182;
//Warp 5
areawarp "quiz_00",24,105,25,104,"prontera",155,182;
areawarp "quiz_00",18,115,19,114,"prontera",155,182;
//Warp 1
areawarp "quiz_00",12,125,13,124,"prontera",155,182;
areawarp "quiz_00",24,125,25,124,"prontera",155,182;
goto L_Start;
end;
L_Champ:
mapannounce "quiz_00","Кубо-Человек: Подойдите к НПС и назовите свое имя.",0;
enablenpc "Кубик#dice_event";
end;
L_None:
disablenpc "Кубик#dice_event";
end;
}
- script evnt#1 -1,{
OnEnable:
areawarp "quiz_00",10,131,26,126,"prontera",155,182;
areawarp "quiz_00",26,125,27,124,"prontera",155,182;
areawarp "quiz_00",18,125,23,124,"prontera",155,182;
areawarp "quiz_00",14,125,15,124,"prontera",155,182;
areawarp "quiz_00",4,125,11,124,"prontera",155,182;
areawarp "quiz_00",4,123,9,122,"prontera",155,182;
areawarp "quiz_00",14,123,23,122,"prontera",155,182;
areawarp "quiz_00",26,123,27,122,"prontera",155,182;
areawarp "quiz_00",4,121,27,116,"prontera",155,182;
areawarp "quiz_00",10,115,17,114,"prontera",155,182;
areawarp "quiz_00",20,115,27,114,"prontera",155,182;
areawarp "quiz_00",10,112,17,113,"prontera",155,182;
areawarp "quiz_00",22,112,27,113,"prontera",155,182;
areawarp "quiz_00",4,111,27,108,"prontera",155,182;
areawarp "quiz_00",4,107,13,106,"prontera",155,182;
areawarp "quiz_00",16,107,27,106,"prontera",155,182;
areawarp "quiz_00",10,105,21,104,"prontera",155,182;
areawarp "quiz_00",26,105,26,104,"prontera",155,182;
areawarp "quiz_00",10,103,21,102,"prontera",155,182;
areawarp "quiz_00",24,103,26,102,"prontera",155,182;
areawarp "quiz_00",10,101,19,100,"prontera",155,182;
areawarp "quiz_00",22,101,25,100,"prontera",155,182;
end;
}
[/spoiler]
Автор: Sanasol: Дата: 06.11.2010
getitem 7227,1; => set #CASHPOINT,#CASHPOINT+40;
Переменную не помню вроде такая. Сам глянь в доки
Автор: Kill Spirit: Дата: 06.11.2010
Я уже пробовал, но там чтото про аттач говорится и нефига не дает
Автор: Sanasol: Дата: 06.11.2010
Странно. Если бы фнукцией выдавало тогда понятно. К нпц чар полюбому прилепляется. Скинь текст ошибки
Автор: Gr1nS1de: Дата: 06.11.2010
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose1; // win 1
if(($@number != 1) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose2; // win 2
if(($@number != 2) && ($@number != 1) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose3; // win 3
if(($@number != 2) && ($@number != 3) && ($@number != 1) && ($@number != 5) && ($@number != 6)) goto L_Lose4; // win 4
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 1) && ($@number != 6)) goto L_Lose5; // win 5
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 1)) goto L_Lose6; // win 6 [/qoute]
Зачем это писать? Если можно сделать, например:
if($@number==1)goto L_Lose6; 0.о
Автор: Gr1nS1de: Дата: 06.11.2010
Цитата Sanasol:
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose1; // win 1
if(($@number != 1) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose2; // win 2
if(($@number != 2) && ($@number != 1) && ($@number != 4) && ($@number != 5) && ($@number != 6)) goto L_Lose3; // win 3
if(($@number != 2) && ($@number != 3) && ($@number != 1) && ($@number != 5) && ($@number != 6)) goto L_Lose4; // win 4
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 1) && ($@number != 6)) goto L_Lose5; // win 5
if(($@number != 2) && ($@number != 3) && ($@number != 4) && ($@number != 5) && ($@number != 1)) goto L_Lose6; // win 6
Автор: Sanasol: Дата: 06.11.2010
:dont_know:
Не смотрел тупо делал как было только на другие координаты и карту. Чтобы не открывали по 10 тем в неделю про кубики.