[Ajuda] Sistema de casas
#1

Gente, estou tendo boa evoluзгo com meu sistema de casas, mas estou tendo 2 erros que nгo consigo resolver.
O primeiro й nessa linha

Код:
Create3DTextLabel(str, -1, HInfo[i][hIcone[0], HInfo[i][hIcone[1], HInfo[i][hIcone[2], 10);
erro:

Код:
C:\Users\Lucas\Desktop\samp037_svr_R2-1-1_win32\gamemodes\gm.pwn(51) : error 028: invalid subscript (not an array or too many subscripts): "hIcone"
C:\Users\Lucas\Desktop\samp037_svr_R2-1-1_win32\gamemodes\gm.pwn(51) : warning 215: expression has no effect
C:\Users\Lucas\Desktop\samp037_svr_R2-1-1_win32\gamemodes\gm.pwn(51) : error 001: expected token: ";", but found "]"
C:\Users\Lucas\Desktop\samp037_svr_R2-1-1_win32\gamemodes\gm.pwn(51) : error 029: invalid expression, assumed zero
C:\Users\Lucas\Desktop\samp037_svr_R2-1-1_win32\gamemodes\gm.pwn(51) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase

4 Errors.
o segundo nessa linha

Код:
    HInfo[casaid][hDono] = DOF2_GetString(arquivo_casa, "Dono");
erro :

Код:
C:\Users\Lucas\Desktop\samp037_svr_R2-1-1_win32\gamemodes\gm.pwn(148) : error 047: array sizes do not match, or destination array is too small
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


1 Error.
cуdigo todo ( sistema de casas )

Код:
#include < a_samp >
#include < sscanf >
#include < dof2 >
#include < zcmd >

#define MAX_HOUSES 100


enum InfoH
{
	hID,
	Float:hIcone[3],
	hPreco,
	hDono[25],

	hCofre,
	hAluguel,
	hCarro,
	Float:hCarroPos[3],
	hInterior,
 	Text3D:hText,
 	hPickUp
}


new HInfo[MAX_HOUSES][InfoH];
new arquivo_casa[120];

main(){	print("Sistema de casas");}

public OnGameModeInit()
{
	UsePlayerPedAnims();
	DisableInteriorEnterExits();
	SetGameModeText("HOUSE SCRIPT");
	AddPlayerClass(23, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
		Carregar_Casa(i);
 	}
	
	// Criaзгo de casas automбticamente com erro [..]
/*
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
        if(!DOF2_FileExists(arquivo_casa[i]))
        {
            new str[120];
            format(str, sizeof(str), "Casa %d\nDono %s\nAluguel %d", HInfo[i][hID], HInfo[i][hDono], HInfo[i][hAluguel]);
        	Create3DTextLabel(str, -1, HInfo[i][hIcone[0], HInfo[i][hIcone[1], HInfo[i][hIcone[2], 10);
       	 	HInfo[i][hPickUp] = CreatePickup(1273, 2, HInfo[i][hIcone[0], HInfo[i][hIcone[1], HInfo[i][hIcone[2], -1);
        }
    }*/
	return 1;
}

public OnGameModeExit()
{
    DOF2_Exit();
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SpawnPlayer(playerid);
	return 1;
}

public OnPlayerConnect(playerid)
{
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
		Salvar_Casa(i);
 	}
	return 1;
}

public OnPlayerSpawn(playerid)
{
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
	return 1;
}

CMD:criarcasa(playerid, params[])
{
	if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Vocк nгo tem permisгo para usar este comando!");

	new id, intr, preco;
	if(sscanf(params, "ddd", id, intr, preco)) return SendClientMessage(playerid, -1, "/criarcasa id interior preco");

	new Float:Pos[3];
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);

	HInfo[id][hInterior] = intr;
	HInfo[id][hID] = id;
	HInfo[id][hCofre] = 0;
	HInfo[id][hCarro] = 265;
	HInfo[id][hPreco] = preco;
	HInfo[id][hAluguel] = 0;
	HInfo[id][hCarroPos][0] = 0, HInfo[id][hCarroPos][1] = 0, HInfo[id][hCarroPos][2] = 0;

	new str[120];
	format (str, sizeof(str), "O Administrador %s criou uma casa id %d valor: %d", GetNome(playerid), id, preco);
	SendClientMessageToAll(-1, str);

	HInfo[id][hIcone][0] = Pos[0], HInfo[id][hIcone][1] = Pos[1], HInfo[id][hIcone][2] = Pos[2];
	
	Criar_Casa(id); // Isso aqui irб funcionar ?
	return 1;
}

Criar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

    DOF2_SetString(arquivo_casa, "Dono", "Ninguйm");
    DOF2_SetInt(arquivo_casa, "ID", HInfo[casaid][hID]);
    DOF2_SetInt(arquivo_casa, "Preco", HInfo[casaid][hPreco]);
    DOF2_SetInt(arquivo_casa, "Aluguel", HInfo[casaid][hAluguel]);
    DOF2_SetInt(arquivo_casa, "Carro", HInfo[casaid][hCarro]);
    DOF2_SetInt(arquivo_casa, "Interior", HInfo[casaid][hInterior]);

    DOF2_SetFloat(arquivo_casa, "Iconex",    HInfo[casaid][hIcone][0]);
    DOF2_SetFloat(arquivo_casa, "Iconey",    HInfo[casaid][hIcone][1]);
    DOF2_SetFloat(arquivo_casa, "Iconez",    HInfo[casaid][hIcone][2]);
    
    DOF2_SetFloat(arquivo_casa, "CarroPosx", HInfo[casaid][hCarroPos][0]);
    DOF2_SetFloat(arquivo_casa, "CarroPosy", HInfo[casaid][hCarroPos][1]);
    DOF2_SetFloat(arquivo_casa, "CarroPosz", HInfo[casaid][hCarroPos][2]);

    DOF2_SaveFile();
}

