Jump to content
  • 0
Sign in to follow this  
Kian

[AJUDA]Devil Square não começa

Question

A devil square não começa nem a pau.Alguém saberia o motivo? :mellow:

 

/*
      ___           ___           ___                         ___           ___     
     /\  \         /\__\         /\  \         _____         /\__\         /\  \    
    _\:\  \       /:/ _/_        \:\  \       /::\  \       /:/ _/_        \:\  \   
   /\ \:\  \     /:/ /\__\        \:\  \     /:/\:\  \     /:/ /\__\        \:\  \  
  _\:\ \:\  \   /:/ /:/ _/_   _____\:\  \   /:/  \:\__\   /:/ /:/ _/_   _____\:\  \ 
 /\ \:\ \:\__\ /:/_/:/ /\__\ /::::::::\__\ /:/__/ \:|__| /:/_/:/ /\__\ /::::::::\__\
 \:\ \:\/:/  / \:\/:/ /:/  / \:\~~\~~\/__/ \:\  \ /:/  / \:\/:/ /:/  / \:\~~\~~\/__/
  \:\ \::/  /   \::/_/:/  /   \:\  \        \:\  /:/  /   \::/_/:/  /   \:\  \      
   \:\/:/  /     \:\/:/  /     \:\  \        \:\/:/  /     \:\/:/  /     \:\  \     
    \::/  /       \::/  /       \:\__\        \::/  /       \::/  /       \:\__\    
     \/__/         \/__/         \/__/         \/__/         \/__/         \/__/    
	 
*/
// =========================================================== //
// Nome: Devil Square por Stuff
// =========================================================== //
// Versão: 1.0
// =========================================================== //
// Autor: Wenden
// =========================================================== //
// Descrição: É como outros devil square a diferença é que cada monstro que você mata
// você recebe uma quantidade aleatória de certo item, tanto a quantidade quanto o item
// é configurado aqui no script na linha 165. Os item ganhados poderão ser trocados
// no próprio npc por outros itens configurados por você na linha 165.
// O Npc é em SQL onde são salvos os nomes, char ids, accounts ids e pontos dos jogadores
// quando matarem os monstros. Quando a última rodada chegar ao fim, que no caso a última
// é a 5° rodada, o npc fará um lista dos 5 jogadores que mais mataram monstros, eles serão
// teletransportados para o meio do mapa onde irão correr atrás de destruir as Caixas do Tesouro.
// O outros jogadores que não aparecem na lista dos 5 que mais mataram monstros serão
// teletransportados para prontera.
// =========================================================== //
/* Tabela SQL - Adicione em seu PhpmyAdmin

CREATE TABLE IF NOT EXISTS `devilsquare` (
  `id_usuario` int(11) NOT NULL,
  `nome` varchar(255) NOT NULL,
  `id_acc` int(11) NOT NULL,
  `pontos` int(11) NOT NULL,
  PRIMARY KEY  (`id_usuario`)
) ENGINE=MyISAM;

*/

prontera,164,167,5	script	Devil Square	4_M_MASKMAN,{

	mes	"["+strnpcinfo(1)+"]";
	mes "Bem-vindo aventureiro.";
	mes "Eu tenho um desafio para você";
	mes "deseja aceitar?";
	next;
		switch(select("Sim, eu aceito:Não, volto depois:Trocar "+getitemname($@id)+":Quero informações")){
		
			case 1:
			if($aberto == 0){
			mes	"["+strnpcinfo(1)+"]";
			mes "A Devil Square está fechado";
			mes "no momento, volte mais tarde.";
			close;
			}
			
			percentheal 100,100;
			warp "ordeal_1-1",189,189;
			announce strcharinfo(0)+" entrou na Devil Square.",8;
			end;
			
			case 2:
			mes	"["+strnpcinfo(1)+"]";
			mes "Estarei aqui quando precisar";
			mes "de um desafio.";
			close;
			
			case 3:
			if(!countitem($@id)){
			mes	"["+strnpcinfo(1)+"]";
			mes "Você não possui nenhuma";
			mes "^FF0000"+getitemname($@id)+"^000000.";
			close;
			}
			mes	"["+strnpcinfo(1)+"]";
			mes "Escolha qual item deseja trocar";
			mes "por ^FF0000"+getitemname($@id)+"^000000.";
			next;
			
				set @menu$,"";
				for(set @i,0; @i < getarraysize($@l); set @i,@i+1)
				set @menu$,@menu$+""+getitemname($@l[@i])+" - ^FF0000"+$@y[@i]+"^000000x "+getitemname($@id)+":";
				set @menu$,@menu$+"Cancelar";
				set @sel,select(@menu$)-1;
				if(@sel == getarraysize($@l)) close;
				
				mes	"["+strnpcinfo(1)+"]";
				mes "Agora me diga quantos";
				mes "^FF0000"+getitemname($@l[@sel])+"^000000 você quer.";
				mes "- 0 para Cencelar.";
				next;
					input @qnt;
					if(@qnt == 0) close;
					
					set @cost,$@y[@sel][email protected]<script data-cfhash='f9e31' type="text/javascript">/*  */</script>;

						mes	"["+strnpcinfo(1)+"]";
						mes "^FF0000"[email protected]+"^000000x ^FF0000"+getitemname($@l[@sel])+"^000000";
						mes "São ^FF0000"[email protected]+"^000000x ^FF0000"+getitemname($@id)+"^000000.";
						mes "Deseja realizar a troca?";
						next;
							if(select("Sim:Não") == 2) close;
							
							if(countitem($@id) < @cost){
							mes	"["+strnpcinfo(1)+"]";
							mes "Você não tem ^FF0000"+getitemname($@id)+"^000000";
							mes "suficientes para realizar a troca.";
							close;
							}
						mes	"["+strnpcinfo(1)+"]";
						mes "Está feito...";
						mes "Aqui está seus";
						mes "^FF0000"+getitemname($@l[@sel])+"^000000.";
						close2;
						delitem $@id,@cost;
						getitem $@l[@sel],@qnt;
						end;
			
			case 4:
			mes	"["+strnpcinfo(1)+"]";
			mes "A Devil Square é um evento";
			mes "automático ondes surgem vários";
			mes "monstros e o objetivo dos";
			mes "jogadores é matar todos os monstros.";
			next;
			mes	"["+strnpcinfo(1)+"]";
			mes "O Objetivo final é chegar a última";
			mes "rodada onde surgem as";
			mes "Caixas do Tesouro.";
			next;
			mes	"["+strnpcinfo(1)+"]";
			mes "A cada monstro que você mata";
			mes "você recebe ^FF0000"+getitemname($@id)+"^000000";
			mes "a quantidade é aleatória.";
			mes "As Caixas do Tesouro dão uma";
			mes "quantidade mais alta de ^FF0000"+getitemname($@id)+"^000000.";
			next;
			mes	"["+strnpcinfo(1)+"]";
			mes "Com esses itens você pode trocar";
			mes "aqui mesmo por itens, os itens são";
			mes "configurados pelo Administrador.";
			next;
			mes	"["+strnpcinfo(1)+"]";
			mes "Mas para chegar até a rodada das";
			mes "Caixas do Tesouro você precisar";
			mes "matar muitos monstros, porque";
			mes "somente os 5 jogadores que";
			mes "mais matarem monstros irão";
			mes "chegar a rodada Final.";
			next;
			mes "["+strnpcinfo(1)+"]";
			mes "Os demais serão teletransportados";
			mes "para prontera, os jogadores que";
			mes "continuarem no evento irão correr";
			mes "atrás das Caixas do Tesouro.";
			close;
		}
		
		OnInit:
		// Configurações 
		set $@id,7539; // Id do item que será recebido ao matar os monstros e as caixas do tesouro. Padrão: [7539 = Moeda Poring].
		setarray $@p[0],1,2; // Quantidade de itens que serão sorteados ao matar os monstros. Padrão: [Entre 1 e 2].
		setarray $@b[0],20,30,40,50; // Quantidade de itens que serão sorteados ao destruir as Caixas do Tesouro. Padrão: [Entre 20,30,40 e 50];
		setarray $@l[0],607,608,678,7135,7136,7139; // Id dos itens que poderão ser trocados.
		setarray $@y[0],10,5,8,5,5,6; // Preço dos itens que poderão ser trocados.
		
		waitingroom "Devil Square",0;
		end;
}

