Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Trade Offline

 

p6aJ7ld.png

 

O sistema foi testado apenas em TFS 1.5

 

O sistema funciona de forma semelhante ao Market System das versões atuais, porem sem exibição gráfica das ofertas in-game, para isso o sistema vai acompanhado de uma página para o Gesior AAC. Este sistema existe no fórum há um bom tempo e já é familiar pra muitos jogadores, essa versão trás consigo algumas melhorias e diferenças que irei listar abaixo.
 

Sistema

  • Ofertas removidas automaticamente no tempo configurado.
  • Agora é possível vender um item exigindo outro item em troca ao invés de dinheiro.
  • Containers com um conjunto de itens dentro agora podem ser anunciados.
  • Agora o sistema verifica as cargas e durações dos itens antes de criar uma oferta.
  • Novo parâmetro adicionado para verificar informações de ofertas in-game.
  • Agora todo valor recebido vai diretamente para o banco do vendedor.

 

Todo essa atualização de versão foi feita com base no script do WooX: 


TRADE_OFFLINE.LUA: https://raw.githubusercontent.com/luanluciano93/ESTUDOS/master/LUA/trade_offline/trade_offline_revscript.lua


 

Editado por luanluciano93 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
17 horas atrás, luanluciano93 disse:

Trade Offline

 

p6aJ7ld.png

 

O sistema foi testado apenas em TFS 1.5

 

O sistema funciona de forma semelhante ao Market System das versões atuais, porem sem exibição gráfica das ofertas in-game, para isso o sistema vai acompanhado de uma página para o Gesior AAC. Este sistema existe no fórum há um bom tempo e já é familiar pra muitos jogadores, essa versão trás consigo algumas melhorias e diferenças que irei listar abaixo.
 

Sistema

  • Ofertas removidas automaticamente no tempo configurado.
  • Agora é possível vender um item exigindo outro item em troca ao invés de dinheiro.
  • Containers com um conjunto de itens dentro agora podem ser anunciados.
  • Agora o sistema verifica as cargas e durações dos itens antes de criar uma oferta.
  • Novo parâmetro adicionado para verificar informações de ofertas in-game.
  • Agora todo valor recebido vai diretamente para o banco do vendedor.

 

Todo essa atualização de versão foi feita com base no script do WooX: 


TRADE_OFFLINE.LUA: https://raw.githubusercontent.com/luanluciano93/ESTUDOS/master/LUA/trade_offline/trade_offline_revscript.lua


 

Boa tarde Luan!!!! aqui está apresentando esse erro. TFS 1.3

 

Capturar.thumb.JPG.f76282f764f0d82519fe3cbaec476a51.JPG

 

