#Skript created by lolipop0 #Do not distribute! on first join: set {register.v.%player%} to false set {au.toggle} to false set {ip.%player%} to ip of player on join: set {login.%player%} to false add 3 to {attempts} add 1 to {all.count} if {register.v.%player%} is true: while {login.%player%} is false: wait 3 seconds send "&7[&5&lEND&9&lSEC&7]&8 You are not logged in! Type &9/login &8to log in!" apply blindness 1 to the player for 3 seconds else: while {register.v.%player%} is false: wait 1 second send "&7[&5&lEND&9&lSEC&7]&8 YOU ARE NOT REGISTERED! TYPE &3/reg &8to register!" to player on quit: set {login.%player%} to false command /reg : trigger: if {register.v.%player%} is false: set {password.%player%} to text-argument hashed with SHA-256 send "&7[&5&lEND&9&lSEC&7]&8 You succesfully registered! ✔" set {register.v.%player%} to true else: send "&7[&5&lEND&9&lSEC&7]&8 You are already registered! Type &9/es help &8for help!" command /ip : trigger: if arg 1 is {ip.%player%}: set {ip.%player%} to ip of player send "&7[&5&lEND&9&lSEC&7]&8 Your ip has been updated! Remember it! IP:&9 %{ip.%player%}%" else: send "&7[&5&lEND&9&lSEC&7]&8 WRONG IP!" command /login : trigger: if {au.toggle} is true: if ip of player is {ip.%player%}: if {register.v.%player%} is true: if {attempts} is more than 0: {password.%player%} is text-argument hashed with SHA-256: send "&7[&5&lEND&9&lSEC&7]&8 Logged in! ✔" to player play "BLOCK_NOTE_PLING" to player at volume 10 set {login.%player%} to true set {attempts} to 0 add 1 to {s.count} if {ip.%player%} is none: send "&7[&5&lEND&9&lSEC&7]&8 You should set your ip to save account! Type: /regip" to player else: send "&7[&5&lEND&9&lSEC&7]&8 Wrong Password! ✖ Remaining Attempts: &4&l%{attempts}% " to player play "BLOCK_ANVIL_LAND" to player at volume 10 remove 1 from {attempts} else: kick player add 1 to {bl.count} else: send "&7[&5&lEND&9&lSEC&7]&8 YOU ARE NOT REGISTERED! TYPE &3/reg &8to register!" else: send "&7[&5&lEND&9&lSEC&7]&8 You can't login with that ip! You can recover account, just type /ip " else: if {register.v.%player%} is true: if {attempts} is more than 0: {password.%player%} is text-argument hashed with SHA-256: send "&7[&5&lEND&9&lSEC&7]&8 Logged in! ✔" to player set {login.%player%} to true set {attempts} to 0 add 1 to {s.count} if {ip.%player%} is none: send "&7[&5&lEND&9&lSEC&7]&8 You should set your ip to save account! Type: /regip" to player else: send "&7[&5&lEND&9&lSEC&7]&8 Wrong Password! ✖ Remaining Attempts: &4&l%{attempts}% " to player remove 1 from {attempts} else: kick player add 1 to {bl.count} on chat: if {register.v.%player%} or {login.%player%} is false: cancel event on any move: if {login.%player%} or {register.v.%player%} is false: cancel event on inventory click: if {register.v.%player%} or {login.%player%} is false: cancel event on place: if {login.%player%} or {register.v.%player%} is false: cancel event on break: if {register.v.%player%} or {login.%player%} is false: cancel event on command: if {login.%player%} or {register.v.%player%} is false: if command is not "login" or "reg" or "ip": cancel event send "&7[&5&lEND&9&lSEC&7]&8 You must login first!" to player command /endsec [] [] []: trigger: if arg 1 is "info": send "&5&lEND&9&lSEC &7info: " send " &7Player name: &9%player%" send " &7Logins:" send " &7✔ Successfull: &a&l%{s.count}%" send " &7✕ Wrong logins: &4&l%{bl.count}%" send " &7✻ Joins: &8&l%{all.count}%" send " &7Your registered IP: &9%{ip.%player%}%" else if arg 1 is "help": send "&5&lEND&9&lSEC &7commands:" send " &7/login - &9login to server" send " &7/reg - &9register" send " &7IP AUTHENTICATION:" send " &7/endsec au regip - &9register your current ip &4 BE CAREFUL!" send " &7/endsec au toggle on/off - &9authentication toggling" send " &7/ip - &9 This command is for account recovery" else if arg 1 is "au": if arg 2 is "regip": if {register.v.%player%} is true: set {ip.%player%} to ip of player if {sounds} is true: play "BLOCK_ENDERCHEST_OPEN" to player at volume 10 send "&7[&5&lEND&9&lSEC&7]&8 Your ip has been saved! You can now login only with that ip, but when you change pc you can use /ip to change it! IP: &9%{ip.%player%}%" else if arg 2 is "toggle": if arg 3 is "on": if ip of player is {ip.%player%}: set {au.toggle} to true play "BLOCK_NOTE_PLING" to player at volume 10 send "&7[&5&lEND&9&lSEC&7]&8 Ip authentication toggled on! IP: &9%{ip.%player%}%" else: send "&7[&5&lEND&9&lSEC&7]&8 You can't turn on ip authentication on ip of your current session!" else if arg 3 is "off": set {au.toggle} to false play "BLOCK_NOTE_BASS" to player at volume 10 send "&7[&5&lEND&9&lSEC&7]&8 Ip authentication toggled off!" else: send "&7[&5&lEND&9&lSEC&7]&8 Bad syntax! Type &9/endsec help &8to display help!"