[ajuda]zcmd e sscanf comando /pagar [playerid]
#1

Ai este comando ta dificil de achar ja procurei visitei uns 4 forum e nada,tentei ate fazer mais quando eu entro rcon e digito /anunciar asdfafa aparece:
Anuncio admin Gabriel_Matadoraki era pra aparecer asdfafa mais aparece nada tem como ajudar?)


tavo querendo tbm tira as ARRAYS.

pawn Код:
#include <zcmd>
#include <sscanf>

new texto;
new nome[MAX_PLAYER_NAME];
new Str[128];
//topo gm


CMD:anunciar(playerid, params[])
{

    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{00E5FF}Vocк nгo estб autorizado.");
    if(sscanf(params, "s", playerid)) return SendClientMessage(playerid, -1, "{00E5FF}Use: {FFFFFF}/anunciar [texto]");
    GetPlayerName(playerid,nome,sizeof(nome));
    format(Str, sizeof(Str),"Admin %s [ID:%d]: %s",nome,playerid,texto);
    SendClientMessageToAll(-1,Str);
    return 1;
}
me ajuda ai vlws esperando.
(aposto que tem coisa pracas errado =/)
Reply
#2

pawn Код:
CMD:anunciar(playerid, params[])
{
    new anuncio[256],nome[MAX_PLAYER_NAME],Str[256];
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{00E5FF}Vocк nгo estб autorizado.");
    if(sscanf(params,"s",anuncio)) return SendClientMessage(playerid, -1, "{00E5FF}Use: {FFFFFF}/anunciar [texto]");
    GetPlayerName(playerid,nome,sizeof(nome));
    format(Str, sizeof(Str),"Admin %s [ID:%d]: %s",nome,playerid,anuncio);
    SendClientMessageToAll(-1,Str);
    return 1;
}
nao testei
Reply
#3

pawn Код:
#include <zcmd>
#include <sscanf>

new texto;
new nome[MAX_PLAYER_NAME];
new Str[128];
//topo gm


CMD:anunciar(playerid, params[])
{

    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{00E5FF}Vocк nгo estб autorizado.");
    if(sscanf(params, "s[128]", texto)) return SendClientMessage(playerid, -1, "{00E5FF}Use: {FFFFFF}/anunciar [texto]");
    GetPlayerName(playerid,nome,sizeof(nome));
    format(Str, sizeof(Str),"Admin %s [ID:%d]: %s",nome,playerid,texto);
    SendClientMessageToAll(-1,Str);
    return 1;
}
Reply
#4

PQP, porque vai usar sscanf com 1 parametro? Quer perder desempanho no seu servidor?

Se nгo quer use este.

pawn Код:
CMD:anunciar(playerid, params[])
{
    new string[159];
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid, -1, "{00E5FF}Vocк nгo estб autorizado.");
    if(params[1] == 0)
        return SendClientMessage(playerid, -1, "{00E5FF}Use: {FFFFFF}/anunciar [texto]");
    GetPlayerName(playerid,string,sizeof(string));
    format(string, sizeof(string),"Admin %s [ID:%d]: %s",string,playerid,params[1]);
    SendClientMessageToAll(-1,string);
    return 1;
}
Reply
#5

Ai ja tavo esquesendo tem como fazer o comando /pagar [playerid] em zcmd ou sscanf para min?
Reply
#6

pawn Код:
CMD:pagar(playerid, params[])
{
    new id, quantia, string[256], quemdeu[MAX_PLAYER_NAME], quemganhou[MAX_PLAYER_NAME];
    if(sscanf(params,"ii",id,quantia)) return SendClientMessage(playerid, -1, "USE: /pagar [ID [QUANTIA]");
    GetPlayerName(id, quemganhou, sizeof(quemganhou));
    GetPlayerName(playerid, quemdeu, sizeof(quemdeu));
    GivePlayerMoney(id, quantia);
    GivePlayerMoney(playerid, -quantia);
    format(string, sizeof(string), "Vocк Pagou R$ %d para %s(ID: %d)", quantia, quemganhou, id);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    format(string, sizeof(string), "Vocк Ganhou R$ %d de %s(Jogador: %d).", quantia, quemdeu, playerid);
    SendClientMessage(id, COLOR_GRAD1, string);
    return 1;
}
Comando Simples, pode adicionar para adm e adcionar player conectado ou nao

OBS: nao testei.
Reply
#7

Eu Uso Com 1 Paramentro SSCANF :S e Nao Perdo "Desempanho" !
Reply
#8

pawn Код:
CMD:pagar(playerid,params[])
{
    new iStr[33],pStr[32];
    if(sscanf(params,"dd",id,money))
        return SendClientMessage(playerid,-1,"USE: /pagar [id] [quantidade]");
    if(!IsPlayerConnected(playerid))
        return SendClientMessage(playerid,-1,"Player offline");
    GetPlayerName(id,iStr,sizeof(iStr));
    GetPlayerName(playerid,pStr,sizeof(pStr));
    format(pStr,sizeof(pStr),"Vocк deu %d $ para %s,money,iStr);
    format(iStr,sizeof(iStr,"
Vocк recebeu %d $ de %s",money,pStr);
    SendClientMessage(playerid,-1,pStr);
    SendClientMessage(playerid,-1,iStr);
    GivePlayerMoney(playerid,-money);
    GivePlayerMoney(id,money);
    return true;
}
Ai esta.

@RedKill

Sabe aquelas mensagens que aparece de aviso do sscanf? й por causa que vc esta usando 1 parametro sу, ai vai dar merda porque vai exigir de memoria, e se o host tiver pouca memoria a maquina irб abaixo e puff o server fica offline.
Reply
#9

ai quando eu boto /pagar 1
aparece:
vocк pagou R$ 500 a jim_xd
vocк ganhou R$ 500 de gabriel_matador

e na tela dele nao aparese nada
me ajuda ai

esse e o code do @GabrielDias_Invision
Reply
#10

Quote:
Originally Posted by gabriel_matador
Посмотреть сообщение
ai quando eu boto /pagar 1
aparece:
vocк pagou R$ 500 a jim_xd
vocк ganhou R$ 500 de gabriel_matador

e na tela dele nao aparese nada
me ajuda ai

esse e o code do @GabrielDias_Invision
atualizai la, so trocar ali em baixo, giveplayerid por id
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)