Jump to content

[AJUDA]AntiBind


Recommended Posts

Posted

Então, eu estou usando o getBoundControls para kickar jogador que estão usando binds para bugar animação em meu servidor. mas essa função só funciona se o jogador já estiver entrando no meu servidor com as configurações de teclas alteradas.. queria saber se existe algum evento para acionar a função assim que o jogador mudar as configurações de teclas já dentro do servidor, quando ele trocar toma kick.

Obrigado.

Posted

Evento para binds não existe, mas você pode usar alguns métodos para isso, que eu não sei qual é o melhor porque nunca fiz, mas tente usar addCommandHandler/onPlayerCommand.

Ou fazer uma whitelist de certos comandos permitidos a uma tecla

Posted

Ou, se você sabe a combinação exata de teclas que os cara aperta, você pode fazer uma verificação, desta forma:

client

addEventHandler ("onClientKey", getRootElement(), function (button, state)
	if button == "a" then
		if state then -- Se o jogador tiver com a tecla A pressionada, então:
			setElementData (localPlayer, "button.a", true) -- Seta a data informando que ele esta com a tecla A pressionada.
		else -- Se o jogador soltar a tecla A, então:
			setElementData (localPlayer, "button.a", false) -- Remove a data informando que ele não esta com a tecla A pressionada.
		end
	elseif button == "b" then
		if state then -- Se o jogador tiver com a tecla B pressionada, então:
			setElementData (localPlayer, "button.b", true) -- Seta a data informando que ele esta com a tecla B pressionada.
		else -- Se o jogador soltar a tecla B, então:
			setElementData (localPlayer, "button.b", false) -- Remove a data informando que ele não esta com a tecla B pressionada.
		end
	end	
	if getElementData (localPlayer, "button.a") and getElementData (localPlayer, "button.b") then -- Se o jogador tiver com as 2 pressionadas, então:
		triggerServerEvent ("kickPlayer", localPlayer) -- Trigger no server pra kicker o cara.
	end
end)

server

addEvent ("kickPlayer", true)
addEventHandler ("kickPlayer", getRootElement(), function ()
	kickPlayer (client, "Combinação proibida detectada!")
end)

 

Posted
13 hours ago, andreisrww said:

Qual é o bug de animação?

eu também queria saber... rsss
nunca ouvi falar em bug de animação.. pior que estou no mta há muito tempo e nunca vi isso.. mais sempre tem uma primeira vez..

Posted (edited)

O único bug de animação que eu me recordo, é..

Por exemplo, abrir um painel de animação, e fazer uma animação (envia para o lado server-side a animação), e então, quando clicar em stop animação (não envia para o server-side), fica no client-side, ou seja, para o player ele está normal, porem para o outros players, aparece que ele esta com animação.

Edited by Angelo Pereira
Posted (edited)

Para resolver isso, faça

server-side

addEventHandler("onResourceStart", resourceRoot, function ()
   setGlitchEnabled("fastmove", false)
   setGlitchEnabled("fastsprint", false)
   setGlitchEnabled("quickstand", false)
   setGlitchEnabled("fastfire", false)
   setGlitchEnabled("crouchbug", false)
end)

--/> Também pode utilizar o recurso NoCrouchSlide (nocrouchslide) : 
--Link: https://community.multitheftauto.com/index.php?p=resources&s=details&id=13368

--/> Veja também se você não tem nenhum recurso de c-bug no servidor, caso tenha, pode interferir com o script acima.

 

Edited by Angelo Pereira
Posted
1 hour ago, Angelo Pereira said:

Para resolver isso, faça

server-side


addEventHandler("onResourceStart", resourceRoot, function ()
   setGlitchEnabled("fastmove", false)
   setGlitchEnabled("fastsprint", false)
   setGlitchEnabled("quickstand", false)
   setGlitchEnabled("fastfire", false)
   setGlitchEnabled("crouchbug", false)
end)

--/> Também pode utilizar o recurso NoCrouchSlide (nocrouchslide) : 
--Link: https://community.multitheftauto.com/index.php?p=resources&s=details&id=13368

