Jump to content

anti bind


Recommended Posts

jajajja no NodZen no me refiero a eso... a los binds de los player me refiero a esto :

(/bind f4 say #ff0000 PhantomDamn Es Puto )

Haber si entendí. Tu quieres que cuando aprietes F4 salga en la consola un texto?

No. El se refiere si hay alguna manera que los jugadores no puedan crear y usar binds en el chat por ejemplo para que no haya spam. @PhantomDamn Creo que no hay.

Link to comment

cheka esto

function preventCommandSpam() 
    if (not commandSpam[source]) then 
        commandSpam[source] = 1 
    elseif (commandSpam[source] == 5) then 
        cancelEvent() 
        outputChatBox("No SPAM", source, 255, 0, 0) 
    else 
        commandSpam[source] = commandSpam[source] + 1 
    end 
end 
addEventHandler("onPlayerCommand", root, preventCommandSpam) 
setTimer(function() commandSpam = {} end, 1000, 0) 

Link to comment

El Código de la wiki es para todos los comandos, para evitar algún error posible, te recomiendo comparar si el comando ejecutado fue "say" (El comando que se ejecuta al chatear).

local commandSpam = {} --Había faltado definir 'commandSpam' en un principio. 
 function preventCommandSpam( command ) 
 if command == "say" then 
    if (not commandSpam[source]) then 
        commandSpam[source] = 1 
    elseif (commandSpam[source] == 5) then 
        cancelEvent() 
        outputChatBox("Please refrain from command spamming!", source, 255, 0, 0) 
    else 
        commandSpam[source] = commandSpam[source] + 1 
    end 
  end 
end 
addEventHandler("onPlayerCommand", root, preventCommandSpam) 
setTimer(function() commandSpam = {} end, 1000, 0) 

PD: De todas formas yo utilizo el ejemplo de la wiki tal y como esta para evitar que los users sobreutilizen algunos comandos.

Link to comment
El Código de la wiki es para todos los comandos, para evitar algún error posible, te recomiendo comparar si el comando ejecutado fue "say" (El comando que se ejecuta al chatear).
local commandSpam = {} --Había faltado definir 'commandSpam' en un principio. 
 function preventCommandSpam( command ) 
 if command == "say" then 
    if (not commandSpam[source]) then 
        commandSpam[source] = 1 
    elseif (commandSpam[source] == 5) then 
        cancelEvent() 
        outputChatBox("No SPAM", source, 255, 0, 0) 
    else 
        commandSpam[source] = commandSpam[source] + 1 
    end 
  end 
end 
addEventHandler("onPlayerCommand", root, preventCommandSpam) 
setTimer(function() commandSpam = {} end, 1000, 0) 

Se supone que la tecla T se aplica al comando nativo say.

Osea que tampoco podra hablar segidas veces en bajos intervalos de segundos de diferencia?

Link to comment

Exacto, la misma wiki lo dice:

Note: This event triggers regardless of whether the command exists or not. Also, typing anything in chat will execute command "say", so this event will be triggered on every chat message as well.
Link to comment

Voy a tratar de explicarte cómo puedes hacerlo: Tu cuando escribes en el chat pulsas la T, ¿no? Pues bien, haces que al pulsar la t ponga un setElementData que diga que ha pulsado la t, y al evento que sale cuando pones algo en el chat (onPlayerChat o algo así) compruebas ese element data y si da false cancelas el evento, de esta manera si no han pulsado T para escribir no pueden poner un bind. Si ha pulsado t, entonces le pones el setElementData en false y así la próxima vez que tenga que escribir tendrá que volver a usar la T, ¿me he explicado bien? No sé si funcionará porque no lo he probado.

Saludos,

Link to comment
  • 3 weeks later...
  • Recently Browsing   0 members

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