Ir para conteúdo

joshua8822

Campones
  • Total de itens

    17
  • Registro em

  • Última visita

Sobre joshua8822

Informações

  • Forma que conheci o xTibia
    Otservs
  • Sou
    Scripter

Últimos Visitantes

632 visualizações

joshua8822's Achievements

  1. joshua8822

    Script Clan

    function onSay(cid, words, param) local clans = {"Volcanic", "Seavell", "Orebound", "Wingeon", "Malefic", "Gardestrike", "Psycraft", "Naturia", "Raibolt"} local t = string.explode(param, ",") if words == "!entrarclan" then if param == "" then return doPlayerSendCancel(cid, "Estão faltando os parâmetros!") end local clan = t[1] if getPlayerLevel(cid) < 80 then return doPlayerSendCancel(cid, "Você precisa ser level 80 para entrar em um clan.") end if not isInArray(clans, t[1]) then return doPlayerSendCancel(cid, ""..clan.." não é um clan válido.") end if getPlayerStorageValue(cid, 86228) >= 1 then return doPlayerSendCancel(cid, "Você já está em um clan.") end setPlayerClan(cid, clan) doPlayerSendTextMessage(cid, 19, "Agora você pertence ao Clan ["..clan.."], rank: 1") setPlayerClanRank(cid, 1) elseif words == "!rankclan" then if param == "" then return doPlayerSendTextMessage(cid, 19, "[Clan] Digita o Numero ex: !rankclan 1!") end local ta = { [2] = {level = 100}, [3] = {level = 125}, [4] = {level = 150}, [5] = {level = 200}, } local money = 2160 local qntt = 5 local levels = ta[(getPlayerStorageValue(cid, 862281) + 1) local lv = levels.level if getPlayerStorageValue(cid, 862281) >= tonumber(t[1]) then return doPlayerSendTextMessage(cid, 19, "[Clan] Você já passou desse rank.") end if tonumber(t[1]) >= tonumber((getPlayerStorageValue(cid, 862281)) + 2) then return doPlayerSendTextMessage(cid, 19, "[Clan] Você não pode fazer isso!") end if getPlayerStorageValue(cid, 86228) <= 1 then return doPlayerSendTextMessage(cid, 27, "[Clan] Você nao tem Clan!") end if getPlayerLevel(cid) < lv then return doPlayerSendTextMessage(cid, 19,"[Clan] Você não possui o level necessário.") end if getPlayerItemCount(cid, money) >= qntt then doPlayerRemoveItem(cid, money, qntt) else return doPlayerSendTextMessage(cid, 19,"[Clan] Você não Tem [5] Thousand Dollars Para Avançar de Rank!.") end setPlayerClanRank(cid, getPlayerStorageValue(cid, 862281) + 1) doPlayerSendTextMessage(cid, 27, "[Clan] Você avançou de rank! Rank atual: ["..getPlayerStorageValue(cid, 862281).."].") elseif words == "!trocarclan" then local item = 2160 --ID do item. local qnt = 1 --Quantidade do item. local to_go = t[1] if param == "" then return doPlayerSendCancel(cid, "Estão faltando os parâmetros!") end if not isInArray(clans, t[1]) then return doPlayerSendCancel(cid, ""..t[1].." não é um clan válido.") end if getPlayerStorageValue(cid, 86228) < 1 then return doPlayerSendCancel(cid, "Você não pertence a clan algum!") end if getPlayerItemCount(cid, item) >= qnt then doPlayerRemoveItem(cid, item, qnt) doPlayerSendTextMessage(cid, 27, "Você trocou de clan, pertencendo agora ao clan: "..t[1]..".") setPlayerClan(cid, to_go) setPlayerClanRank(cid, 1) else return doPlayerSendCancel(cid, "Você não tem o item necessário! ITEM: "..item.." QUANTIDADE: "..qnt..".") end end return true end local levels = ta[(getPlayerStorageValue(cid, 862281) + 1)] - um ] de mais. Teste, eu nao e testado.
  2. joshua8822

    bug no site

    Tem ONLINE o MysQL do Xampp?
  3. Quer sustituir algum item? Ejemplo: Remove X item and take a new item.
  4. Dexe-me seu data/mods/firsitems.xml e dexe-me tbm seu id do item
  5. Vai em configuration.lua (data/lib/configuration.lua) e busque isto: (esta a o inicio) pokemonExpPerLevelRate = baseExpRate = generalExpRate = Agora: pokemonExpPerLevelRate = 0 (Change) baseExpRate = 1 (Change) generalExpRate = 1 (Change)
  6. Replace: move1.lua local msgs = {"use ", ""} function doAlertReady(cid, id, movename, n, cd) if not isCreature(cid) then return true end local myball = getPlayerSlotItem(cid, 8) if myball.itemid > 0 and getItemAttribute(myball.uid, cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(myball.uid).." - "..movename.." (m"..n..") is ready!") return true end local p = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid) if not p or #p <= 0 then return true end for a = 1, #p do if getItemAttribute(p[a], cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(p[a]).." - "..movename.." (m"..n..") is ready!") return true end end end function onSay(cid, words, param, channel) if param ~= "" then return true end if string.len(words) > 3 then return true end if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end --alterado v1.5 local mypoke = getCreatureSummons(cid)[1] if getCreatureCondition(cid, CONDITION_EXHAUST) then return true end if getCreatureName(mypoke) == "Evolution" then return true end if getCreatureName(mypoke) == "Ditto" or getCreatureName(mypoke) == "Shiny Ditto" then name = getPlayerStorageValue(mypoke, 1010) --edited else name = getCreatureName(mypoke) end --local name = getCreatureName(mypoke) == "Ditto" and getPlayerStorageValue(mypoke, 1010) or getCreatureName(mypoke) local it = string.sub(words, 2, 3) local move = movestable[name].move1 if getPlayerStorageValue(mypoke, 212123) >= 1 then cdzin = "cm_move"..it.."" else cdzin = "move"..it.."" --alterado v1.5 end if it == "2" then move = movestable[name].move2 elseif it == "3" then move = movestable[name].move3 elseif it == "4" then move = movestable[name].move4 elseif it == "5" then move = movestable[name].move5 elseif it == "6" then move = movestable[name].move6 elseif it == "7" then move = movestable[name].move7 elseif it == "8" then move = movestable[name].move8 elseif it == "9" then move = movestable[name].move9 elseif it == "10" then move = movestable[name].move10 elseif it == "11" then move = movestable[name].move11 elseif it == "12" then move = movestable[name].move12 elseif it == "13" then move = movestable[name].move13 end if not move then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn't recognize this move.") return true end if getPlayerLevel(cid) < move.level then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need be atleast level "..move.level.." to use this move.") return true end if getCD(getPlayerSlotItem(cid, 8).uid, cdzin) > 0 and getCD(getPlayerSlotItem(cid, 8).uid, cdzin) < (move.cd + 2) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..getCD(getPlayerSlotItem(cid, 8).uid, cdzin).." seconds to use "..move.name.." again.") return true end if getTileInfo(getThingPos(mypoke)).protection then doPlayerSendCancel(cid, "Your pokemon cannot use moves while in protection zone.") return true end if getPlayerStorageValue(mypoke, 3894) >= 1 then return doPlayerSendCancel(cid, "You can't attack because you is with fear") --alterado v1.3 end if getPlayerStorageValue(mypoke, 98271) >= 1 then return doPlayerSendCancel(cid, "You can't attack because is sleeping") --alterado v1.5 end if getPlayerStorageValue(mypoke, 3895) >= 1 then return doPlayerSendCancel(cid, "You can't attack because is stuned") --alterado v1.5 end --alterado v1.6 if (move.name == "Team Slice" or move.name == "Team Claw") and #getCreatureSummons(cid) < 2 then doPlayerSendCancel(cid, "Your pokemon need be in a team for use this move!") return true end --alterado v1.7 \/\/\/ if isCreature(getCreatureTarget(cid)) and isInArray(specialabilities["evasion"], getCreatureName(getCreatureTarget(cid))) then local target = getCreatureTarget(cid) if math.random(1, 100) <= passivesChances["Evasion"][getCreatureName(target)] then if isCreature(getMasterTarget(target)) then --alterado v1.6 doSendMagicEffect(getThingPos(target), 211) doSendAnimatedText(getThingPos(target), "TOO BAD", 215) doTeleportThing(target, getClosestFreeTile(target, getThingPos(mypoke)), false) doSendMagicEffect(getThingPos(target), 211) doFaceCreature(target, getThingPos(mypoke)) return true --alterado v1.6 end end end if move.target == 1 then if not isCreature(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end if getCreatureCondition(getCreatureTarget(cid), CONDITION_INVISIBLE) then return 0 end if getCreatureHealth(getCreatureTarget(cid)) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your have already defeated your target.") return 0 end if not isCreature(getCreatureSummons(cid)[1]) then return true end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > move.dist then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end local newid = 0 if isSleeping(mypoke) or isSilence(mypoke) then --alterado v1.5 doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry you can't do that right now.") return 0 else newid = setCD(getPlayerSlotItem(cid, 8).uid, cdzin, move.cd) end doCreatureSay(cid, ""..getPokeName(mypoke)..", "..msgs[math.random(#msgs)]..""..move.name.."!", TALKTYPE_SAY) local summons = getCreatureSummons(cid) --alterado v1.6 addEvent(doAlertReady, move.cd * 1000, cid, newid, move.name, it, cdzin) for i = 2, #summons do if isCreature(summons[i]) and getPlayerStorageValue(cid, 637501) >= 1 then docastspell(summons[i], move.name) --alterado v1.6 end end docastspell(mypoke, move.name) doCreatureAddCondition(cid, playerexhaust) if useKpdoDlls then doUpdateCooldowns(cid) end return 0 end
  7. ¿Qual e seu newStatusSyst? data/lib/newStatusSyst.lua Ou qual e seu base?
  8. Base = PDA 1° Sim aplicara debuff, e sera convertidos para tipo elétrico. Sim. 2° Sim, o dano elétrico será anulado e um 5 - 15% heal. @UP
  9. local clansAtk = { [1] = { [FIREDAMAGE] = { [1] = {atk = 1.17}, [2] = {atk = 1.22}, [3] = {atk = 1.27}, [4] = {atk = 1.32}, [5] = {atk = 1.37}, }, ["null"] = { }, }, [2] = { [WATERDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, [ICEDAMAGE] = { [1] = {atk = 1.10}, [2] = {atk = 1.15}, [3] = {atk = 1.20}, [4] = {atk = 1.25}, [5] = {atk = 1.30}, }, }, [3] = { [ROCKDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, [GROUNDDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, }, [4] = { [FLYDAMAGE] = { [1] = {atk = 1.15}, [2] = {atk = 1.20}, [3] = {atk = 1.25}, [4] = {atk = 1.30}, [5] = {atk = 1.35}, }, [DRAGONDAMAGE] = { [1] = {atk = 1.10}, [2] = {atk = 1.15}, [3] = {atk = 1.20}, [4] = {atk = 1.25}, [5] = {atk = 1.30}, }, }, [5] = { [GHOSTDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, [POISONDAMAGE] = { [1] = {atk = 1.08}, [2] = {atk = 1.13}, [3] = {atk = 1.18}, [4] = {atk = 1.23}, [5] = {atk = 1.28}, }, }, [6] = { [FIGHTDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, [NORMALDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, }, [7] = { [PSYCHICDAMAGE] = { [1] = {atk = 1.10}, [2] = {atk = 1.15}, [3] = {atk = 1.20}, [4] = {atk = 1.25}, [5] = {atk = 1.30}, }, ["null"] = { }, }, [8] = { [GRASSDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, [BUGDAMAGE] = { [1] = {atk = 1.05}, [2] = {atk = 1.10}, [3] = {atk = 1.15}, [4] = {atk = 1.20}, [5] = {atk = 1.25}, }, }, [9] = { [ELECTRICDAMAGE] = { [1] = {atk = 1.12}, [2] = {atk = 1.17}, [3] = {atk = 1.22}, [4] = {atk = 1.27}, [5] = {atk = 1.32}, }, ["null"] = { }, } } local clansDef = { [1] = { ["fire"] = { [1] = {def = 0.17}, [2] = {def = 0.22}, [3] = {def = 0.27}, [4] = {def = 0.32}, [5] = {def = 0.37}, }, ["null"] = { }, }, [2] = { ["water"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, ["ice"] = { [1] = {def = 0.10}, [2] = {def = 0.15}, [3] = {def = 0.20}, [4] = {def = 0.25}, [5] = {def = 0.30}, }, }, [3] = { ["rock"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, ["ground"] = { [1] = {def = 0.10}, [2] = {def = 0.15}, [3] = {def = 0.20}, [4] = {def = 0.25}, [5] = {def = 0.30}, }, }, [4] = { ["flying"] = { [1] = {def = 0.15}, [2] = {def = 0.20}, [3] = {def = 0.25}, [4] = {def = 0.30}, [5] = {def = 0.35}, }, ["dragon"] = { [1] = {def = 0.10}, [2] = {def = 0.15}, [3] = {def = 0.20}, [4] = {def = 0.25}, [5] = {def = 0.30}, }, }, [5] = { ["ghost"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, ["poison"] = { [1] = {def = 0.08}, [2] = {def = 0.13}, [3] = {def = 0.18}, [4] = {def = 0.23}, [5] = {def = 0.28}, }, }, [6] = { ["fighting"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, ["normal"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, }, [7] = { ["psychic"] = { [1] = {def = 0.10}, [2] = {def = 0.15}, [3] = {def = 0.20}, [4] = {def = 0.25}, [5] = {def = 0.30}, }, ["null"] = { }, }, [8] = { ["grass"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, ["bug"] = { [1] = {def = 0.05}, [2] = {def = 0.10}, [3] = {def = 0.15}, [4] = {def = 0.20}, [5] = {def = 0.25}, }, }, [9] = { ["electric"] = { [1] = {def = 0.12}, [2] = {def = 0.17}, [3] = {def = 0.22}, [4] = {def = 0.27}, [5] = {def = 0.32}, }, } } local clansName = { --[num do clan] = {nome do clan, storage outfit normal, storage outfit rank5}, [1] = {'Volcanic', 181613, 181625}, [2] = {'Seavell', 181619, 181622}, [3] = {'Orebound', 181620, 181627}, [4] = {'Wingeon', 181616, 181626}, [5] = {'Malefic', 181615, 181624}, [6] = {'Gardestrike', 181614, 181628}, [7] = {'Psycraft', 181618, 181629}, [8] = {'Naturia', 181612, 181623}, [9] = {'Raibolt', 181617, 181621}, } function getClanPorcent(master, combat, option, type, type2) --alterado v1.9 \/ if getPlayerClanNum(master) >= 1 then local clanAtk = clansAtk[getPlayerClanNum(master)] local clanDef = clansDef[getPlayerClanNum(master)] if option == "atk" and clanAtk[combat] then return clanAtk[combat][getPlayerClanRank(master)].atk else if option == "def" and clanDef[type] then return clanDef[type][getPlayerClanRank(master)].def elseif option == "def" and clanDef[type2] then return clanDef[type2][getPlayerClanRank(master)].def end end end return option == "atk" and 1 or 0 end function getPlayerClanName(cid) if not isCreature(cid) then return 'No Clan!' end return clansName[getPlayerClanNum(cid)] and clansName[getPlayerClanNum(cid)][1] or 'No Clan!' end function getPlayerClanNum(cid) if not isCreature(cid) then return -1 end return getPlayerStorageValue(cid, 86228) end function getPlayerClanRank(cid) if not isCreature(cid) then return -1 end return getPlayerStorageValue(cid, 862281) end function setPlayerClan(cid, clan) if not isCreature(cid) or not clan then return false end if removePlayerClan(cid) then --para evitar possiveis problemas! if type(clan) == "number" and (clan >= 1 and clan <= 9) then setPlayerStorageValue(cid, 86228, clan) --sto clan setPlayerClanRank(cid, 1) --set rank 1 setPlayerStorageValue(cid, clansName[clan][2], 1) --sto roupa return true elseif type(clan) == "string" then clan = string.lower(clan) for e, f in pairs(clansName) do local clan2 = string.lower(f[1]) if clan == clan2 then setPlayerStorageValue(cid, 86228, e) --sto clan setPlayerClanRank(cid, 1) --set rank 1 setPlayerStorageValue(cid, clansName[e][2], 1) --sto roupa return true end end end end return false end function setPlayerClanRank(cid, rank) if not isCreature(cid) or not rank then return false end if type(rank) == "number" and (rank >= 1 and rank <= 5) then setPlayerStorageValue(cid, 862281, rank) if rank == 5 then setPlayerStorageValue(cid, clansName[getPlayerClanNum(cid)][3], 1) end return true end return false end function removePlayerClan(cid) if not isCreature(cid) then return false end if getPlayerStorageValue(cid, 854789) >= 1 then return false end --nao pode remover o clan se o player tiver fazendo missoes de rank! setPlayerStorageValue(cid, 86228, -1) --sto do clan setPlayerStorageValue(cid, 862281, -1) --sto do rank setPlayerStorageValue(cid, 854789, -1) --sto da quest de rank setPlayerStorageValue(cid, 854788, -1) --sto catch, quest de rank setPlayerStorageValue(cid, 854787, -1) --sto task, quest de rank for i = 181612, 181638 do setPlayerStorageValue(cid, i, -1) --sto das roupas de clan end return true end function checkItensForTask(cid, itens) local check = 0 local array = {} local missing = {} table.insert(missing, "Are missing: ") local c = 0 for i = 1, #itens do if getPlayerItemCount(cid, itens[1]) >= itens[2] then check = check + 1 else table.insert(array, {itens[1], (itens[2]-getPlayerItemCount(cid, itens[1]))}) end end if check == #itens then for b = 1, #itens do doPlayerRemoveItem(cid, itens[1], itens[2]) end return 0 else for a = 1, #array do table.insert(missing, ((a == #array and c ~= 0) and " and " or a ~= 1 and ", " or "{")..(array[a][2]).." "..(getItemNameById(array[a][1]))) c = c+1 end table.insert(missing, "} yet.") return table.concat(missing) end end function checkPokemonForTask(cid, poke) local pbs = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid) local slot = getPlayerSlotItem(cid, 8) if slot.itemid > 0 and isPokeball(slot.itemid) then if getItemAttribute(slot.uid, "poke") == poke and getItemAttribute(slot.uid, "task") and getItemAttribute(slot.uid, "task") >= 1 then doRemoveItem(slot.uid, 1) doTransformItem(getPlayerSlotItem(cid, CONST_SLOT_LEGS).uid, 2395) return true end end for i = 1, #pbs do if getItemAttribute(pbs, "poke") == poke and getItemAttribute(pbs, "task") and getItemAttribute(pbs, "task") >= 1 then doRemoveItem(pbs, 1) return true end end return false end
  10. elseif spell == "Compass Slash" then local config = { times = 5, --Vezes que o pokémon irá se teleportar. appearEffect = 211, --Efeito que vai aparecer no pokémon ao aparecer. effect = 223, --Efeito de corte de garras. combat = STEELDAMAGE, --Elemento. disappearInterval = 200, --Tempo para, depois de reaparecer, o pokémon desaparecer novamente. (em milésimos de segundo) teleportInterval = 400 --Intervalo de tempo entre cada teleporte do pokémon. (em milésimos de segundo) } local pos = getPosfromArea(cid, spell_area) local randomPosis = {} for i = 1, config.times do randomPosis[i] = pos[math.random(#pos)] if not isWalkable(randomPosis[i]) or getTileInfo(randomPosis[i]).protection then while not isWalkable(randomPosis[i]) do randomPosis[i] = pos[math.random(#pos)] end end end local function doTeleport(cid, time) if not isCreature(target) or time <= 0 then doAppear(cid) doCreatureSetNoMove(cid, false) doRegainSpeed(cid) end local index = math.random(#randomPosis) doTeleportThing(cid, randomPosis[index]) for i = index, #randomPosis do randomPosis[i] = randomPosis[i + 1] or nil end doAppear(cid) doSendMagicEffect(getThingPos(cid), config.appearEffect) doDanoWithProtect(cid, config.combat, getThingPos(target), 0, -min, -max, config.effect) addEvent(doDisapear, config.disappearInterval, cid) addEvent(doTeleport, config.teleportInterval, cid, time - 1) end doDisapear(cid) doCreatureSetNoMove(cid, true) doChangeSpeed(cid, -getCreatureSpeed(cid)) addEvent(doTeleport, config.teleportInterval, cid, config.times) Teste bem, eu não tenho verificado.
  • Quem Está Navegando   0 membros estão online

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