-
Total de itens
1104 -
Registro em
-
Última visita
-
Dias Ganhos
20
Tudo que LuckOake postou
-
Tá completamente explicado no meu post anterior. Releia.
-
Tag: <action itemid="xxxx;yyyy" script="potions.lua"/> No lugar de xxxx e yyyy, mude pro ID das poções. Você também pode adicionar mais IDs colocando ; (ponto e vírgula). Exemplo: 1213;8491;4891;5543 E no script você configura aqui: local POTIONS = { -- [id] = {empty_id, {hp, mp}, splash_subtype}, [2150] = {empty = 7478, stats = {5000, 5000}, splash = 2}, -- health potion [2151] = {empty = 7478, stats = {20000, 20000}, splash = 2}, -- health strong potion [2144] = {empty = 7478, stats = {5000, 5000}, splash = 7}, -- strong mana potion [2149] = {empty = 7478, stats = {15000, 15000}, splash = 7}, -- great mana potion } Todo id que você colocar na tag você também deve colocar aqui. Modelo: [id] = {empty = empty_id, stats = {hp, mp}, splash = splash_subtype}, id = id da poção empty_id = id da vial vazia {hp, mp} = {vida, mana} splash = subtype, só modifique se você souber o que está fazendo. Só ir adicionando.
-
Fiz uns ajustes no script: Configure aqui: local removeOnUse = true -- Remover a poção ao usar? (true / false) local usableOnTarget = true -- Você pode healar outras pessoas? (true / false) local splashable = false -- Dá pra jogar o líquido da poção no chão? (true / false) local realAnimation = false -- Se true, o texto do heal só será visível para player que estiverem a 1x1 sqm de distância (true / false) local giveEmptyVial = true -- Dar a garrafa da potion vazia para o player ao usar? (true / false) local healthMultiplier = 1.0 -- Multiplicador da health que a potion adiciona local mamaMultiplier = 1.0 -- Multiplicador da mana que a potion adiciona local POTIONS = { -- [id] = {empty_id, {hp, mp}, splash_subtype}, [2150] = {empty = 7478, stats = {5000, 5000}, splash = 2}, -- health potion [2151] = {empty = 7478, stats = {20000, 20000}, splash = 2}, -- health strong potion [2144] = {empty = 7478, stats = {5000, 5000}, splash = 7}, -- strong mana potion [2149] = {empty = 7478, stats = {15000, 15000}, splash = 7}, -- great mana potion }
-
Legal sua ideia, but... Mano, isso é realmente muuuito confuso. Tirando isso, maneiro o código. Só não acho que realmente será utilizada algum dia por não ser simples igual Lua normal.
-
action Sistema anti-pega-e-corre (quest)
tópico respondeu ao warotserv de LuckOake em Actions e Talkactions
90% dos jogos de rpg fazem isso(muitos mmorpg tbm)... @warotserv anyway, seria melhor se o cara so pudese abrir o bau após matar os mobs, porque n faz sentido vc abrir o bau e receber apenas depois de certo tempo. e já que vc fez um comentario falando sobre ensinar alguma coisa, deveria pelo menos saber o que é uma quest e o que uma treasure chest, são coisas bem differentes.... Falei "quem quiser fazer um servidor bem profissional". No caso, tô me referindo a Tibia, outros MMO não entram nesse quesito. Se você dissesse "90% dos servidores de Tibia", aí eu já digo: Por isso disse "quem quiser fazer um servidor bem profissional". 90% dos servidores existentes de tibia são só coisas zoadas mesmo. E de qualquer maneira, galera, vamo parar de discussão. Vocês já tão brigando por opinião, que é bem errado por ser algo subjetivo, que varia de cada um pra cada um. -
action Sistema anti-pega-e-corre (quest)
tópico respondeu ao warotserv de LuckOake em Actions e Talkactions
Tamanho de script não representa qualidade. Isso, por maior que fique, vai apresentar apenas alguns milissegundos de diferença, imperceptível para o jogador. Poderia ser reduzido? Sim, poderia. Mas muitas vezes é até melhor ficar grande por uma questão de organização. É perfeitamente possível fazer um script de teletransportar um jogador até uma coordenada específica, cobrando dinheiro e verificando level em apenas um único return. Mas fazer isso deixaria o script deveras desorganizado. E se o dono do server quer criar um servidor bem profissional, bloquear as saídas ficaria meio gambiarra, o que não é muito legal. -
Essa função (doRemovePlayerMount) não existe no seu server. É isso que o erro diz.
-
getSearchString (Função da spell Exiva feita em Lua)
um tópico no fórum postou LuckOake Mods, funções e outros
Olá galera. Devido a um pedido, refiz a função getSearchString das sources do TFS em Lua, e vou aproveitar e postar ela aqui, caso alguém vá a precisar um dia. Explicando os parâmetros da função getSearchString(fromPos, toPos, isFromCreature, isToCreature): fromPos = posição inicial toPos = posição do objeto procurado isFromCreature = a posição inicial é uma posição de uma criatura? (true / false) [default = false] isToCreature = a posição do objeto é uma posição de uma criatura? (true / false) [default = false] E pra facilitar o uso, já aproveitei e fiz a função para usar o comando exiva: useExiva(cid, pid). cid = o uid do player que usa pid = o uid do player procurado Ambas as funções estão no code. Bom uso. -
Como você fez? Já tive alguns problemas com isso também, e se puder, me mostre sua solução. Seria de grande ajuda.
-
Tony e Omega.
-
Lua de OTServer é meio falha. Ela não possui uma coisa chamada Shared Lua States, que é justamente isso aí que você precisa. Tem um fix na otland, mas não sei se é bom usar. Qualquer coisa, só procurar Shared Lua States no google que você acha.
-
Action: Tag: <action itemid="2156" script="xxxx.lua"/> No lugar de xxxx, coloque o nome do arquivo da action. Look: Coloque no login.lua, antes do último return true: registerCreatureEvent(cid, "LifeStoneLook") Tag: <event type="look" name="LifeStoneLook" script="yyyy.lua"/> No lugar de yyyy, coloque o nome do arquivo do look.
-
Eu tinha umas 11 medalhas do SDS. Além do que fiquei na equipe por uns 9 meses e não recebi pip/medalha de herói. E também ganhei a de melhor membro da equipe (não sei se de Janeiro ou Fevereiro). OBS: O Oneshot deveria estar de Herói também. Ele fez muito pelo fórum na época de coordenador, e não deveria ser desmerecido por causa daqueles problemas do começo do ano.
-
Oneshot 1x0 BananaFight, getStorage é string nas versões 8.6++ Já em 8.54, por exemplo, é int. E sim, o setTarget é suficiente, e o monstro não fica mudando de alvo. Tudo já foi testado e está funcionando sem problemas.
-
Vi que muitos voltaram, principalmente meu mestre Oneshot, então voltei também. Não sei se voltei pra ficar ativo, mas de qualquer maneira, vou quebrar o gelo e postar um sistema depois de mais de um semestre inativo no fórum. Sinceramente, a qualidade da seção de scripting caiu consideravelmente. Chega a dar vergonha ver como está andando atualmente em comparação à época de novembro/dezembro do ano passado até fevereiro desse ano, em que deu aqueles problemas. São poucas as coisas que aparecem aqui que realmente são bem feitas. Bom, de qualquer maneira, fazer o quê se a maioria dos membros não consegue ver isso, deixemos rolar e tentemos restaurar o que era, né. Voltando ao tópico, trouxe pra vocês um sisteminha que funciona como um autoloot, porém, ele looteia apenas money e envia ele direto pra backpack ou direto para o banco do player (configurável), cobrando uma porcentagem do dinheiro looteado como troca pelo serviço. Exemplo, looteou 10 gold coins, cobra 10% (1 gold coin), dando pro player 9 gold coins no total. Scripts: Configurando: Para usar o sistema, use o comando /autoloot. Créditos: - Luck Oake
-
Configura aqui: CLEANER_IGNORE = {2148} -- Item ids ignored by the cleaner São os ids que o Cleaner vai ignorar. Só ir adicionando assim {2148, 2160, 8139}, por exemplo.
-
Sugestão, coloca multi-opções de spells, não deixando limitado a apenas duas spells, sendo também obrigatoriamente duas: function onUse(cid, item, frompos, item2, topos) local str = "You learned the spells: " local k = 0 local parchs = { [7702] = {storage = 18000, spells = {"Avalanche", "Berserk", "Batata"}}, [7724] = {storage = 18001, spells = {"Death Strike", "Flame Strike"}}, [7722] = {storage = 18002, spells = {"Fierce Berserk", "Fire Wave"}}, [7529] = {storage = 18003, spells = {"Explosion", "Hells Core"}}, } local parch = parchs[item.itemid] for a, b in ipairs(parch.spells) do doPlayerLearnInstantSpell(cid, b) k = k+1 str = str..b..(k < #parch.spells and ", " or "") end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, str) doRemoveItem(item.uid, 1) return true end
-
Rapaz, pior que nem sei, mas deve ser algo assim. No isWalkable tem um terceiro parâmetro que não sei o que faz, mas provável que seja isso ai. ~~ Edit ~~ Dei uma pesquisada e achei isso: CONST_PROP_BLOCKSOLID = 0 CONST_PROP_HASHEIGHT = 1 CONST_PROP_BLOCKPROJECTILE = 2 CONST_PROP_BLOCKPATHFIND = 3 CONST_PROP_ISVERTICAL = 4 CONST_PROP_ISHORIZONTAL = 5 CONST_PROP_MOVABLE = 6 CONST_PROP_BLOCKINGANDNOTMOVABLE = 7 CONST_PROP_SUPPORTHANGABLE = 8 É, realmente, vou colocar o negócio pra evitar invadir houses. ~~ Edit 2 ~~ Fixed
-
Olá galera. Tem um bom tempo que não dou sinal de vida aqui no xtibia no sentido de postar sistemas. Vou quebrar esse gelo, fiz um sisteminha aqui e trouxe pra vocês. O que é: Um NPC que limpa o chão, se movendo sozinho. Possui sistema de ignore ids, pra evitar de limpar items valiosos como GPs (configurável). Instalando: Configurando: Usando: /cleaner create -- Cria o Cleaner /cleaner remove -- Remove o cleaner Créditos: - LuckOake (Pelo sistema)
-
Rapaz, não acha mais fácil usar exhaustion.set(cid, storage, time), exhaustion.check(cid, storage) e exhaustion.get(cid, storage)? OBS: O tutorial não passou pela aprovação ainda.
-
Cara, seu script é interessante, mas pfv, melhora essa identação. Isso ai acaba com a beleza de todo um sistema e faz você parecer scripter que acabou de se iniciar na linguagem lua .-. Dica, n precisava criar uma lib própria só pra esse sistema, era melhor colocar a função direto no script. OBS: De onde você tira essas ideias? Tô precisando de algumas
-
Breno, favor retirar o script desse tópico. Não peça ajuda com os sistemas do Biohazard feitos por mim aqui no xtibia, por favor. Outros editando o script não vai dar certo. Só me mandar mensagem no skype que eu arrumo pra você. Roksas, peço que também retire o script do seu post por ele ser de minha autoria e não ter permitido a postagem dele. Problema resolvido via skype, tópico reportado para ser movido.
-
Aquele arquivo do battle troca a cor da barra de acordo com a health da criatura, mas não tem uma função que troque a health bar mesmo. Até consegui mudar na janela do battle, mas no jogo mesmo não.
-
Olá. Seguinte, tava conversando com o Slicer sobre colocar cores na hp bar e ele me mostrou o sistema pelas sources, mas era de acordo com o nome do player. É possível fazer esse sistema em Lua sem usar feature ou fazer nas sources de acordo com Group Id?
-
A identação tá errada. O certo seria assim: local wait = 60 function onSay(cid, words, param) if exhaustion.check(cid, 9854) then doPlayerSendTextMessage(cid, 20, "You need to wait "..wait.." segs to use this command again!") return true end if not doPlayerRemoveMoney(cid, 15000) then doPlayerSendCancel(cid, "Not enough money, sorry.") return true end doSendMagicEffect(getCreaturePosition(cid), 6) exhaustion.set(cid, 9854, wait) broadcastMessage("Mensagem do jogador: "..getPlayerName(cid).." ele diz "..param.."") return true end @Topic Tá evoluindo Já já você começa a dominar e fazer uns sistemas bem maneiros. REP+.
- 11 respostas
-
- i like unicorns
- problem?
- (e 4 mais)
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.