SA-MP Forums Archive
[Ajuda] Icone - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Icone (/showthread.php?tid=329862)



[Ajuda] Icone - [NVC]Eduardo - 30.03.2012

Tipo eu queria coloca para quando compra-se a casa e vende-se a casa, troca-se o нcone.
Code
pawn Код:
new mapaicone;
pawn Код:
for(new c = 0; c < MAX_CASAS; c++)
{
format(string, sizeof(string), "/Casas/casa%d.ini", c);
if(dini_Exists(string)){
new pickupid;
if(dini_Int(string, "TDono") == 0){
pickupid = CreatePickup(1273, 1, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), -1);
dini_IntSet(string, "Id", pickupid);
mapaicone = CreateDynamicMapIcon(dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), 31, -1, -1, 0, -1, 100.0);
new string2[222];
format(string2, sizeof(string2), "Casa N° %d", c);
Create3DTextLabel(string2,0xFFFFFFAA, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ")+0.75,20.0,0,1);
//proximacasa++;
} else {
if(dini_Int(string,"TDono") == 1){
pickupid = CreatePickup(1272, 1, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), -1);
mapaicone = CreateDynamicMapIcon(dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), 32, -1, -1, 0, -1, 100.0);
dini_IntSet(string, "Id", pickupid);
new string2[222];
format(string2, sizeof(string2), "Casa N° %d", c);
Create3DTextLabel(string2,0xFFFFFFAA, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ")+0.75,20.0,0,1);
//proximacasa++;
}
}
proximacasa++;
}
}
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);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
format(file, sizeof(file), PASTA_CONTAS, pname);
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(/*dini_Int(file,"Tcasa2")==0*/(GetCasas(playerid) < 1 && dini_Int(filena(playerid),"Vip") == 0) || (GetCasas(playerid) < 3 && dini_Int(filena(playerid),"Vip") > 0)){
dini_IntSet(string, "TDono", 1);
dini_Set(string, "Dono", pname);
OnPlayerCommandText(playerid, "/nascercasa");
dini_IntSet(file, "Tcasa2", dini_Int(file,"Tcasa2")+1);
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);
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X, Y, Z);
dini_FloatSet(pname,"CasaX",Float:X);
dini_FloatSet(pname,"CasaY",Float:Y);
dini_FloatSet(pname,"CasaZ",Float:Z);
new string2[256];
format(string2, sizeof(string2), "(CASA) O jogador %s, comprou a casa nъmero '%d'.", pname,c);
SendClientMessageToAll(0xFFFFFFAA,string2);
} else {
SendClientMessage(playerid, Vermelho, "** Vocк jб possui uma Casa!");
}
} else {
SendClientMessage(playerid, Vermelho, "Vocк nгo tem dinheiro");
}
} else {
SendClientMessage(playerid, Vermelho, "Esta casa nгo estб a venda!");
}
} else {
//SendClientMessage(playerid, Vermelho, "Vocк nгo estб em uma propriedade");
}
}
}
return 1;
}
pawn Код:
if(strcmp(cmdtext, "/vendercasa", true) == 0) {
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(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, false) == 0 || pAdmin[playerid] >= 5){
format(file, sizeof(file), PASTA_CONTAS,dini_Get(string,"Dono"));
dini_IntSet(string, "TDono", 0);
dini_Set(string, "Dono", "Ninguem");
GivePlayerGrana(playerid, dini_Int(string, "Preco") / 2);
dini_IntSet(file, "Tcasa2", dini_Int(file,"Tcasa2")-1);
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);
new string2[256];
if(pAdmin[playerid] < 5){
format(string2, sizeof(string2), "(CASA) O jogador %s, vendeu a sua casa nъmero '%d'.",pname,c);
SendClientMessageToAll(0xFFFFFFAA,string2);
} else {
format(string, sizeof(string), "* O administrador %s liberou a casa '%d'", pname,c);
SendClientMessageToAll(AdminCor, string);
}
} else {
SendClientMessage(playerid, Vermelho, "Esta casa nгo й sua");
}
} else {
SendClientMessage(playerid, Vermelho, "Esta casa jб estб a venda !");
}
} else {
// SendClientMessage(playerid, Vermelho, "Vocк nгo estб em uma propriedade");
}
}
}
return 1;
}
+rep para quem me ajuda.


Re: [Ajuda] Icone - [NVC]Eduardo - 30.03.2012

@ Doble post

Alguйm?


Re: [Ajuda] Icone - zbt - 30.03.2012

No cmd comprar

mapaicone = CreateDynamicMapIcon(dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), 32, -1, -1, 0, -1, 100.0);

no vender

mapaicone = CreateDynamicMapIcon(dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), 31, -1, -1, 0, -1, 100.0);

tenta ae.


Re: [Ajuda] Icone - ViniBorn - 30.03.2012

Assim que o GM for inicializado e as casas forem carregadas, armazene o ID do нcone dela

pawn Код:
new CasaIcone[NUMERO_DE_CASAS];

CasaIcone[NUMERO_DA_CASA] = CreatePickup(...
Quando vender a casa, destrua o нcone, e acrescente o novo

https://sampwiki.blast.hk/wiki/DestroyPickup
https://sampwiki.blast.hk/wiki/CreatePickup


Re: [Ajuda] Icone - [NVC]Eduardo - 30.03.2012

Quote:
Originally Posted by zbt
Посмотреть сообщение
No cmd comprar

mapaicone = CreateDynamicMapIcon(dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), 32, -1, -1, 0, -1, 100.0);

no vender

mapaicone = CreateDynamicMapIcon(dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ"), 31, -1, -1, 0, -1, 100.0);

tenta ae.
Jб tentei isso, nгo da certo.
Queria que destruise o outro e cria-se outro no lugar.


Re: [Ajuda] Icone - ViniBorn - 30.03.2012

Afinal, vocк quer trocar MapIcon, ou Pickup ?


Re: [Ajuda] Icone - [NVC]Eduardo - 30.03.2012

MapIcon


Re: [Ajuda] Icone - ViniBorn - 30.03.2012

Por curiosidade. Sгo quantas casas?


Re: [Ajuda] Icone - [NVC]Eduardo - 30.03.2012

No max 200.


Re: [Ajuda] Icone - ViniBorn - 30.03.2012

https://sampwiki.blast.hk/wiki/SetPlayerMapIcon

Quote:

Important Note: You can only have 100 mapicons!