Carregar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

    HInfo[casaid][hDono] = DOF2_GetString(arquivo_casa, "Dono");
    HInfo[casaid][hID] = DOF2_GetInt(arquivo_casa, "ID");
    HInfo[casaid][hPreco] = DOF2_GetInt(arquivo_casa, "Preco");
    HInfo[casaid][hAluguel] = DOF2_GetInt(arquivo_casa, "Aluguel");
    HInfo[casaid][hCarro] = DOF2_GetInt(arquivo_casa, "Carro");
    HInfo[casaid][hInterior] = DOF2_GetInt(arquivo_casa, "Interior");

    HInfo[casaid][hIcone][0] = DOF2_GetFloat(arquivo_casa, "Iconex");
    HInfo[casaid][hIcone][1] = DOF2_GetFloat(arquivo_casa, "Iconey");
    HInfo[casaid][hIcone][2] = DOF2_GetFloat(arquivo_casa, "Iconez");

    HInfo[casaid][hCarroPos][0] = DOF2_GetFloat(arquivo_casa, "CarroPosx");
    HInfo[casaid][hCarroPos][1] = DOF2_GetFloat(arquivo_casa, "CarroPosy");
    HInfo[casaid][hCarroPos][2] = DOF2_GetFloat(arquivo_casa, "CarroPosz");
    
}

Salvar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

    DOF2_SetInt(arquivo_casa, "Dono", HInfo[casaid][hDono]);
    DOF2_SetInt(arquivo_casa, "ID", HInfo[casaid][hID]);
    DOF2_SetInt(arquivo_casa, "Preco", HInfo[casaid][hPreco]);
    DOF2_SetInt(arquivo_casa, "Aluguel", HInfo[casaid][hAluguel]);
    DOF2_SetInt(arquivo_casa, "Carro", HInfo[casaid][hCarro]);
    DOF2_SetInt(arquivo_casa, "Interior", HInfo[casaid][hInterior]);
    
    DOF2_SetFloat(arquivo_casa, "Iconex", HInfo[casaid][hIcone][0]);
    DOF2_SetFloat(arquivo_casa, "Iconey", HInfo[casaid][hIcone][1]);
    DOF2_SetFloat(arquivo_casa, "Iconez", HInfo[casaid][hIcone][2]);
    
    DOF2_SetFloat(arquivo_casa, "CarroPosx", HInfo[casaid][hCarroPos][0]);
    DOF2_SetFloat(arquivo_casa, "CarroPosy", HInfo[casaid][hCarroPos][1]);
    DOF2_SetFloat(arquivo_casa, "CarroPosz", HInfo[casaid][hCarroPos][2]);
    DOF2_SaveFile();
}

