logo
Автор: eug2b
Описание: RUR
Язык: Plain Text
prontera,156,223,4	script	Рулетка	810,{
	if(getgmlevel() >= 20)
		{
		if($@nachalo>0)
			{
			mes "Эвент уже идет, хочешь закончить регистрацию и приступить к эвенту?";
			switch(select("Нет:Да, приступить:Хочу остановить эвент"))
				{
				case 1:
					close;
				case 2:
					stopnpctimer;

					close2;
					goto st;
					close;
				case 3:
					close2;
					stopnpctimer;
					areaannounce "prontera",144,211,170,236,"Ставка отменена Администратором.",0;
					for(set .i,0;.i<getarraysize($@reg$);set .i, .i+1)
						{
						attachrid getcharid(3,$@reg$[.i]);
						if($@nachalo==1)
							set zeny, zeny+$@stavka;
						if($@nachalo==2)
							getitem $@loot,$@stavka;
						}
					goto the_end;
					close;
				}
			}
		mes "В чем сделать ставку?";
		switch(select("Деньги:Крупные ставки(больше 10кк):Лут:Передумал"))
			{
			case 1:
				stavk1:
					mes "Какая будет ставка?";
					input $@stavka;
					if($@stavka<1)
						{
						mes "Ставка должна быть больше 0";
						next;
						goto stavk1;
						}
					next;
				kol1:
					mes "Введи максимальное количество человек, которые смогут участвовать в эвенте.";
					input $@kol;
					if($@kol<3)
						{
						mes "Количество человек должно быть не меньше 3";
						next;
						goto kol1;
						}
 chance1:
 mes "Введи шанс.";
 input $@chance;
 if($@chance<2)
 {
 mes "Шанс не должно быть не меньше чем 1к2";
 next;
 goto chance1;
 }
				set $@nachalo, 1;
				set $@name$, "zeny";
				close2;
				donpcevent "Рулетка::OnStart";
				close;

			case 2:
				stavk3:
					mes "Какая будет ставка?";
					mes "То что ты введешь будет умножено на 1кк";
					input $@stavka;
					set $@stavka, $@stavka*1000000;
					if($@stavka<1)
						{
						mes "Ставка должна быть больше 0";
						next;
						goto stavk3;
						}
					next;
				kol3:
					mes "Введи максимальное количество человек, которые смогут участвовать в эвенте.";
					input $@kol;
					if($@kol<3)
						{
						mes "Количество человек должно быть не меньше 3";
						next;
						goto kol3;
						}
 chance3:
 mes "Введи шанс.";
 input $@chance;
 if($@chance<2)
 {
 mes "Шанс не должно быть не меньше чем 1к2";
 next;
 goto chance3;
 }
				set $@nachalo, 1;
				set $@name$, "zeny";
				close2;
				donpcevent "Рулетка::OnStart";
				close;

			case 3:
				loot:
					mes "Введи id вещи, какой лут будет выставлен на ставку.";
					input $@loot;
					if(getitemname($@loot)=="null")
						{
						mes "Вы не правильно ввели id вещи";
						next;
						goto loot;
						}
					next;
				stavk2:
					mes "Какая будет ставка?";
					input $@stavka;
					if($@stavka<1)
						{
						mes "Ставка должна быть больше 0";
						next;
						goto stavk2;
						}
					next;
				kol2:
					mes "Введи максимальное количество человек, которые смогут участвовать в эвенте.";
					input $@kol;
					if($@kol<3)
						{
						mes "Количество человек должно быть не меньше 3";
						next;
						goto kol2;
						}
 chance2:
 mes "Введи шанс.";
 input $@chance;
 if($@chance<2)
 {
 mes "Шанс не должно быть не меньше чем 1к2";
 next;
 goto chance2;
 }
					set $@nachalo, 2;
					set $@name$, getitemname($@loot);
					close2;
					donpcevent "Рулетка::OnStart";
					close;

			case 4:
				close;
			}
		}
	else
		{
		if($@regend>0)
			{
			mes "Эвент уже начался.";
			close;
			}
		for(set .i,0;.i<getarraysize($@reg$);set .i, .i+1)
			{
			if(strcharinfo(0)==$@reg$[.i])
				{
				mes "Ты уже зарегистрирован.";
				close;
				}
			}
		mes "Хочешь сделать ставку?";
		mes "Ставка: ^FF0000"+$@stavka+" "+$@name$+"^000000";
		menu "Да хочу",-,"Нет, я передумал",lno;
		switch($@nachalo)
			{
			case 0:
				mes "Эвент сейчас не идет.";
				close;

			case 1:
				if(zeny < $@stavka)
					{
					mes "Ставка: ^FF0000"+$@stavka+"^000000";
					close;
					}
				set zeny,zeny - $@stavka;
				goto reg;
				close;

			case 2:
				if(countitem($@loot) < $@stavka)
					{
					mes "Ставка: ^FF0000"+$@stavka+" "+getitemname($@loot)+"^000000";
					close;
					}
				delitem $@loot,$@stavka;
				goto reg;
				close;
				}

				reg:
					if(getarraysize($@reg$)<$@kol)
						{
						set $@reg$[getarraysize($@reg$)],strcharinfo(0);
						areaannounce "prontera",144,211,170,236,getarraysize($@reg$)+" - "+strcharinfo(0),0;
						if(getarraysize($@reg$)==$@kol)
							{
							stopnpctimer;
							close2;
							goto st;
							close;
							}
						}
					else
						{
						mes "Ты опоздал, места закончились.";
						close;
						}
				lno:
					close;
			}
		close;
			
OnStart:
	announce "Рулетка началась! НПЦ сверху от фонтана.",bc_all;
	areaannounce "prontera",144,211,170,236,"Ставка: "+$@stavka+" "+$@name$+"! Шанс 1 к "+$@chance+"! Максимальное количество людей: "+$@kol,0,0x00FF00;
	initnpctimer;
	end;
	OnTimer180000:
st:
	announce "Регистрация закончена. Начинаем!",bc_all;
	sleep 1000;
	set $@regend, 1;
	set $@kolich, getarraysize($@reg$);
	if($@kolich < 2)
		{
		announce "Участников не набралось",bc_all;
		for(set .i,0;.i<getarraysize($@reg$);set .i, .i+1)
			{
			attachrid getcharid(3,$@reg$[.i]);
			if($@nachalo==1)
				set zeny, zeny+$@stavka;
			if($@nachalo==2)
				getitem $@loot,$@stavka;
			}
		goto the_end;
		close;
		}
	while(getarraysize($@reg$)>1){
  	sleep 200;
  	set $@i,0;
  	while($@i<getarraysize($@reg$))
   		{
   		sleep 100;
		set .chance,$@chance;
   		set .random, rand(1,.chance);
   		if(.random>1)
    			{
    			sleep 200;
    			areaannounce "prontera",144,211,170,236,$@reg$[$@i]+" - пистолет не выстрелил.",0,0x2DC3FF;
    			}
   		else
    			{
    			attachrid getcharid(3,$@reg$[$@i]);
    			sleep 200;
    			percentheal -100,0;
    			specialeffect2 266;
    			specialeffect2 183;
    			areaannounce "prontera",144,211,170,236,$@reg$[$@i]+" погибает.",0,0xAD030B;
    			deletearray $@reg$[$@i],1;
    			if(getarraysize($@reg$)==1) 
     				goto one;
    			set $@i, $@i-1;
    			}
   		set $@i, $@i+1;
   		}
	}
	if(getarraysize($@reg$)==1)
		{
		one:
			areaannounce "prontera",144,211,170,236,"Победил "+$@reg$[0]+". Он выиграл "+$@kolich*$@stavka+" "+$@name$,0,0xB200FF;
			attachrid getcharid(3,$@reg$[0]);
			if($@nachalo==1)
				set zeny, zeny + $@kolich*$@stavka;
				if($@nachalo==2)
				getitem $@loot,$@kolich*$@stavka;
		the_end:
			deletearray $@reg$[0],getarraysize($@reg$);
			atcommand "@raisemap";
			set $@nachalo,0;
			set $@regend,0;
			set .raund,0;
			close;
		}
	}
Последние размещения:
123123123 (PHP)
ksurent (Perl)
ksurent (Bash)
guata (Plain Text)
biophreak (Plain Text)
Raik (PHP)
MUSbKA (Plain Text)
MUSbKA (Plain Text)
nekitozzz (C++)
nekitozzz (Plain Text)
nekitozzz (C++)
ksurent (Perl)
MUSbKA (C++)
stalin_alex (C++)
dzantiev (Plain Text)
unreal (C++)
eug2b (Plain Text)
Мы не несем ответственности за текст, размещенный пользователем.
netsago.paste.β © 2009—2012 Neunica