Mapa Icon Criar Casa -
vitere - 03.11.2012
Ae gente to editando uma gm aki queria uma ajudinha suas aki tentei so que nao sei mecher muito com icon gostaria de por assim
quando o adm digita /criarcasa seta no mapa o icon da casa verde
quando o player comprar a casa /comprarcasa o icone ficase vermelho
quando o Player vende a casa volta pro verde
e quando o adm deletase a casa ficava sem icone se alguem poder me ajudar cmds abaixo .
/criarcasa
pawn Код:
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);
dini_Create(string);
dini_FloatSet(string, "PosX", X);
dini_FloatSet(string, "PosY", Y);
dini_FloatSet(string, "PosZ", Z);
dini_IntSet(string, "Int", int);
//dini_FloatSet(string, "IntX", X);
//dini_FloatSet(string, "IntY", Y);
//dini_FloatSet(string, "IntZ", Z);
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
pawn Код:
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)){
// new Float:X, Float:Y, Float:Z;
//GetPlayerPos(playerid, X, Y, Z);
if(IsPlayerInRangeOfPoint(playerid, 2.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 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 {
//SendClientMessage(playerid, Vermelho, "Vocк nгo estб em uma propriedade.");
}
}
}
return 1;
}
/vendercasa
pawn Код:
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)){
// new Float:X, Float:Y, Float:Z;
//GetPlayerPos(playerid, X, Y, Z);
if(IsPlayerInRangeOfPoint(playerid, 2.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);
}
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, "Vocк nгo estб em uma propriedade.");
}
}
}
return 1;
}
/deletarcasa
pawn Код:
if(strcmp(cmd, "/deletarcasa", true) == 0) {
new preco;
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, Vermelho, "/deletarcasa [casaID]");
return 1;
}
preco = strval(tmp);
format(string, sizeof(string), "/Casas/casa%d.ini", preco);
if(dini_Exists(string)){
// new Float:X, Float:Y, Float:Z;
//GetPlayerPos(playerid, X, Y, Z);
if(pAdmin[playerid] >= 5){
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
DestroyPickup(dini_Int(string, "Id"));
dini_IntSet(string, "TDono", 3);
dini_Set(string, "Dono", "Nenhum");
dini_IntSet(string, "Id", 999);
return 1;
} else {
SendClientMessage(playerid, Vermelho, "(ERRO)Vocк nгo tem permissгo.");
}
}
return 1;
}
Re: Mapa Icon Criar Casa -
silenthill - 03.11.2012
veja
http://forum.sa-mp.com/showthread.ph...ht=comprarcasa
Re: Mapa Icon Criar Casa -
vitere - 03.11.2012
ja tentei nao conseguir .
Re: Mapa Icon Criar Casa -
vitere - 03.11.2012
upp alquem ajuda?
Re: Mapa Icon Criar Casa -
Zona_Sky - 03.11.2012
eu fiz do geitin que tu que.. mais ta com problemas no /deletarcasa quando deleta nгo sai o map icon so sai quando renicia o sv :[ em DOF2
Re: Mapa Icon Criar Casa -
vitere - 04.11.2012
zona sky se poder me pasa os code ae pode ser em dof mais se tiver em dini pode mandar tabem .!
Re: Mapa Icon Criar Casa -
[JD]BlackFire - 04.11.2012
vc vai precisar desta minha include
https://sampforum.blast.hk/showthread.php?tid=387304&langid=4
que por acaso, desenvolvi pensando em sistema e casas, com mais de 500 casas pelo jogo.
Re: Mapa Icon Criar Casa -
vitere - 04.11.2012
BlackFire Me ajuda fazer esse sitema ae se poder.
Re: Mapa Icon Criar Casa -
[JD]BlackFire - 04.11.2012
vou lhe dar um exemplo com a minha include;
para setar um ícone verde no mapa é:
pawn Код:
#include <rMapIcons>//include streamer de mapicons
new variavelmapicon
variavelmapicon = rSetPlayerMapIcon(playerid, Float: x, Float:y, Float:z, 31, 0, 20);//retorna o ID para remove-la depois e salva na variável
para adicionar um ícone vermelho depois
pawn Код:
rRemovePlayerMapIcon(playerid, variavelmapicon);//remove o mapicon verde criado anteriormente
variavelmapicon = rSetPlayerMapIcon(playerid, Float: x, Float:y, Float:z, 32, 0, 20);//agora criamos novamente, so que na cor vermelha
e em OnPlayerUpdate(playerid) coloque a função para atualizar
pawn Код:
rMapIconsUpdate(playerid);
Re: Mapa Icon Criar Casa -
vitere - 04.11.2012
ta foda vei nao aff alquem ajuda aee .