stock GetNome(playerid)
{
    new pNome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pNome, 24);
    return pNome;
}



Sei que estou enchendo o saco, mais por favor ajudem ai ... to sentindo que estou fazendo tudo certo, sу preciso parar de errar com besteiras.

Se vocкs puderem ir postando incrementos para o cуdigo fiquem a vontade !
Help-me
Reply
#2

Vocк esqueceu de fechar o []
PHP код:
Create3DTextLabel(str, -1HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], 10); 
E creio eu que tenha que formatar para aceitar a string.

PHP код:
    format(HInfo[casaid][hDono], sizeof(HInfo[casaid][hDono]), "%s"DOF2_GetString(arquivo_casa"Dono")); 
Reply
#3

@edit

fiz deste modo

Код:
	new txt[120];
	format(txt, sizeof(txt), "%s", DOF2_GetString(arquivo_casa, "Dono"));
	HInfo[casaid][hDono] = txt;
compilou aqui vou testar agora.
Reply
#4

PHP код:
    format(HInfo[casaid][hDono], sizeof(HInfo[casaid][hDono]), "%s"DOF2_GetString(arquivo_casa"Dono")); 
Reply
#5

mano, entrei no meu servidor de testes que й o propio gamemode do sistema de casas. Dei /criarcasa , apareceu a mensagem que eu tinha criado a casa, porйm a pickup e a textdrawn da casa nгo apareceram, muito menos a casa foi criada na pasta casas.

o que hб de errado com o sistema ?

Код:
#include < a_samp >
#include < sscanf >
#include < dof2 >
#include < zcmd >

#define MAX_HOUSES 100


enum InfoH
{
	hID,
	Float:hIcone[3],
	hPreco,
	hDono[120],

	hCofre,
	hAluguel,
	hCarro,
	Float:hCarroPos[3],
	hInterior,
 	Text3D:hText,
 	hPickUp
}


new HInfo[MAX_HOUSES][InfoH];
new arquivo_casa[120];

main(){	print("Sistema de casas");}

public OnGameModeInit()
{
	UsePlayerPedAnims();
	DisableInteriorEnterExits();
	SetGameModeText("HOUSE SCRIPT");
	AddPlayerClass(23, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
		Carregar_Casa(i);
 	}
	
	// Criaзгo de casas automбticamente

 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
        if(!DOF2_FileExists(arquivo_casa[i]))
        {
            new str[120];
            format(str, sizeof(str), "Casa %d\nDono %s\nAluguel %d", HInfo[i][hID], HInfo[i][hDono], HInfo[i][hAluguel]);
        //	Create3DTextLabel(str, -1, HInfo[i][hIcone[0], HInfo[i][hIcone[1], HInfo[i][hIcone[2], 10);
        	Create3DTextLabel(str, -1, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], 40.0, 0, 0);
       	 	HInfo[i][hPickUp] = CreatePickup(1273, 2, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], -1);
        }
    }
	return 1;
}

public OnGameModeExit()
{
    DOF2_Exit();
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SpawnPlayer(playerid);
	return 1;
}

public OnPlayerConnect(playerid)
{
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
        if(!DOF2_FileExists(arquivo_casa[i]))
        {
            new str[120];
            format(str, sizeof(str), "Casa %d\nDono %s\nAluguel %d", HInfo[i][hID], HInfo[i][hDono], HInfo[i][hAluguel]);
        //	Create3DTextLabel(str, -1, HInfo[i][hIcone[0], HInfo[i][hIcone[1], HInfo[i][hIcone[2], 10);
        	Create3DTextLabel(str, -1, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], 40.0, 0, 0);
       	 	HInfo[i][hPickUp] = CreatePickup(1273, 2, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], -1);
        }
    }
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
		Salvar_Casa(i);
 	}
	return 1;
}

public OnPlayerSpawn(playerid)
{
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
	return 1;
}

CMD:criarcasa(playerid, params[])
{
	if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Vocк nгo tem permisгo para usar este comando!");

	new id, intr, preco;
	if(sscanf(params, "ddd", id, intr, preco)) return SendClientMessage(playerid, -1, "/criarcasa id interior preco");

	new Float:Pos[3];
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);

	HInfo[id][hInterior] = intr;
	HInfo[id][hID] = id;
	HInfo[id][hCofre] = 0;
	HInfo[id][hCarro] = 265;
	HInfo[id][hPreco] = preco;
	HInfo[id][hAluguel] = 0;
	HInfo[id][hCarroPos][0] = 0, HInfo[id][hCarroPos][1] = 0, HInfo[id][hCarroPos][2] = 0;

	new str[120];
	format (str, sizeof(str), "O Administrador %s criou uma casa id %d valor: %d", GetNome(playerid), id, preco);
	SendClientMessageToAll(-1, str);

	HInfo[id][hIcone][0] = Pos[0], HInfo[id][hIcone][1] = Pos[1], HInfo[id][hIcone][2] = Pos[2];
	
	Criar_Casa(id); // Isso aqui irб funcionar ?
	return 1;
}

Criar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

    DOF2_SetString(arquivo_casa, "Dono", "Ninguйm");
    DOF2_SetInt(arquivo_casa, "ID", HInfo[casaid][hID]);
    DOF2_SetInt(arquivo_casa, "Preco", HInfo[casaid][hPreco]);
    DOF2_SetInt(arquivo_casa, "Aluguel", HInfo[casaid][hAluguel]);
    DOF2_SetInt(arquivo_casa, "Carro", HInfo[casaid][hCarro]);
    DOF2_SetInt(arquivo_casa, "Interior", HInfo[casaid][hInterior]);

    DOF2_SetFloat(arquivo_casa, "Iconex",    HInfo[casaid][hIcone][0]);
    DOF2_SetFloat(arquivo_casa, "Iconey",    HInfo[casaid][hIcone][1]);
    DOF2_SetFloat(arquivo_casa, "Iconez",    HInfo[casaid][hIcone][2]);
    
    DOF2_SetFloat(arquivo_casa, "CarroPosx", HInfo[casaid][hCarroPos][0]);
    DOF2_SetFloat(arquivo_casa, "CarroPosy", HInfo[casaid][hCarroPos][1]);
    DOF2_SetFloat(arquivo_casa, "CarroPosz", HInfo[casaid][hCarroPos][2]);

    DOF2_SaveFile();
}

Carregar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

	new txt[120];
	format(txt, sizeof(txt), "%s", DOF2_GetString(arquivo_casa, "Dono"));
	HInfo[casaid][hDono] = txt;

//  HInfo[casaid][hDono] = DOF2_GetString(arquivo_casa, "Dono");
//	format(HInfo[casaid][hDono], sizeof(HInfo[casaid][hDono]), "%s", DOF2_GetString(arquivo_casa, "Dono"));
	
    HInfo[casaid][hID] = DOF2_GetInt(arquivo_casa, "ID");
    HInfo[casaid][hPreco] = DOF2_GetInt(arquivo_casa, "Preco");
    HInfo[casaid][hAluguel] = DOF2_GetInt(arquivo_casa, "Aluguel");
    HInfo[casaid][hCarro] = DOF2_GetInt(arquivo_casa, "Carro");
    HInfo[casaid][hInterior] = DOF2_GetInt(arquivo_casa, "Interior");

    HInfo[casaid][hIcone][0] = DOF2_GetFloat(arquivo_casa, "Iconex");
    HInfo[casaid][hIcone][1] = DOF2_GetFloat(arquivo_casa, "Iconey");
    HInfo[casaid][hIcone][2] = DOF2_GetFloat(arquivo_casa, "Iconez");

    HInfo[casaid][hCarroPos][0] = DOF2_GetFloat(arquivo_casa, "CarroPosx");
    HInfo[casaid][hCarroPos][1] = DOF2_GetFloat(arquivo_casa, "CarroPosy");
    HInfo[casaid][hCarroPos][2] = DOF2_GetFloat(arquivo_casa, "CarroPosz");
    
}

