Bom criei um comando /recriar balгo no caso ele deleta o balгo que ele tinha criado antes e cria um novo na posiзгo dele, e se ele nгo tivesse criado um antes ia criar um normal na posiзгo dele, porйm ele deleta o ultimo a ser criado(por qualquer player) e cria um novo na posiзгo dele.
pawn Код:
YCMD:recriarbalao(playerid, params[], help)
{
if(Usuario[playerid][Balao] == 0)
{
SendClientMessage(playerid, COR_VERMELHO, "| ERRO | Vocк nгo tem um balгo!");
return 1;
}
new tipo;
if(sscanf(params, "d", tipo))
{
SendClientMessage(playerid, COR_CORRIGIR, "Use: /recriarbalao [tipo (0 - 6)]");
return 1;
}
if(tipo < 0 || tipo > 6)
{
SendClientMessage(playerid, COR_VERMELHO, "| ERRO | O tipo de balгo deve ser de 0 a 6!");
return 1;
}
new achobalao = 0, idx;
for(new i = 0; i < MAX_BALAO; ++i)
{
if(!strcmp(GetName(playerid), bBalao[i][Proprietario], true))
{
achobalao = 1;
idx = i;
}
}
if(achobalao == 1)
{
DestroyObject(ObjectBalao[idx]);
new Float:px, Float:py, Float:pz;
GetPlayerPos(playerid, px, py, pz);
SetPlayerPos(playerid, px, py, pz+1.0);
MapAndreas_FindZ_For2DCoord(px, py, pz);
SendClientMessage(playerid, COR_BRANCO, "| INFO | Balгo de Ar recriado com sucesso!");
if(tipo == 0){ObjectBalao[idx] = CreateObject(19334, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 1){ObjectBalao[idx] = CreateObject(19333, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 2){ObjectBalao[idx] = CreateObject(19332, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 3){ObjectBalao[idx] = CreateObject(19337, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 4){ObjectBalao[idx] = CreateObject(19336, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 5){ObjectBalao[idx] = CreateObject(19335, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 6){ObjectBalao[idx] = CreateObject(19338, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
new query[1024];
format(query, sizeof(query), "UPDATE `baloes` SET `tipo`='%d',`x`='%f',`y`='%f',`z`='%f',`rotx`='%f',`roty`='%f',`rotz`='%f' WHERE `id`='%d'",tipo,px,py,pz,0.0,0.0,0.0,idx);
mysql_function_query(sqlconnect, query, false, "", "");
}
if(achobalao == 0)
{
new Float:px, Float:py, Float:pz;
GetPlayerPos(playerid, px, py, pz);
SetPlayerPos(playerid, px, py, pz+1.0);
MapAndreas_FindZ_For2DCoord(px, py, pz);
SendClientMessage(playerid, COR_BRANCO, "| INFO | Balгo de Ar criado com sucesso!");
if(tipo == 0){ObjectBalao[TotalBalao] = CreateObject(19334, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 1){ObjectBalao[TotalBalao] = CreateObject(19333, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 2){ObjectBalao[TotalBalao] = CreateObject(19332, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 3){ObjectBalao[TotalBalao] = CreateObject(19337, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 4){ObjectBalao[TotalBalao] = CreateObject(19336, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 5){ObjectBalao[TotalBalao] = CreateObject(19335, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
if(tipo == 6){ObjectBalao[TotalBalao] = CreateObject(19338, px, py, pz, 0.0, 0.0, 0.0, 0.0);}
format(bBalao[TotalBalao][Proprietario], 24, GetName(playerid));
bBalao[TotalBalao][IDBalao] = TotalBalao;
bBalao[TotalBalao][BTipo] = tipo;
bBalao[TotalBalao][bX] = px;
bBalao[TotalBalao][bY] = py;
bBalao[TotalBalao][bZ] = pz;
bBalao[TotalBalao][bRotX] = 0.0;
bBalao[TotalBalao][bRotY] = 0.0;
bBalao[TotalBalao][bRotZ] = 0.0;
new query[1024];
format(query, sizeof(query), "INSERT INTO `baloes`(`proprietario`,`id`,`tipo`,`x`,`y`,`z`,`rotx`,`roty`,`rotz`) VALUES ('%s','%d','%d','%f','%f','%f','%f','%f','%f')",GetName(playerid),TotalBalao,tipo,px,py,pz,0.0,0.0,0.0);
mysql_function_query(sqlconnect, query, false, "", "");
TotalBalao++;
}
return 1;
}