Compartilhe
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 411
Reputação : 12
Desde : 12/01/2016
Localização : 127.0.0.1:25565
Ver perfil do usuário

Como fazer para detectar se está usando SA-MP

em Dom 19 Fev 2017, 14:47
Queria colocar um IF que detectasse se está usando o SA-MP. Quero que desative funções como teleporte para evitar ban.
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Bicho Piruleta
Mensagens : 671
Reputação : 111
Desde : 22/09/2015
Idade : 19
Localização : Salvador - BA
Ver perfil do usuário
  • Reputação da mensagem: 100% (3 votos)

Re: Como fazer para detectar se está usando SA-MP

em Dom 19 Fev 2017, 15:28
Dá pra usar uma API do windows pra pegar o handle da samp.dll e verificar se é válido (se a dll foi carregada) ou não . Mais ou menos assim :
Código:
LOAD_DYNAMIC_LIBRARY "kernel32.dll" (lib)
GET_DYNAMIC_LIBRARY_PROCEDURE "GetModuleHandleA" lib (proc)

CALL_FUNCTION_RETURN proc 1 0 "samp.dll" (handle)

IF NOT handle = NULL
    // Está no Samp !
ENDIF

______________________________
" Everyone gonna remember my name ! "
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 411
Reputação : 12
Desde : 12/01/2016
Localização : 127.0.0.1:25565
Ver perfil do usuário

Re: Como fazer para detectar se está usando SA-MP

em Dom 19 Fev 2017, 17:45
Esse código entra em que conteúdo de GTA3Script? Deve dar para fazer muitas coisas usando as DLLs do Windows! Obrigado. :Y:
Opa, não funcionou. Mesmo criando variáveis do tipo INT com os nomes "proc", "lib", etc.
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21852
Reputação : 666
Desde : 03/05/2012
Idade : 21
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: Como fazer para detectar se está usando SA-MP

em Dom 19 Fev 2017, 19:24
É pra ter funcionado sim. Eu fiz assim no Mix Sets e Tuning Mod.

______________________________

Mestre3224 voltou, ainda há esperanças no Youtube.
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 411
Reputação : 12
Desde : 12/01/2016
Localização : 127.0.0.1:25565
Ver perfil do usuário

Re: Como fazer para detectar se está usando SA-MP

em Dom 19 Fev 2017, 19:59
Eu coloquei:
Código:

variaveis_e_tal:
    LVAR_INT random, scplayer, lib, proc
    GET_PLAYER_CHAR 0, scplayer // Pegar o jogador e colocar ele em uma variável
detectar_samp:
    LOAD_DYNAMIC_LIBRARY "kernel32.dll" (lib)
    GET_DYNAMIC_LIBRARY_PROCEDURE "GetModuleHandleA" lib (proc)
    
    CALL_FUNCTION_RETURN proc 1 0 "samp.dll" (handle)
    
    IF NOT handle = NULL
        GOTO fim
    ENDIF

E não funcionou. pokerface
Ele marca "IF NOT handle = null" com a mensagem "could not match alternative".
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Bicho Piruleta
Mensagens : 671
Reputação : 111
Desde : 22/09/2015
Idade : 19
Localização : Salvador - BA
Ver perfil do usuário

Re: Como fazer para detectar se está usando SA-MP

em Dom 19 Fev 2017, 21:36
Pelo que vi, você não declarou a var "handle".
Teste isso :
Código:
SCRIPT_START
{
LVAR_INT lib, proc, handle

LOAD_DYNAMIC_LIBRARY "kernel32.dll" (lib)
GET_DYNAMIC_LIBRARY_PROCEDURE "GetModuleHandleA" lib (proc)

CALL_FUNCTION_RETURN proc 1 0 "samp.dll" (handle)

IF NOT handle = NULL
    PRINT_STRING_NOW "Esta no SA-MP." 7000
ELSE
    PRINT_STRING_NOW "Nao esta no SA-MP." 7000
ENDIF
}
SCRIPT_END
Não enviei um código completo antes porque achei que tinha ficado claro com o primeiro exemplo. :v:

______________________________
" Everyone gonna remember my name ! "
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 411
Reputação : 12
Desde : 12/01/2016
Localização : 127.0.0.1:25565
Ver perfil do usuário

Re: Como fazer para detectar se está usando SA-MP

em Seg 20 Fev 2017, 15:10
Deu certo, estava meio cansado ontem de noite, e olha que era aí pelas nove horas da noite. Não devia nem ter aberto o VSCode. facepalm
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Bicho Piruleta
Mensagens : 671
Reputação : 111
Desde : 22/09/2015
Idade : 19
Localização : Salvador - BA
Ver perfil do usuário

Re: Como fazer para detectar se está usando SA-MP

em Seg 20 Fev 2017, 15:16
@DouglasB2310 escreveu:Deu certo, estava meio cansado ontem de noite, e olha que era aí pelas nove horas da noite. Não devia nem ter aberto o VSCode. facepalm
Sei como é. :v:

______________________________
" Everyone gonna remember my name ! "
Conteúdo patrocinado

Re: Como fazer para detectar se está usando SA-MP

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum