Por
Anderson Sacani
Estou criando um servidor com base nos scripts de TFS 1.x e voltado ao público da america latina por causa do baixo ping na VPS... Argentina, Bolívia, Brasil, Chile, entre outros, portanto sei que falamos em português e nossos vizinhos em espanhol.
Todos os sistemas do meu servidor são pensados para terem traduções e venho por meio deste tópico compartilhar à vocês algumas dessas funções:
Antes de qualquer coisa, você precisará adicionar a seguinte variável em alguma biblioteca:
USER_LANGUAGE = 1022118443
Agora que adicionou essa variável em alguma biblioteca, poderá adicionar as seguintes funções na mesma biblioteca, porém a baixo da variável USER_LANGUAGE.
A primeira função serve para retornar qual idioma o player está usando:
--[[
getLanguage, how to use:
player:getLanguage()
]]
function Player.getLanguage(self)
if self:isPlayer() then
if self:getStorageValue(USER_LANGUAGE) < 1 then
return "portuguese"
else
return "spanish"
end
else
print("getLanguage: Only works on players..")
end
end
Um exemplo de como usar: player:getLanguage()
A segunda função serve para alterar o idioma do player. O ideal é que seja usada na primeira vez em que o player loga no servidor:
--[[
setLanguage, how to use:
player:setLanguage("portuguese")
]]
function Player.setLanguage(self, language)
local value = 0
if self:isPlayer() then
if language == "portuguese" then
value = 0
elseif language == "spanish" then
value = 1
else
print("setLanguage: Only two options available. Choose one of them: 'portuguese' or 'spanish'.")
end
return self:setStorageValue(USER_LANGUAGE, value)
else
print("setLanguage: Only works on players..")
end
end
Exemplos de como usar:
player:setLanguage("portuguese")
ou
player:setLanguage("spanish")
A terceira e não menos importante função, serve para mandar uma mensagem de texto ao jogador, porém ele receberá no idioma em que escolheu:
--[[
sendLanguageTextMessage, how to use:
local portugueseMessage = "Ola, tudo bom? Isto aqui é um algoritmo!"
local spanishMessage = "Hola todo bien? Esto de aqui es un algoritmo!"
player:sendLanguageTextMessage(MESSAGE_EVENT_ADVANCE, portugueseMessage,spanishMessage)
]]
function Player.sendLanguageTextMessage(self, type, portugueseMessage, spanishMessage)
if self:isPlayer() then
if self:getStorageValue(USER_LANGUAGE) < 1 then
return self:sendTextMessage(type, portugueseMessage)
else
return self:sendTextMessage(type, spanishMessage)
end
else
print("sendLanguageTextMessage: Only works on players..")
end
end
Um exemplo de como usar:
player:sendLanguageTextMessage(MESSAGE_EVENT_ADVANCE, portugueseMessage, spanishMessage)
O primeiro parâmetro é o tipo de mensagem, o segundo parâmetro será a mensagem em português e o terceiro parâmetro será em espanhol.
Pergunta
gpedro 274
Reputação dada?
Editado por gpedro (veja o histórico de edições)Link para o post
Compartilhar em outros sites
9 respostass a esta questão
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.