Update messages + Fix MaxJoin/LoginPerIP

This commit is contained in:
Xephi 2014-07-23 20:20:39 +02:00
parent 964e66a370
commit a55e99a2c5
9 changed files with 214 additions and 138 deletions

View File

@ -29,7 +29,7 @@
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
<version>1.7.9-R0.2</version>
<version>1.7.10-R0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>net.milkbowl.vault</groupId>

View File

@ -737,7 +737,7 @@ public class AuthMe extends JavaPlugin {
}
private Location getAuthMeSpawn(Player player) {
if ((!database.isAuthAvailable(player.getName().toLowerCase()) || !player.hasPlayedBefore()) && Spawn.getInstance().getFirstSpawn() != null)
if ((!database.isAuthAvailable(player.getName().toLowerCase()) || !player.hasPlayedBefore()) && (Spawn.getInstance().getFirstSpawn() != null))
return Spawn.getInstance().getFirstSpawn();
if (Spawn.getInstance().getSpawn() != null)
return Spawn.getInstance().getSpawn();
@ -848,18 +848,24 @@ public class AuthMe extends JavaPlugin {
}
public boolean isLoggedIp(String name, String ip) {
int count = 0;
for (Player player : this.getServer().getOnlinePlayers()) {
if(ip.equalsIgnoreCase(getIP(player)) && database.isLogged(player.getName().toLowerCase()) && !player.getName().equalsIgnoreCase(name))
return true;
count++;
}
if (count >= Settings.getMaxLoginPerIp)
return true;
return false;
}
public boolean hasJoinedIp(String name, String ip) {
int count = 0;
for (Player player : this.getServer().getOnlinePlayers()) {
if(ip.equalsIgnoreCase(getIP(player)) && !player.getName().equalsIgnoreCase(name))
return true;
count++;
}
if (count >= Settings.getMaxJoinPerIp)
return true;
return false;
}

View File

@ -729,6 +729,12 @@ public class AuthMePlayerListener implements Listener {
player.teleport(spawnLoc);
return;
}
Block c = player.getLocation().add(0D, 1D, 0D).getBlock();
if (c.getType() == Material.PORTAL || c.getType() == Material.ENDER_PORTAL || c.getType() == Material.LAVA || c.getType() == Material.STATIONARY_LAVA) {
m._(player, "unsafe_spawn");
player.teleport(spawnLoc);
return;
}
}
@EventHandler(priority = EventPriority.MONITOR)

View File

@ -7,10 +7,9 @@ public class ROYALAUTH implements EncryptionMethod {
@Override
public String getHash(String password, String salt, String name) throws NoSuchAlgorithmException {
String data = "";
for (int i = 0; i < 25; i++)
data = hash(data, salt);
return data;
password = hash(password, salt);
return password;
}
public String hash(String password, String salt) throws NoSuchAlgorithmException {

View File

@ -726,6 +726,6 @@ public static void reloadConfigOptions(YamlConfiguration newConfig) {
}
public enum messagesLang {
en, de, br, cz, pl, fr, uk, ru, hu, sk, es, fi, zhtw, zhhk, zhcn, lt, it, ko, pt, nl
en, de, br, cz, pl, fr, uk, ru, hu, sk, es, fi, zhtw, zhhk, zhcn, lt, it, ko, pt, nl, gl
}
}

View File

@ -1,56 +1,57 @@
unknown_user: '&fUser is not in database'
unsafe_spawn: '&fYour Quit location was unsafe, teleporting you to World Spawn'
unsafe_spawn: '&fYour quit location was unsafe, teleporting you to world spawn'
not_logged_in: '&cNot logged in!'
reg_voluntarily: '&fYou can register your nickname with the server with the command "/register password ConfirmPassword"'
reg_voluntarily: '&fYou can register your nickname with the command "/register password ConfirmPassword"'
usage_log: '&cUsage: /login password'
wrong_pwd: '&cWrong password'
unregistered: '&cSuccessfully unregistered!'
reg_disabled: '&cRegistration is disabled'
valid_session: '&cSession login'
login: '&cSuccessful login!'
vb_nonActiv: '&fYour Account isent Activated yet check your Emails!'
vb_nonActiv: '&fYour account isn''t activated yet, check your emails!'
user_regged: '&cUsername already registered'
usage_reg: '&cUsage: /register password ConfirmPassword'
max_reg: '&fYou have Exeded the max number of Registration for your Account'
max_reg: '&fYou have exceeded the max number of registrations for your account'
no_perm: '&cNo Permission'
error: '&fAn error ocurred; Please contact the admin'
error: '&fAn error occurred; Please contact the admin'
login_msg: '&cPlease login with "/login password"'
reg_msg: '&cPlease register with "/register password ConfirmPassword"'
reg_email_msg: '&cPlease register with "/register <email> <confirmEmail>"'
usage_unreg: '&cUsage: /unregister password'
pwd_changed: '&cPassword changed!'
user_unknown: '&cUsername not registered'
password_error: '&fPassword doesnt match'
unvalid_session: '&fSession Dataes doesnt corrispond Plaese wait the end of session'
password_error: '&fPassword doesn''t match'
invalid_session: '&fSession dates do not correspond. Please wait until the end of the session'
reg_only: '&fRegistered players only! Please visit http://example.com to register'
logged_in: '&cAlready logged in!'
logout: '&cSuccessful logout'
logout: '&cSuccessfully logged out'
same_nick: '&fSame nick is already playing'
registered: '&cSuccessfully registered!'
pass_len: '&fYour password dind''t reach the minimum length or exeded the max length'
pass_len: '&fYour password didn''t reach the minimum length or exceeded the max length'
reload: '&fConfiguration and database has been reloaded'
timeout: '&fLogin Timeout'
timeout: '&fLogin timeout, please try again'
usage_changepassword: '&fUsage: /changepassword oldPassword newPassword'
name_len: '&cYour nickname is too Short or too long'
name_len: '&cYour nickname is either too short or too long'
regex: '&cYour nickname contains illegal characters. Allowed chars: REG_EX'
add_email: '&cPlease add your email with : /email add yourEmail confirmEmail'
bad_database_email: '[AuthMe] This /email command only available with MySQL and SQLite, contact an Admin'
bad_database_email: '[AuthMe] This /email command only available with MySQL and SQLite, contact an admin'
recovery_email: '&cForgot your password? Please use /email recovery <yourEmail>'
usage_captcha: '&cYou need to type a captcha, please type: /captcha <theCaptcha>'
wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA'
valid_captcha: '&cYour captcha is valid !'
kick_forvip: '&cA VIP Player join the full server!'
kick_fullserver: '&cThe server is actually full, Sorry!'
usage_email_add: '&fUsage: /email add <email> <confirmeEmail> '
usage_email_change: '&fUsage: /email change oldEmail> <newEmail> '
valid_captcha: '&cYour captcha is valid!'
kick_forvip: '&cA VIP Players are only able to join the server when full!'
kick_fullserver: '&cThe server is full, try again later'
usage_email_add: '&fUsage: /email add <email> <confirmEmail> '
usage_email_change: '&fUsage: /email change <oldEmail> <newEmail> '
usage_email_recovery: '&fUsage: /email recovery <Email>'
new_email_invalid: '[AuthMe] New email invalid!'
old_email_invalid: '[AuthMe] Old email invalid!'
email_invalid: '[AuthMe] Invalid Email'
email_added: '[AuthMe] Email Added !'
email_confirm: '[AuthMe] Confirm your Email !'
email_changed: '[AuthMe] Email Change !'
email_send: '[AuthMe] Recovery Email Send !'
email_invalid: '[AuthMe] Invalid email'
email_added: '[AuthMe] Email Added!'
email_confirm: '[AuthMe] Confirm your email!'
email_changed: '[AuthMe] Email changed!'
email_send: '[AuthMe] Recovery email sent!'
email_exists: '[AuthMe] An email already exists on your account. You can change it using the command below'
country_banned: 'Your country is banned from this server'
antibot_auto_enabled: '[AuthMe] AntiBotMod automatically enabled due to massive connections!'
antibot_auto_disabled: '[AuthMe] AntiBotMod automatically disabled after %m Minutes, hope invasion stopped'
antibot_auto_enabled: '[AuthMe] AntiBotMod automatically enabled due to the number of connections!'
antibot_auto_disabled: '[AuthMe] AntiBotMod automatically disabled after %m minutes'

View File

@ -0,0 +1,59 @@
unknown_user: '&fO usuario non está na base de datos'
unsafe_spawn: '&fA localización dende a que saíches era insegura, teletransportándote ao spawn do mundo'
not_logged_in: '&cNon te identificaches!'
reg_voluntarily: '&fPodes rexistrar o teu nome no servidor co comando
"/register <contrasinal> <confirmarContrasinal>"'
usage_log: '&cUso: /login <contrasinal>'
wrong_pwd: '&cContrasinal equivocado'
unregistered: '&cFeito! Xa non estás rexistrado!'
reg_disabled: '&cO rexistro está deshabilitado'
valid_session: '&cIdentificado mediante a sesión'
login: '&cIdentificación con éxito!'
vb_nonActiv: '&fA t&uacute;a conta aínda non está activada, comproba a t&uacute;a bandexa de correo!!'
user_regged: '&cEse nome de usuario xa está rexistrado'
usage_reg: '&cUso: /register contrasinal confirmarContrasinal'
max_reg: '&fExcediches o máximo de rexistros para a t&uacute;a Conta'
no_perm: '&cNon tes o permiso'
error: '&fOcurriu un erro; contacta cun administrador'
login_msg: '&cPor favor, identifícate con "/login <password>"'
reg_msg: '&cPor favor, rexístrate con "/register <contrasinal> <confirmarContrasinal>"'
reg_email_msg: '&cPor favor, rexístrate con "/register <email> <confirmarEmail>"'
usage_unreg: '&cUso: /unregister <contrasinal>'
pwd_changed: '&cCambiouse o contrasinal!'
user_unknown: '&cEse nome de usuario non está rexistrado'
password_error: '&fO contrasinal non coincide'
unvalid_session: '&fOs datos de sesión non corresponden, por favor, espere a que remate a sesión'
reg_only: '&fSó xogadores rexistrados! Por favor, visita http://example.com para rexistrarte'
logged_in: '&cXa estás identificado!'
logout: '&cSesión pechada con éxito'
same_nick: '&fXa está xogando alguén co mesmo nome'
registered: '&cRexistrado con éxito!'
pass_len: '&fO teu contrasinal non alcanza a lonxitude mínima ou excede a lonxitude máxima'
reload: '&fRecargáronse a configuración e a base de datos'
timeout: '&fRematou o tempo da autentificación'
usage_changepassword: '&fUso: /changepassword <contrasinalVello> <contrasinalNovo>'
name_len: '&cO teu nome é demasiado curto ou demasiado longo'
regex: '&cO teu nome contén caracteres ilegais. Caracteres permitidos: REG_EX'
add_email: '&cPor favor, engade o teu correo electrónico con: /email add <oTeuCorreo> <confirmarCorreo>'
bad_database_email: '[AuthMe] Este comando /email só está dispoñible con MySQL e SQLite,
contacta cun administrador'
recovery_email: '&cOlvidaches o contrasinal? Por favor, usa /email recovery <oTeuCorreo>'
usage_captcha: '&cNecesitas escribir un captcha, por favor escribe: /captcha <oCaptcha>'
wrong_captcha: '&cCaptcha equivocado, por favor usa: /captcha THE_CAPTCHA'
valid_captcha: '&cO teu captcha é válido !'
kick_forvip: '&cUn xogador VIP uniuse ao servidor cheo!'
kick_fullserver: '&cO servidor está actualmente cheo, sentímolo!'
usage_email_add: '&fUso: /email add <correo> <confirmeCorreo> '
usage_email_change: '&fUso: /email change <correoVello> <correoNovo> '
usage_email_recovery: '&fUso: /email recovery <correo>'
new_email_invalid: '[AuthMe] O novo correo non é válido!'
old_email_invalid: '[AuthMe] O correo vello non é válido!'
email_invalid: '[AuthMe] Correo non válido'
email_added: '[AuthMe] Correo engadido!'
email_confirm: '[AuthMe] Confirma o teu correo!'
email_changed: '[AuthMe] Cambiouse o correo!'
email_send: '[AuthMe] Enviouse o correo de confirmación!'
country_banned: 'O teu país está bloqueado neste servidor'
antibot_auto_enabled: '[AuthMe] AntiBotMod conectouse automáticamente debido a conexións masivas!'
antibot_auto_disabled: '[AuthMe] AntiBotMod desactivouse automáticamente despois de %m minutos,
esperemos que a invasión se detivera'

View File

@ -1,56 +1,61 @@
unknown_user: 사용자는 데이터베이스에 없습니다
unsafe_spawn: 당신이 나갔던 위치는 안전하지 않았습니다, 당신을 윌드 스폰으로 텔레포트시킵니다
not_logged_in: '&c로그인하지 않았습니다!'
reg_voluntarily: 당신이 서버에 게정을 등록하고 싶다면 "/register 비밀번호 비밀번호재입력"을 치세요
# Korean translate by wolfwork #
# wolfdate25@gmail.com #
# 28.06.2014 Thanks for use #
unknown_user: '&f사용자가 데이터베이스에 존재하지 않습니다'
unsafe_spawn: '&f당신이 종료한 위치는 안전하지 않았습니다, 세계의 소환지점으로 이동합니다'
not_logged_in: '&c접속되어있지 않습니다!'
reg_voluntarily: '&f당신은 당신의 이름을 "/register 비밀번호 비밀번호확인" 명령어로 가입하실 수 있습니다'
usage_log: '&c사용법: /login 비밀번호'
wrong_pwd: '&c잘못된 비밀번호입니다'
unregistered: '&c성공적으로 회원탈퇴되었습니다!'
reg_disabled: '&c회원가입이 성공적으로 비활성화되었습니다'
unregistered: '&c성공적으로 탈퇴했습니다!'
reg_disabled: '&c가입이 비활성화 되어있습니다'
valid_session: '&c세션 로그인'
login: '&c성공적으로 로그인 되었습니다!'
vb_nonActiv: 당신의 계정은 활성화되어 있지 않습니다 당신의 이메일을 체크해주세요!
user_regged: '&c사용자 이름은 이미 등록되어 있습니다'
usage_reg: '&c사용법: /register 비밀번호 비밀번호재입력'
max_reg: 당신은 가입할 수 있는 계정의 최대 한도 수를 넘었습니다
login: '&c성공적인 접속입니다!'
vb_nonActiv: '&f당신의 계정은 아직 활성화되어있지 않습니다, 당신의 이메일을 확인해보세요!'
user_regged: '&c사용자이름은 이미 가입했습니다'
usage_reg: '&c사용법: /register 비밀번호 비밀번호확인'
max_reg: '&f당신은 가입할 수 있는 계정의 최대 한도를 초과했습니다'
no_perm: '&c권한이 없습니다'
error: 오류가 발생했습니다; 관리자한테 문의하세요
login_msg: '&c로그인 하실려면 "/login 비밀번호"를 치세요'
error: '&f오류가 발생했습니다; 관리자에게 문의해주세요'
login_msg: '&c접속 하실려면 "/login 비밀번호"를 치세요'
reg_msg: '&c가입하실려면 "/register 비밀번호 비밀번호재입력"을 치세요'
reg_email_msg: '&c가입하실려면 "/register <이메일> <이메일재입력>을 치세요"'
reg_email_msg: '&c가입하실려면 "/register <전자우편> <전자우편재입력>을 치세요"'
usage_unreg: '&c사용법: /unregister 비밀번호'
pwd_changed: '&c비밀번호가 변경되었습니다!'
user_unknown: '&c사용자 이름은 등록되지 않았습니다'
password_error: 비밀번호가 일치하지 않습니다
unvalid_session: 세션 데이터베이스가 일치하지 않습니다 세션이 끝날때 까지 기달려주세요
reg_only: 회원가입은 플레이어만 할 수 있습니다! http://example.com 에 가입해주세요
logged_in: '&c이미 로그인되어 있습니다!'
logout: '&c성공적으로 로그아웃되었습니다'
same_nick: 같은 닉네임이 이미 게임중입니다
registered: '&c성공적으로 회원가입되었습니다!'
pass_len: 당신의 비밀번호는 최소 글자나 최대글자를 초과하였습니다 적당한 비밀번호 글자로 해주세요
reload: 설정과 데이터베이스가 리로드되었습니다
timeout: 로그인 시간 초과
usage_changepassword: '사용법: /changepassword 기존비밀번호 새비밀번호'
name_len: '&c당신의 닉네임은 너무 길거나 짧습니다'
regex: '&c당신의 닉네임에 잘못된 문자가 포함되어 있습니다. 허용된 글자: REG_EX'
add_email: '&c당신의 이메일을 : /email add yourEmail confirmEmail 명령어로 추가해주세요'
bad_database_email: '[AuthMe] /email 명령어는 오직 MySQL 와 SQLite에서만 가능합니다, 관리자에게 문의해세요'
recovery_email: '&c비밀번호를 잊어버리셨다고요? /email recovery <자신의이메일>을 사용해서 복구해보세요'
usage_captcha: '&c사용법: /captcha <캡차>'
wrong_captcha: '&c잘못된 캡차입니다, 올바른 사용법 : /captcha THE_CAPTCHA'
valid_captcha: '&c당신의 캡차는 올바릅니다 !'
kick_forvip: '&c한 VIP 플레이어가 만원인 서버에 입장했습니다!!'
kick_fullserver: '&c그 서버는 실제로 만원입니다, 미안!'
usage_email_add: '&f사용법: /email add <이메일> <이메일재입력> '
usage_email_change: '&f사용법: /email change <기존이메일> <새이메일> '
pwd_changed: '&c비밀번호를 변경했습니다!'
user_unknown: '&c사용자이름은 가입되지 않았습니다'
password_error: '&f비밀번호가 일치하지 않습니다'
invalid_session: '&f세션일자가 적합하지 않습니다. 세션이 종료될 때까지 기다려주세요'
reg_only: '&f가입한 플레이어만이 가능합니다! 가입하실려면 http://example.com 에 방문해주세요'
logged_in: '&c이미 접속되었습니다!'
logout: '&c성공적으로 접속해제하였습니다'
same_nick: '&f같은 이름으로 이미 플레이하고 있습니다'
registered: '&c성공적으로 가입했습니다!'
pass_len: '&f당신의 비밀번호는 최소 길이에 미치지 않거나 최대 길이를 초과했습니다'
reload: '&f설정과 데이터베이스는 갱신되었습니다'
timeout: '&f접속시간 초과, 다시 시도해주세요'
usage_changepassword: '&f사용법: /changepassword 기존비밀번호 새로운비밀번호'
name_len: '&c당신의 이름은 너무 짧거나 너무 깁니다'
regex: '&c당신의 이름에는 불법적인 글자들이 포함되어있습니다. 허용된 글자: REG_EX'
add_email: '&c당신의 이메일을 추가해주세요 : /email add 당신의이메일 이메일재입력'
bad_database_email: '[AuthMe] /email 명령어는 오직 MySQL와 SQLite에서만 가능합니다, 관리자에게 문의해세요'
recovery_email: '&c비밀번호를 잊어버리셨다고요? /email recovery <당신의이메일>을 사용하세요'
usage_captcha: '&c보안문자 입력이 필요합니다, 입력해주세요: /captcha <theCaptcha>'
wrong_captcha: '&c잘못된 보안문자, 사용해주세요 : /captcha THE_CAPTCHA'
valid_captcha: '&c당신의 보안문자는 적합합니다!'
kick_forvip: '&c서버가 만원인 상태일때 VIP 플레이어들만 입장이 가능합니다!'
kick_fullserver: '&c서버가 만원입니다, 나중에 다시 시도해주세요'
usage_email_add: '&f사용법: /email add <이메일> <이메일확인> '
usage_email_change: '&f사용법: /email change <기존이메일> <새로운이메일> '
usage_email_recovery: '&f사용법: /email recovery <이메일>'
new_email_invalid: '[AuthMe] 새 이메일이 잘못되었습니다!'
old_email_invalid: '[AuthMe] 기존 이메일이 잘못되었습니다!'
email_invalid: '[AuthMe] 이메일이 잘못되었습니다'
email_added: '[AuthMe] 이메일 추가됨 !'
email_confirm: '[AuthMe] 이메일을 확인해주세요 !'
email_changed: '[AuthMe] 이메일 변경됨 !'
email_send: '[AuthMe] 복구 이메일 발송됨 !'
country_banned: '당신의 나라는 이 서버에서 차단되어 있습니다'
antibot_auto_enabled: '[AuthMe] 안티봇모드는 많은 양의 연결 때문에 자동적으로 활성화됩니다!'
antibot_auto_disabled: '[AuthMe] 안티봇모드는 %m 분 후에 자동적으로 비활성화됩니다, 침입이 없습니다'
new_email_invalid: '[AuthMe] 새 이메일이 올바르지 않습니다!'
old_email_invalid: '[AuthMe] 기존 이메일이 올바르지 않습니다!'
email_invalid: '[AuthMe] 올바르지 않은 이메일'
email_added: '[AuthMe] 이메일을 추가했습니다!'
email_confirm: '[AuthMe] 당신의 이메일을 확인하세요!'
email_changed: '[AuthMe] 이메일이 변경되었습니다!'
email_send: '[AuthMe] 복구 이메일을 보냈습니다!'
email_exists: '[AuthMe] 당신의 계정에 이미 이메일이 존재합니다. 아래의 명령어를 통해 이메일을 변경하실 수 있습니다'
country_banned: '당신의 국가는 이 서버에서 차단당했습니다'
antibot_auto_enabled: '[AuthMe] 안티봇모드가 연결 개수 때문에 자동적으로 활성화됩니다!'
antibot_auto_disabled: '[AuthMe] 안티봇모드가 %m 분 후에 자동적으로 비활성화됩니다'

View File

@ -1,59 +1,59 @@
# Translator: uSoc_lifehome (http://lifeho.me) #
# '-- Last edit: 1387032046 UTC #
# '-- Last edit: 1405878032 UTC #
# -------------------------------------------- #
unknown_user: '&3[&b用戶系統&3] &f用戶資料並不存在於資料庫中 。'
unsafe_spawn: '&3[&b用戶系統&3] &f你的登出位置不安全 現在將傳送你到重生點 。'
not_logged_in: '&3[&b用戶系統&3] &c你還沒有登入 '
reg_voluntarily: '&3[&b用戶系統&3] &f你可以使用這個的指令來註冊 《 /register <密碼> <重覆密碼> 》'
usage_log: '&3[&b用戶系統&3] &c用法 《 /login <密碼> 》'
wrong_pwd: '&3[&b用戶系統&3] &c你輸入了錯誤的密碼 。'
unregistered: '&3[&b用戶系統&3] &c你已成功取消會員註冊記錄 。'
reg_disabled: '&3[&b用戶系統&3] &c本伺服器已停止新玩家註冊 。'
valid_session: '&3[&b用戶系統&3] &b嗨 我記得你 歡迎回來 '
login: '&3[&b用戶系統&3] &c你成功的登入了 。'
vb_nonActiv: '&3[&b用戶系統&3] &f你的帳戶還沒有經過電郵驗證 '
user_regged: '&3[&b用戶系統&3] &c此用戶名已經註冊過了 。'
usage_reg: '&3[&b用戶系統&3] &c用法 《 /register <密碼> <重覆密碼> 》'
max_reg: '&3[&b用戶系統&3] &f你的IP地址已達到註冊數上限 。'
no_perm: '&3[&b用戶系統&3] &b你可以到 CraftingHK 玩家百科中查看說明文件。'
error: '&3[&b用戶系統&3] &f發生錯誤 請與管理員聯絡 。'
login_msg: '&3[&b用戶系統&3] &c請使用這個指令來登入 《 /login <密碼> 》'
reg_msg: '&3[&b用戶系統&3] &c請使用這個的指令來註冊 《 /register <密碼> <重覆密碼> 》'
reg_email_msg: '&3[&b用戶系統&3] &c請使用這個的指令來註冊 《 /register <電郵> <重覆電郵> 》'
usage_unreg: '&3[&b用戶系統&3] &c用法 《 /unregister <密碼> 》'
pwd_changed: '&3[&b用戶系統&3] &c你成功的更換了你的密碼 '
user_unknown: '&3[&b用戶系統&3] &c此用戶名沒有已登記資料 。'
password_error: '&3[&b用戶系統&3] &f密碼不符合 。'
unvalid_session: '&3[&b用戶系統&3] &f登入階段資料已損壞 請等待登入階段結束 。'
reg_only: '&3[&b用戶系統&3] &f限已註冊會員 請先到 https://craftinghk.com/mcauth 註冊 。'
logged_in: '&3[&b用戶系統&3] &c你已經登入過了 。'
logout: '&3[&b用戶系統&3] &b你成功的登出了 。'
same_nick: '&3[&b用戶系統&3] &f同名玩家已在遊玩 。'
registered: '&3[&b用戶系統&3] &b你成功的註冊了 。'
pass_len: '&3[&b用戶系統&3] &f你的密碼並不符合規定長度 。'
reload: '&3[&b用戶系統&3] &b登入系統設定及資料庫重新載入完畢 。'
timeout: '&3[&b用戶系統&3] &f登入逾時 。'
usage_changepassword: '&3[&b用戶系統&3] &f用法 《 /changepassword <舊密碼> <新密碼> 》'
name_len: '&3[&b用戶系統&3] &c你的用戶名不符合規定長度 。'
regex: '&3[&b用戶系統&3] &c你的用戶名含有不容許之字符。以下為准許之字母 REG_EX'
add_email: '&3[&b用戶系統&3] &b請為你的帳戶立即添加電郵地址 《 /email add <電郵地址> <重覆電郵地址> 》'
bad_database_email: '&3[&b用戶系統&3] 此指令只適用於使用MySQL或SQLite之伺服器。'
recovery_email: '&3[&b用戶系統&3] &c忘記密碼 請使用這個的指令來更新密碼 《 /email recovery <電郵地址> 》'
usage_captcha: '&3[&b用戶系統&3] &c用法 《 /captcha <驗證碼> 》'
wrong_captcha: '&3[&b用戶系統&3] &c你輸入了錯誤的驗證碼請使用 《 /captcha <驗證碼> 》 再次輸入 。'
valid_captcha: '&3[&b用戶系統&3] &c你所輸入的驗證碼是無效的 '
kick_forvip: '&c因為有VIP玩家登入了伺服器 。'
kick_fullserver: '&c抱歉 因為有VIP玩家登入了伺服器所以你因為伺服器滿人而被踢出了 。'
usage_email_add: '&3[&b用戶系統&3] &f用法 《 /email add <電郵> <重覆電郵> 》'
usage_email_change: '&3[&b用戶系統&3] &f用法 《 /email change <舊電郵> <新電郵> 》'
usage_email_recovery: '&3[&b用戶系統&3] &f用法 《 /email recovery <電郵> 》'
new_email_invalid: '&3[&b用戶系統&3] 你所填寫的新電郵地址並不正確 。'
old_email_invalid: '&3[&b用戶系統&3] 你所填寫的舊電郵地址並不正確 。'
email_invalid: '&3[&b用戶系統&3] 你所填寫的電郵地址並不正確 。'
email_added: '&3[&b用戶系統&3] 已加入你的電郵地址記錄 。'
email_confirm: '&3[&b用戶系統&3] 請重覆輸入你的電郵地址 。'
email_changed: '&3[&b用戶系統&3] 你的電郵地址記錄已更改 。'
email_send: '&3[&b用戶系統&3] 忘記密碼信件已寄出,請查收 。'
country_banned: '&3[&b用戶系統&3] 本伺服器已停止對你的國家提供遊戲服務 。'
antibot_auto_enabled: '&3[&b用戶系統&3] 防止機械人程序已因應現時大量不尋常的連線而啟用 。'
antibot_auto_disabled: '&3[&b用戶系統&3] 防止機械人程序檢查到不正常連接數已減少,並於 %m 分鐘後停止運作 。'
unknown_user: '&8[&6用戶系統&8] &f用戶資料並不存在於資料庫中。'
unsafe_spawn: '&8[&6用戶系統&8] &f你的登出位置不安全現在將傳送你到重生點。'
not_logged_in: '&8[&6用戶系統&8] &c你還沒有登入 '
reg_voluntarily: '&8[&6用戶系統&8] &f你可以使用這個的指令來註冊 《 /register <密碼> <重覆密碼> 》'
usage_log: '&8[&6用戶系統&8] &c用法 《 /login <密碼> 》'
wrong_pwd: '&8[&6用戶系統&8] &c你輸入了錯誤的密碼。'
unregistered: '&8[&6用戶系統&8] &c你已成功取消會員註冊記錄。'
reg_disabled: '&8[&6用戶系統&8] &c本伺服器已停止新玩家註冊。'
valid_session: '&8[&6用戶系統&8] &b嗨 我記得你,歡迎回來'
login: '&8[&6用戶系統&8] &c你成功的登入了。'
vb_nonActiv: '&8[&6用戶系統&8] &f你的帳戶還沒有經過電郵驗證 '
user_regged: '&8[&6用戶系統&8] &c此用戶名已經註冊過了。'
usage_reg: '&8[&6用戶系統&8] &c用法 《 /register <密碼> <重覆密碼> 》'
max_reg: '&8[&6用戶系統&8] &f你的IP地址已達到註冊數上限。'
no_perm: '&8[&6用戶系統&8] &b你可以到 CraftingHK 玩家百科中查看說明文件。'
error: '&8[&6用戶系統&8] &f發生錯誤請與管理員聯絡。'
login_msg: '&8[&6用戶系統&8] &c請使用這個指令來登入 《 /login <密碼> 》'
reg_msg: '&8[&6用戶系統&8] &c請使用這個的指令來註冊 《 /register <密碼> <重覆密碼> 》'
reg_email_msg: '&8[&6用戶系統&8] &c請使用這個的指令來註冊 《 /register <電郵> <重覆電郵> 》'
usage_unreg: '&8[&6用戶系統&8] &c用法 《 /unregister <密碼> 》'
pwd_changed: '&8[&6用戶系統&8] &c你成功的更換了你的密碼 '
user_unknown: '&8[&6用戶系統&8] &c此用戶名沒有已登記資料。'
password_error: '&8[&6用戶系統&8] &f密碼不符合。'
unvalid_session: '&8[&6用戶系統&8] &f登入階段資料已損壞請等待登入階段結束。'
reg_only: '&8[&6用戶系統&8] &f限已註冊會員請先到 https://www.craftinghk.com/ 註冊。'
logged_in: '&8[&6用戶系統&8] &c你已經登入過了。'
logout: '&8[&6用戶系統&8] &b你成功的登出了。'
same_nick: '&8[&6用戶系統&8] &f同名玩家已在遊玩。'
registered: '&8[&6用戶系統&8] &b你成功的註冊了。'
pass_len: '&8[&6用戶系統&8] &f你的密碼並不符合規定長度。'
reload: '&8[&6用戶系統&8] &b登入系統設定及資料庫重新載入完畢。'
timeout: '&8[&6用戶系統&8] &f登入逾時。'
usage_changepassword: '&8[&6用戶系統&8] &f用法 《 /changepassword <舊密碼> <新密碼> 》'
name_len: '&8[&6用戶系統&8] &c你的用戶名不符合規定長度。'
regex: '&8[&6用戶系統&8] &c你的用戶名含有不容許之字符。以下為准許之字母 REG_EX'
add_email: '&8[&6用戶系統&8] &b請為你的帳戶立即添加電郵地址 《 /email add <電郵地址> <重覆電郵地址> 》'
bad_database_email: '&8[&6用戶系統&8] 此指令只適用於使用MySQL或SQLite之伺服器。'
recovery_email: '&8[&6用戶系統&8] &c忘記密碼 請使用這個的指令來更新密碼: 《 /email recovery <電郵地址> 》'
usage_captcha: '&8[&6用戶系統&8] &c用法 《 /captcha <驗證碼> 》'
wrong_captcha: '&8[&6用戶系統&8] &c你輸入了錯誤的驗證碼請使用 《 /captcha <驗證碼> 》 再次輸入。'
valid_captcha: '&8[&6用戶系統&8] &c你所輸入的驗證碼是無效的 '
kick_forvip: '&c因為有VIP玩家登入了伺服器。'
kick_fullserver: '&c抱歉 因為伺服器滿人了,所以你目前未能登入伺服器。'
usage_email_add: '&8[&6用戶系統&8] &f用法 《 /email add <電郵> <重覆電郵> 》'
usage_email_change: '&8[&6用戶系統&8] &f用法 《 /email change <舊電郵> <新電郵> 》'
usage_email_recovery: '&8[&6用戶系統&8] &f用法 《 /email recovery <電郵> 》'
new_email_invalid: '&8[&6用戶系統&8] 你所填寫的新電郵地址並不正確。'
old_email_invalid: '&8[&6用戶系統&8] 你所填寫的舊電郵地址並不正確。'
email_invalid: '&8[&6用戶系統&8] 你所填寫的電郵地址並不正確。'
email_added: '&8[&6用戶系統&8] 已加入你的電郵地址記錄。'
email_confirm: '&8[&6用戶系統&8] 請重覆輸入你的電郵地址。'
email_changed: '&8[&6用戶系統&8] 你的電郵地址記錄已更改。'
email_send: '&8[&6用戶系統&8] 忘記密碼信件已寄出,請查收。'
country_banned: '&8[&6用戶系統&8] 本伺服器已停止對你的國家提供遊戲服務。'
antibot_auto_enabled: '&8[&6用戶系統&8] 防止機械人程序已因應現時大量不尋常的連線而啟用。'
antibot_auto_disabled: '&8[&6用戶系統&8] 防止機械人程序檢查到不正常連接數已減少,並於 %m 分鐘後停止運作。'