[Ajuda] Map icon da casa e propiedade some '-' !
#1

Olб pessoal tipo eu crio uma casa o map icon fica certo la , dai eu crio outra casa o map icon da anterior some desaparece como faзo para arrumar isso por favor preciso arrumar muito isso se puderem em ajudar , obrigado !
Reply
#2

Posta o comando de criar casa.
Reply
#3

/criarcasa

Код:
if(strcmp(cmd, "/criarcasa", true) == 0)
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
if(pAdmin[playerid] == 5 || IsPlayerAdmin(playerid))
{
new tmp[256];
new preco, int;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, Vermelho, "/criarcasa [preзo] [interiorID]");
return 1;
}
preco = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, Vermelho, "/criarcasa [preзo] [interiorID]");
return 1;
}
int = strval(tmp);
format(string, sizeof(string), "/Casas/casa%d.ini", proximacasa);
if(!dini_Exists(string))
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerMapIcon( playerid, 12, x, y, z, 31, 0, MAPICON_LOCAL );
dini_Create(string);
dini_FloatSet(string, "PosX", X);
dini_FloatSet(string, "PosY", Y);
dini_FloatSet(string, "PosZ", Z);
dini_IntSet(string, "Int", int);
dini_IntSet(string, "Mundo", proximacasa);
dini_IntSet(string, "TDono", 0);
dini_Set(string, "Dono", "Ninguem");
dini_IntSet(string, "Preco", preco);
dini_IntSet(string, "Trancada", 0);
dini_IntSet(string, "TMorador", 0);
dini_Set(string, "Morador", "Ninguem");
new pickupid;
pickupid = CreatePickup(1273, 1, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), -1);
dini_IntSet(string, "Id", pickupid);
proximacasa++;
}
}
return 1;
}
/comprarcasa
Код:
if(strcmp(cmdtext, "/comprarcasa", true) == 0)
{
for(new c = 0; c < MAX_CASAS; c++)
{
format(string, sizeof(string), "/Casas/casa%d.ini", c);
if(dini_Exists(string))
{
if(IsPlayerInRangeOfPoint(playerid, 6.0, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ")))
{
if(dini_Int(string, "TDono") == 0)
{
if(GetPlayerGrana(playerid) >= dini_Int(string, "Preco"))
{
if(GetCasas(playerid) < 1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerMapIcon( playerid, 12, x, y, z, 32, 0, MAPICON_LOCAL );
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
dini_IntSet(string, "TDono", 1);
dini_Set(string, "Dono", pname);
GivePlayerGrana(playerid, -dini_Int(string, "Preco"));
new pickupid;
DestroyPickup(dini_Int(string, "Id"));
pickupid = CreatePickup(1272, 1, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), -1);
dini_IntSet(string, "Id", pickupid);
OnPlayerCommandText(playerid, "/nascercasa");
}
else
{
SendClientMessage(playerid, Vermelho, "(ERRO) Vocк sу pode ter uma casa!");
}
}
else
{
SendClientMessage(playerid, Vermelho, "(ERRO) Vocк nгo tem dinheiro!");
}
}
else
{
SendClientMessage(playerid, Vermelho, "(ERRO) Esta casa nгo estб a venda!");
}
}
else
{
}
}
}
return 1;
}
/vendercasa

Код:
if(strcmp(cmdtext, "/vendercasa", true) == 0)
	{
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(file, sizeof(file), PASTA_CONTAS, pname);
    for(new c = 0; c < MAX_CASAS; c++)
    {
    format(string, sizeof(string), "/Casas/casa%d.ini", c);
    if(dini_Exists(string))
	{
    if(IsPlayerInRangeOfPoint(playerid, 6.0, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ")))
	{
    if(dini_Int(string, "TDono") == 1)
	{
    if(strcmp(dini_Get(string, "Dono"), pname, true) == 0 || pAdmin[playerid] == 5 || IsPlayerAdmin(playerid))
	{
    if(strcmp(dini_Get(string, "Dono"), pname, true) == 0)
	{
    dini_FloatSet(file,"CasaX",Float:1410.5046);
    dini_FloatSet(file,"CasaY",Float:-1789.7197);
    dini_FloatSet(file,"CasaZ",Float:13.8285);
    }
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    SetPlayerMapIcon( playerid, 12, x, y, z, 31, 0, MAPICON_LOCAL );
    dini_IntSet(string, "TDono", 0);
    dini_Set(string, "Dono", "Ninguem");
    GivePlayerGrana(playerid, dini_Int(string, "Preco"));
    new pickupid;
    DestroyPickup(dini_Int(string, "Id"));
    pickupid = CreatePickup(1273, 1, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), -1);
    dini_IntSet(string, "Id", pickupid);
    }
	else
	{
    SendClientMessage(playerid, Vermelho, "(ERRO) Esta casa nгo й sua.");
    }
    }
	else
	{
    SendClientMessage(playerid, Vermelho, "(ERRO) Esta casa jб estб a venda !");
    }
    }
	else
	{
    SendClientMessage(playerid, Vermelho, "[INFO] Vocк nгo estб em uma casa.");
    }
    }
    }
    return 1;
    }
Reply
#4

Ae o Codigo
Reply
#5

Cуdigo pronto abaixo:

PHP код:

#include <a_samp>
#include <streamer>
new mapiconcasaid[MAX_CASAS];
public 
OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmd"/criarcasa"true) == 0)
    {
        new 
pname[MAX_PLAYER_NAME];
        
GetPlayerName(playeridpnamesizeof(pname));
        if(
pAdmin[playerid] == || IsPlayerAdmin(playerid))
        {
            new 
tmp[256];
            new 
precoint;
            
tmp strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridVermelho"/criarcasa [preзo] [interiorID]");
                return 
1;
            }
            
preco strval(tmp);
            
tmp strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridVermelho"/criarcasa [preзo] [interiorID]");
                return 
1;
            }
            
int strval(tmp);
            
format(stringsizeof(string), "/Casas/casa%d.ini"proximacasa);
            if(!
dini_Exists(string))
            {
                new 
Float:XFloat:YFloat:Z;
                
GetPlayerPos(playeridXYZ);
                new 
Float:xFloat:yFloat:z;
                
GetPlayerPos(playeridxyz);
                
mapiconcasaid ] = CreateDynamicMapIcon(z31, -1, -1, -1, -160.0);
                
dini_Create(string);
                
dini_FloatSet(string"PosX"X);
                
dini_FloatSet(string"PosY"Y);
                
dini_FloatSet(string"PosZ"Z);
                
dini_IntSet(string"Int"int);
                
dini_IntSet(string"Mundo"proximacasa);
                
dini_IntSet(string"TDono"0);
                
dini_Set(string"Dono""Ninguem");
                
dini_IntSet(string"Preco"preco);
                
dini_IntSet(string"Trancada"0);
                
dini_IntSet(string"TMorador"0);
                
dini_Set(string"Morador""Ninguem");
                new 
pickupid;
                
pickupid CreatePickup(12731dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ"), -1);
                
dini_IntSet(string"Id"pickupid);
                
proximacasa++;
            }
        }
        return 
