Назад

Лотерея

Автор: dimjke: Дата: 12.09.2010

Кто нибудь помнит сервер NixPk и этот автоивент? Нужна помощь в его написании...

Автор: dimjke: Дата: 12.09.2010

Не нашёл...

Извините, нет совпадений. Попробуйте указать другие ключевые слова.

Автор: dimjke: Дата: 12.09.2010

Вот что я смог написать сам.

//by mrboob
- script lotto -1,{
OnClock2137:
set $memb,0;
set $loto,1;

announce "[Лотерея] Начало через 3 минуты! (Lighthalzen/Лайтхалзен)",0,0xFF99FF;
sleep 60000;
announce "[Лотерея] Успейте купить билеты! До начала 2 минуты.",0,0xFF99FF;
sleep 60000;
announce "[Лотерея] Успейте купить билеты! До начала 1 минута.",0,0xFF99FF;
sleep 60000;
announce "[Лотерея] Продажа билетов закончена.",0,0xFF99FF;
sleep 5000;
announce "[Лотерея] Участников: "+$memb+". Начинаем розыгрыш!",0,0xFF99FF;
sleep 5000;
callfunc "lotto";
}

function script lotto {
set $v, rand(1,100);

announce "Итак розыгрыш лотереи!",0;
sleep 5000;
announce "Сегодня счастливое число: "+$v+".",0;
set $loto,0;
if(s==$v){
announce "Победитель: "+strcharinfo(0)+". Он отгадал число верно! Приз: Mvp Card Album!",0;
getitem 20196,1;
end;
}else{
announce "К сожалению, победителей не оказалось.",0;
end;
}}

lighthalzen,168,104,5 script Лотерея 856,{

mes "[Лотерея]";
mes "Добро пожаловать! Что ты хочешь?";
next;
switch(select("Купить билет:Информация:Выйти")){

case 1:
if(bla!=0){mes "Ты уже купил билет!";close;}
if($loto==0){mes "Сейчас нет розыгрышей!";close;}
mes "Билет стоит 500к.";
mes "Ты хочешь купить его?";
menu "Да",yes,"Нет",-;
close;
yes:
if(zeny < 500000) { mes "Извини, но у тебя нет денег."; close; }
mes "Хорошо! Будут разыгран 1 тур.";
mes "Ты должен загадать число для него.";
set $memb,$memb+1;
set bla,1;
set Zeny,Zeny-500000;
next;
mes "Введи число на розыгрыш. От 1 до 100.";
reinput:
input s;
if(s == 0 || s > 100){ mes "Эй! Только от 1 до 100. Попробуй снова."; goto reinput; }
next;
mes "Ваше загаданное число "+s+"";
mes "Теперь дождитесь розыгрыша.";
mapannounce "lighthalzen","Игрок "+strcharinfo(0)+" купил билет на лотерею. ",bc_blue;
close;

case 2:
mes "Каждый день проходит розыгрыш лотереи.";
mes "Тот кто угадывает число или ближе оказывается к нему, тот выйгрывает эвент.";
mes "Вот собственно и всё.";
close;
case 3:
close;
}
}
Не подскажите как сделать это:
mes "Тот кто угадывает число или ближе оказывается к нему, тот выйгрывает эвент.";

Автор: Мяфк: Дата: 12.10.2010

Можно простым вычитанием, каждый кто купленный билет вычитается из выйгрышного.
Так:
set win, 1000
set bilet1, к пример 800
set bilet2, к примеру 600.
Дальше:
set biletblijiy1, win-bilet1
set biletblijiy2, win-bilet2
Получается 200 и 400. Дальше сравниваем числа:
if biletblijiy1>biletblijiy2{
set biletwin1, 1;
}else{
set biletwin2, 1;
Типа того...

Автор: Кеник: Дата: 12.13.2010

Цитата Мяфк;27416:
Можно простым вычитанием, каждый кто купленный билет вычитается из выйгрышного.
Так:
set win, 1000
set bilet1, к пример 800
set bilet2, к примеру 600.
Дальше:
set biletblijiy1, win-bilet1
set biletblijiy2, win-bilet2
Получается 200 и 400. Дальше сравниваем числа:
if biletblijiy1>biletblijiy2{
set biletwin1, 1;
}else{
set biletwin2, 1;
Типа того...

Угу, только еще учесть, что 1050 ближе к 1000, чем 800 :rolleyes:

Автор: Мяфк: Дата: 12.13.2010

Ну да, ближе, можно просто откинуть минусы и сравнивать без них.

Автор: Кеник: Дата: 12.13.2010

Дада х) В афинских скриптах есть модули?

Я просто уточнил, что не все варианты были учтены в выложенном куске х)

Автор: Мяфк: Дата: 12.13.2010

А математику ты в школе не проходил?
Что бы из отрицательного числа сделать положительное, надо его умножить на -1.
То есть:
If biletblijiy1 < 0 {
set biletblijiy1, biletblijiy1*(-1)

Автор: Кеник: Дата: 12.13.2010

Цитата Мяфк;27656:
А математику ты в школе не проходил?
Что бы из отрицательного числа сделать положительное, надо его умножить на -1.
То есть:
If biletblijiy1 < 0 {
set biletblijiy1, biletblijiy1*(-1)


Не вижу повода для агра о_О Просто с модулем было бы симпатичнее без ифа х)

Автор: Мяфк: Дата: 12.13.2010

Ну напиши к разработчикам еА, я то тут причём?

Автор: Кеник: Дата: 12.14.2010

Омг... Я лишь спросил - есть ли модули О_о