Ir para conteúdo

Featured Replies

Postado

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.

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo