[Ajuda] Como criar um comando de LIBERAR COMPRAR CASA
#1

Ai alguem me ajuda em um comando ex: o player coloca /casa comprar e aparece > [ x ] peça permissão para um admin online para comprar a casa < ai o admin coloca /liberarccasa e libera o jogador compra a casa, ai o jogador coloca /casa comprar e ja era da pra comprar, alguem me ajuda?

MEU CMD DE COMPRA CASA:

PHP код:
if(strcmp(cmdtext"/casa comprar"true) == 0) {
for(new 
0MAX_CASASc++)
{
format(stringsizeof(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];
dini_IntSet(file2"MN"1);
GetPlayerName(playeridpnamesizeof(pname));
format(filesizeof(file), PASTA_CONTASpname);
if(
IsPlayerInRangeOfPoint(playerid2.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(
/*dini_Int(file,"Tcasa2")==0*/(GetCasas(playerid) < && 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(12721dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ"), -1);
dini_IntSet(string"Id"pickupid);
new 
mapaicone;
DestroyDynamicMapIcon(dini_Int(string"Id"));
mapaicone CreateDynamicMapIcon(dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ"), 32, -1, -10, -1100.0);
dini_IntSet(string"Id"mapaicone);
new 
Float:X,Float:Y,Float:Z;
GetPlayerPos(playeridXYZ);
dini_FloatSet(pname,"CasaX",Float:X);
dini_FloatSet(pname,"CasaY",Float:Y);
dini_FloatSet(pname,"CasaZ",Float:Z);
new 
string2[256];
format(string2sizeof(string2), "{ABEB0C}[ INFO ] O(A) jogador(a) {FFFFFF}%s {ABEB0C}comprou a casa ID {FFFFFF}%d . {ABEB0C}Localizada: {FFFFFF}%s"pname,c,GetPlayerArea(playerid));
SendClientMessageToAll(Amarelo,string2);
} else {
SendClientMessage(playeridVermelho"[ x ] Você já possui uma Casa!");
}
} else {
SendClientMessage(playeridVermelho"Você não tem dinheiro");
}
} else {
SendClientMessage(playeridVermelho"Esta casa não está a venda!");
}
} else {
//SendClientMessage(playerid, Vermelho, "Peça permição à um admin online para comprar a casa.");
}
}
}
return 
1;

Reply
#2

declare uma variavel para guarda o valor da permiзao exemplo \/
e coloque um if no inicio do cmd comprar casa
PHP код:
new permicaoc[MAX_PLAYERS];
if(
permicaoc[playerid] == 0) return SendClientMessage(playerid, -1"Peзa permiзao a um admin online para comprar casa" ); 
e o cmd pro admin seta a permiзao fica assim \/
PHP код:

CMD
:permicaoccasa(playeridparams[])
{
        new 
id;
    if(
sscanf(params"u"id)) return SendClientMessage(playerid, -1"Uso correto /permicaoccasa [id]");
        
permicaoc[id] = 1;
        return 
1;

OBS: nao esqueзa de setar a variavel no final do cmd de comprar a casa pra 0 novamente
ficando
0 = sem permiзгo
1 = com permiзгo
tambem deixe na OnPlayerDisconect \/
permicaoc[playerid] = 0;
caso nao sete a variavel permicaoc para 0 ao player sair e estive com permiзao
o player que entra com o mesmo id ja estarб com permiзao.
os exemplos acima sao em zcmd e sscanf2 espero ter ajudado
Reply
#3

@Edit

Onde eu coloco no CMD de /casa comprar?
eu coloco ali, ai eu libero compra casa, mais mesmo assim apareece a msg de pedi permissão agluem me ajuda?
Reply
#4

if(IsPlayerAdmin(playerid)){ //se adm logado rcon /liberarcasa
permicaoc = 1; // permitido

mais ou menos assim
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)