Nгo sou mto bom em criar, mas ta ai.
PHP код:
//======================================[ INCLUDES ]====================================||
#include a_samp
#include zcmd
#include sscanf
#include a_mysql
//======================================[ Defines ]====================================||
#define MAX_CASAS (100)
#define HOST "localhost"
#define USUARIO "root"
#define DATABASE "casas"
#define SENHA ""
//======================================[ INICIO ]======================================||
main(){}
enum cInfo
{
CasaID,
Proprietario[MAX_PLAYER_NAME],
Preco,
Float:Entrada_x,
Float:Entrada_y,
Float:Entrada_z,
Float:Saida_x,
Float:Saida_y,
Float:Saida_z,
Interior,
Comprada
}
new Casa[MAX_CASAS][cInfo];
new MySQL:ConexaoID, Text3D: casatext[MAX_CASAS], Text3D: casatext2[MAX_CASAS];
//=====================================[ CALLBACKS ]====================================||
public OnGameModeInit()
{
ConexaoID = mysql_connect(HOST, USUARIO, SENHA, DATABASE);
if(mysql_errno(ConexaoID) != 0)
{
print("Falha na conexгo ao banco de dados Mysql");
} else {
print("Conexгo ao banco de dado Mysql efetuada com sucesso");
}
CarregarCasas();
SetGameModeText("Modo livre");
UsePlayerPedAnims();
return true;
}
public OnGameModeExit()
{
return true;
}
forward CarregarCasas();
public CarregarCasas()
{
new Cache:cache = mysql_query(ConexaoID, "SELECT * FROM `Casas`", true);
if(cache_num_rows())
{
for(new i=0, rows = cache_num_rows(); i < rows; i++)
{
cache_get_value_name_int(i, "id", Casa[i][CasaID]);
cache_get_value_name(i, "Proprietario", Casa[i][Proprietario], MAX_PLAYER_NAME);
cache_get_value_name_float(i, "entrada_x", Casa[i][Entrada_x]);
cache_get_value_name_float(i, "entrada_y", Casa[i][Entrada_y]);
cache_get_value_name_float(i, "entrada_z", Casa[i][Entrada_z]);
cache_get_value_name_float(i, "saida_x", Casa[i][Saida_x]);
cache_get_value_name_float(i, "saida_y", Casa[i][Saida_y]);
cache_get_value_name_float(i, "saida_z", Casa[i][Saida_z]);
cache_get_value_name_int(i, "interior", Casa[i][Interior]);
cache_get_value_name_int(i, "comprada", Casa[i][Comprada]);
cache_get_value_name_int(i, "preco", Casa[i][Preco]);
TextLabel(i);
i++;
printf("[MYSQL]: [%d] Casas foram carregadas com sucesso\n", i);
}
}
cache_delete(cache);
return true;
}
//=====================================================================================||
stock UpdateCasaInfo(casaid)
{
new string[256];
switch(Casa[casaid][Comprada])
{
case 0:
{
format(string, sizeof(string), "ID: {FFFF33}%d{FFFFFF}\n\nProprietario: {FFFF33}Ninguem.{FFFFFF}\nValor: {FFFF33}%dR${FFFFFF}.\nUsa {FFFF33}/comprarcasa {FFFFFF}para comprar o {FFFF33}/entrar {FFFFFF}para entrar e visualizar.", Casa[casaid][CasaID], Casa[casaid][Preco]);
Update3DTextLabelText(casatext[casaid], -1, string);
}
case 1:
{
format(string, sizeof(string), "Propietario: {FFFF33}%s.\n{FFFFFF}Usa {FFFF33}/entrar {FFFFFF}para entrar.", Casa[casaid][Proprietario]);
Update3DTextLabelText(casatext[casaid], -1, string);
}
}
return true;
}
stock TextLabel(casaid)
{
new string[256];
switch(Casa[casaid][Comprada])
{
case 0:
{
format(string, sizeof(string), "ID: {FFFF33}%d{FFFFFF}\n\nProprietario: {FFFF33}Ninguem.{FFFFFF}\nValor: {FFFF33}%dR${FFFFFF}.\nUsa {FFFF33}/comprarcasa {FFFFFF}para comprar o {FFFF33}/entrar {FFFFFF}para entrar e visualizar.", Casa[casaid][CasaID], Casa[casaid][Preco]);
casatext[casaid] = Create3DTextLabel(string, -1, Casa[casaid][Entrada_x], Casa[casaid][Entrada_y], Casa[casaid][Entrada_z], 40.0, 0, 1);
}
case 1:
{
format(string, sizeof(string), "Propietario: {FFFF33}%s.\n{FFFFFF}Usa {FFFF33}/entrar {FFFFFF}para entrar.", Casa[casaid][Proprietario]);
casatext[casaid] = Create3DTextLabel(string, -1, Casa[casaid][Entrada_x], Casa[casaid][Entrada_y], Casa[casaid][Entrada_z], 40.0, 0, 1);
}
}
format(string, sizeof(string), "Use: /sair para sair.", Casa[casaid][Proprietario]);
casatext2[casaid] = Create3DTextLabel(string, -1, Casa[casaid][Saida_x], Casa[casaid][Saida_y], Casa[casaid][Saida_z], 40.0, 0, 1);
return true;
}
stock CriarCasa(casaid, interior, Float: entradax, Float: entraday, Float: entradaz, preco)
{
new query[256];
mysql_format(ConexaoID, query, sizeof(query), "INSERT INTO `casas`(`id`, `Proprietario`, `Preco`, `Entrada_x`, `Entrada_y`, `Entrada_z`, `Saida_x`, `Saida_y`, `Saida_z`, `Interior`, `Comprada`) VALUES \
('%d','Ninguem','%d','%f','%f','%f','0','0','0','%d','0');", casaid, preco, entradax, entraday, entradaz, interior);
mysql_query(ConexaoID, query);
CarregarCasas();
return true;
}
CMD:criarcasa(playerid, params[])
{
new casaid, interior, Float: entradas[3], preco;
if ( sscanf(params, "idi", casaid, interior, preco))
return SendClientMessage(playerid, -1, "/criarcasa [casaid] [interiorid] [valor]");
GetPlayerPos(playerid, entradas[0], entradas[1], entradas[2]);
CriarCasa(casaid, interior, entradas[0], entradas[1], entradas[2], preco);
return true;
}