Ir para conteúdo

samlecter

Visconde
  • Total de itens

    309
  • Registro em

  • Última visita

  • Dias Ganhos

    6

Tudo que samlecter postou

  1. Funciona em TFS 0.4 ? Caso não funcione, poderia adaptar para funcionar?
  2. Criamos um grupo para interagir mais com vocês: Grupo PokéLight Não se esqueçam de curtir a página para acompanhar as atualizações: Página PokéLight
  3. EDITED: Ignora esse comentario, ja foi resolvido

  4. Muita gente pode ter desistido de baixar pelo fato de não saber como ficou, uma dica: coloca imagens ^^ No caso, um remake, seria melhor ainda se tivesse imagens antes/depois
  5. samlecter

    Spell Creator

    Alguém pode postar algum spr válido? Já tentei com alguns aqui e não aparece nenhum effect e algumas outras coisas também não, só quero criar a área mesmo, depois edito os effects,functions
  6. Olá, ontem quando fui responder em um tópico reparei que o botão de spoiler(olho) havia "sumido": tentei por o conteúdo dentro de: mas não funcionou. Mesmo que coloquem o botão de Spoiler novamente, gostaria de saber como posso utilizar o spoiler sem o botão (antigamente <spoiler> Conteúdo </spoiler> funcionava) Sobre os Gifs: Gostaria de saber como por um Gif "automático" no tópico , não é possivel upar um gif no fórum, eu upei no Imgur mas para visualizar o gif tem que ir até o link do Imgur, como visualizar o gif no Tópico?
  7. samlecter

    Duvida magia

    Terminei a Spell O effect tem que ser igual ao item, eu tive ideia de usar a magia "mimic wall" de base mas ela não estava funcionando perfeitamente, o @BielLucena1291 refez e aprimorou a spell, e usei ela de base ^^ Gif da spell: http://imgur.com/2k2iHNb OBS: Essas paredes coloridas são os itens, e o efeito branco de "balão" com a pokedex é um effect, repara que caso acerte alguém, ela não cria o item nesse sqm, mas ela cria o effect, então é só deixar o effect com a mesma sprite do item. OBS²: Retiraram a opção de spoiler? assim que eu conseguir usar dnv eu formato o post melhor. Spell: local p = getThingPosWithDebug(cid) local dirr = getCreatureLookDir(cid) if dirr == 0 or dirr == 2 then item = 12986 -- id dos items Norte e Sul else -- Se o item for o mesmo em todas direções, coloca o id dele 2 vezes. item = 12985 -- id dos items Leste e Oeste end local wall = { [0] = {{x = p.x, y = p.y-1, z = p.z}, {x = p.x, y = p.y-2, z = p.z}, {x = p.x, y = p.y-3, z = p.z}}, [2] = {{x = p.x, y = p.y+1, z = p.z}, {x = p.x, y = p.y+2, z = p.z}, {x = p.x, y = p.y+3, z = p.z}}, [1] = {{x = p.x+1, y = p.y, z = p.z}, {x = p.x+2, y = p.y, z = p.z}, {x = p.x+3, y = p.y, z = p.z}}, [3] = {{x = p.x-1, y = p.y, z = p.z}, {x = p.x-2, y = p.y, z = p.z}, {x = p.x-3, y = p.y, z = p.z}}, } --NORTH = 0--EAST = 1 -- Leste (Direita -->)--SOUTH = 2--WEST = 3 -- Oeste (Esquerda <--)-- Área utilizada:dbbd = { {0, 0, 0, 0, 0, 0, 0},{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}, {0, 0, 0, 0, 0, 0, 0}, }local efeito = { [0] = {{x = p.x, y = p.y-1, z = p.z}, {x = p.x, y = p.y-2, z = p.z}, {x = p.x, y = p.y-3, z = p.z}}, [2] = {{x = p.x, y = p.y+1, z = p.z}, {x = p.x, y = p.y+2, z = p.z}, {x = p.x, y = p.y+3, z = p.z}}, [1] = {{x = p.x+1, y = p.y, z = p.z}, {x = p.x+2, y = p.y, z = p.z}, {x = p.x+3, y = p.y, z = p.z}}, [3] = {{x = p.x-1, y = p.y, z = p.z}, {x = p.x-2, y = p.y, z = p.z}, {x = p.x-3, y = p.y, z = p.z}}, } for i = 1, 3 do if wall[dirr] then local t = wall[dirr] local tEffect = efeito[dirr] if hasTile(t[i]) and isWalkable(t[i], true, false, false) then local ret = {}ret.id = 0ret.cd = 9ret.eff = 43ret.check = 0ret.first = trueret.cond = "Paralyze" doMoveInArea2(cid, 0, dbbd, ICEDAMAGE, min, max, spell, ret) --440 db1 doSendMagicEffect(tEffect[i], 100) end if hasTile(t[i]) and isWalkable(t[i], true, true, false) then local itemuid = doCreateItem(item, 1, t[i]) local pos = getThingPosition(itemuid) local cPos = getThingPos(cid) doItemSetAttribute(getTileThingWithProtect({x=t[i].x,y=t[i].y,z=t[i].z,stackpos=0}).uid, "aid", 88072) doItemSetAttribute(getTileThingWithProtect(cPos).uid, "aid", 88072) addEvent(function() doItemEraseAttribute(getTileThingWithProtect({x=t[i].x,y=t[i].y,z=t[i].z,stackpos=0}).uid, "aid") doItemEraseAttribute(getTileThingWithProtect(cPos).uid, "aid") doRemoveThing(getThingFromPos(pos).uid) end, MimicWallTime*1000) end end end Como devem ser os atributos dos items criados para a spell: [V] Unpassable [V] Block Missiles [V] Block Pathfinder Como devem ser os Atributos das sprites para os items acima: [V] Common [V] Unpassable [V] Unmovable [V] Block Missile [V] Block Pathfinder Tag no xml para os itens: <item fromid="12985" toid="12986" article="a" name="mimic wall" /> em: name="mimic wall" , pode deixar o nome que quiser, o importante é o id dos itens. Adiciona essas functions em algum arquivo da pasta lib: function hasTile(pos) --Verifica se tem TILE na pos pos.stackpos = 0 if getTileThingByPos(pos).itemid >= 1 then return true end return falseendfunction isWalkable(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return trueend function getTileThingWithProtect(pos) --Pega um TILE com proteçoes if hasTile(pos) then pos.stackpos = 0 pid = getTileThingByPos(pos) else pid = getTileThingByPos({x=1,y=1,z=10,stackpos=0}) end return pidend OBS: para a spell funcionar, deve adaptar algumas coisas antes, por exemplo a function de dano usada no code da spell: doMoveInArea2(cid, 0, dbbd, ICEDAMAGE, min, max, spell, ret) Ficaria grato se alguém ajudasse adaptar essa spell para tibia Da uma força ai? @Skulls @Eskylo @Night Wolf @Caronte @zipter98 @Yan Liima A intenção era te ajudar, mas tem que adaptar muita coisa para tibia, ela em poketibia ta funcionando certinho caso alguém queira. Vou usa-la '-'
  8. Olá, o xtibia não aceita upload de gifs, caso eu upe em um site como o Imgur, como faço para o gif aparecer no post sem ter que ir até o link?

    1. Mostrar comentários anteriores  %s mais
    2. samlecter

      samlecter

      Ok, qual seria o local correto? na seção Xtibia > Soluções existem 4 subseções (Regras, Apresentações, Concursos e Eventos e Lixeira Pública) 

      GLvJCsy

      Acho que nenhuma dessas 4 são adequadas, tem um "Faça uma pergunta" canto inferior esquerdo, vou criar ali.

       

      Só mais uma dúvida, posso falar sobre os gis e o spoiler no mesmo post ou devo criar um para cada? Obrigado.

    3. Administrador

      Administrador

      Você pode falar sobre ambos no mesmo post. É na seção SOLUÇÕES, ela tem subcategorias mas aceita posts.

    4. samlecter

      samlecter

      Ah sim, vlw, já criei o tópico lá ^^

  9. Fiz o ride para essa sprite da bayleef: http://imgur.com/sAxiexr
  10. samlecter

    Duvida magia

    Então, eu não sei como é feito isso em tibia, mas em poketibias você coloca condições(já configuradas) em uma spell da seguinte forma: Olhe uma função de dano em area: doMoveInArea2(cid, 441, db1, ICEDAMAGE, min, max) Se eu quiser adicionar alguma condição como Sleep, Paralyze, Slow, Miss, etc, Faço assim: local ret = {}ret.id = 0ret.cd = 9ret.eff = 43ret.check = 0ret.first = trueret.cond = "Slow" doMoveInArea2(cid, 441, db1, ICEDAMAGE, min, max, spell, ret) --440 Agora o dano causado na area (db1) vai aplicar Slow. Paralyze não deixa se mover mas não tenho certeza se impede de atacar, caso impeça de atacar tbm, eu só trocaria isso: ret.cond = "Slow" Por isso: ret.cond = "Paralyze" Caso Não impeça de atacar, somente de se movimentar, eu faria assim: local ret1 = {} ret1.id = 0 ret1.cd = 5 ret1.eff = 0 ret1.check = 0 ret1.first = true ret1.cond = "Paralyze" local ret2 = {} ret2.id = 0 ret2.cd = 5 ret2.eff = 0 ret2.check = 0 ret2.first = true ret2.cond = "Silence" doMoveInArea2(cid, 441, db1, ICEDAMAGE, min, max, spell, ret) doMoveInArea2(cid, 441, db1, ICEDAMAGE, 0, 0, spell, ret2) -- essa segunda não causa dano (0,0) é só p/ aplicar o ret2 (silence) Respondendo sua pergunta, sim é possível, vou por para o player acertado pela magia não se movimentar nem usar magia nenhuma, porém a maneira que isso é feito em poketibia é diferente (do jeito q expliquei acima) então tem que adaptar No caso das runas não sei informar, na sua base já existe alguma magia que impeça o player de se movimentar, e alguma magia que impeça de usar spells e runas(silence) ? Olhando como elas funcionam fica mais fácil adaptar depois. Quando chegar em casa de noite e abrir o pc eu continuo com a spell ... como eu disse ali em cima: "... na sua base já existe alguma magia que impeça o player de se movimentar, e alguma magia que impeça de usar spells e runas(silence) ? ... " Você pode colocar os itens para sumirem mais rápido, aki: local config = { gatesTime = 10, -- tempo em segundos ou aumentar o tempo para usar a spell novamente
  11. Que comédia esse Kalvin Posta essa bayleef em png que faço o ride e mando aqui, tbm tenho ela mas até achar aqui... EDITED: Pronto: http://imgur.com/sAxiexr
  12. É da mesma forma que faz as spells no tibia, não entendo muito bem, mas tenta assim: local master = getCreatureMaster(cid)local combat = createCombatObject()setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)setCombatParam(combat, COMBAT_PARAM_TARGETPLAYERSORSUMMONS, true)setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 20, 30)local area = createCombatArea(AREA_CIRCLE3X3)setCombatArea(combat, area)local su = getCreatureSummons(cid)function onCastSpell(cid, var)if isCreature(cid) then if #getCreatureSummons(cid) < 1 then return doPlayerSendCancel(cid, "Sorry...") endend return doCombat(cid, combat, var)end OBS: pode ser que não exista alguma dessas funções, você disse que ta usando a versão antiga.
  13. samlecter

    Duvida magia

    To passando aqui pra dizer que não esqueci não, só que não vai da pra terminar hoje pois não tive tempo. A spell já ta criando os 3 itens, removendo depois de um tempo(configuravel), porém como não pode criar um item em cima de creature (player), ta com uma verificação assim: caso exista um char em um dos sqms onde o item vai ser criado pela spell, ele cria o item no sqm do lado. Falta arrumar isso, a ideia que tive é a seguinte: Se tiver algum player em um dos sqms da spell, nesse sqm em cima do player ele cria um effect com a mesma sprite do item, e causa a condição de paralyze no player acertado. +/- assim: Amanhã quando eu chegar em casa(de noite) eu termino a spell OBS: Você vai precisar adicionar algumas funções na Lib
  14. Tbm já vi... ele trouxe? aushsuush To vendo 1 movimento da sprite de frente que pode ser muito bem um print com o fundo rosa(transparente)... isso é no máximo uma exposição de uma sprite "criada" (duvido) Sem querer criticar nem nada do tipo, mas tbm pegou a pior sprite que existia de bayleef para fazer a comparação
  15. samlecter

    Duvida magia

    Olha, meu projeto é de poketibia, no poketibia é um pouco diferente mas vou tentar, mas vai ter que adaptar algumas coisas, vamos tentando ou então se o @Skulls ou algum outro membro puder ajudar, melhor ^^, blz? Quando chegar em casa de noite eu mando a spell
  16. samlecter

    Duvida magia

    Olá, precisa ser um item? não poder ser um effect ? caso tenha que ser aquela sprite especifica, cria um effect e coloca a sprite do item. Tenta assim e me diz: local combat = createCombatObject()setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)setCombatParam(combat, COMBAT_PARAM_EFFECT, 2)setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -9.0, -30, -10.0, 4)local arr = {{0, 1, 0},{0, 1, 0},{0, 1, 0},{0, 1, 0},{0, 3, 0},{0, 0, 0},{0, 0, 0},{0, 0, 0},{0, 0, 0},}local area = createCombatArea(arr)setCombatArea(combat, area)local function doPushCreature(uid,direction,distance,time) if isCreature(uid) == TRUE then local rand = (2*math.random(0,1))-1 local rand2 = math.random(-1,0) if direction == 0 then signal = {0,rand,-rand,rand,-rand,0,-1,-1,-1,0,0,0} elseif direction == 1 then signal = {1,1,1,0,0,0,0,rand,-rand,rand,-rand,0} elseif direction == 2 then signal = {0,rand,-rand,rand,-rand,0,1,1,1,0,0,0} elseif direction == 3 then signal = {-1,-1,-1,0,0,0,0,rand,-rand,rand,-rand,0} elseif direction == 4 then signal = {-1,rand2,(-rand2)-1,0,1,rand2+1,rand2,0} elseif direction == 5 then signal = {1,-rand2,-((-rand2)-1),0,1,rand2+1,rand2,0} elseif direction == 6 then signal = {-1,rand2,(-rand2)-1,0,-1,(-rand2)-1,rand2,0} else signal = {1,-rand2,-((-rand2)-1),0,-1,(-rand2)-1,rand2,0} end local pos = getThingPos(uid) nsig = #signal nvar = 0 repeat nvar = nvar+1 newpos = {x=pos.x+(signal[nvar]),y=pos.y+(signal[(nsig/2)+nvar]),z=pos.z} newtile = {x=newpos.x,y=newpos.y,z=newpos.z,stackpos=0} until getTileThingByPos(newtile).uid ~= 0 and hasProperty(getTileThingByPos(newtile).uid,3) == FALSE and queryTileAddThing(uid,newpos) == 1 or nvar == (nsig/2) if canWalk(newpos) == TRUE then if distance == nil or distance == 1 then doTeleportThing(uid,newpos,TRUE) else distance = distance-1 doTeleportThing(uid,newpos,TRUE) if time ~= nil then addEvent(doPushCreature,time,uid,direction,distance,time) else addEvent(doPushCreature,500,uid,direction,distance,500) end end end endend local function getPosfromArea(cid,area)icenter = math.floor(table.getn(area)/2)+1jcenter = math.floor(table.getn(area[1])/2)+1center = area[icenter]ivar = table.getn(area)jvar = table.getn(area[1])i = table.getn(area)^2j = table.getn(area[1])^2 if center[jcenter] == 3 then if getPlayerLookDir(cid) == 0 then signal = {-1,1,1,2} elseif getPlayerLookDir(cid) == 1 then signal = {1,-1,2,1} elseif getPlayerLookDir(cid) == 2 then signal = {1,-1,1,2} else signal = {-1,1,2,1} end else signal = {-1,1,1,2} endPOSITIONS = {} P = 0 repeatpvar = {0,0}I = area[ivar]J = I[jvar]i = i-1j = j-1 if J == 1 then if jvar < jcenter then pvar[signal[3]] = signal[1]*math.abs((jcenter-jvar)) elseif jvar > jcenter then pvar[signal[3]] = signal[2]*math.abs((jcenter-jvar)) end if ivar < icenter then pvar[signal[4]] = signal[1]*math.abs((icenter-ivar)) elseif ivar > icenter then pvar[signal[4]] = signal[2]*math.abs((icenter-ivar)) end end if jvar > 1 then jvar = (jvar-1) elseif ivar > 1 then jvar = table.getn(area[1]) ivar = (ivar-1) end local pos = getThingPos(cid)local areapos = {x=pos.x+(pvar[1]),y=pos.y+(pvar[2]),z=pos.z} if pos.x ~= areapos.x or pos.y ~= areapos.y then P = P+1 POSITIONS[P] = areapos end until i <= 0 and j <= 0return POSITIONSendfunction canWalk(pos, creature, pz, proj) -- nordif getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false endlocal creature = getTopCreature(pos)if creature.type > 0 then return false endif getTilePzInfo(pos) and not pz then return false endlocal n = not proj and 3 or 2for i = 0, 255 dopos.stackpos = ilocal tile = getTileThingByPos(pos)if tile.itemid ~= 0 and not isCreature(tile.uid) thenif hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) thenreturn falseendendendreturn trueendfunction onCastSpell(cid, var)pos = getPosfromArea(cid,arr)n = 0while n < #pos don = n+1thing = {x=pos[n].x,y=pos[n].y,z=pos[n].z,stackpos=253} if isCreature(getThingfromPos(thing).uid) == TRUE then doPushCreature(getThingfromPos(thing).uid,getPlayerLookDir(cid)) doSendAnimatedText(getThingPos(cid), "GET OFF", 215) endendreturn doCombat(cid, combat, var)end Créditos pela spell: xWhiteWolf
  17. NÃO atravessasse, e seguisse o player. Magia, por exemplo um doSendDistanceShoot, SEMPRE chega no alvo, se tiver paredes, arvores ou qualquer objeto na frente, ele passa pela objeto e chega no target, eu queria que continuassem SEMPRE chegando no alvo porém, se tiver algum objeto como uma parede entre o poke q vai lançar a spell e o target, o shoot iria "desviar" dessa parede e chegar no alvo fazendo "curvas" se necessário, caso a única forma seja colocando o id de cada item que o doSendDistanceShoot tem que desviar, não tem problema Algumas informações: Poketibia, 860, TFS 0.4 (possui source)
  18. Não mudei pq não vamos usar essa capa, enquanto não fazemos a nova deixei essa ai mesmo, quem fez foi um amigo ^^
  19. Desse jeito fica fixada, a posição que você quer você vai editando os números até achar a ideal, No Entergame.OTUI: EnterGameWindow id: enterGame &authenticatorEnabled: false &authenticatorHeight: 44 &stayLoggedBoxEnabled: false &stayLoggedBoxHeight: 24 @onEnter: EnterGame.doLogin() draggable: false
  20. Nem era pra ser "água" ^^ , fiz rapidinho só por prática mesmo, coloquei essas cores pq são +/- as cores do logo/icon do Meu Projeto
  21. Gostei da área dos digletts, só essa vegetação ai que não ta combinando né
  22. Fiz aqui mas não gostei muito não ashuasuashuahsua
  • Quem Está Navegando   0 membros estão online

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