Ir para conteúdo

Kolisium

Membro
  • Registro em

  • Última visita

Tudo que Kolisium postou

  1. É uma saida interessante, porem mais pra frente verei se consigo fazer meu proprio script de upgrade... Beeeeeemmm pra frente mas obrigado parceiro!
  2. eu ja vi os comando de adicionar database, porem eu nao sei meuito bem essa parte, poderia me passar o comando?! o resto eu me viro aqui.
  3. Olá pessoal, estou tentando fazer um sisteminha de premium points por storage, sei q pode ter outros mais complexos pelo forum ai, mas eu estou progredindo na programação lua então estou tentando fazer... A minha duvida é a seguinte qdo eu digito no comando /addpoints Player,200 ele adicionar StorageValue 200 no storage que eu escolhi, porem isso só funciona quando o player esta online, gostaria de saber se tem como fazer pra qdo ele estiver offline tb, segue meu script: function onSay(cid, words, param) local parametres = string.explode(param, ",") local player = getPlayerByNameWildcard(parametres[1]) local points = getPlayerStorageValue(player,9876) if (getPlayerStorageValue(player,9876) == -1) and (parametres[1] ~= nil) and (parametres[2] ~= nil) and (isPlayer(player) == true) then setPlayerStorageValue(player,9876, (points+parametres[2]+1)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce adicionou "..(parametres[2]).." points ao jogador "..parametres[1]..".") doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_BLUE, "Voce recebeu "..(parametres[2]).." premium points.") elseif (parametres[1] ~= nil) and (parametres[2] ~= nil) and (isPlayer(player) == true) then setPlayerStorageValue(player,9876, (points+parametres[2])) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce adicionou "..(parametres[2]).." points ao jogador "..parametres[1]..".") doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_BLUE, "Voce recebeu "..(parametres[2]).." premium points.") elseif (parametres[1] == nil) or (parametres[2] == nil) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Este comando requer 2 parametros.") end return true end
  4. Hmmm, que bad, mas mesmo assim muito obrigado amigo. Reputado! No mais é uma honra ter vc comentando o meu post, u.u vejo seus sistemas e fico lendo os codigos pra ver se aprendo algo, sou universitario de ciencia da computação mas ainda to engatinhando no lua relacionado a tibia...
  5. Olá pessoal, eu uso o script abaixo do Mock de Upgrade e eu gostaria de saber como faço para que quando eu usasse o item em uma wand ele aumentasse o dano causado pela wand, alguem pode me ajudar?! --- Perfect refine system by Mock the bear (MTB). --- Email: [email protected]<script cf-hash='f9e31' type="text/javascript"> /* */</script> -- &a = weapon attack -- &d = weapon defense -- &s = shield defense -- &p = armor defense -- # = nivel do item -- @ = max level local gain = { gainArmor='&p+(1)',loseArmor='&p-(1)', gainShield='&s+#',loseShield='&s-(#+1)', gainAttack='&a+(1*(#))',loseAttack='&a-(1*(#+1))', gainDefense='&d+(1*(#))',loseDefense='&d-(1*(#+1))', chance='(100/math.sqrt((((@/4)+(#*2))/@)*#))', maxlvl = 10, blocked_ids = {8881} } local it = { --[itemid] = [percent] [8306] = 0, -- 0% additional [8305] = 100, -- 50% } if not setItemName then function setItemName(uid,name) return doItemSetAttribute(uid,'name',name) end function setItemArmor(uid,name) return doItemSetAttribute(uid,'armor',name) end function setItemDefense(uid,name) return doItemSetAttribute(uid,'defense',name) end function setItemAttack(uid,name) return doItemSetAttribute(uid,'attack',name) end function getItemAttack(uid) return getItemAttribute(uid,'attack') end function getItemDefense(uid) return getItemAttribute(uid,'defense') end function getItemArmor(uid) if type(uid) == 'number' then return getItemAttribute(uid,'armor') else return getItemInfo(uid.itemid).armor end end end local function isArmor(uid) -- Function by Mock the bear. if (getItemInfo(uid.itemid).armor ~= 0) and (getItemWeaponType(uid.uid) == 0) then return true end return false end local function isWeapon(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemWeaponType(uid) if f == 1 or f == 2 or f == 3 then return true end return false end local function isShield(uid) -- Function by Mock the bear. uid = uid or 0 if getItemWeaponType(uid) == 4 then return true end return false end local function isBow(uid) -- Function by Mock the bear. uid = uid or 0 if getItemWeaponType(uid) == 5 then return true end return false end local function getWeaponLevel(uid) -- Function by Mock the bear. uid = uid or 0 local name = getItemName(uid.uid) or getItemInfo(uid.itemid).name or '' local lvl = string.match(name,'%s%+(%d+)%s*') return tonumber(lvl) or 0 end local function doTransform(s,i) -- Function by Mock the bear. local c = string.gsub(s,'@',gain.maxlvl) local c = string.gsub(c,'&a',(getItemAttack(i.uid) ~= 0 and getItemAttack(i.uid) or getItemInfo(i.itemid).attack)) local c = string.gsub(c,'&d',(getItemDefense(i.uid) ~= 0 and getItemDefense(i.uid) or getItemInfo(i.itemid).defense)) local c = string.gsub(c,'&s',(getItemDefense(i.uid) ~= 0 and getItemDefense(i.uid) or getItemInfo(i.itemid).defense)) local c = string.gsub(c,'&p',(getItemArmor(i.uid) ~= 0 and getItemArmor(i.uid) or getItemInfo(i.itemid).armor)) local c = string.gsub(c,'#',getWeaponLevel(i)) local q = assert(loadstring('return '..c)) return math.floor(assert(q())) end function onUse(cid, item, fromPosition, itemEx, toPosition) if item.uid == 0 or item.itemid == 0 then return false end toPosition.stackpos = 255 if isInArray(gain.blocked_ids, itemEx.itemid) or (not getItemWeaponType(itemEx.uid) or getItemWeaponType(itemEx.uid) > 5) or (getItemWeaponType(itemEx.uid) == 0 and not isArmor(itemEx)) or itemEx.itemid == 0 or itemEx.type > 1 or isItemStackable(itemEx.uid) then doPlayerSendTextMessage(cid, 24,"You cant refine this item.") return TRUE end if isCreature(itemEx.uid) == TRUE then return FALSE end local level = getWeaponLevel(itemEx) local chance = doTransform(gain.chance,itemEx) if level == gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.") end doPlayerSendTextMessage(cid, 24,"Trying refine with "..(chance+it[item.itemid] > 100 and 100 or chance+it[item.itemid]).."% of sucess!") if chance+it[item.itemid] >= math.random(0,100) then local nm = getItemName(itemEx.uid) local slot = nm:match('(%[.+%])') or '' ---If you server use slot system dont change it slot = slot~='' and ' '..slot or slot setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level+1)..slot) addEvent(doPlayerSendTextMessage,500,cid, 24,"Your item has been upgrated to +"..(level+1)..slot..".") doSendMagicEffect(toPosition, 39) if isArmor(itemEx) then local get = doTransform(gain.gainArmor,itemEx) setItemArmor(itemEx.uid,get) elseif isBow(itemEx.uid) then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) elseif isWeapon(itemEx.uid) then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.gainDefense,itemEx)) elseif isShield(itemEx.uid) then setItemDefense(itemEx.uid, doTransform(gain.gainShield,itemEx)) end else if level == 0 then addEvent(doPlayerSendTextMessage,500,cid, 24,"No effect.") doSendMagicEffect(toPosition, 2) elseif level > 0 then local nm = getItemName(itemEx.uid) local slot = nm:match('(%[.+%])') or '' ---If you server use slot system dont change it slot = slot~='' and ' '..slot or slot if level == 1 then setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..slot) addEvent(doPlayerSendTextMessage,500,cid, 24,"Your item back to normal.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level-1)..slot) addEvent(doPlayerSendTextMessage,500,cid, 24,"Your item back to +"..(level-1)..slot..".") end if isArmor(itemEx) then setItemArmor(itemEx.uid,doTransform(gain.loseArmor ,itemEx)) elseif isWeapon(itemEx.uid) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.loseDefense,itemEx)) elseif isBow(itemEx.uid) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) elseif isShield(itemEx.uid) then setItemDefense(itemEx.uid, doTransform(gain.loseShield,itemEx)) end end doSendMagicEffect(toPosition, 3) end doRemoveItem(item.uid,1) return true end
  6. Estou o com o mesmo problema do companheiro acima, funciona perfeitamente mas da o mesmo erro na distro, poderia nos ajudar?!
  7. Olá pessoal eu não sei se minha distro é TFS ou não e qual a versão dela, alguem poderia me dizer qual o tipo e a versão da minha distro?!
  8. Kolisium postou uma resposta no tópico em Suporte Tibia OTServer
    Olá pessoal, Eu quero colocar em meu server uma arena que o player compra um ticket em um npc, após isso ele clica no ticket e é teleportado para uma arena onde a arena fica sumonando monstros para que o player possa upar, e apos x minutos o player é kikado de la e para voltar teria q comprar um novo ticket. Se alguem puder ajudar agradeço desde já!
  9. Ola pessoal. Gostaria de saber onde eu tiro o exhausted que o paladin tem quando taca uma sd ele para de atacar normal por um tempinho depois volta... No meu server (8.6) o anti lure esta muito pequeno ou seja, se o monstro anda poucos sqms pra longe de onde ele nasce ele some; Alguem pode me explicar como eu soluciono essas duas duvidas?!
  10. Não , esse script hala o life do player caso o player pise em tal tile , eu quero um q se o player ficar parado no tile o tile fique potando o player de segundo em segundo.
  11. Bom dia pessoas , Eu gostaria de um script que quando o player fique em cima de um piso com uma action id , o script cheque a vocation do player e pote o player com uma pot de mana segundo sua vocation , tipo um sorcerer fica em cima do piso especifico , entao a cada segundo o piso "pota" 3 GMPs no player!
  12. Muito bom porem , se eu quiser desintegrar 100 pots de uma vez , ou 50 ou 60 ou 40 como eu faço pra o script desintegrar tudo de uma vez? ao invez de 1 a 1

Informação Importante

Confirmação de Termo