Portal SAMP
[Include] FindSAMP - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Lançamentos (https://portalsamp.com/forumdisplay.php?fid=26)
+---- Fórum: Includes (https://portalsamp.com/forumdisplay.php?fid=27)
+---- Tópico: [Include] FindSAMP (/showthread.php?tid=4306)



FindSAMP - Carlos Victor - 15/12/2023

FindSAMP


O include FindSAMP é um include prático e simples, onde você pode fazer um sistema de recompensas para os jogadores que votarem em seu servidor no FindSAMP, atualmente o FindSAMP está na sua versão primária, onde futuramente poderá receber diversas atualizações, novidades ou correções. 

Para utilizar o include é necessário apenas de uma dependência que é o Pawn Request para fazer a consulta na API. Você não vai ter que se preocupar com isso caso não manje, é só instalar a dependência que será inclusa automaticamente no include.

Código PHP:
CheckPlayerVote(playerid); 
- Envia a consulta a API, retorna em OnPlayerVote

Código PHP:
public OnPlayerVote(playeridstatusbool:voted
- Retorna as informações do voto, anteriormente solicitadas por CheckPlayerVote.

Exemplo:
Código PHP:
#include <a_samp>
#include <requests>

#define FINDSAMP_SERVER_IP ("IP:PORT") // Ex: 127.0.0.1:7777
#include <findsamp>

public OnPlayerCommandText(playeridcmdtext[])
{
    if(strcmp(cmdtext"/votar"true) == 0) {
        if(CheckPlayerVote(playerid) == 1) {
            SendClientMessage(playerid, -1"Verificando seu voto...");
        }
        else {
            SendClientMessage(playerid, -1"Você deve aguardar 10 segundos para executar o comando novamente.");
        }
    }
    return 1;
}

public 
OnPlayerVote(playeridstatusbool:voted)
{
    static 
        string[148];

    if(status == 200)
    {
        if(voted) {
            new
                payment random(1000) + 500;

            GivePlayerMoney(playeridpayment);

            format(stringsizeof(string), "Você votou hoje e recebeu $%d por isso! Vote novamente amanhã."payment);
            SendClientMessage(playerid, -1string);
        }
        else {
            format(stringsizeof(string), "Você não votou hoje! Vote em: http://servers.portalsamp.com/pt/server/%s#vote"FINDSAMP_SERVER_IP);
            SendClientMessage(playerid, -1string);
        }
    }
    else if(status == 1) {
        SendClientMessage(playerid, -1"Você deve aguardar um pouco! Muitas consultas estão sendo feitas nesse momento.");
    }
    else {
        format(stringsizeof(string), "Não foi possível verificar seu voto! (Erro: %d)"status);
        SendClientMessage(playerid, -1string);
    }
    return 1;




Repositório: https://github.com/CarlinCV/findsamp


RE: FindSAMP - NelsonC. - 17/12/2023

É isso rapaz! Muito bom!


RE: FindSAMP - pushline - 18/12/2023

Brabissimo!


RE: FindSAMP - manow6523 - 18/12/2023

Estou recebendo o seguinte erro ao tentar utilizar a include com o exemplo dado:

[18/12/2023 11:58:22] ERROR: General error Unknown exception
[18/12/2023 11:58:22] [FindSAMP]: Unknown exception

O que pode ser?


RE: FindSAMP - White_Blue - 18/12/2023

(18/12/2023 18:01)manow6523 Escreveu: Estou recebendo o seguinte erro ao tentar utilizar a include com o exemplo dado:

[18/12/2023 11:58:22] ERROR: General error Unknown exception
[18/12/2023 11:58:22] [FindSAMP]: Unknown exception

O que pode ser?

Mostre como você está utilizando o exemplo.


RE: FindSAMP - manow6523 - 18/12/2023

(18/12/2023 20:47)White_Blue Escreveu:
(18/12/2023 18:01)manow6523 Escreveu: Estou recebendo o seguinte erro ao tentar utilizar a include com o exemplo dado:

[18/12/2023 11:58:22] ERROR: General error Unknown exception
[18/12/2023 11:58:22] [FindSAMP]: Unknown exception

O que pode ser?

Mostre como você está utilizando o exemplo.

No topo: 

Código:
#include <requests>
#define FINDSAMP_SERVER_IP ("151.80.47.38:7777") // Ex: 127.0.0.1:7777
#include <findsamp>

Restante:

Código:
CMD:votar(playerid)
{
    if(CheckPlayerVote(playerid) == 1) {
        SendClientMessage(playerid, -1, "(INFO) Verificando o seu voto...");
    }
    else {
        SendClientMessage(playerid, -1, "(ERRO) Você deve aguardar 10 segundos para executar o comando novamente.");
    }
return 1;
}

public OnPlayerVote(playerid, status, bool:voted)
{
    static
        string[148];

    if(status == 200)
    {
        if(voted) {
            new
                payment = random(1000) + 500;

            GivePlayerMoneyEx(playerid, payment);

            format(string, sizeof(string), "Você votou hoje e recebeu $%d por isso! Vote novamente amanhã.", payment);
            SendClientMessage(playerid, -1, string);
        }
        else {
            format(string, sizeof(string), "Você não votou hoje! Vote em: http://servers.portalsamp.com/pt/server/%s#vote", FINDSAMP_SERVER_IP);
            SendClientMessage(playerid, -1, string);
        }
    }
    else if(status == 1) {
        SendClientMessage(playerid, -1, "Você deve aguardar um pouco! Muitas consultas estão sendo feitas nesse momento.");
    }
    else {
        format(string, sizeof(string), "Não foi possível verificar seu voto! (Erro: %d)", status);
        SendClientMessage(playerid, -1, string);
    }
    return 1;
}



RE: FindSAMP - PT_Player - 20/12/2023

Para mim é um orgulho ver que o Joao Pedro ainda faz impacto na comunidade de SAMP PT com os seus trabalhos.

Obrigado Joao

E bom trabalho a vc pela include que fez aproveitando o trabalho do Joao.


RE: FindSAMP - White_Blue - 20/12/2023

(18/12/2023 22:14)manow6523 Escreveu:
(18/12/2023 20:47)White_Blue Escreveu:
(18/12/2023 18:01)manow6523 Escreveu: Estou recebendo o seguinte erro ao tentar utilizar a include com o exemplo dado:

[18/12/2023 11:58:22] ERROR: General error Unknown exception
[18/12/2023 11:58:22] [FindSAMP]: Unknown exception

O que pode ser?

Mostre como você está utilizando o exemplo.

No topo: 

Código:
#include <requests>
#define FINDSAMP_SERVER_IP ("151.80.47.38:7777") // Ex: 127.0.0.1:7777
#include <findsamp>

Restante:

Código:
CMD:votar(playerid)
{
    if(CheckPlayerVote(playerid) == 1) {
        SendClientMessage(playerid, -1, "(INFO) Verificando o seu voto...");
    }
    else {
        SendClientMessage(playerid, -1, "(ERRO) Você deve aguardar 10 segundos para executar o comando novamente.");
    }
return 1;
}

public OnPlayerVote(playerid, status, bool:voted)
{
    static
        string[148];

    if(status == 200)
    {
        if(voted) {
            new
                payment = random(1000) + 500;

            GivePlayerMoneyEx(playerid, payment);

            format(string, sizeof(string), "Você votou hoje e recebeu $%d por isso! Vote novamente amanhã.", payment);
            SendClientMessage(playerid, -1, string);
        }
        else {
            format(string, sizeof(string), "Você não votou hoje! Vote em: http://servers.portalsamp.com/pt/server/%s#vote", FINDSAMP_SERVER_IP);
            SendClientMessage(playerid, -1, string);
        }
    }
    else if(status == 1) {
        SendClientMessage(playerid, -1, "Você deve aguardar um pouco! Muitas consultas estão sendo feitas nesse momento.");
    }
    else {
        format(string, sizeof(string), "Não foi possível verificar seu voto! (Erro: %d)", status);
        SendClientMessage(playerid, -1, string);
    }
    return 1;
}

Creio que possa ser algo talvez relacionado com o seu firewall, pois o código me parece correto.


RE: FindSAMP - manow6523 - 20/12/2023

(20/12/2023 19:28)White_Blue Escreveu:
(18/12/2023 22:14)manow6523 Escreveu:
(18/12/2023 20:47)White_Blue Escreveu:
(18/12/2023 18:01)manow6523 Escreveu: Estou recebendo o seguinte erro ao tentar utilizar a include com o exemplo dado:

[18/12/2023 11:58:22] ERROR: General error Unknown exception
[18/12/2023 11:58:22] [FindSAMP]: Unknown exception

O que pode ser?

Mostre como você está utilizando o exemplo.

No topo: 

Código:
#include <requests>
#define FINDSAMP_SERVER_IP ("151.80.47.38:7777") // Ex: 127.0.0.1:7777
#include <findsamp>

Restante:

Código:
CMD:votar(playerid)
{
    if(CheckPlayerVote(playerid) == 1) {
        SendClientMessage(playerid, -1, "(INFO) Verificando o seu voto...");
    }
    else {
        SendClientMessage(playerid, -1, "(ERRO) Você deve aguardar 10 segundos para executar o comando novamente.");
    }
return 1;
}

public OnPlayerVote(playerid, status, bool:voted)
{
    static
        string[148];

    if(status == 200)
    {
        if(voted) {
            new
                payment = random(1000) + 500;

            GivePlayerMoneyEx(playerid, payment);

            format(string, sizeof(string), "Você votou hoje e recebeu $%d por isso! Vote novamente amanhã.", payment);
            SendClientMessage(playerid, -1, string);
        }
        else {
            format(string, sizeof(string), "Você não votou hoje! Vote em: http://servers.portalsamp.com/pt/server/%s#vote", FINDSAMP_SERVER_IP);
            SendClientMessage(playerid, -1, string);
        }
    }
    else if(status == 1) {
        SendClientMessage(playerid, -1, "Você deve aguardar um pouco! Muitas consultas estão sendo feitas nesse momento.");
    }
    else {
        format(string, sizeof(string), "Não foi possível verificar seu voto! (Erro: %d)", status);
        SendClientMessage(playerid, -1, string);
    }
    return 1;
}

Creio que possa ser algo talvez relacionado com o seu firewall, pois o código me parece correto.

Testei com o Windows Defender e o Anti-Virus desativados e o problema persistiu. Testei em um VPS Windows com Windows Defender desativado e também persistiu o erro.