Ir para conteúdo

Tony Araujo

Visconde
  • Total de itens

    446
  • Registro em

  • Última visita

  • Dias Ganhos

    31

Tudo que Tony Araujo postou

  1. Booa cara, é isso ai. então vamos concluir esse projeto . E lembrando que o projeto está em total apoio do Arton (; ~~OBS: eu não parei o Arton, rsrs'
  2. Sim, claro . porisso estou pedindo aos membros que comentem o que querem na versao 1.1 (;
  3. Bom, está ai. Coloquei para sair umas menssagems e ums effeitos para ficar bunitinho. se quizer remover, basta remover a linha. local config = { teleport_id = 5023, teleport_area = {x = 321, y = 123, z = 7}, teleport_summon = {x = 321, y = 132, z = 7}, wall_id = 2141, wall_summon = {x = 322, y = 331, z = 7}, } function onStepIn(cid, item, pos) if isPlayer(cid) then doCreateTeleport(config.teleport_id, config.teleport_area, config.teleport_summon) doCreateItem(config.wall_id, config.wall_summon) doSendAnimatedText(getThingPos(cid), "Teleport Traped", math.random(1,255)) doSendMagicEffect(getThingPos(cid), 30) end return true end
  4. function onUse(cid, item, fromPosition, itemEx, toPosition) CreatureEventChecker = function(event, ...) -- Colex if isCreature(arg[1]) or isCreature(arg[3]) or isCreature(arg[4]) then event(unpack(arg)) end end CreatureEvent = function(event, delay, ...) -- Colex addEvent(CreatureEventChecker, delay, event, unpack(arg)) end local txt = {"Crush", "Creeck", "Pihn", "Bosh"} local effects = {84} local tempo = 5 local rocks = { [2712] = { rockProvides = { {rew = 2450, count = 1}}, chance = 40}, [8633] = { rockProvides = { {rew = 8306, count = 1}}, chance = 50}, [8740] = { rockProvides = { {rew = 2143, count = 1}, {rew = 2145, count = 1}, {rew = 5889, count = 1}, {rew = 1294, count = 1}}, chance = 100}, [5750]= { rockProvides = { {rew = 2225, count = 1}, {rew = 5880, count = 1}, {rew = 5888, count = 1}}, chance = 10}, [8634] = { rockProvides = { {rew = 10169, count = 1}, {rew = 2177, count = 1}, {rew = 2158, count = 1}}, chance = 10}, [8635] = { rockProvides = { {rew = 8303, count = 1}, {rew = 2156, count = 1}, {rew = 2147, count = 1}}, chance = 10}, [8636] = { rockProvides = { {rew = 2149, count = 1}, {rew = 2155, count = 1}}, chance = 10} } -- Blocos de encurtamento -- rocks[5867] = rocks[5866] rocks[5868] = rocks[5866] rocks[5920] = rocks[5619] rocks[5921] = rocks[5619] rocks[5922] = rocks[5619] rocks[5923] = rocks[5619] rocks[5924] = rocks[5619] rocks[5622] = rocks[5619] rocks[5623] = rocks[5619] rocks[5751] = rocks[5750] rocks[5752] = rocks[5750] rocks[5753] = rocks[5750] rocks[5754] = rocks[5750] rocks[8741] = rocks[8740] rocks[8742] = rocks[8740] rocks[8743] = rocks[8740] rocks[8749] = rocks[8748] rocks[8750] = rocks[8748] rocks[8751] = rocks[8748] -------- fim blocos ------- if itemEx.itemid == 2450 then if math.random(1, 100) >= 70 then doTransformItem(itemEx.uid, 1423) doDecayItem(itemEx.uid) else doPlayerSendCancel(cid, "Fail") return true end end if rocks[itemEx.itemid] then local provides = rocks[itemEx.itemid].rockProvides local itemToGive = provides[math.random(#provides)] function o(cid) if getPlayerStorageValue(cid, 50030) == 1 then setPlayerStorageValue(cid, 50030, 2) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Quest log as been update") end end if getPlayerStorageValue(cid, 21441) >= 1 then doPlayerSendCancel(cid, "Voce so pode extrair materiais um de cada vez.") return true end if not exhaustion.check(cid, 65866) then exhaustion.make(cid, 65866, tempo) doCreatureSetNoMove(cid, 1) setPlayerStorageValue(cid, 21441, 1) for i = 1, tempo do if i ~= tempo then CreatureEvent(doSendMagicEffect, 1000*i, toPosition, effects[math.random(#effects)], cid) CreatureEvent(doSendAnimatedText, 1000*i, toPosition, txt[math.random(#txt)], math.random(255), cid) else if math.random(100) <= rocks[itemEx.itemid].chance then CreatureEvent(doCreatureSetNoMove, 1000*tempo, cid, 0) CreatureEvent(doPlayerAddItem, 1000*tempo, cid, itemToGive.rew,itemToGive.count) CreatureEvent(doPlayerSendTextMessage, 1000*tempo, cid, 25, "Você encontrou um ".. getItemNameById(itemToGive.rew) ..".") CreatureEvent(setPlayerStorageValue, 1000*tempo, cid, 21441, -1) CreatureEvent(o, 1000*tempo, cid) else CreatureEvent(doPlayerSendCancel, 1000*tempo, cid, "Você não conseguiu extrair nada.") CreatureEvent(doCreatureSetNoMove, 1000*tempo, cid, 0) CreatureEvent(setPlayerStorageValue, 1000*tempo, cid, 21441, -1) end end end else doPlayerSendCancel(cid, "Você só pode escavar uma rocha por vez.") end elseif(itemEx.uid <= 65535 or itemEx.actionid > 0) and (itemEx.itemid == 354 or itemEx.itemid == 355) then doTransformItem(itemEx.uid, 392) doDecayItem(itemEx.uid) doSendMagicEffect(toPosition, CONST_ME_POFF) else doPlayerSendCancel(cid, "Sorry not possible.") end return true end Usa esse (; Abrços
  5. Bom, voce editou o config certinho ali. Né?
  6. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -59.2, 2, -64.2, 3) arr1 = { {0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 3, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end function onCastSpell(cid, var) tempo = 10 local target = getCreatureTarget(cid) function doCancelParalyze() if isCreature(target) then mayNotMove(target, false) end return true end local p = getCreaturePosition(cid) local x = { [0] = {x=p.x, y=p.y-1, z=p.z}, [1] = {x=p.x+4, y=p.y, z=p.z}, [2] = {x=p.x, y=p.y+4, z=p.z}, [3] = {x=p.x, y=p.y, z=p.z} } local y = { [0] = 162, [1] = 164, [2] = 165, [3] = 163 } pos = x[getCreatureLookDirection(cid)] eff = y[getCreatureLookDirection(cid)] mayNotMove(target, true) addEvent(doCancelParalyze, tempo * 1000) doSendMagicEffect(pos, eff) local parameters = { cid = cid, var = var, combat1 = combat1} addEvent(onCastSpell1, 100, parameters) return true end aonde está : tempo = 10, voce altera os segundos que o player irá ficar paralizado.
  7. Kra, antes disso. Tente explicar melhor o que voce quer, que eu nao entendi por#### nenhuma...
  8. Bom amigo, eu fiz uma coisa super rapida, só pra testar a lógica. Testa ai e me diz o que acontece. c = { arvores = {2134, 2143, 1214}, cut = 5, resto = {1241, 2315}, msgs = {"Cortando", "Cutting"} madeira = {2148, 2160} effect = {30, 21} } function onUse(cid, item, itemEx, topos, frompos) for _, i in ipairs(c.arvores) do a = getItemNameById(i) end if not isInArray(c.arvores, itemEx.uid) then doPlayerSendCancel(cid, "Você so pode cortar as certas arvores : "..a) return true end function cut() if c.cut > 5 then doSendMagicEffect(topos, c.effect[math.random(1, #effect)]) doSendAnimatedText(topos, c.msgs[math.random(1, #msgs)], math.random(1, 20)) c.cut = c.cut + 1 else doPlayerAddItem(cid, c.madeira[math.random(1, #madeira)]) doTransformItem(itemEx.uid, c.resto[math.random(1, #resto)]) c.cut = 0 break end addEvent(cut, 1000) return true end cut() return true end @Roksas, se poder me passar , o comando que usa para ficar com o script identado. (; E também ve se melhora a sua identaçao que está orrivel '-'
  9. Aaah, claro . esqueci de declarar a variavel -' function onCastSpell(cid) time = 10 target = getCreatureTarget(cid) function doRemoveParalyze(target) if isCreature(target) then mayNotMove(target, false) end return true end mayNotMove(target, true) addEvent(doRemoveParalyze, time * 1000, cid) end Teste esse.
  10. Link arrumado , é que eu estava editando. Desculpe pelo transtorno =/
  11. Fala ai pessoal do Xtibia, ultimamente eu vejo muitos membros querendo abrir o seu proprio projeto, e precisar de umas sourcers para editar e talz, e nao conseguir editar, para sua base. Então eu querendo ajudar os membros, fiz uma versão aqui do TFS , e editei umas funçoes que pode ajudar muitos. Segue o changelog. ChangeLog - (TFS OrochiElf v1.0) -Adicionado a funçao doPlayerCastSpell(cid, spell) -Adicionado a funçao doPlayerSetSkillLevel(cid, skillId, value) -Adicionado a funçao doPlayerSetMagicLevel(cid, value) -Adicionado a funçao doSendChannels(cid) -Adicionado AutoStacking Item (Junta os items automaticamente) Aqui vai uma fotozinha para mostrar que o servidor não tem bug algum, está limpo. Bom galera, vou ensinar a usar cada uma das funçoes citadas no changelog doPlayerCastSpell -> é usado para fazer o player soltar uma magia.[/size] Exemplo de uso : doPlayerCastSpell(cid, "Exori Vis") Isso irá fazer o player executar uma magia, ou no caso, o player iria usar a magia (Exori Vis) é bom para fazer sistema de cooldown. doPlayerSetSkillLevel -> é usado para setar um novo valor para a skill do player. Exemplo de uso : doPlayerSetSkillLevel(cid, 0, getPlayerSkill(cid, 0) + 10) Isso iria me adicionar 10 pontos da minha skillid 0 , ou seja, fist fighting. doPlayerSetMagicLevel -> é usada da mesma forma que o doPlayerSetSkillLevel doSendChannels -> é usado para abrir a caixa de canais, a mesma que mostra os canais (Trade, Help, Report , entre outros) Espero que ajude muitos membros. Download Link (Tfs OrochiElf v1.0) -> http://www.mediafire...dbd5aa4xm6uux6u Scan (Tfs OrochiElf v1.0) -> https://www.virustot...sis/1366158244/ Obs : Os viros citados no site, sao os virus normais do The Forgotten Server. Obs²: Não estou obrigando ninquem a baixar , ou a gostar do meu feito. então fica a seu critério. Pedido: Eu gostaria que voces deixassem opnioes, no que deveria ter na versao 1.1 (; Obrigado ai galera, espero que ajude
  12. function onCastSpell(cid) time = 10 function doRemoveParalyze(target) if isCreature(target) then mayNotMove(target, false) end return true end mayNotMove(target, true) addEvent(doRemoveParalyze, time * 1000, cid) end Teste esse aqui. no local time voce altera o tempo que ele irá ficar parado.
  13. Nossa mano, isso irá me ajudar mt . REP+
  14. Funciionou , REP+ , Duvida Sanada.
  15. Bom, a funçao mesmo iria jogar o mesmo efeito para todos lados do player. \ | / -0- / | \ Mais ou menos do jeito dakeles pontos ali. @Vou testar o seu sistema.
  16. Ele nao entra faz 3 dias -'
  17. Fala ai galera, meu amigo me passou uma spell para eu usar em meu servidor. porém quando eu fui testar deu um error muito chato. [26/03/2013 22:23:56] [Error - Spell Interface] [26/03/2013 22:23:56] In a timer event called from: [26/03/2013 22:23:56] data/spells/scripts/attack/hells core.lua:onCastSpell [26/03/2013 22:23:56] Description: [26/03/2013 22:23:56] data/spells/scripts/attack/hells core.lua:72: attempt to call global 'changeposbydir' (a nil value) [26/03/2013 22:23:56] stack traceback: [26/03/2013 22:23:56] data/spells/scripts/attack/hells core.lua:72: in function 'onSpell' [26/03/2013 22:23:56] data/spells/scripts/attack/hells core.lua:88: in function <data/spells/scripts/attack/hells core.lua:88> Script Se alguem poder ajudar *-*
  18. Tony Araujo

    Desáfio Desing

    LuckinhaSan 4x1 Alexclusive Bjos. Amey seu Dark na minininha Lucks '-'
  19. Sim, funciona direitinho.
  20. PORRA ! Eu esqueço do Array ¬.¬ Obrigado ai Slicer. REP+ Mais poderia me dizer, porq o for nao estava lendo? o.0
  21. Olá galera, eu criei um script para blokiar items, e tipo... o for nao está lendo todos os valores dentro da tabela N. Ele só está lendo o primeiro valor alguem pode concertar isso pra min? function onMoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status) local n = {1988, 2400, 2404, 2403, 2402, 2401, 2405, 1996} for _, i in ipairs(n) do if item.itemid == i then doPlayerSendCancel(cid, "This item is blocked! you cannot move it!") return false else return true end end end
  22. Show, funciono ... valew e obrigado por me falar oq sinignifica esse error. REP+ Duvida Sanada.
  23. Fala ai galera, está dando esse error filho da puta, que está dando desde quando eu criei essa funçao. Isso checa a soul do player e adiciona mana e life ao player. Error [23/03/2013 16:45:01] [Error - CreatureScript Interface] [23/03/2013 16:45:01] In a timer event called from: [23/03/2013 16:45:01] data/creaturescripts/scripts/login.lua:onLogin [23/03/2013 16:45:01] Description: [23/03/2013 16:45:01] (internalGetPlayerInfo) Player not found when requesting player info #9 [23/03/2013 16:45:01] [Error - CreatureScript Interface] [23/03/2013 16:45:01] In a timer event called from: [23/03/2013 16:45:01] data/creaturescripts/scripts/login.lua:onLogin [23/03/2013 16:45:01] Description: [23/03/2013 16:45:01] data/creaturescripts/scripts/login.lua:99: attempt to compare number with boolean [23/03/2013 16:45:01] stack traceback: [23/03/2013 16:45:01] data/creaturescripts/scripts/login.lua:99: in function <data/creaturescripts/scripts/login.lua:98> Funçao function setFoodLife(cid) if getPlayerSoul(cid) > 0 then doCreatureAddHealth(cid, 2) doCreatureAddMana(cid, 2) end addEvent(setFoodLife, 1*1000, cid) end Alguem me ajuda a resolver? [/code]
  24. Parabéns, está mt legal.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...