Salvar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

    DOF2_SetInt(arquivo_casa, "Dono", HInfo[casaid][hDono]);
    DOF2_SetInt(arquivo_casa, "ID", HInfo[casaid][hID]);
    DOF2_SetInt(arquivo_casa, "Preco", HInfo[casaid][hPreco]);
    DOF2_SetInt(arquivo_casa, "Aluguel", HInfo[casaid][hAluguel]);
    DOF2_SetInt(arquivo_casa, "Carro", HInfo[casaid][hCarro]);
    DOF2_SetInt(arquivo_casa, "Interior", HInfo[casaid][hInterior]);
    
    DOF2_SetFloat(arquivo_casa, "Iconex", HInfo[casaid][hIcone][0]);
    DOF2_SetFloat(arquivo_casa, "Iconey", HInfo[casaid][hIcone][1]);
    DOF2_SetFloat(arquivo_casa, "Iconez", HInfo[casaid][hIcone][2]);
    
    DOF2_SetFloat(arquivo_casa, "CarroPosx", HInfo[casaid][hCarroPos][0]);
    DOF2_SetFloat(arquivo_casa, "CarroPosy", HInfo[casaid][hCarroPos][1]);
    DOF2_SetFloat(arquivo_casa, "CarroPosz", HInfo[casaid][hCarroPos][2]);
    DOF2_SaveFile();
}

stock GetNome(playerid)
{
    new pNome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pNome, 24);
    return pNome;
}
Reply
#6

Quote:
Originally Posted by [BOPE]Seu._.Madruga
Посмотреть сообщение
PHP код:
    format(HInfo[casaid][hDono], sizeof(HInfo[casaid][hDono]), "%s"DOF2_GetString(arquivo_casa"Dono")); 
Assim dб erro.

Do modo que eu fiz nгo dб erro, porйm a casa criada nгo ta sendo salva
Eu acho que o problema ta na stock criar_casa vou ver aqui ...
Reply
#7

@edit

problema de salvamento resolvido.
agora o problema й que as pickups das casas nгo aparecem !
nem os textos 3d.

Код:
#include < a_samp >
#include < sscanf >
#include < dof2 >
#include < zcmd >

#define MAX_HOUSES 100


enum InfoH
{
	hID,
	Float:hIcone[3],
	hPreco,
	hDono[120],

	hCofre,
	hAluguel,
	hCarro,
	Float:hCarroPos[3],
	hInterior,
 	Text3D:hText,
 	hPickUp
}


new HInfo[MAX_HOUSES][InfoH];
new arquivo_casa[120];

main(){	print("Sistema de casas");}

public OnGameModeInit()
{
	UsePlayerPedAnims();
	DisableInteriorEnterExits();
	SetGameModeText("HOUSE SCRIPT");
	AddPlayerClass(23, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
		Carregar_Casa(i);
 	}
	
	// Criaзгo de casas automбticamente
	
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
        if(!DOF2_FileExists(arquivo_casa[i]))
        {
            new str[120];
            format(str, sizeof(str), "Casa %d\nDono %s\nAluguel %d", HInfo[i][hID], HInfo[i][hDono], HInfo[i][hAluguel]);
        	Create3DTextLabel(str, -1, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], 40.0, 0, 0);
       	 	HInfo[i][hPickUp] = CreatePickup(1273, 2, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], -1);
        }
    }
	return 1;
}

public OnGameModeExit()
{
    DOF2_Exit();
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SpawnPlayer(playerid);
	return 1;
}

public OnPlayerConnect(playerid)
{
/*
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
        if(!DOF2_FileExists(arquivo_casa[i]))
        {
            new str[120];
            format(str, sizeof(str), "Casa %d\nDono %s\nAluguel %d", HInfo[i][hID], HInfo[i][hDono], HInfo[i][hAluguel]);
        	Create3DTextLabel(str, -1, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], 40.0, 0, 0);
       	 	HInfo[i][hPickUp] = CreatePickup(1273, 2, HInfo[i][hIcone][0], HInfo[i][hIcone][1], HInfo[i][hIcone][2], -1);
        }
    }
*/
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
 	for(new i = 0; i < MAX_HOUSES; ++i)
    {
		Salvar_Casa(i);
 	}
	return 1;
}

public OnPlayerSpawn(playerid)
{
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
	return 1;
}

