Ir para conteúdo

luangop

Membro
  • Registro em

  • Última visita

Tudo que luangop postou

  1. Estou sem tempo pra escrever o código mas vou te dar a idéia: Configure ela no items.xml pra pot ter 'charges'.. no caso 3. Cria uma action pra ela healando 5k e a cada use remove uma charge. Bem simples até..
  2. Na pasta xml abra o arquivo outfits.xml Configure sua outfit dessa forma: <outfit id="ID DA OUTFIT" quest="UM NOMERO DE STORAGE VAGO"> <list gender="0" lookType="NUMERO DA OUTFIT NO OBJECT BUILDER" name="NOME DA OUTFIT"/> <list gender="1" lookType="NUMERO DA OUTFIT NO OBJECT BUILDER" name="NOME DA OUTFIT"/> </outfit> em data/actions abre actions.xml e add isso: (obviamente configure de acordo com seu item) <action itemid="ID DO ITEM QUE VAI DAR A OUTFIT" event="script" value="NOME DO ARQUIVO.lua"/> em data/actions/scripts crie um arquivo .lua com o mesmo nome que vc registrou no actions.xml e coloque isso dentro: function onUse(cid, item, fromPosition, itemEx, toPosition) local sto = XXXX --- <<< NUMERO DA STORAGE QUE VC COLOCOU NO OUTFITS.XML local outname = "NOME DA OUTFIT" --- <<< COLOQUE O NOME DA OUTFIT ALI if getPlayerStorageValue(cid, sto) >= 1 then doPlayerSendCancel(cid, "Voce ja tem esta outfit!!") return true elseif getPlayerStorageValue(cid, sto) <= 0 then setPlayerStorageValue(cid, sto, 1) doPlayerSendCancel(cid, "Voce acaba de obter a outfit ".. outname .."!") doRemoveItem(item.uid, 1) return true end end Qualquer erro me informe, escrevi o sistema na mão mesmo.
  3. Então colabore com a comunidade, assim como eu colaborei com você, poste o que você fez para corrigir ?
  4. E como exatamente vc ta digitando? pq essa mensagem deve aparecer quando digita errado o comando..
  5. Eu já vi o contrário.. servidores de WYD que normalmente e todo programado em C++ adaptado para usar scripts lua Já vi servidor de MU em lua tbm..
  6. Eu acho que o que ele quis dizer, é se ao invés de usar scripts .lua dentro da pasta data, utilizasse arquivos em C++ sem compilar, pro distro incluir quando inicia assim como faz com os scripts lua... Mas é tão mais fácil usar a linguagem lua pra fazer sistemas simples
  7. Não chego nem perto do nível do @Dwarfer pra bolar uma função como aquela mathtime(table)... Mas apenas teste minha versão e me diga se funciona, to só praticando: Vai usar da seguinte forma: /prender Nick, (sec, min, hour ou day), numero Por exemplo: /prender Fulano, hour, 3 Vai prender o player Fulano por 3 horas.
  8. Storage NO bau? nunca vi storage em item rsrsrs
  9. Tenha certeza de que copiou o código corretamente, pois está apontando erro na linha 177 perto do caractere '?', porém nessa linha não existe '?'
  10. Tenta assim então: --- Email: <a href="mailto:mock_otnet@hotmail.com">mock_otnet@hotmail.com</a> -- &a = weapon attack -- &d = weapon defense -- &s = shield defense -- &p = armor defense -- # = nivel do item -- @ = max level local gain = { gainArmor='&p+(5)',loseArmor='&p-(3)', gainShield='&s+#',loseShield='&s-(#+3)', gainAttack='&a+(5*(#))',loseAttack='&a-(3*(#+3))', gainDefense='&d+(5*(#))',loseDefense='&d-(3*(#+3))', chance='(100/math.sqrt((((@/4)+(#*2))/@)*#))', maxlvl = 10, blocked_ids = {8881} } local it = { --[itemid] = [percent] [8306] = 7, -- 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. local f = getItemInfo(uid.itemid) if f.armor ~= 0 and f.wieldPosition ~= CONST_SLOT_NECKLACE then return true end return false end local function isWeapon(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemInfo(uid.itemid) if table.find({WEAPON_SWORD, WEAPON_CLUB, WEAPON_AXE}, f.weaponType) then return true end return false end local function isShield(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemInfo(uid.itemid) if f.defense ~= 0 and f.weaponType == WEAPON_SHIELD then return true end return false end local function isBow(uid) -- Function by Mock the bear. local f = getItemInfo(uid.itemid) if f.weaponType == WEAPON_DIST and f.ammoType ~= 0 then return true end return false end local function isBow2(uid) -- Function by Mock the bear. local f = getItemInfo(uid.itemid) if f.weaponType == WEAPON_DIST and f.ammoType ~= 0 then return false end return true 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,"Voce nao consegue trabalhar neste item.") return TRUE end if isCreature(itemEx.uid) == TRUE then return FALSE end local level = getWeaponLevel(itemEx) local chance = doTransform(gain.chance,itemEx) local nm = getItemName(itemEx.uid) if level == gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Voce nao pode mais refinar este objeto, ele ja atingiu o seu maximo!") end doPlayerSendTextMessage(cid, 24,"Voce tenta refinar um(a) "..nm.." com "..(chance+it[item.itemid] > 100 and 100 or chance+it[item.itemid]).."% de chance de sucesso. ") 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 if level==0 then setItemName(itemEx.uid, nm..' +'..(level+1)..slot) elseif level<=9 then setItemName(itemEx.uid, string.match(string.match(string.sub(nm, 1, -3), "%S.*"), ".*%S")..' +'..(level+1)..slot) else setItemName(itemEx.uid, string.match(string.match(string.sub(nm, 1, -4), "%S.*"), ".*%S")..' +'..(level+1)..slot) end addEvent(doPlayerSendTextMessage,500,cid, 24,"Voce refina com sucesso o objeto e ele avanca para o nivel "..(level+1)..slot..".") doSendMagicEffect(toPosition, 12) if isArmor(itemEx) then local get = doTransform(gain.gainArmor,itemEx) setItemArmor(itemEx.uid,get) elseif isBow(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) elseif isWeapon(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.gainDefense,itemEx)) elseif isShield(itemEx) then setItemDefense(itemEx.uid, doTransform(gain.gainShield,itemEx)) end else -- Give it a second chance, if it success, the item stays the same level. if chance+it[item.itemid] >= math.random(0,100) then addEvent(doPlayerSendTextMessage,500,cid, 24,"O refinamento falha mas seu objeto mantem-se no mesmo nivel.") else --if not, we'll give it a 15% change to get destroyed. if math.random(0,100) <= 15 then -- And only if the level is above 7. if level > 7 then addEvent(doPlayerSendTextMessage,500,cid, 24,"O objeto nao aguentou a carga do refinamento e acabou sendo destruido no processo.") doRemoveItem(itemEx.uid,1) -- You can set a custom animation for the destruction of the item here if you want. Just change the number to other animation doSendMagicEffect(toPosition, 9) else addEvent(doPlayerSendTextMessage,500,cid, 24,"O refinamento falha mas seu objeto mantem-se no meso nivel.") end else if level == 0 then addEvent(doPlayerSendTextMessage,500,cid, 24,"Não surte efeito.") 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,"Seu objeto voltou ao normal.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level-1)..slot) addEvent(doPlayerSendTextMessage,500,cid, 24,"O refinamento falha e seu objeto volta para o nivel "..(level-1)..slot..".") end if isArmor(itemEx) then setItemArmor(itemEx.uid,doTransform(gain.loseArmor ,itemEx)) elseif isWeapon(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.loseDefense,itemEx)) elseif isBow(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) elseif isBow2(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) elseif isShield(itemEx) then setItemDefense(itemEx.uid, doTransform(gain.loseShield,itemEx)) end end doSendMagicEffect(toPosition, 9) end end end doRemoveItem(item.uid,1) return true end
  11. Até li o código e não consegui identificar o problema. Mas vai uma dica pra vc: Quando for postar códigos, use a função 'Código' do fórum para facilitar a vida de quem for te ajudar! Assim \/ Na verdade relendo o código agora me ocorreu algo... tente usar esse código pra ver se funciona: --- Email: <a href="mailto:mock_otnet@hotmail.com">mock_otnet@hotmail.com</a> -- &a = weapon attack -- &d = weapon defense -- &s = shield defense -- &p = armor defense -- # = nivel do item -- @ = max level local gain = { gainArmor='&p+(5)',loseArmor='&p-(3)', gainShield='&s+#',loseShield='&s-(#+3)', gainAttack='&a+(5*(#))',loseAttack='&a-(3*(#+3))', gainDefense='&d+(5*(#))',loseDefense='&d-(3*(#+3))', chance='(100/math.sqrt((((@/4)+(#*2))/@)*#))', maxlvl = 10, blocked_ids = {8881} } local it = { --[itemid] = [percent] [8306] = 7, -- 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. local f = getItemInfo(uid.itemid) if f.armor ~= 0 and f.wieldPosition ~= CONST_SLOT_NECKLACE then return true end return false end local function isWeapon(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemInfo(uid.itemid) if table.find({WEAPON_SWORD, WEAPON_CLUB, WEAPON_AXE}, f.weaponType) then return true end return false end local function isShield(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemInfo(uid.itemid) if f.defense ~= 0 and f.weaponType == WEAPON_SHIELD then return true end return false end local function isBow(uid) -- Function by Mock the bear. local f = getItemInfo(uid.itemid) if f.weaponType == WEAPON_DIST and f.ammoType ~= 0 then return true end return false end local function isBow2(uid) -- Function by Mock the bear. local f = getItemInfo(uid.itemid) if f.weaponType == WEAPON_DIST and f.ammoType ~= 0 then return false end return true 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,"Voce nao consegue trabalhar neste item.") return TRUE end if isCreature(itemEx.uid) == TRUE then return FALSE end local level = getWeaponLevel(itemEx) local chance = doTransform(gain.chance,itemEx) local nm = getItemName(itemEx.uid) if level == gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Voce nao pode mais refinar este objeto, ele ja atingiu o seu maximo!") end doPlayerSendTextMessage(cid, 24,"Voce tenta refinar um(a) "..nm.." com "..(chance+it[item.itemid] > 100 and 100 or chance+it[item.itemid]).."% de chance de sucesso. ") 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 if level==0 then setItemName(itemEx.uid, nm..' +'..(level+1)..slot) elseif level<=9 then setItemName(itemEx.uid, string.match(string.match(string.sub(nm, 1, -3), "%S.*"), ".*%S")..' +'..(level+1)..slot) else setItemName(itemEx.uid, string.match(string.match(string.sub(nm, 1, -4), "%S.*"), ".*%S")..' +'..(level+1)..slot) end addEvent(doPlayerSendTextMessage,500,cid, 24,"Voce refina com sucesso o objeto e ele avanca para o nivel "..(level+1)..slot..".") doSendMagicEffect(toPosition, 12) if isArmor(itemEx) then local get = doTransform(gain.gainArmor,itemEx) setItemArmor(itemEx.uid,get) elseif isBow(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) elseif isWeapon(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.gainDefense,itemEx)) elseif isShield(itemEx) then setItemDefense(itemEx.uid, doTransform(gain.gainShield,itemEx)) end else -- Give it a second chance, if it success, the item stays the same level. if chance+it[item.itemid] >= math.random(0,100) then addEvent(doPlayerSendTextMessage,500,cid, 24,"O refinamento falha mas seu objeto mantem-se no meso nivel.") else --if not, we'll give it a 15% change to get destroyed. if math.random(0,100) <= 15 then -- And only if the level is above 7. if level > 7 then addEvent(doPlayerSendTextMessage,500,cid, 24,"O objeto nao aguentou a carga do refinamento e acabou sendo destruido no processo.") doRemoveItem(itemEx.uid,1) -- You can set a custom animation for the destruction of the item here if you want. Just change the number to other animation doSendMagicEffect(toPosition, 9) else addEvent(doPlayerSendTextMessage,500,cid, 24,"O refinamento falha mas seu objeto mantem-se no meso nivel.") end else if level == 0 then addEvent(doPlayerSendTextMessage,500,cid, 24,"Não surte efeito.") 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,"Seu objeto voltou ao normal.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level-1)..slot) addEvent(doPlayerSendTextMessage,500,cid, 24,"O refinamento falha e seu objeto volta para o nivel "..(level-1)..slot..".") end if isArmor(itemEx) then setItemArmor(itemEx.uid,doTransform(gain.loseArmor ,itemEx)) elseif isWeapon(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.loseDefense,itemEx)) elseif isBow(itemEx) then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) elseif isShield(itemEx) then setItemDefense(itemEx.uid, doTransform(gain.loseShield,itemEx)) end end doSendMagicEffect(toPosition, 9) end end end doRemoveItem(item.uid,1) return true end
  12. luangop postou uma resposta no tópico em Suporte Tibia OTServer
    Quando tento importar, fica "Loading tibia.dat " e o RME trava.
  13. luangop postou uma resposta no tópico em Suporte Tibia OTServer
    Olá... Eu baixei um servidor 10.90 pelo qual me interessei, botei online pra testar e tudo.. mas quando vou tentar editar o mapa sempre tenho o erro de Unsupported client version (8). Já baixei o RME 10.90 de várias fontes diferentes, coloquei o items.otb do servidor na pasta do RME, baixei outros items.otb mas até agora não consegui abrir o mapa de maneira alguma.. Algumas vezes não deu o problema de unsupported mas fica em loadint tibia.dat e não passa disso... Por favor me ajudem '-'
  14. luangop postou uma resposta no tópico em Suporte Tibia OTServer
    Eu baixei uma versão mais nova do xampp e funcionou ? Muito obrigado a todos!
  15. luangop postou uma resposta no tópico em Suporte Tibia OTServer
    5.2.5
  16. luangop postou uma resposta no tópico em Suporte Tibia OTServer
    Acontece que baixei um pack completo... servidor + website e no post de onde baixei tem várias pessoas que falaram que funcionou perfeitamente. (Não peço ajuda lá pois é de anos atrás o post)
  17. luangop postou uma resposta no tópico em Suporte Tibia OTServer
    Olá! Estou tentando abrir um servidor 10.x pela primeira vez, em questão estou utilizando um servidor 10.90 TFS 1.2. Porém acredito que disso nada importa.. Meu problema é: Quando tento instalar o site, na segunda parte (Check database connection) da o seguinte erro: Fatal error: Call to undefined method Website::updatepasswordencryption() in C:\xampp\htdocs\install.php on line 178 Adiantando, a linha 178 do arquivo install.php é: Aguardo ansiosamente pela ajuda de vcs!
  18. Todo servidor vem com isso... O comando para não receber PM é /squelch E para teleportar clicando no mapa e /cliport
  19. Tem até que geração de pokemon? Todos os sistemas básicos funcionando 100%? E sobre esse backdoor que o virustotal ta acusando? @Jpn
  20. luangop postou uma resposta no tópico em OTServer Derivados
    Melhor ensinar a pescar, da próxima você mesmo pode pegar o peixe! 1º: Baixe o programa Demoleition (serve para descompilar molebox) ~> https://www.mediafire.com/file/t3xw46s554it5fp/demoleition-v0.50.zip 2º: Abra o programa e selecione o .exe do client e pronto! Simples assim! =) (pra quem tem preguiça de fazer, o link do .dat e .spr: https://mega.nz/#!ecgDSSqY!PpixmcLbGiui4pjJVpIWV8zta_CyEXvQYW82sydxk1A)
  21. luangop postou uma resposta no tópico em OTServer Derivados
    Pra quem ainda está procurando a spr e dat, levei meia hora procurando pra ver que foi compilado com molebox no .exe do jogo rsrs (boa estratégia por sinal)
  22. Teste assim: local config = { -- level needed to make the quest level = 130, -- if players should be able to do the quest unlimited amount of times (not conflicting quest rewards) redo = { status = true, -- true = unlimited, false = once storageValue = 61111 -- only if status is false this will be used }, -- vocation requirement, positions and item configuration { vocations = {1, 5}, itemId = 2190, playerPos = {x=1117, y=1150, z=6}, -- Initial position in the Stone tile newPos = {x=1122, y=1153, z=6}, -- Position of the reward room. itemPos = {x=1117, y=1151, z=6} -- Position of Spellbook "Sorcerer". }, { vocations = {2, 6}, itemId = 2182, playerPos = {x=1123, y=1157, z=6}, -- Initial position in the Stone tile newPos = {x=1122, y=1153, z=6}, -- Position of the reward room. itemPos = {x=1122, y=1157, z=6} -- Position of Red apple "Druid". }, { vocations = {3, 7}, itemId = 2399, playerPos = {x=1127, y=1155, z=6}, -- Initial position in the Stone tile newPos = {x=1122, y=1153, z=6}, -- Position of the reward room. itemPos = {x=1127, y=1154, z=6} -- Position of Crossbow "Paladin". }, { vocations = {4, 8}, itemId = 8602, playerPos = {x=1123, y=1147, z=6}, -- Initial position in the Stone tile newPos = {x=1122, y=1153, z=6}, --Position of the reward room. itemPos = {x=1122, y=1147, z=6} --Position of Sword "Knight". } } function onUse(cid) local players = {} for _, v in ipairs(config) do v.playerPos.stackpos = 253 local player = getThingfromPos(v.playerPos).uid if isPlayer(player) == FALSE then return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Não há jogadores suficiente.") elseif getPlayerLevel(player) < config.level then players.level = true elseif isInArray(v.vocations, getPlayerVocation(player)) == FALSE then players.vocation = true elseif config.redo.status and getPlayerStorageValue(player, config.redo.storageValue) ~= TRUE then players.done = true else v.itemPos.stackpos = 1 local item = getThingfromPos(v.itemPos) if item.itemid ~= v.itemId then players.item = true else table.insert(players, player) end end end if players.level then doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os jogadores devem ser level " .. config.level .. " ou mais.") elseif players.vocation then doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os jogadores devem estar em seus respectivo piso!") elseif players.done then doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Um jogador em seu time ja fez a Fishing Rod and Pick Quest!") elseif players.item then doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os items devem estar na posição correta!") else for k, player in ipairs(players) do doSendMagicEffect(getCreaturePosition(player), CONST_ME_POFF) doTeleportThing(player, config[k].newPos) doSendMagicEffect(getCreaturePosition(player), CONST_ME_TELEPORT) end end return TRUE end
  23. Na minha primeira resposta onde postei o script, clica na flecha pra cima no canto << ate ficar como melhor resposta
  24. Tente apenas retirar a linha return false
  25. Poste seu creaturescripts.xml

Informação Importante

Confirmação de Termo