--/> Veja também se você não tem nenhum recurso de c-bug no servidor, caso tenha, pode interferir com o script acima.

 

na wiki diz que todos esses glitchs já são desabilitados por padrão, mas mesmo assim testei e não adiantou nada: 

 

  • Other Languages Moderators
Posted

Tente isso:

-- client-side

local controlTable = {"fire", "next_weapon", "previous_weapon", "forwards", "backwards", "left", "right", "zoom_in", "zoom_out",
 "change_camera", "jump", "sprint", "look_behind", "crouch", "action", "walk", "aim_weapon", "conversation_yes", "conversation_no",
 "group_control_forwards", "group_control_back", "enter_exit", "vehicle_fire", "vehicle_secondary_fire", "vehicle_left", "vehicle_right",
 "steer_forward", "steer_back", "accelerate", "brake_reverse", "radio_next", "radio_previous", "radio_user_track_skip", "horn", "sub_mission",
 "handbrake", "vehicle_look_left", "vehicle_look_right", "vehicle_look_behind", "vehicle_mouse_look", "special_control_left", "special_control_right",
 "special_control_down", "special_control_up"}

function getBoundControls(key) -- Função útil da Wiki (https://wiki.multitheftauto.com/wiki/GetBoundControls)
    local controls = {}
    for _, control in ipairs(controlTable) do
        for k in pairs(getBoundKeys(control)) do
            if (k == key) then
                controls[control] = true
            end
        end
    end
    return controls
end

function kick()
    triggerServerEvent("anticheat->kick", resourceRoot)
end

addEventHandler("onClientResourceStart", resourceRoot,
    function()
        if getBoundControls("space")["crouch"] and getBoundControls("space")["fire"] then
            kick()
        end
    end
)

addEventHandler("onClientPlayerWeaponFire", root,
    function()
        if source == localPlayer then
            if getBoundControls("space")["crouch"] and getBoundControls("space")["fire"] then
                kick()
            end
        end
    end
)

-- server-side
addEvent("anticheat->kick", true)
addEventHandler("anticheat->kick", resourceRoot,
    function()
        kickPlayer(client, "Console", "Retire suas binds.")
    end
)

 

Posted
15 hours ago, andreisrww said:

Tente isso:


-- client-side

local controlTable = {"fire", "next_weapon", "previous_weapon", "forwards", "backwards", "left", "right", "zoom_in", "zoom_out",
 "change_camera", "jump", "sprint", "look_behind", "crouch", "action", "walk", "aim_weapon", "conversation_yes", "conversation_no",
 "group_control_forwards", "group_control_back", "enter_exit", "vehicle_fire", "vehicle_secondary_fire", "vehicle_left", "vehicle_right",
 "steer_forward", "steer_back", "accelerate", "brake_reverse", "radio_next", "radio_previous", "radio_user_track_skip", "horn", "sub_mission",
 "handbrake", "vehicle_look_left", "vehicle_look_right", "vehicle_look_behind", "vehicle_mouse_look", "special_control_left", "special_control_right",
 "special_control_down", "special_control_up"}

function getBoundControls(key) -- Função útil da Wiki (https://wiki.multitheftauto.com/wiki/GetBoundControls)
    local controls = {}
    for _, control in ipairs(controlTable) do
        for k in pairs(getBoundKeys(control)) do
            if (k == key) then
                controls[control] = true
            end
        end
    end
    return controls
end

function kick()
    triggerServerEvent("anticheat->kick", resourceRoot)
end

addEventHandler("onClientResourceStart", resourceRoot,
    function()
        if getBoundControls("space")["crouch"] and getBoundControls("space")["fire"] then
            kick()
        end
    end
)

addEventHandler("onClientPlayerWeaponFire", root,
    function()
        if source == localPlayer then
            if getBoundControls("space")["crouch"] and getBoundControls("space")["fire"] then
                kick()
            end
        end
    end
)

-- server-side
addEvent("anticheat->kick", true)
addEventHandler("anticheat->kick", resourceRoot,
    function()
        kickPlayer(client, "Console", "Retire suas binds.")
    end
)

 

Funcionou bem, obrigado pela a ajuda de todos ;)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...