Editado por stauro (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
3 horas atrás, stauro disse:

Boa tarde Luan!!!! aqui está apresentando esse erro. TFS 1.3

 

Capturar.thumb.JPG.f76282f764f0d82519fe3cbaec476a51.JPG

Pode me explicar como reproduzir este erro?

Estranho, pq mesmo que o valor de duração seja nulo, coloquei uma verificação para tal ... 
https://github.com/luanluciano93/ESTUDOS/blob/master/LUA/trade_offline/trade_offline_revscript.lua#L102

Link para o post
Compartilhar em outros sites
25 minutos atrás, luanluciano93 disse:

Pode me explicar como reproduzir este erro?

Estranho, pq mesmo que o valor de duração seja nulo, coloquei uma verificação para tal ... 
https://github.com/luanluciano93/ESTUDOS/blob/master/LUA/trade_offline/trade_offline_revscript.lua#L102

Eu criei um arquivo lua em data/scripts/talkactions e quando executo o comando em jogo, por exemplo,  !tradeoff add, boots of haste acontece esse erro. Não entendi os comandos desse sistema, pois tento colocar valor e tal e aparece a msg da quantidade de itens agrupáveis

Link para o post
Compartilhar em outros sites
  • 1 month later...

Fala galerinha da TK!!!

Com a grande ajuda do @luanluciano93 adaptamos definitivamente para o TFS 1.3, pois ele havia testado apenas em TFS 1.5!

Segue o arquivo TRADE_OFFLINE.LUA e os arquivos PHP também adaptado para a versão.

 

Colocar os arquivos paginationClass.php e mysql_db.php na pasta "classes"

Obs: Não esqueça de editar o arquivo mysql_db.php de acordo com a sua database: NOME DA DATABASE e USUÁRIO.

 

Arquivo tradeoff.php vc joga na pasta "pages"

 

O arquivo tradeoff.lua vc joga na pasta do seu ot em: data/scripts/talkactions

 

Em data/lib/core/player.lua vc adiciona a seguinte função:

function Player.removeTotalMoney(self, amount)
    local moneyCount = self:getMoney()
    local bankCount = self:getBankBalance()

    if amount <= moneyCount then
        self:removeMoney(amount)
        return true

    elseif amount <= (moneyCount + bankCount) then
        if moneyCount ~= 0 then
            self:removeMoney(moneyCount)
            local remains = amount - moneyCount
            self:setBankBalance(bankCount - remains)
            self:sendTextMessage(MESSAGE_INFO_DESCR, ("Paid %d from inventory and %d gold from bank account. Your account balance is now %d gold."):format(moneyCount, amount - moneyCount, self:getBankBalance()))
            return true
        else
            self:setBankBalance(bankCount - amount)
            self:sendTextMessage(MESSAGE_INFO_DESCR, ("Paid %d gold from bank account. Your account balance is now %d gold."):format(amount, self:getBankBalance()))
            return true
        end
    end
    return false
end

function Player.getTotalMoney(self)
	return self:getMoney() + self:getBankBalance()
end

 

E é isso galera, bom uso =D

 

 

 

tradeoff.lua tradeoff.php mysql_db.php paginationClass.php

Editado por stauro (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 5 weeks later...

Fiz tudo certinho mas da erro ao abrir o tfs

Lua Script Error: [Test Interface]
data/talkactions/scripts/tradeoff.lua
data/talkactions/scripts/tradeoff.lua:128: attempt to call global 'TalkAction' (a nil value)
stack traceback:
        [C]: in function 'TalkAction'
        data/talkactions/scripts/tradeoff.lua:128: in main chunk
[Warning - Event::checkScript] Can not load script: scripts/tradeoff.lua

 

isso é o que tem na linha 128 : 

 

local trade_offline_talkaction = TalkAction("!tradeoff")

 

Editado por pedrolp37 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
18 minutos atrás, pedrolp37 disse:

Fiz tudo certinho mas da erro ao abrir o tfs

Lua Script Error: [Test Interface]
data/talkactions/scripts/tradeoff.lua
data/talkactions/scripts/tradeoff.lua:128: attempt to call global 'TalkAction' (a nil value)
stack traceback:
        [C]: in function 'TalkAction'
        data/talkactions/scripts/tradeoff.lua:128: in main chunk
[Warning - Event::checkScript] Can not load script: scripts/tradeoff.lua

 

isso é o que tem na linha 128 : 

 

local trade_offline_talkaction = TalkAction("!tradeoff")

Amigo, isso é um revscript, você deve colocá-lo em datas/scripts/

Link para o post
Compartilhar em outros sites
28 minutos atrás, luanluciano93 disse:

Amigo, isso é um revscript, você deve colocá-lo em datas/scripts/

luanluciano93 , 

Não sei onde consegue esses revscrip, deu para entender agora depois que vc falou, mas não sei onde conseguir se não importa poderia me passa os revscrip q preciso joga na pasta ?

Link para o post
Compartilhar em outros sites
  • 3 weeks later...
Em 01/04/2022 em 15:45, luanluciano93 disse:

Amigo, isso é um revscript, você deve colocá-lo em datas/scripts/

Como faz esse negocio de revscript amigo da uma força ae pfv pra mim so falta isso

Link para o post
Compartilhar em outros sites
4 horas atrás, Estilo.Server disse:

Como faz esse negocio de revscript amigo da uma força ae pfv pra mim so falta isso

https://github.com/otland/forgottenserver/wiki/Revscriptsys

Link para o post
Compartilhar em outros sites

144738016_Semttulo.thumb.png.fcd51b88b73c4b70902d608116c09eb3.png

image.png.b8ea7423ce8fa74cfba2f8a8ddc25dda.png

boa noite da este erro no tfs, mais o script funciona.

e quando eu adiciono o item no !tradeoff add ele some e adicionado ao site so que quando abro a aba trade off aparece este erro "could not load items!"

Editado por bonfim1234 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
• Fixado trade offline
Fixado problema onde estava podendo adicionar ofertas de "containers
com itens" dentro de um container.
Em 26/04/2022 em 22:54, bonfim1234 disse:

boa noite da este erro no tfs, mais o script funciona.

e quando eu adiciono o item no !tradeoff add ele some e adicionado ao site so que quando abro a aba trade off aparece este erro "could not load items!"

Cara, pelo jeito o seu servidor não está aceitando o Globalevent como rescript.

Erro aqui: https://github.com/luanluciano93/ESTUDOS/blob/master/LUA/trade_offline/trade_offline_revscript.lua#L1028

Link para o post
Compartilhar em outros sites
12 horas atrás, luanluciano93 disse:
• Fixado trade offline



Fixado problema onde estava podendo adicionar ofertas de "containers
com itens" dentro de um container.

Cara, pelo jeito o seu servidor não está aceitando o Globalevent como rescript.

Erro aqui: https://github.com/luanluciano93/ESTUDOS/blob/master/LUA/trade_offline/trade_offline_revscript.lua#L1028

resolvi uma parte so q ficou assim kkk, e os items tem na pagina

 

635868037_Semttulo2.thumb.png.b5a6bd813745fb1169dad147fd9016a6.png

 

Editado por bonfim1234 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
Em 28/04/2022 em 18:19, luanluciano93 disse:

Isso é problema do website (dá página em questão)

tem como adicionar no script uma linha q checa se o depot esta cheio ? ele esta comprando e o item some n vai pro depot por esta cheio.

Editado por bonfim1234 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 6 months later...

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Mateus Robeerto
      Este sistema é baseado em Reward Chests. Confira o Tibia Wiki para saber mais sobre como funciona. É simples!
       
       
      Em relação à Reward, ela será enviada para o depósito designado. Basta localizar a linha 'depotId' e especificar o numero que você deseja enviar para a cidade correspondente; isso garantirá a entrega direta ao depósito. Por exemplo, atribuir o número 1 para a cidade principal e 2 para Thais, e assim por diante, facilita esse processo.
      Confira o GIF aqui, basta clicar para ver.
      https://imgur.com/wNtfnS4
       
      Este script está configurado para ativar um temporizador de 5 minutos após a expiração, removendo automaticamente o Reward Chest Id 21584. Caso deseje estender a duração ou ajustá-la com base nas diretrizes do Tibia Wiki, ele oferece versatilidade. Este sistema é particularmente adequado para salas de chefes onde a derrota do chefe resulta na transformação de seu cadáver no RewardChestId. Os jogadores interagem com ele e, após um período designado, o baú se dissipa.
       
      Quando você mata o chefe, ele morre e se transforma em um Baú de Recompensa com ID 21584.

      Siga o guia de instalação passo a passo fornecido aqui.
       
      Registre o evento no arquivo XML do monstro fornecido:  <script> <event name="BossDeath"/> </script> Defina o cadáver do chefe como 0, caso contrário você receberá uma mensagem de loot adicional.  
      <look type="201" corpse="0" />  
      Este é o RevScripts. Coloque o script em qualquer lugar na pasta data/scripts, seja em uma subpasta ou em sua localização preferida.
      local bossesList = { { name = "Orshabaal", storage = 6655, expirationTime = 5 * 60, loot = { {item = 2160, count = 5, chance = 100000}, {item = 2494, count = 1, chance = 50000}, }, RewardChestId = 21584, depotID = 1 }, { name = "Cave Rat", storage = 6656, expirationTime = 5 * 60, loot = { {item = 2160, count = 10, chance = 100000}, {item = 2498, count = 1, chance = 75000}, }, RewardChestId = 21584, depotID = 1 }, -- Add more bosses as needed } local STORAGE_KEYS = { bossData = "boss_data", } local function createRewardChest(bossPosition, rewardChestId, expirationTime) local rewardItem = Game.createItem(rewardChestId, 1, bossPosition) if rewardItem then rewardItem:setAttribute(ITEM_ATTRIBUTE_ACTIONID, ACTION_ID) addEvent(function() if rewardItem and rewardItem:getPosition() then rewardItem:remove() local players = Game.getPlayers() for _, player in ipairs(players) do player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "The reward chest has disappeared!") end end end, expirationTime * 1000) else print("Error creating reward chest.") end end local function hasRewardExpired(player, storageKey) local expirationTime = player:getStorageValue(storageKey) return expirationTime ~= -1 and expirationTime <= os.time() end local creatureEvent = CreatureEvent("BossDeath") function creatureEvent.onDeath(creature, corpse) local bossPosition = creature:getPosition() local rewardChestId = 0 local depotID = 0 local bossName = "" for _, boss in ipairs(bossesList) do if creature:getName():lower() == boss.name:lower() then rewardChestId = boss.RewardChestId depotID = boss.depotID bossName = boss.name break end end if rewardChestId ~= 0 then createRewardChest(bossPosition, rewardChestId, bossesList[1].expirationTime) creature:say("The reward chest will disappear in 5 minutes!", TALKTYPE_MONSTER_SAY) else print("Reward chest ID not found.") end for _, player in ipairs(Game.getPlayers()) do if player:isPlayer() then for _, boss in ipairs(bossesList) do if creature:getName():lower() == boss.name:lower() then player:setStorageValue(boss.storage, 1) local expirationTime = os.time() + boss.expirationTime player:setStorageValue(STORAGE_KEYS.bossData, expirationTime) local message = "You contributed to defeating " .. boss.name .. ". Now go to the chest to claim your reward! Expiration time: " .. os.date("%c", expirationTime) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, message) end end end end end creatureEvent:register() local function sendRewardMessage(player, bossName, receivedItems) local message if #receivedItems > 0 then message = "From " .. bossName .. ": " .. table.concat(receivedItems, ", ") player:sendTextMessage(MESSAGE_EVENT_ADVANCE, message) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your reward has been sent to your depot.") else message = "From " .. bossName .. ": Unfortunately, you did not receive any items." player:sendTextMessage(MESSAGE_EVENT_ADVANCE, message) end end local rewardAction = Action() function rewardAction.onUse(player, item, fromPosition, target, toPosition, isHotkey) if not player or not player:isPlayer() or not item then return false end local depotID = 0 for _, boss in ipairs(bossesList) do if item:getId() == boss.RewardChestId and player:getStorageValue(boss.storage) == 1 then depotID = boss.depotID local storageKey = "boss_reward_time" if hasRewardExpired(player, storageKey) then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Your reward from " .. boss.name .. " has expired.") else local depot = player:getDepotChest(depotID, true) -- Using depotID from the boss configuration if not depot then return false end local bag = depot:addItem(7343, 1) if not bag then print("Failed to add the reward bag to the player's depot.") return false end local receivedItems = {} for _, lootItem in ipairs(boss.loot) do if math.random(100000) <= lootItem.chance then local itemAdded = bag:addItem(lootItem.item, lootItem.count or 1) if itemAdded then local itemName = ItemType(lootItem.item):getPluralName() or ItemType(lootItem.item):getName() table.insert(receivedItems, (lootItem.count or 1) .. "x " .. itemName) end end end sendRewardMessage(player, boss.name, receivedItems) end player:setStorageValue(boss.storage, 0) player:setStorageValue(storageKey, -1) break end end return true end rewardAction:aid(ACTION_ID) rewardAction:register()  
       
      Este script é a segunda versão.
      No Baú de Recompensa (por exemplo, no templo ou na sala do chefe), você deve configurá-lo usando o ID de Ação conforme mostrado na imagem.

       
      Confira o GIF aqui, basta clicar para ver.
      https://imgur.com/B9EezSM
      O indivíduo que infligiu o maior dano e outro que infligiu uma quantidade menor ambos recebem uma recompensa. Por outro lado, aqueles que não contribuíram com nenhum dano não recebem nenhuma recompensa. Este sistema opera de forma direta. Espero que você tenha achado esta explicação satisfatória.
      data/scripts.
      -- Define a table listing the bosses and their respective properties local bossesList = { { name = "Orshabaal", storage = 6655, expirationTime = 7 * 24 * 60 * 60, -- 7 days loot = { {item = 2160, count = 5, chance = 100000}, -- 100% chance {item = 2494, count = 1, chance = 50000}, -- 50% chance }, rewardChestId = 21584, -- Reward chest ID depotId = 1, -- Depot ID of the main city where the items will be sent }, { name = "Cave Rat", storage = 6656, expirationTime = 7 * 24 * 60 * 60, loot = { {item = 2160, count = 10, chance = 100000}, -- 100% chance {item = 2498, count = 1, chance = 75000}, -- 75% chance }, rewardChestId = 21584, -- Reward chest ID depotId = 1, -- Depot ID of the main city where the items will be sent }, -- Add more bosses as needed } local ACTION_ID = 2550 -- You need to open the RME Editor and set it to 2550, then save. local STORAGE_KEYS = { bossData = "boss_data" } -- Function to check if a reward has expired local function hasRewardExpired(player, storageKey) local expirationTime = player:getStorageValue(storageKey) return expirationTime ~= -1 and expirationTime <= os.time() end local creatureEvent = CreatureEvent("BossDeath") function creatureEvent.onDeath(creature, corpse, killer, mostDamageKiller) if killer and killer:isPlayer() then local creatureName = creature:getName():lower() for _, boss in ipairs(bossesList) do if creatureName == boss.name:lower() then -- Set reward data for the killer killer:setStorageValue(boss.storage, 1) local expirationTime = os.time() + boss.expirationTime killer:setStorageValue(STORAGE_KEYS.bossData, expirationTime) local message = "You contributed to defeating " .. boss.name .. ". Now go to the chest to claim your reward! Expiration time: " .. os.date("%c", expirationTime) killer:sendTextMessage(MESSAGE_EVENT_ADVANCE, message) -- Check if there's a most damage killer if mostDamageKiller and mostDamageKiller:isPlayer() and mostDamageKiller:getId() ~= killer:getId() then mostDamageKiller:setStorageValue(boss.storage, 1) mostDamageKiller:setStorageValue(STORAGE_KEYS.bossData, expirationTime) local messageMostDamage = "You dealt the most damage to " .. boss.name .. ". Now go to the chest to claim your reward! Expiration time: " .. os.date("%c", expirationTime) mostDamageKiller:sendTextMessage(MESSAGE_EVENT_ADVANCE, messageMostDamage) end break end end end end creatureEvent:register() -- Function to send reward message to player local function sendRewardMessage(player, bossName, receivedItems) if #receivedItems > 0 then local message = "From " .. bossName .. ": " .. table.concat(receivedItems, ", ") player:sendTextMessage(MESSAGE_EVENT_ADVANCE, message) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your reward has been sent to your depot.") else local message = "From " .. bossName .. ": Unfortunately, you did not receive any items." player:sendTextMessage(MESSAGE_EVENT_ADVANCE, message) end end local rewardAction = Action() function rewardAction.onUse(player, item, fromPosition, target, toPosition, isHotkey) if not player or not player:isPlayer() or not item then return false end local rewardsClaimed = false for _, boss in ipairs(bossesList) do if item:getId() == boss.rewardChestId and player:getStorageValue(boss.storage) == 1 then local storageKey = STORAGE_KEYS.bossData if hasRewardExpired(player, storageKey) then player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your reward from " .. boss.name .. " has expired.") else local depot = player:getDepotChest(boss.depotId, true) if not depot then return false end local bag = depot:addItem(7343, 1) if not bag then print("Failed to add the reward bag to the player's depot.") return false end local receivedItems = {} for _, lootItem in ipairs(boss.loot) do if math.random(100000) <= lootItem.chance then local itemAdded = bag:addItem(lootItem.item, lootItem.count or 1) if itemAdded then local itemName = ItemType(lootItem.item):getPluralName() or ItemType(lootItem.item):getName() table.insert(receivedItems, (lootItem.count or 1) .. "x " .. itemName) end end end if #receivedItems > 0 then sendRewardMessage(player, boss.name, receivedItems) player:setStorageValue(boss.storage, 0) player:setStorageValue(storageKey, -1) rewardsClaimed = true else player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You did not receive any items from " .. boss.name .. ".") end end end end if not rewardsClaimed then player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You need to defeat the corresponding boss first to receive the reward.") return false end return true end rewardAction:aid(ACTION_ID) rewardAction:register() O que eu fiz foi reescrever o script do zero, créditos para mim mesmo. Espero que gostem deste conteúdo!  
    • Por looktsx
      Salve Rapaziada ...

      sera q tem como cria um script de addon doll ou mont doll ? 
      ou um npc q vende addon e montaria, pra versao 13.11 do tibia ?
       
      pode me ajuda fico muito grato 
    • Por Rpzada
      Oi boa tarde.
      Sera q tu pode me ajudar como uma duvida... no meu otserver. Tenho cliente 13 e client otc... ai os npcs no 13 ele reconhece dinheiro do banco quando vou comprar... porem no otc eu tenho q estar com dinheiro na bag.... tu sabe o pq e como arrumo isso... queria q no otc ele reconhecesse o dinheiro no bank
    • 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.
    • Por amoxicilina
      Action: Remover skull
       
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo