Ir para conteúdo

Storm

Héroi
  • Registro em

  • Última visita

Tudo que Storm postou

  1. @Thalles Novais Qual erro retorna ?
  2. Primeiro , você errou a tag na XML . é prepareDeath e não Death. Segundo , esses erros da sua distro são erros de outras scripts.
  3. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    Pode me mandar a script ? Caso preferir , tenho uma script no qual o player da use no corpo e ja pega todos os loots
  4. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    Pelo visto tem umas script com nome de "Kill" , pode me mandar elas e um print de dentro da sua XML ?
  5. Como essa alavanca funciona ?
  6. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    O meu sistema vip é o primeiro tópico do post
  7. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    È como eu disse ... remova o vip free porque se tiver vip free qual a necessidade de um sistema de vip ? Utilize apenas a minha script e não a de terceiros.
  8. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    Remova esse sistema e utilize apenas o meu sistema de vip.
  9. function onLogin(cid) local get_house = getHouseByPlayerGUID(getPlayerGUID(cid)) if not isPremium(cid) and get_house then setHouseOwner(get_house, 0, true) return true end end
  10. @Coul Registre na XML e no login.lua function onPrepareDeath(cid, deathList) local t = { [2197] = {2198, 2197} -- [item removido] = {item adicionado, item removido} } local item = getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).itemid local get_neck = t[item] if get_neck then doPlayerRemoveItem(cid, get_neck[2], 1) doPlayerAddItem(cid, get_neck[1], 1) return true end end
  11. Não sei se isso é o problema , mas em vez de Pairs utiliza iPairs
  12. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    Poste ou mande um print das scripts contidas no creaturescripts
  13. Qual erro retorna ?
  14. Exatamente.
  15. A primeira parte é o index a segunda o seu valor t = {1, 2, 3} é igual t = { [1] = 1, [2] = 2, [3] = 3 }
  16. Ele se refere a função print ; geralmente é usada para retornar um valor no executável ; function onCastSpell(cid, var) print(var) -- a function printa o valor da variaval var e a retorna na distro end
  17. Essa script é bem obvia ; ao avançar de level o Player irá receber um item respectivo da tabela Config , O player também receberá uma mensagem e uma storage( que impossibilita que ele se mate e upe novamente para pegar o item ) . A estrutura do for é o seguinte ; for variavel = valor inicial, valor final[, incremento] do bloco end Não, as variáveis do for não precisam ser declaradas. in pairs() é usado na tabela Config ; ele percorre tudo ( até index que são strings) e retorna os valores ; porém sem garantia de ordem . Exemplo ; local t {1, 2, 3, pedro = 4} o pairs() retornará assim ( sem garantia de ordem ) ; -- index, valor 1, 1 2, 2 3, 3 pedro, 4 Sim , a skill vem da função ; Sinceramente , a variável sat eu não entendi , parece que foi uma gambiarra que o autor da script fez para não deixar o player ganhar o mesmo premio no mesmo level
  18. Primeiro , sempre que for colocar um código no fórum , utilize a ferramenta Code. Segundo , não há necessidade dessas variáveis todas na function , somente as principais ( No caso cid e var) function onCastSpell(pos, target, targetpos, posdireita, cid) Terceiro , você não declarou o valor das variáveis Combat e Combat1 Quarto , você errou nessa parte else if targetpos == posdireita then bloco end O correto é elseif targetpos == posdireita then bloco end o código ficaria assim do jeito correto ; function onCastSpell(cid, var) local pos = getCreaturePosition(cid) local target = variantToNumber(var) local targetpos = getCreaturePosition(target) local posdireita = {x= pos.x + 1, y= pos.y + 1, z = pos.z} if not target then return doCombat(cid, combat1, var) elseif targetpos == posdireita then return doCombat(cid, combat, var) end end
  19. @Necamanuel Você vai em Linguagem > L > Lua.
  20. @Necamanuel local t = { msgActive = "Preparem-se Players De Todas As Cidades, O Boss The AlphaBoss Esta Preste A Envadir Beacon Hills .", msgSpawn = "Rapido, O Boss Esta Na Frente Do Templo, Protejam Nossa Cidade.", coolDown = 5, -- Tempo para nascer após usar o comando. boss = "The AlphaBoss", -- Nome do boss. pos = {x = 154, y = 59, z = 7} -- Posição em que o boss irá nascer. } function onSay(cid, words) local function summonBoss() doSendMagicEffect(t.pos, CONST_ME_TELEPORT) doCreateMonster(t.boss, t.pos) doBroadcastMessage(t.msgSpawn) end doBroadcastMessage(t.msgActive) addEvent(summonBoss, t.coolDown * 60 * 1000) return true end
  21. Storm postou uma resposta no tópico em Suporte Tibia OTServer
    <talkaction words="!vip;/vip" event="script" value="vip.lua"/> @bernasch
  22. Sim , precisa registrar o evento.
  23. Você explicou muito mal no tópico , mas enfim function onLogin(cid) local itens = 3154 -- Id do amulet if not getPlayerSlotItem(cid, CONST_SLOT_NECKLACE ).uid == itens then doCreatureSay(cid, "!bol", 1) doPlayerAddItem(cid, itens, 1) doPlayerSendTextMessage(cid, 13, "Você acabou de receber uma Band Of Loss") return true end return true end A script irá verificar se o player tem tal item no slot Necklace , se não tiver ela irá adicionar o item. Caso ele já tenha ele logará normalmente.
  24. local config = { interval = 5, ranks = { {minBalance = 10000, rankName = "Knight", effect = CONST_ME_FIREWORK_RED}, {minBalance = 10000, rankName = "Duke", effect = CONST_ME_FIREWORK_RED}, {minBalance = 100000, rankName = "King", effect = CONST_ME_FIREWORK_RED}, }, } local storage = 23525 -- storage para remover attributos local sto = 23145 -- storage para adicionar attributos local extrah = 100 -- hp extra local extram = 100 -- mana extra local speed = 50 -- speed extra local function getRankByBalance(balance) for i = 1, #config.ranks do if balance < config.ranks[i].minBalance then return (i - 1 > 0) and (i - 1) or false end end return false end local function sendEffectTopPlayer(cid, rank) local player = Player(cid) if not player then return true end player:getPosition():sendMagicEffect(config.ranks[rank].effect) player:say(config.ranks[rank].rankName, TALKTYPE_MONSTER_SAY) addEvent(sendEffectTopPlayer, config.interval * 1000, cid, rank) return true end function onLogin(player) local rank = getRankByBalance(player:getBankBalance()) if rank and player:getStorageValue(sto) == -1 then sendEffectTopPlayer(player:getId(), rank) player:setStorageValue(storage, 1) addAttributes() return true elseif rank and player:getStorageValue(sto) == 1 then sendEffectTopPlayer(player:getId(), rank) return true elseif not rank and player:getStorageValue(storage) == 1 then doRemoveAttributes() player:setStorageValue(storage, -1) return true end end function doRemoveAttributes() creature:setMaxHealth(creature:getMaxHealth() - extrah) player:setMaxMana(creature:getMaxMana() - extram) creature:changeSpeed(creature:getBaseSpeed()) player:setStorageValue(storage, -1) player:setStorageValue(sto, -1) end function addAttributes() creature:setMaxHealth(creature:getMaxHealth() + extrah) player:setMaxMana(creature:getMaxMana() + extram) creature:changeSpeed(speed) player:setStorageValue(sto, 1) end
  25. Essa evolução temporária serio o que exatamente ? o que o player faria para que a evolução aconteca ?

Informação Importante

Confirmação de Termo