[Ajuda] comando /pegarkit e /droparkit bugado
#1

Preciso de ajuda nestes comandos:
PHP Code:
CMD:pegarkit(playerid)
{
    for(new 
0<MAX_PLAYERSi++)
    {
        if(
IsPlayerInRangeOfObject(ikit[i], 5.0))
        {
            new 
string2[200];
            
format(string2sizeof(string2), "%s pegou um Kit medico do chao."nome(playerid));
            
ProxDetector(10.0playeridstring2, -1, -1, -1, -1, -1);
            
DestroyObject(kit[playerid]);
            
SendClientMessage(playeridVermelho"Voce pegou um Kit medico dropado no chao!");
            
Pinfo[playerid][KitM] += 1;
            return 
1;
        }
        else
        {
            
SendClientMessage(playeridVermelho"Nenhum MedKit aqui!");
            return 
1;
        }
    }
    return 
1;

PHP Code:
CMD:droparkit(playerid)
{
    if(
Pinfo[playerid][KitM] == 0)
    {
        
SendClientMessage(playeridVermelho"Voce nao tem MedKits!");
        return 
1;
    }
    else
    {
        new 
FloatXFloatYFloatZ;
        
GetPlayerPos(playeridXYZ);
        
kit[playerid] = CreateObject(1241,X,Y,Z-1,0.0,0.0,0.0,300.0);
        
Pinfo[playerid][KitM] -=1;
        new 
string2[200];
         
format(string2sizeof(string2), "%s dropou um Kit medico."nome(playerid));
         
ProxDetector(10.0playeridstring2, -1, -1, -1, -1, -1);
        
SendClientMessage(playeridVermelho"Voce dropou um Kit no Chao!");
        return 
1;
    }

O jogador nao pega o kit, so diz "Nenhum medkit aqui" mesmo com ele dropado
Reply
#2

retira o loop e muda para:
PHP Code:
  if(IsPlayerInRangeOfObject(playeridkit[playerid], 5.0)) 
Reply
#3

Coloquei Playerid em IsPlayerInRangeOfObject, vк se funciona
PHP Code:
CMD:pegarkit(playerid)
{
    for(new 
0<MAX_PLAYERSi++)
    {
        if(
IsPlayerInRangeOfObject(playeridkit[i], 5.0))
        {
            new 
string2[200];
            
format(string2sizeof(string2), "%s pegou um Kit medico do chao."nome(playerid));
            
ProxDetector(10.0playeridstring2, -1, -1, -1, -1, -1);
            
DestroyObject(kit[playerid]);
            
SendClientMessage(playeridVermelho"Voce pegou um Kit medico dropado no chao!");
            
Pinfo[playerid][KitM] += 1;
            return 
1;
        }
        else
        {
            
SendClientMessage(playeridVermelho"Nenhum MedKit aqui!");
            return 
1;
        }
    }
    return 
1;

Reply
#4

Quote:
Originally Posted by k2bi
View Post
Coloquei Playerid em IsPlayerInRangeOfObject, vк se funciona
PHP Code:
CMD:pegarkit(playerid)
{
    for(new 
0<MAX_PLAYERSi++)
    {
        if(
IsPlayerInRangeOfObject(playeridkit[i], 5.0))
        {
            new 
string2[200];
            
format(string2sizeof(string2), "%s pegou um Kit medico do chao."nome(playerid));
            
ProxDetector(10.0playeridstring2, -1, -1, -1, -1, -1);
            
DestroyObject(kit[playerid]);
            
SendClientMessage(playeridVermelho"Voce pegou um Kit medico dropado no chao!");
            
Pinfo[playerid][KitM] += 1;
            return 
1;
        }
        else
        {
            
SendClientMessage(playeridVermelho"Nenhum MedKit aqui!");
            return 
1;
        }
    }
    return 
1;

Funcionou... mas se alguem dropar o kit ele nao destroi! e se eu colocar : DestroyObject(kit[i]); ele nao vai funcionar se estiver algum outro dropado!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)