CMD:criarcasa(playerid, params[])
{
	if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Vocк nгo tem permisгo para usar este comando!");

	new id, intr, preco;
	if(sscanf(params, "ddd", id, intr, preco)) return SendClientMessage(playerid, -1, "/criarcasa id interior preco");

	new Float:Pos[3];
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);

	HInfo[id][hInterior] = intr;
	HInfo[id][hID] = id;
	HInfo[id][hCofre] = 0;
	HInfo[id][hCarro] = 265;
	HInfo[id][hPreco] = preco;
	HInfo[id][hAluguel] = 0;
	HInfo[id][hCarroPos][0] = 0, HInfo[id][hCarroPos][1] = 0, HInfo[id][hCarroPos][2] = 0;

	new str[120];
	format (str, sizeof(str), "O Administrador %s criou uma casa id %d valor: %d", GetNome(playerid), id, preco);
	SendClientMessageToAll(-1, str);

	HInfo[id][hIcone][0] = Pos[0], HInfo[id][hIcone][1] = Pos[1], HInfo[id][hIcone][2] = Pos[2];
	
	Criar_Casa(id); // Isso aqui irб funcionar ?
	return 1;
}

Criar_Casa(casaid)
{
	format(arquivo_casa, sizeof(arquivo_casa), "casas/casa %d.ini", HInfo[casaid][hID]); // Cria um arquivo com o id da casa
    if(!DOF2_FileExists(arquivo_casa))          // verifica se existe
    {
		new xty[180];
 		format(xty, sizeof(xty), "casa %d", HInfo[casaid][hID]); // se nгo existir cria (ex: casa 1 )

        DOF2_CreateFile(arquivo_casa);                      // cria o arquivo serб isso que faltava ?
    }
    if(DOF2_FileExists(arquivo_casa))          // verifica se existe
    {
	    format(arquivo_casa, sizeof(arquivo_casa), "casas/casa %d.ini", HInfo[casaid][hID]);

	    DOF2_SetString(arquivo_casa, "Dono", "Ninguйm");
	    DOF2_SetInt(arquivo_casa, "ID", HInfo[casaid][hID]);
	    DOF2_SetInt(arquivo_casa, "Preco", HInfo[casaid][hPreco]);
	    DOF2_SetInt(arquivo_casa, "Aluguel", HInfo[casaid][hAluguel]);
	    DOF2_SetInt(arquivo_casa, "Carro", HInfo[casaid][hCarro]);
	    DOF2_SetInt(arquivo_casa, "Interior", HInfo[casaid][hInterior]);

	    DOF2_SetFloat(arquivo_casa, "Iconex",    HInfo[casaid][hIcone][0]);
	    DOF2_SetFloat(arquivo_casa, "Iconey",    HInfo[casaid][hIcone][1]);
	    DOF2_SetFloat(arquivo_casa, "Iconez",    HInfo[casaid][hIcone][2]);

	    DOF2_SetFloat(arquivo_casa, "CarroPosx", HInfo[casaid][hCarroPos][0]);
	    DOF2_SetFloat(arquivo_casa, "CarroPosy", HInfo[casaid][hCarroPos][1]);
	    DOF2_SetFloat(arquivo_casa, "CarroPosz", HInfo[casaid][hCarroPos][2]);

	    DOF2_SaveFile();
	}
}

Carregar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

	new txt[120];
	format(txt, sizeof(txt), "%s", DOF2_GetString(arquivo_casa, "Dono"));
	HInfo[casaid][hDono] = txt;

//  HInfo[casaid][hDono] = DOF2_GetString(arquivo_casa, "Dono");
//	format(HInfo[casaid][hDono], sizeof(HInfo[casaid][hDono]), "%s", DOF2_GetString(arquivo_casa, "Dono"));
	
    HInfo[casaid][hID] = DOF2_GetInt(arquivo_casa, "ID");
    HInfo[casaid][hPreco] = DOF2_GetInt(arquivo_casa, "Preco");
    HInfo[casaid][hAluguel] = DOF2_GetInt(arquivo_casa, "Aluguel");
    HInfo[casaid][hCarro] = DOF2_GetInt(arquivo_casa, "Carro");
    HInfo[casaid][hInterior] = DOF2_GetInt(arquivo_casa, "Interior");

    HInfo[casaid][hIcone][0] = DOF2_GetFloat(arquivo_casa, "Iconex");
    HInfo[casaid][hIcone][1] = DOF2_GetFloat(arquivo_casa, "Iconey");
    HInfo[casaid][hIcone][2] = DOF2_GetFloat(arquivo_casa, "Iconez");

    HInfo[casaid][hCarroPos][0] = DOF2_GetFloat(arquivo_casa, "CarroPosx");
    HInfo[casaid][hCarroPos][1] = DOF2_GetFloat(arquivo_casa, "CarroPosy");
    HInfo[casaid][hCarroPos][2] = DOF2_GetFloat(arquivo_casa, "CarroPosz");
    
}