ordeal_1-1,182,183,5	script	DS2	-1,{

	OnTimer30000:
	if($status == 0) end;
	if (getmapusers("ordeal_1-1") == 0){ announce "Todos os players foram mortos na Devil Square!!",8; set $status,0; killmonsterall "ordeal_1-1"; end; }
	initnpctimer;
	end;

}

ordeal_1-1,182,183,5	script	DS3	-1,{

		OnClock0300:
		OnClock0700:
		OnClock1100:
		OnClock1500:
		OnClock1900:
		OnClock2300:
		announce "O portal para a Devil Square está aberto, e em [5] minutos ela terá inicio!",8;
		initnpctimer; killmonsterall "ordeal_1-1"; set $aberto,1; disablenpc "DS4"; set $status,1; query_sql "DELETE FROM `devilsquare`"; end;

OnTimer60000:
announce "O portal para a Devil Square está aberto, e em [4] minutos ela terá inicio!",8; end;

OnTimer120000:
announce "O portal para a Devil Square está aberto, e em [3] minutos ela terá inicio!",8; end;

OnTimer180000:
announce "O portal para a Devil Square está aberto, e em [2] minutos ela terá inicio!",8; end;

OnTimer240000:
announce "O portal para a Devil Square está aberto, e em [1] minuto ela terá inicio!",8; end;
OnTimer300000:
announce "A Devil Square começou, boa sorte a todos!",8; initnpctimer "DS2";  set $aberto,0;

set $mobs,20;
areamonster "ordeal_1-1",183,182,246,244,"[DS] Orc Zumbi",1153,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",183,182,246,244,"[DS] Orc Esqueleto",1152,4,"DS3::Ondsdead";
areamonster "ordeal_1-1",205,205,219,219,"[DS] Familiar",1005,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",212,215,222,220,"[DS] Drainliar",1111,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",229,233,183,182,"[DS] Chon Chon de Aço",1042,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",230,246,246,244,"[DS] Zenorc",1177,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",241,252,205,205,"[DS] Orc Arqueiro",1189,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",251,235,222,220,"[DS] Sorrateiro",1037,2,"DS3::Ondsdead";
areamonster "ordeal_1-1",203,204,194,195,"[DS] Lobo",1013,2,"DS3::Ondsdead";
end;

Ondsdead:
if ($status == 0) end;
set $mobs,$mobs-1;
set @premio,rand(getarraysize($@p));
getitem $@id,$@p[@premio];
callfunc "Checador",1;
if($mobs == 10){ mapannounce "ordeal_1-1","Devil Square: Faltam 10 monstros para a 2° rodada!",8; }
if($mobs == 0){ announce "Devil Square: Começou a 2° rodada de monstros!",8; goto Ondsround2; }
end;

Ondsround2:
set $mobs,20;
areamonster "ordeal_1-1",183,182,246,244,"[DS] Esqueleto Soldado",1028,1,"DS3::Ondsdead2";
areamonster "ordeal_1-1",183,182,246,244,"[DS] Esqueleto Soldado",1028,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",205,205,219,219,"[DS] Orc Arqueiro",1189,1,"DS3::Ondsdead2";
areamonster "ordeal_1-1",212,215,222,220,"[DS] Orc Arqueiro",1189,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",229,233,183,182,"[DS] Arenoso",1165,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",230,246,246,244,"[DS] Arenoso",1165,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",241,252,205,205,"[DS] Esqueleto Arqueiro",1016,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",251,235,222,220,"[DS] Esqueleto Arqueiro",1016,1,"DS3::Ondsdead2";
areamonster "ordeal_1-1",203,204,194,195,"[DS] Minorus",1149,1,"DS3::Ondsdead2";
areamonster "ordeal_1-1",251,235,222,220,"[DS] Minorus",1149,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",210,208,194,195,"[DS] Réquiem",1164,2,"DS3::Ondsdead2";
areamonster "ordeal_1-1",203,204,194,195,"[DS] Réquiem",1164,2,"DS3::Ondsdead2";
end;

Ondsdead2:
if ($status == 0) end;
set $mobs,$mobs-1;
set @premio,rand(getarraysize($@p));
getitem $@id,$@p[@premio];
callfunc "Checador",1;
if($mobs == 10){ mapannounce "ordeal_1-1","Devil Square: Faltam 10 monstros para 3° rodada!",8; }
if($mobs == 0){ announce "Devil Square: Começou a 3° rodada de monstros!",8; goto Ondsround3; }
end;

Ondsround3:
set $mobs,20;
areamonster "ordeal_1-1",183,182,246,244,"[DS] Diabinho",1292,2,"DS3::Ondsdead3";
areamonster "ordeal_1-1",183,182,246,244,"[DS] Diabinho",1292,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",205,205,219,219,"[DS] Leib Olmai",1306,2,"DS3::Ondsdead3";
areamonster "ordeal_1-1",212,215,222,220,"[DS] Leib Olmai",1306,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",229,233,183,182,"[DS] Gullinbursti",1311,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",230,246,246,244,"[DS] Gullinbursti",1311,2,"DS3::Ondsdead3";
areamonster "ordeal_1-1",241,252,205,205,"[DS] Gullinbursti",1311,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",251,235,222,220,"[DS] Serial Killer",1507,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",203,204,194,195,"[DS] Serial Killer",1507,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",251,235,222,220,"[DS] Serial Killer",1507,2,"DS3::Ondsdead3";
areamonster "ordeal_1-1",210,208,194,195,"[DS] Esqueleto General",1290,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",203,204,194,195,"[DS] Esqueleto General",1290,2,"DS3::Ondsdead3";
areamonster "ordeal_1-1",251,235,222,220,"[DS] Gato de Nove Caudas",1307,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",230,246,246,244,"[DS] Senhor dos Orcs",1190,1,"DS3::Ondsdead3";
areamonster "ordeal_1-1",212,215,222,220,"[DS] Orc Héroi",1087,1,"DS3::Ondsdead3";
end;

Ondsdead3:
if ($status == 0) end;
set $mobs,$mobs-1;
set @premio,rand(getarraysize($@p));
getitem $@id,$@p[@premio];
callfunc "Checador",1;
if($mobs == 10){ mapannounce "ordeal_1-1","Devil Square: Faltam 10 monstros para 4° rodada!",8; }
if($mobs == 0){ announce "Devil Square: Começou a 4° rodada de monstros!",8; goto Ondsround4; }
end;

Ondsround4:
set $mobs,17;
areamonster "ordeal_1-1",190,189,190,189,"[DS] Seyren Windsor",1634,1,"DS3::Ondsdead4";
areamonster "ordeal_1-1",207,207,207,207,"[DS] Eremes Guile",1635,4,"DS3::Ondsdead4";
areamonster "ordeal_1-1",217,217,217,217,"[DS] Howard Alt-Eisen",1636,5,"DS3::Ondsdead4";
areamonster "ordeal_1-1",227,226,227,226,"[DS] Margaretha Sorin",1637,4,"DS3::Ondsdead4";
areamonster "ordeal_1-1",241,241,241,241,"[DS] Kathryne Keyron",1639,1,"DS3::Ondsdead4";
areamonster "ordeal_1-1",241,241,241,241,"[DS] Atroce",1785,1,"DS3::Ondsdead4";
areamonster "ordeal_1-1",241,241,241,241,"[DS] Dragão Mutante",1262,1,"DS3::Ondsdead4";
end;

Ondsdead4:
if ($status == 0) end;
set $mobs,$mobs-1;
set $@premio,rand(getarraysize($@p));
getitem $@id,$@p[$@premio];
callfunc "Checador",1;
if($mobs == 5){ mapannounce "ordeal_1-1","Devil Square: Faltam 5 monstros para 5° rodada!",8; }
if($mobs == 0){ announce "Devil Square: Começou a 5° rodada de monstros!",8; goto Ondsround5; }
end;

Ondsround5:
set $mobs,10;
areamonster "ordeal_1-1",233,246,233,246,"[DS] Salamandra",1831,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",246,245,246,245,"[DS] Amon-Rá",1511,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",189,188,189,188,"[DS] Doppelganger",1046,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",236,236,236,236,"[DS] Guardião Espadachim",1829,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",196,195,196,195,"[DS] Senhor das Trevas",1272,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",206,205,206,205,"[DS] Kasa",1833,1,"DS3::Ondsdead5";;
areamonster "ordeal_1-1",213,213,213,213,"[DS] Faraó",1157,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",183,182,246,244,"[DS] Bafomé",1039,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",224,223,224,223,"[DS] Kasa",1833,1,"DS3::Ondsdead5";
areamonster "ordeal_1-1",243,232,243,232,"[DS] Guardião Arqueiro",1830,1,"DS3::Ondsdead5";
end;

Ondsdead5:
if ($status == 0) end;
set $mobs,$mobs-1;
set @premio,rand(getarraysize($@p));
getitem $@id,$@p[@premio];
callfunc "Checador",1;
if($mobs == 5){ announce "Devil Square: Faltam 5 monstros para as Caixas do Tesouro surgirem!",8; }
if($mobs == 0){ announce "Devil Square: 8 Caixas do Tesouros surgiram! Corram para destruir-las...",8; goto Ondsbox; }
end;

Ondsbox:
enablenpc "DS4";
sleep2 7000;
set $mobs,8;
monster "ordeal_1-1",245,245,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",54,54,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",149,26,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",245,52,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",273,150,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",150,273,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",54,245,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
monster "ordeal_1-1",27,150,"Caixa do Tesouro",1798,1,"DS3::Ondsboxdead";
end;

Ondsboxdead:
if ($status == 0) end;
set $mobs,$mobs-1;
announce "Devil Square: O jogador [ "+ strcharinfo(0)+" ] abriu uma das Caixas do Tesouro.",8;
set @premio,rand(getarraysize($@);
getitem $@id,$@b[@premio];
if($mobs == 0){ announce "Devil Square: A última Caixa do Tesouro foi destruída!",8;
announce "Devil Square: Obrigado a todos que participaram.",8; set $status,0; disablenpc "DS4";
mapwarp "ordeal_1-1","prontera",156,177;
query_sql "DELETE FROM `devilsquare`";
end;
}
function    script    Checador    {

if(getarg(0) == 1){
set @nome$,"";

query_sql "SELECT `nome` FROM `devilsquare` WHERE `id_usuario`="+getcharid(0)+"",@nome$;

    if (@nome$ == ""){
    query_sql "INSERT INTO `devilsquare` (`id_usuario`,`nome`,`id_acc`,`pontos`) VALUES ("+getcharid(0)+",'"+strcharinfo(0)+"','"+getcharid(3)+"',1)";    
    return;
    }
    query_sql "UPDATE `devilsquare` SET `pontos` = `pontos` +1 WHERE `id_usuario`="+getcharid(0)+"";
    return;
    }
}
ordeal_1-1,210,211,1    script    DS4    -1,5000,5000,{

OnTouch:

query_sql "SELECT nome,pontos FROM devilsquare ORDER BY pontos DESC LIMIT 5",@nome$,@pontos;

    for(set @i,0; @i < 5; set @i,@i+1)
    if(@nome$[@i] == strcharinfo(0)){
    mapwarp "ordeal_1-1","ordeal_1-1",150,150;
    pcblockmove getcharid(3),1;
    sleep2 2000;
    Announce "Devil Square: Parabéns, você matou muitos monstros, agora tem que ir atrás das Caixas do Tesouro.",bc_self;
    pcblockmove getcharid(3),0;
    end;
    }
    warp "prontera",156,177;
    dispbottom "A Devil Square chegou ao fim para você, obrigado por participar.";
    end;
}
	
// MapFlags ~
ordeal_1-1	mapflag	nowarp
ordeal_1-1	mapflag	nowarpto
ordeal_1-1	mapflag	noteleport
ordeal_1-1	mapflag	nosave	SavePoint
ordeal_1-1	mapflag	nomemo
ordeal_1-1	mapflag	nobranch
ordeal_1-1	mapflag	nopenalty
ordeal_1-1	mapflag	pvp	off

 

Share this post


Link to post
Share on other sites

3 answers to this question

Recommended Posts

  • 0

algum erro no console?

A única coisa que aparece é isso:

[Warning]: npc_parseview: Use of numeric NPC view IDs is deprecated and may be removed in a future update. Please use NPC view constants instead. ID '-1' specified in file 'npc/custom/devilsquare.txt', line '176'.

Eu reparei que não está sendo criado no mapreg as tabelas $status e $aberto.

Edited by JulioCF

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.