1;
    }
    if(
strcmp(cmdtext"/comprarcasa"true) == 0)
    {
        for(new 
0MAX_CASASc++)
        {
            
format(stringsizeof(string), "/Casas/casa%d.ini"c);
            if(
dini_Exists(string))
            {
                if(
IsPlayerInRangeOfPoint(playerid6.0dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ")))
                {
                    if(
dini_Int(string"TDono") == 0)
                    {
                        if(
GetPlayerGrana(playerid) >= dini_Int(string"Preco"))
                        {
                            if(
GetCasas(playerid) < 1)
                            {
                                new 
Float:xFloat:yFloat:z;
                                
GetPlayerPos(playeridxyz);
                                
mapiconcasaid ] = CreateDynamicMapIcon(z32, -1, -1, -1, -160.0);
                                new 
pname[MAX_PLAYER_NAME];
                                
GetPlayerName(playeridpnamesizeof(pname));
                                
dini_IntSet(string"TDono"1);
                                
dini_Set(string"Dono"pname);
                                
GivePlayerGrana(playerid, -dini_Int(string"Preco"));
                                new 
pickupid;
                                
DestroyPickup(dini_Int(string"Id"));
                                
pickupid CreatePickup(12721dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ"), -1);
                                
dini_IntSet(string"Id"pickupid);
                                
OnPlayerCommandText(playerid"/nascercasa");
                            }
                            else
                            {
                                
SendClientMessage(playeridVermelho"(ERRO) Vocк sу pode ter uma casa!");
                            }
                        }
                        else
                        {
                            
SendClientMessage(playeridVermelho"(ERRO) Vocк nгo tem dinheiro!");
                        }
                    }
                    else
                    {
                        
SendClientMessage(playeridVermelho"(ERRO) Esta casa nгo estб a venda!");
                    }
                }
                else
                {
                }
            }
        }
        return 
1;
    }
    if(
strcmp(cmdtext"/vendercasa"true) == 0)
    {
        new 
pname[MAX_PLAYER_NAME];
        
GetPlayerName(playeridpnamesizeof(pname));
        
format(filesizeof(file), PASTA_CONTASpname);
        for(new 
0MAX_CASASc++)
        {
            
format(stringsizeof(string), "/Casas/casa%d.ini"c);
            if(
dini_Exists(string))
            {
                if(
IsPlayerInRangeOfPoint(playerid6.0dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ")))
                {
                    if(
dini_Int(string"TDono") == 1)
                    {
                        if(
strcmp(dini_Get(string"Dono"), pnametrue) == || pAdmin[playerid] == || IsPlayerAdmin(playerid))
                        {
                            if(
strcmp(dini_Get(string"Dono"), pnametrue) == 0)
                            {
                                
dini_FloatSet(file,"CasaX",Float:1410.5046);
                                
dini_FloatSet(file,"CasaY",Float:-1789.7197);
                                
dini_FloatSet(file,"CasaZ",Float:13.8285);
                            }
                            new 
Float:xFloat:yFloat:z;
                            
GetPlayerPos(playeridxyz);
                            for( new 
0<GetMaxPlayers( ) ; i++ )
                            {
                                
RemovePlayerMapIcon(imapiconcasaid ] );
                            }
                            
mapiconcasaid ] = CreateDynamicMapIcon(z31, -1, -1, -1, -160.0);
                            
dini_IntSet(string"TDono"0);
                            
dini_Set(string"Dono""Ninguem");
                            
GivePlayerGrana(playeriddini_Int(string"Preco"));
                            new 
pickupid;
                            
DestroyPickup(dini_Int(string"Id"));
                            
pickupid CreatePickup(12731dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ"), -1);
                            
dini_IntSet(string"Id"pickupid);
                        }
                        else
                        {
                            
SendClientMessage(playeridVermelho"(ERRO) Esta casa nгo й sua.");
                        }
                    }
                    else
                    {
                        
SendClientMessage(playeridVermelho"(ERRO) Esta casa jб estб a venda !");
                    }
                }
                else
                {
                    
SendClientMessage(playeridVermelho"[INFO] Vocк nгo estб em uma casa.");
                }
            }
        }
        return 
1;
    }
    return 
0;

Os Cуdigos abaixo irei dar um exemplo para vocк colocar no carregamento das casas quando vocк liga seu GM.

PHP код:

    
for( new 0MAX_CASASc++ )
    {
        new 
string 255 ], string1 255 ];
        
formatstringsizeof( string ) , "/Casas/casa%d.ini") ;
        if( 
dini_Exists( string ) )
        {
            if( 
dini_Intstring"TDono" )  == )  /*-- Casa sem Dono --*/
            
{
                
mapiconcasaid ] = CreateDynamicMapIcon(dini_Floatstring"PosX" ) , dini_Floatstring"PosY" ) , dini_Floatstring"PosZ" ), 31, -1, -1, -1, -160.0);
            }
            else
            {
                if( 
dini_Intstring"TDono" )  == /*-- Casa com Dono --*/
                
{
                    
mapiconcasaid ] = CreateDynamicMapIcon(dini_Floatstring"PosX" ) , dini_Floatstring"PosY" ) , dini_Floatstring"PosZ" ), 32, -1, -1, -1, -160.0);
                }
            }
        }
    } 
Download include streamer: Clique Aqui

Ajudei? + Rep
Reply
#6

surgiu um probleminha =/ , eu coloquei tudo certo no meu gm , mas na horad e compilar pawno para de funciona da =/ oque serб que й ?
Reply
#7

Verifica as chaves se estгo fechadas certinho, porйm pelo oque eu percebi seu GM ( GameMode ) Nгo й identado.

Ou seja й tudo bagunзado, de uma arrumada nos comandos.

Em GM ( GameMode ) identado й o melhor lugar para se programar.
Reply
#8

AA eu consegui agora deu certo eu nгo prestei atenзгo , muito o brigado por me ajudar , tambem ja consegui o da propiedade vlw mesmo cara
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)