Salvar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);

    DOF2_SetInt(arquivo_casa, "Dono", HInfo[casaid][hDono]);
    DOF2_SetInt(arquivo_casa, "ID", HInfo[casaid][hID]);
    DOF2_SetInt(arquivo_casa, "Preco", HInfo[casaid][hPreco]);
    DOF2_SetInt(arquivo_casa, "Aluguel", HInfo[casaid][hAluguel]);
    DOF2_SetInt(arquivo_casa, "Carro", HInfo[casaid][hCarro]);
    DOF2_SetInt(arquivo_casa, "Interior", HInfo[casaid][hInterior]);
    
    DOF2_SetFloat(arquivo_casa, "Iconex", HInfo[casaid][hIcone][0]);
    DOF2_SetFloat(arquivo_casa, "Iconey", HInfo[casaid][hIcone][1]);
    DOF2_SetFloat(arquivo_casa, "Iconez", HInfo[casaid][hIcone][2]);
    
    DOF2_SetFloat(arquivo_casa, "CarroPosx", HInfo[casaid][hCarroPos][0]);
    DOF2_SetFloat(arquivo_casa, "CarroPosy", HInfo[casaid][hCarroPos][1]);
    DOF2_SetFloat(arquivo_casa, "CarroPosz", HInfo[casaid][hCarroPos][2]);
    DOF2_SaveFile();
}

stock GetNome(playerid)
{
    new pNome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pNome, 24);
    return pNome;
}
Reply
#8

@UP please, quem me ajudar vou botar os crйditos no sistema.
Reply
#9

PHP код:
format(HInfo[casaid][hDono], 24HInfo[casaid][hDono]), "%s"DOF2_GetString(arquivo_casa"Dono")); 
Reply
#10

Quote:
Originally Posted by [BOPE]Seu._.Madruga
Посмотреть сообщение
PHP код:
format(HInfo[casaid][hDono], 24HInfo[casaid][hDono]), "%s"DOF2_GetString(arquivo_casa"Dono")); 
warning 215: expression has no effect

Код:
Carregar_Casa(casaid)
{
    format(arquivo_casa, sizeof(arquivo_casa), "casas/%d.ini", HInfo[casaid][hID]);
/*
	new txt[120];
	format(txt, sizeof(txt), "%s", DOF2_GetString(arquivo_casa, "Dono")); // deste modo compila 
	HInfo[casaid][hDono] = txt;
*/
	format(HInfo[casaid][hDono], 24, HInfo[casaid][hDono]), "%s", DOF2_GetString(arquivo_casa, "Dono"); // aqui da warning
	
    HInfo[casaid][hID] = DOF2_GetInt(arquivo_casa, "ID");
    HInfo[casaid][hPreco] = DOF2_GetInt(arquivo_casa, "Preco");
    HInfo[casaid][hAluguel] = DOF2_GetInt(arquivo_casa, "Aluguel");
    HInfo[casaid][hCarro] = DOF2_GetInt(arquivo_casa, "Carro");
    HInfo[casaid][hInterior] = DOF2_GetInt(arquivo_casa, "Interior");

    HInfo[casaid][hIcone][0] = DOF2_GetFloat(arquivo_casa, "Iconex");
    HInfo[casaid][hIcone][1] = DOF2_GetFloat(arquivo_casa, "Iconey");
    HInfo[casaid][hIcone][2] = DOF2_GetFloat(arquivo_casa, "Iconez");

    HInfo[casaid][hCarroPos][0] = DOF2_GetFloat(arquivo_casa, "CarroPosx");
    HInfo[casaid][hCarroPos][1] = DOF2_GetFloat(arquivo_casa, "CarroPosy");
    HInfo[casaid][hCarroPos][2] = DOF2_GetFloat(arquivo_casa, "CarroPosz");
    
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)