23/12/2022 10:03
(23/12/2022 01:36)White_Blue Escreveu:(23/12/2022 01:11)ilakt Escreveu:(23/12/2022 00:54)White_Blue Escreveu: Não entendi o que você quer fazer com isso. Qual o sentido de usar declarar uma string com um ponto e depois referenciar a mesma string na definição e depois armazenar o valor de outra string?
Se você quer fazer um log com o valor de "String" é só fazer assim.
Código PHP:DOF2_SetString(Pasta_Logs(playerid), "Log", String); // Não entendi o do "Playerid", suponho que Pasta_Logs seja uma função, não um macro.
Eu queria algo assim em "scriptfiles/PlayerLogs/%s.ini"
por isso usei o ponto, eu queria ir adicionando valores (logs) na mesma variável, não sei se tem outro jeito de fazer o que quero
Código:[00:00:00] Entrou no servidor
[00:00:10] Logou em sua conta
[00:00:30] Entrou em um veículo x
[00:00:40] Foi kickado por...
A função PastaLogs(playerid) serve para retornar o diretório da pasta:
Código PHP:stock PastaLogs(playerid)
{
new str[40];
format(str, 40, "PlayerLogs/%s.ini", GetName(playerid));
return str;
}
Ah, sim. Acho que entendi.
Código PHP:forward KickLog(string[]);
public KickLog(const string[])
{
new entry[256];
format(entry, sizeof(entry), "%s\r\n", string);
new File:hFile;
hFile = fopen("Logs/Kicks.log", io_append);
fwrite(hFile, entry);
fclose(hFile);
return 1;
}
CMD:kick(playerid, params[]) { // Exemplo de uso
new plid, motivo[128], log[20];
if(!IsPlayerAdmin(playerid)) return 1;
if(sscanf(params, "us", plid, motivo)) return SendClientMessage(playerid, -1, "Uso: /kick [id] [Motivo]");
if(!IsPlayerConnected(playerid)) return 1;
if(strlen(motivo) < 5) return SendClientMessage(playerid, -1, "Seu motivo deve ser maior do que 4.");
format(log, sizeof(log), "%d foi kickado pelo motivo: %s", plid, motivo);
Kick(playerid);
KickLog(log);
return 1;
}
MUITO OBRIGADO!!!!!!