Portal SAMP
[Ajuda] prisao - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] prisao (/showthread.php?tid=323)



prisao - Smith - 13/11/2020

galera pra prender m player uso id dele mais como adicionar tempo de prisao em um player que esta offiline


RE: prisao - willttoonn - 13/11/2020

Que tipo de salvamento você utiliza, é MySQL?


RE: prisao - Smith - 14/11/2020

(13/11/2020 21:59)willttoonn Escreveu: Que tipo de salvamento você utiliza, é MySQL?

dof2


RE: prisao - HenriqueAra1 - 14/11/2020

Ao invés de usar o ID do jogador, usará o nome. Após isso, formate e verifique se a conta realmente está salva, depois, sete os valores nos dados do arquivo


RE: prisao - willttoonn - 14/11/2020

A lógica de alterar algo em um jogador off-line é que você identifique ele a partir do seu método de salvamento. Se for MySQL você envia um UPDATE no banco de dados em cima da coluna em que você quer modificar daquele jogador. Se o salvamento é o DOF você faz o mesmo procedimento, você localiza o arquivo em que os dados dele está armazenado e abre ele, altera a linha que você quer e depois salva fechando-o.


RE: prisao - Smith - 15/11/2020

Código:
CMD:cadeia(playerid,params[]){
    new tempo,id;
    if(!(ADM(playerid,2)))return 1;
    if(Pdados[playerid][Trabalhando] == true){
        if(sscanf(params,"ii",id,tempo))return SendClientMessage(playerid,AMARELO,"Use /prender [ID] [TEMPO]");
        format(String,sizeof(String),"Voce foi preso por %i minutos pelo %s %s",tempo,NomeAdm(Pdados[playerid][Admin]),Nome(playerid));
        SendClientMessage(id,AZUL_CLARO,String);
        tempo *= 60000;
        SetPlayerPos(id, 196.9844, 162.0234, 1002.6875);
        SetPlayerInterior(id,3);
        Pdados[id][Arrastado] = 0;
        SetTimerEx("tpreso",tempo,false,"i",id);
        Pdados[id][Logado] = false;
        ResetPlayerWeapons(id);
        format(StringContas, sizeof(StringContas), "BRF/Presos/%s.txt", Nome(id));
        DOF2_CreateFile(StringContas);
        DOF2_SetInt(StringContas, "Tempo Preso", tempo);
        DOF2_WriteFile();
        SetPlayerHealth(playerid,999999999);
        return 1;
    }
    return 1;
}
como fasso isso pode me ajdar? +rep se der certo