galera como eu posso na textdraw7 em saude queria colocar para mostrar para o player a porcentagem d vida que ele tem eu nao sei como faz aq esta meu codigo
Código:
#include a_samp
new PlayerText:Textdraw0;
new PlayerText:Textdraw1;
new PlayerText:Textdraw2;
new PlayerText:Textdraw3;
new PlayerText:Textdraw4;
new PlayerText:Textdraw5;
new PlayerText:Textdraw6;
new PlayerText:Textdraw7;
AtualizarTextdraws(playerid); // Chama a função para atualizar os valores dinâmicos
}
forward GetPlayerCount();
public GetPlayerCount()
{
new count = 0;
for (new i = 0; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected(i))
{
count++;
}
}
return count;
}
forward AtualizarTextdraws(playerid);
public AtualizarTextdraws(playerid)
{
new nome[MAX_PLAYER_NAME];
new grana[32], score[32], arma_id[32], players_online[32], ping[32], skin_id[32], saude[32];
GetPlayerName(playerid, nome, sizeof(nome));
format(nome, sizeof(nome), "Nome: %s(%d)", nome, playerid);
format(grana, sizeof(grana), "Grana: %d", GetPlayerMoney(playerid));
format(score, sizeof(score), "Score: %d", GetPlayerScore(playerid));
format(arma_id, sizeof(arma_id), "Arma id: %d", GetPlayerWeapon(playerid));
format(ping, sizeof(ping), "Ping: %d", GetPlayerPing(playerid));
format(players_online, sizeof(players_online), "Online:%d", GetPlayerCount()); // Corrigido para usar GetPlayerCount()
format(skin_id, sizeof(skin_id), "Skin ID: %d", GetPlayerSkin(playerid)); // Obtenha o ID da skin do jogador
//colocar aq para formata a saude do player
PlayerTextDrawSetString(playerid, Textdraw0, nome); // Nome do jogador
PlayerTextDrawSetString(playerid, Textdraw1, grana); // Grana do jogador
PlayerTextDrawSetString(playerid, Textdraw2, score); // Score do jogador
PlayerTextDrawSetString(playerid, Textdraw3, arma_id); // ID da arma do jogador
PlayerTextDrawSetString(playerid, Textdraw4, ping); // Ping do jogador
PlayerTextDrawSetString(playerid, Textdraw5, players_online); // Número de jogadores online
PlayerTextDrawSetString(playerid, Textdraw6, skin_id); // ID da skin do jogado
PlayerTextDrawSetString(playerid, Textdraw7, saude);
pessoal como eu posso criar dentro da minha gamemode um pequeno sistema de seguranca rcon ? pois nao queria usar a senha que se coloca na serve.cfg queria colocar para eu mesmo poder usar o comando rcon com o nick permitido e a senha mas que seja dentro da gamemode pois muitos usam a do server.cfg e queria deixar minha gm mais segura isso e possivel?
Ola, estou com alguns problemas no salvamento de genero do player, o genero feminino sera pra setar 0 e o masculino 1, mais la no banco de dados so fica zero,
QUANDO REGISTRA:
Código:
format(query,sizeof(query),"INSERT INTO `Player`(`Nome`,`Senha`,`Dinheiro`,`Skin`,`Genero`) VALUES('%s','%s','800','%d','%d')",PlayerName(playerid), inputtext, Player[playerid][Dinheiro], Player[playerid][Skin], Player[playerid][Genero]);
db_query(DBConn, query);
ola pessoa queria saber porq meu sistema de registro e login nao ta funcionando
quando o playerconecta aparece a dialog de registrar caso ele nao seja registrado ai se eu aperta na dialog sem nem precisar colocar senha ou nada so no fato de apertar ela some assim fazendo que eu nao consiga me registrar , a mesma coisa e na hora de logar a dialog aparece mas mesmo sem colocar senhar so no fato de apertar nela ela some fazendo assim o player nao poder logar para spawnar
estou quebrando a cabeca pois estou me esforcando no pawn para criar minha propia gm mas ta dificl nisso
Código:
#define DIALOG_REGISTER 1000
#define DIALOG_LOGIN 1001
new Logged[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
new name[MAX_PLAYER_NAME], file[200];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), "\\users\\%s.ini", name);
if (!dini_Exists(file))
{
// Se não existe, mostra o diálogo de registro
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registro", "Por favor, insira uma senha para se registrar:", "Registrar", "Cancelar");
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Login", "Por favor, insira sua senha:", "Logar", "Cancelar");
}
Logged[playerid] = 0; // Inicializa como não logado
return 1;
}
forward OnPlayerDialogResponse(playerid, dialogid, response, input[]);
public OnPlayerDialogResponse(playerid, dialogid, response, input[])
{
if (response == 1)
{
new name[MAX_PLAYER_NAME], file[200];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), "\\users\\%s.ini", name);
if (dialogid == DIALOG_REGISTER)
{
if (strlen(input) == 0)
{
SendClientMessage(playerid, vermelho, "Você precisa colocar uma senha para se registrar!");
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registro", "Por favor, insira uma senha para se registrar:", "Registrar", "Cancelar");
return 1;
}
if (strlen(input) < 4)
{
SendClientMessage(playerid, vermelho, "A senha deve ter no mínimo 4 caracteres.");
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registro", "Por favor, insira uma senha para se registrar:", "Registrar", "Cancelar");
return 1;
}
dini_Create(file);
dini_IntSet(file, "password", adler32_hash(input));
dini_IntSet(file, "cash", 0);
dini_IntSet(file, "score", 0);
SendClientMessage(playerid, amarelo, "Você foi registrado com sucesso!");
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Login", "Por favor, insira sua senha:", "Logar", "Cancelar");
return 1;
}
else if (dialogid == DIALOG_LOGIN)
{
if (!dini_Exists(file))
{
SendClientMessage(playerid, vermelho, "O arquivo de usuário não foi encontrado. Por favor, registre-se.");
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registro", "Por favor, insira uma senha para se registrar:", "Registrar", "Cancelar");
return 1;
}
if (adler32_hash(input) != dini_Int(file, "password"))
{
SendClientMessage(playerid, vermelho, "Senha incorreta! Tente novamente.");
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Login", "Senha incorreta! Por favor, tente novamente:", "Logar", "Cancelar");
return 1;
}
Logged[playerid] = 1;
GivePlayerMoney(playerid, dini_Int(file, "cash"));
SetPlayerScore(playerid, dini_Int(file, "score"));
SendClientMessage(playerid, amarelo, "Você está logado com sucesso!");
return 1;
}
}
else if (response == 0)
{
SendClientMessage(playerid, vermelho, "Operação cancelada.");
return 1;
}
ola galera script gostaria de saber como faço para colocar os nomes dos lugres no mapa quando passamos pelos lugares , pois o kalcor removeu essa funcao na 0.3 que pegamos para desenvolver , e tambem a include a_zones tambem nao funciona queria saber um jeito de fazer aparecer os nomes quando andamos nos veiculos para sabermos onde estamos pelo mapa
Bom, estou querendo mudar a versão do meu servidor, para a r2. Porém, eu nunca tentei mudar antes, então eu não sei como fazer. Queria a ajuda de vocês
ola scripters algum poderia me ajudar pois tenho uma gm que quando erro o comando de proposito nada acontece o correto seria manda a mensagem para o player assim como ta embaixo mas mesmo colocando isso ainda nada acontece com a mensagem oq fiz de errado para nao pegar ? obs a minha gm so tem 2 includes a dini para salvamento e a_samp a principal , sera que esse e o problema
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if(!success)
{
SendClientMessage(playerid,vermelho,">>!<< todos os comandos disponiveis /ajuda /comandos");