1LoL1 Posted October 11, 2015 Posted October 11, 2015 Hello, i copied and edited code from wiki but not work can anyone help me? Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'Name1' ] = 'Serial', [ 'Name2' ] = 'Serial', } addEventHandler ( 'onPlayerJoin', getRootElement ( ), function ( _, source ) local Serial = Firewall[getPlayerName(source)] if ( Serial ) then if Serial ~= getPlayerSerial ( source ) then kickPlayer ( source, "..." ) end end end )
ozulus Posted October 11, 2015 Posted October 11, 2015 Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'Name1' ] = 'Serial', [ 'Name2' ] = 'Serial', } addEventHandler ( 'onPlayerJoin', getRootElement ( ), function ( ) --no parameters!!! local Serial = Firewall[removeColorCode(getPlayerName(source))] if ( Serial ) then if Serial ~= getPlayerSerial ( source ) then kickPlayer ( source, "Reason: blabla" ) end end end ) function removeColorCode( s ) return s:gsub( '#%x%x%x%x%x%x', '' ) or s end
1LoL1 Posted October 11, 2015 Author Posted October 11, 2015 thanks but not work ._. 0 errors 0 warnings
iMr.SFA7 Posted October 11, 2015 Posted October 11, 2015 -- ' Server Side ' ; Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'Name1' ] = 'Serial', [ 'Name2' ] = 'Serial', } addEventHandler ( 'onPlayerJoin', root, function ( ) for Nick,Serial in ipairs ( Firewall ) do if getPlayerName ( source ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "..." ) end end end )
ozulus Posted October 11, 2015 Posted October 11, 2015 ipairs work only with number indexes and number indexes should be order -- ' Server Side ' ; Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'Name1' ] = 'Serial', [ 'Name2' ] = 'Serial', } addEventHandler ( 'onPlayerJoin', root, function ( ) for Nick,Serial in pairs ( Firewall ) do if getPlayerName ( source ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "..." ) end end end )
1LoL1 Posted October 11, 2015 Author Posted October 11, 2015 ipairs work only with number indexes and number indexes should be order -- ' Server Side ' ; Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'Name1' ] = 'Serial', [ 'Name2' ] = 'Serial', } addEventHandler ( 'onPlayerJoin', root, function ( ) for Nick,Serial in pairs ( Firewall ) do if getPlayerName ( source ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "..." ) end end end ) Thanks works but when i added 2nd addEventHandler not work and when i have hex code in nick i'am not kicked Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'TEST' ] = '9C9F3B55D9D7BB7135FF274D3BF444E4', [ 'Name2' ] = 'Serial', } function kick ( ) for Nick,Serial in pairs ( Firewall ) do if getPlayerName ( source ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "Reason: !" ) end end end addEventHandler ( 'onPlayerJoin', getRootElement(), kick) addEventHandler ( 'onPlayerChangeNick', getRootElement(), kick)
ozulus Posted October 12, 2015 Posted October 12, 2015 Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'TEST' ] = '9C9F3B55D9D7BB7135FF274D3BF444E4', [ 'Name2' ] = 'Serial', } function onPlayerJoin_KickHandler ( ) for Nick,Serial in pairs ( Firewall ) do if removeColorCode( getPlayerName ( source ) ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "Reason: !" ) end end end addEventHandler ( 'onPlayerJoin', getRootElement(), onPlayerJoin_KickHandler) function onPlayerChangeNick_KickHandler ( oldNick, newNick ) for Nick,Serial in pairs ( Firewall ) do if removeColorCode( newNick ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "Reason: !" ) end end end addEventHandler ( 'onPlayerChangeNick', getRootElement(), onPlayerChangeNick_KickHandler) function removeColorCode( s ) return s:gsub( '#%x%x%x%x%x%x', '' ) or s end
1LoL1 Posted October 12, 2015 Author Posted October 12, 2015 Firewall = { [ 'PlayerName' ] = 'SerialPlayer', [ 'TEST' ] = '9C9F3B55D9D7BB7135FF274D3BF444E4', [ 'Name2' ] = 'Serial', } function onPlayerJoin_KickHandler ( ) for Nick,Serial in pairs ( Firewall ) do if removeColorCode( getPlayerName ( source ) ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "Reason: !" ) end end end addEventHandler ( 'onPlayerJoin', getRootElement(), onPlayerJoin_KickHandler) function onPlayerChangeNick_KickHandler ( oldNick, newNick ) for Nick,Serial in pairs ( Firewall ) do if removeColorCode( newNick ) == Nick and getPlayerSerial ( source ) ~= Serial then kickPlayer ( source, "Reason: !" ) end end end addEventHandler ( 'onPlayerChangeNick', getRootElement(), onPlayerChangeNick_KickHandler) function removeColorCode( s ) return s:gsub( '#%x%x%x%x%x%x', '' ) or s end Thanks works.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now