  | 
		  | 
	 
	 
	
	
		  | 
		
	
	
	
		| Autor | 
		Mensagem | 
	 
	
		
			kleiton157 
			Usuário 
			 
  
  
			
			
				Registrado: 06/05/11 Mensagens: 1170 Localização: Na cáducarai | 
			 
			  
		 | 
		
			
				| Comando que pegue todos os objetos com nome parecidos. | 
				 | 
			 
			
				Por exemplo, eu tenho aqui este comando:
 
	  | 	 	  | 	if getobjectdistance('Player','mob1') < 2 then
 
writeglobalvar('lifemob1',readglobalvar('lifemob1')-1); | 	  
 
 
Eu queria que ele verificasse todos os mobs de 1 a 6 com essa unica linha de comando? Tem como?
 
 
Eu ví isso no comando Copy(GetCollidedObject2(), 0, 3) que dá pra escolher a quantidade de letras que ele vai ler.. Dá pra fazer no comando acima?
 
 
  _________________ ________________________________________
 
- É nescessário ver além do que os olhos mostram | 
			 
		  | 
	 
	
		| Ter Fev 10, 2015 1:14 pm | 
		  | 
	 
	
		  | 
	 
	
		
			welgomes 
			Usuário 
			 
  
  
			
			
				Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital | 
			 
			  
		 | 
		
			
				 | 
				 | 
			 
			
				No OnLoop do mapa
 
 
Exemplo
 
	  | 	 	  | 	
 
var strMob : String;
 
 
//Contagem de 0 a 2
 
var c : Integer;
 
for c := 0 to 2 do
 
begin
 
    strMob := 'MD2Actor' + IntToStr(c);    
 
    if GetObjectDistance('Player', strMob) < 2 then
 
    begin
 
        SetLabelText('Label0', 'Você está próximo de ' + strMob);    
 
    end; 
 
end;
 
 | 	  
 
 
Eu usei uma instrução for para contar de 0 a 2.
 
Assim a cada iteração gera-se um nome que é guardado na variável strMob
 
Então essa variável terá nomes do tipo: MD2Actor0, MD2Actor1 e MD2Actor2.
 
Com o uso da função GetObjectDistance() saberemos quando o jogador está próximo dos atores MD2Actor0, MD2Actor1 ou MD2Actor2.
 
Então eu escrevo a frase Você está próximo de MD2Actor0, por exemplo.
  | 
			 
		  | 
	 
	
		| Ter Fev 10, 2015 5:12 pm | 
		  | 
	 
	
		  | 
	 
	
		
			welgomes 
			Usuário 
			 
  
  
			
			
				Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital | 
			 
			  
		 | 
		
			
				 | 
				 | 
			 
			
				Um problema que você pode ter ao adaptar para o que você quer é a instrução
 
	  | 	 	  | 	writeglobalvar('lifemob1',readglobalvar('lifemob1')-1); | 	  
 
 
Será executada tão rápida e várias vezes que poderá matar o mob só de se aproximar.
  | 
			 
		  | 
	 
	
		| Ter Fev 10, 2015 5:17 pm | 
		  | 
	 
	
		  | 
	 
	
		
			welgomes 
			Usuário 
			 
  
  
			
			
				Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital | 
			 
			  
		 | 
		
			
				 | 
				 | 
			 
			
				Código mais parecido com seu exemplo
 
 
	  | 	 	  | 	
 
var strMob : String; 
 
var strLifeMob: String;
 
 
//Contagem de 1 a 6
 
var c : Integer; 
 
for c := 1 to 6 do 
 
begin 
 
    strMob := 'mob' + IntToStr(c);
 
    strLifeMob := 'life' + strMob;
 
    if GetObjectDistance('Player', strMob) < 2 then 
 
    begin 
 
        SetLabelText('Label0', 'Você está próximo de ' + strMob);
 
        writeglobalvar(strLifeMob, readglobalvar(strLifeMob)-1);
 
    end; 
 
end;
 
 | 	 
 
 
 
  | 
			 
		  | 
	 
	
		| Ter Fev 10, 2015 5:23 pm | 
		  | 
	 
	
		  | 
	 
	
		
			kleiton157 
			Usuário 
			 
  
  
			
			
				Registrado: 06/05/11 Mensagens: 1170 Localização: Na cáducarai | 
			 
			  
		 | 
		
			
				 | 
				 | 
			 
			
				Cara, serviu perfeitamente, como uma luva...
 
 
a questão do life descer muito rápido era a intenção mesmo
 
 
Obrigado  
 
 
  _________________ ________________________________________
 
- É nescessário ver além do que os olhos mostram | 
			 
		  | 
	 
	
		| Qua Fev 11, 2015 12:39 pm | 
		  | 
	 
	
		  | 
	 
	
		 | 
	 
 
		 | 
		  | 
	 
	 
	
	
		  | 
		  | 
	 
	 
	 |