Zere#
Sei que sóu pidão , mais como você disse vc não gosta de faze script pros player.
intao manin
meu sistema de promotion é do Cleber
será se eu adiciona isso dá certo ? obrigado manin por da essa dika^^
Por lucashgas, 10 de jan. de 2012 em Tópicos Sem Resposta
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

Zere#
Sei que sóu pidão , mais como você disse vc não gosta de faze script pros player.
intao manin
meu sistema de promotion é do Cleber
será se eu adiciona isso dá certo ? obrigado manin por da essa dika^^
info
Grupo: Conde
Registrado: 06/08/11
Posts: 752
Reputação: +112

Não importa o sistema, se usar vocation isso vai aumentar o dano... pode fazer por exp.lua tambem
info
Grupo: Conde
Registrado: 25/04/12
Posts: 752
Reputação: +125
Gênero: Masculino

Zeref... voce deu risada quando eu coloquei vocation =4 naquela parte la.. e agora falo que é de usa ele.. n entendo agora =[
e tipo eu acho que só falto eu coloca no move1 como @SLICER falo logo acima.. pq eu só pus no pokemoves...
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

na vdd... eh pra por soh no lib/pokemon moves.lua, no lib/moves.lua eh soh pra ver o tpw do atk.. ;x eh soh fazer tpw o do zeref... hehe
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

Zere#all
galera vcs poderia me dize uma base como crio uma ball igual do pxg?
o poke apareçendo vlws^^
info
Grupo: Conde
Registrado: 25/04/12
Posts: 752
Reputação: +125
Gênero: Masculino

@Slicer.. O problema e que ele nao almenta o ataque .. eu fiz igual Zeref falou e ele n almenta e nem da erro tbm ;|
E o zeref só me chinga ![]()
Mas mesmo assim eu amo ele KKKKKKK![]()
Editado Junho 2 por Cleberadm
info
Grupo: Conde
Registrado: 06/08/11
Posts: 752
Reputação: +112

@StyloMaldoso
Se fosse facil, já teria feito...
@Cleberadm
Como ta o seu?
Como testou?
Não sou de xingar, sou mais de rir do que tentam e quando morrem em ot ![]()
@All
Rumo 500 posts e ignora o negocio abaixo...
@ZerefSoares
Bulbasaur / +50
Level: 20 ATK: 49/269 DEF: 76/418 SPA: 65/357 HP: 90/495 SPD: 4/15
Ivysaur / +50
Level: 40 ATK: 124/403 DEF: 190/618 SPA: 160/520 HP: 240/780 SPD: 12/27
Venusaur / +50
Level: 85 ATK: 348/717 DEF: 518/1067 SPA: 425/875 HP: 680/1400 SPD: 34/54
Editado Junho 2 por ZerefShirou
info
Grupo: Conde
Registrado: 25/04/12
Posts: 752
Reputação: +125
Gênero: Masculino

@Zeref eu tbm do risada quando morrem MUHAA
mas tipo eu coloquei do jeito que vc falo emcima e testei com 1 buzz lvl 100
1 buzz 100 no player com promote..
1 buzz 100 em outro sem promote...
e ambos tiram mesma coisa.
Me responde e é o post 500 \o/.
Editado Junho 2 por Cleberadm
info
Grupo: Campones
Registrado: 09/12/10
Posts: 9
Reputação: 0

@ZerefShirou
o pokeexp
SPOILER
local balls = {11826, 11828, 11829, 11831, 11832, 11834, 11835, 11837,
11737, 11739, 11740, 11742, 11743, 11745, 11746, 11748}
local function playerAddExp(cid, exp)
doPlayerAddExp(cid, exp)
doSendAnimatedText(getThingPos(cid), exp, 215)
end
function onDeath(cid, corpse, deathList)
if not isCreature(cid) then return true end
if isSummon(cid) or not deathList or corpse.itemid == 0 or getCreatureName(cid) == "Evolution" then return true end
local givenexp = getWildPokemonExp(cid)
local expstring = ""..cid.."expEx"
local killer = getItemAttribute(corpse.uid, "corpseowner")
if givenexp > 0 then
for a = 1, #deathList do
local pk = deathList[a]
if isCreature(pk) then
playerAddExp(pk, math.floor(playerExperienceRate * givenexp * getDamageMapPercent(pk, cid)))
local firstball = getPlayerSlotItem(pk, 8)
if firstball and getItemAttribute(firstball.uid, expstring) and getItemAttribute(firstball.uid, expstring) > 0 then
local percent = getItemAttribute(firstball.uid, expstring) <= 1 and getItemAttribute(firstball.uid, expstring) or 1
local gainexp = math.ceil(percent * givenexp)
doItemSetAttribute(firstball.uid, expstring, 0)
givePokemonExp(pk, firstball, gainexp)
end
for b = 1, #balls do
local pokes = getItemsInContainerById(getPlayerSlotItem(pk, 3).uid, balls[b])
if #pokes >= 1 then
for _, uid in pairs (pokes) do
if getItemAttribute(uid, expstring) and getItemAttribute(uid, expstring) > 0 then
local percent = getItemAttribute(uid, expstring) <= 1 and getItemAttribute(uid, expstring) or 1
local gainexp = math.ceil(percent * givenexp)
doItemSetAttribute(uid, expstring, 0)
givePokemonExpInBp(pk, uid, gainexp, balls[b])
end
end
end
end
end
end
end
if isNpcSummon(cid) then
local master = getCreatureMaster(cid)
doSendMagicEffect(getThingPos(cid), getPlayerStorageValue(cid, 10000))
doCreatureSay(master, getPlayerStorageValue(cid, 10001), 1)
doRemoveCreature(cid)
return false
end
doItemSetAttribute(corpse.uid, "offense", getPlayerStorageValue(cid, 1011))
doItemSetAttribute(corpse.uid, "defense", getPlayerStorageValue(cid, 1012))
doItemSetAttribute(corpse.uid, "speed", getPlayerStorageValue(cid, 1013))
doItemSetAttribute(corpse.uid, "vitality", getPlayerStorageValue(cid, 1014))
doItemSetAttribute(corpse.uid, "spattack", getPlayerStorageValue(cid, 1015))
doItemSetAttribute(corpse.uid, "level", getLevel(cid))
doItemSetAttribute(corpse.uid, "gender", getPokemonGender(cid))
return true
end
o level system
[/[i]SPOILER[/i]]
function getPokemonStatus(name, multiplier)
local a = pokes[name]
local m = 1
if not a then return false end
if not a.offense then return false end
if multiplier then m = multiplier end
local ret = {}
ret.off = a.offense * m
ret.offense = ret.off
ret.def = a.defense * m
ret.defense = ret.def
ret.agi = a.agility * m
ret.agility = ret.agi
ret.spatk = a.specialattack * m
ret.specialattack = ret.spatk
ret.vit = a.vitality * m
ret.vitality = ret.vit
return ret
end
function getPokemonXMLOutfit(name)
local johto = false
for i = 303, 402 do
if oldpokedex[i][1] == name then
johto = true
end
end
if isShinyName(name) then
a = "data/monster/pokes/Shiny/"..name..".xml"
elseif johto then
a = "data/monster/pokes/geracao 2/"..name..".xml" --edited pra melhorar a pasta monster
else
a = "data/monster/pokes/geracao 1/"..name..".xml"
end
local b = io.open(a, "a+")
local c = b:read("*all")
b:close()
local d, e = c:find('look type="(.-)"')
c = string.sub(c, d + 11, e - 1)
return tonumber©
end
function doEvolutionOutfit(cid, oldout, outfit)
if not isCreature(cid) then return true end
if getCreatureOutfit(cid).lookType == oldout then
doSetCreatureOutfit(cid, {lookType = outfit}, -1)
else
doSetCreatureOutfit(cid, {lookType = oldout}, -1)
end
end
function doStartEvolution(cid, evolution, seconds)
if not isCreature(cid) then return true end
local a = getPlayerStorageValue(cid, 1007)
local b = getCreatureHealth(cid) / getCreatureMaxHealth(cid)
local d = getThingPos(cid)
local e = getCreatureMaster(cid)
if getHappinessRate(cid) < 1 then return true end
local f = getCreatureOutfit(cid).lookType
local g = getItemAttribute(getPlayerSlotItem(e, 8).uid, "nick") or getCreatureName(cid)
local h = getPokemonXMLOutfit(evolution)
doItemSetAttribute(getPlayerSlotItem(e, 8).uid, "hp", b)
doCreatureSay(e, "What? My "..g.." is evolving!", TALKTYPE_SAY)
doSummonMonster(e, "Evolution")
doReturnPokemon(e, cid, getPlayerSlotItem(e, 8), 0, true)
local evo = getCreatureSummons(e)[1]
doEvolutionOutfit(evo, h, f)
doCreatureSetHideHealth(evo, true)
doCreatureSetLookDir(evo, 2)
setPlayerStorageValue(evo, 1007, g)
doTeleportThing(evo, d, false)
addEvent(sendSSJEffect, 250, evo)
doSendAnimatedText(getThingPos(evo), "EVOLUTION", COLOR_GRASS)
doSendEvolutionEffect(evo, getThingPos(evo), evolution, 20, false, false, f, h)
end
function doSendEvolutionEffect(cid, pos, evolution, turn, ssj, evolve, f, h)
if not isCreature(cid) then
doSendAnimatedText(pos, "CANCEL", 215)
return true end
if evolve then
doEvolvePokemon(getCreatureMaster(cid), {uid = cid}, evolution, 0, 0)
return true
end
doSendMagicEffect(pos, 18)
if ssj then
sendSSJEffect(evo)
end
doEvolutionOutfit(cid, f, h)
addEvent(doSendEvolutionEffect, math.pow(1900, turn/20), cid, getThingPos(cid), evolution, turn - 1, turn == 19, turn == 2, f, h)
end
function sendSSJEffect(cid)
if not isCreature(cid) then return true end
local pos1 = getThingPos(cid)
local pos2 = getThingPos(cid)
pos2.x = pos2.x + math.random(-1, 1)
pos2.y = pos2.y - math.random(1, 2)
doSendDistanceShoot(pos1, pos2, 37)
addEvent(sendSSJEffect, 45, cid)
end
function sendFinishEvolutionEffect(cid, alternate)
if not isCreature(cid) then return true end
local pos1 = getThingPos(cid)
if alternate then
local pos = {
[1] = {-2, 0},
[2] = {-1, -1},
[3] = {0, -2},
[4] = {1, -1},
[5] = {2, 0},
[6] = {1, 1},
[7] = {0, 2},
[8] = {-1, 1}}
for a = 1, 8 do
local pos2 = getThingPos(cid)
pos2.x = pos2.x + pos[a][1]
pos2.y = pos2.y + pos[a][2]
local pos = getThingPos(cid)
doSendDistanceShoot(pos2, pos, 37)
addEvent(doSendDistanceShoot, 300, pos, pos2, 37)
end
else
for a = 0, 3 do
doSendDistanceShoot(pos1, getPosByDir(pos1, a), 37)
end
for a = 4, 7 do
addEvent(doSendDistanceShoot, 600, pos1, getPosByDir(pos1, a), 37)
end
end
end
function doEvolvePokemon(cid, item2, theevo, stone1, stone2)
if not isCreature(cid) then return true end
if not pokes[theevo] or not pokes[theevo].offense then
doReturnPokemon(cid, item2.uid, getPlayerSlotItem(cid, 8), pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect, false, true)
return true
end
local owner = getCreatureMaster(item2.uid)
local pokeball = getPlayerSlotItem(cid, 8)
local description = "Contains a "..theevo.."."
local pct = getCreatureHealth(item2.uid) / getCreatureMaxHealth(item2.uid)
doItemSetAttribute(pokeball.uid, "hp", pct)
doItemSetAttribute(pokeball.uid, "poke", theevo)
doItemSetAttribute(pokeball.uid, "description", "Contains a "..theevo..".")
doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getPokeName(item2.uid).." evolved into a "..theevo.."!")
doSendMagicEffect(getThingPos(item2.uid), 18)
doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos[theevo])
doSendMagicEffect(getThingPos(cid), 173)
local oldpos = getThingPos(item2.uid)
local oldlod = getCreatureLookDir(item2.uid)
local oldlvl = getPokemonLevel(item2.uid)
doRemoveCreature(item2.uid)
doSummonMonster(cid, theevo)
local pk = getCreatureSummons(cid)[1]
doTeleportThing(pk, oldpos, false)
doCreatureSetLookDir(pk, oldlod)
sendFinishEvolutionEffect(pk, true)
addEvent(sendFinishEvolutionEffect, 550, pk, true)
addEvent(sendFinishEvolutionEffect, 1050, pk)
doPlayerRemoveItem(cid, stone1, 1)
doPlayerRemoveItem(cid, stone2, 1)
doAddPokemonInOwnList(cid, theevo)
local status = getPokemonStatus(getCreatureName(pk))
local off = status.off * 7.5
local def = status.def * 7.5
local agi = status.agi * 7.5
local spatk = status.spatk * 7.5
local vit = status.vit * 7
doItemSetAttribute(pokeball.uid, "offense", getItemAttribute(pokeball.uid, "offense") + off)
doItemSetAttribute(pokeball.uid, "defense", getItemAttribute(pokeball.uid, "defense") + def)
doItemSetAttribute(pokeball.uid, "speed", getItemAttribute(pokeball.uid, "speed") + agi)
doItemSetAttribute(pokeball.uid, "specialattack", getItemAttribute(pokeball.uid, "specialattack") + spatk)
doItemSetAttribute(pokeball.uid, "vitality", getItemAttribute(pokeball.uid, "vitality") + vit)
doPlayerSendTextMessage(cid, 27, "Evolution bonus: • Offense: +"..doMathDecimal(off).." • Defense: +"..doMathDecimal(def).." • Spc. Atk: +"..doMathDecimal(spatk).." • Agility: +"..doMathDecimal(agi).." • Vitality: +"..doMathDecimal(vit).."")
local happy = getItemAttribute(pokeball.uid, "happy")
doItemSetAttribute(pokeball.uid, "happy", happy + happyGainedOnEvolution)
if happy + happyGainedOnEvolution > 255 then
doItemSetAttribute(pokeball.uid, "happy", 255)
end
adjustStatus(pk, pokeball.uid, true, false)
if useKpdoDlls then
doUpdateMoves(cid)
end
end
function givePokemonExp(cid, item, expe, pct, rarecandy)
if expe <= 0 or not isCreature(cid) then return true end
local leveltable = getPokemonExperienceTable(getPokeballName(item.uid, true))
if getItemAttribute(item.uid, "exp") + expe > leveltable[100] then
givePokemonExp(cid, item, leveltable[100] - getItemAttribute(item.uid, "exp"))
return true
end
doItemSetAttribute(item.uid, "exp", getItemAttribute(item.uid, "exp") + expe)
doItemSetAttribute(item.uid, "happy", getItemAttribute(item.uid, "happy") + 1)
doItemSetAttribute(item.uid, "nextlevelexp", getItemAttribute(item.uid, "nextlevelexp") - expe)
if pct then
doPlayerSendTextMessage(cid, 27, "Your "..getPokeballName(item.uid).." has received "..expe.." experience points ("..pct.."%).")
else
if getItemAttribute(item.uid, "nextlevelexp") > 0 then
doPlayerSendTextMessage(cid, 27, "Your "..getPokeballName(item.uid).." ["..getItemAttribute(item.uid, "level").."] has received "..expe.." experience points ("..getItemAttribute(item.uid, "nextlevelexp").." to next level).")
else
doPlayerSendTextMessage(cid, 27, "Your "..getPokeballName(item.uid).." ["..getItemAttribute(item.uid, "level").."] has received "..expe.." experience points and has leveled up!")
end
end
if isBeingUsed(item.itemid) then
doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), expe, 215)
end
if getItemAttribute(item.uid, "nextlevelexp") <= 0 then
local summon = getCreatureSummons(cid)[1]
if not isCreature(summon) then return true end
doCreatureAddHealth(summon, getCreatureMaxHealth(summon)) --edited enxe a vida do poke quando ele evolui
doSendFlareEffect(getThingPos(summon))
doSendAnimatedText(getThingPos(summon), "Level up!", 215)
adjustPokemonLevel(item.uid, cid, item.itemid)
doCreatureAddHealth(summon, getCreatureMaxHealth(summon))
end
end
function givePokemonExpInBp(cid, item, expe, ballid, pct, hidemessage)
if expe <= 0 or not isCreature(cid) then return true end
local leveltable = getPokemonExperienceTable(getPokeballName(item, true))
if getItemAttribute(item, "exp") + expe > leveltable[100] then
givePokemonExpInBp(cid, item, leveltable[100] - getItemAttribute(item, "exp"), ballid)
return true
end
doItemSetAttribute(item, "exp", getItemAttribute(item, "exp") + expe)
doItemSetAttribute(item, "happy", getItemAttribute(item, "happy") + 1)
doItemSetAttribute(item, "nextlevelexp", getItemAttribute(item, "nextlevelexp") - expe)
if not hidemessage then
if pct then
doPlayerSendTextMessage(cid, 27, "Your "..getPokeballName(item).." has received "..expe.." experience points ("..pct.."%).")
else
if getItemAttribute(item, "nextlevelexp") > 0 then
doPlayerSendTextMessage(cid, 27, "Your "..getPokeballName(item).." ["..getItemAttribute(item, "level").."] has received "..expe.." experience points inside his pokeball ("..getItemAttribute(item, "nextlevelexp").." to next level).")
else
doPlayerSendTextMessage(cid, 27, "Your "..getPokeballName(item).." ["..getItemAttribute(item, "level").."] has received "..expe.." experience points and has leveled up inside his pokeball.")
adjustPokemonLevel(item, cid, ballid)
end
end
end
end
function doMathDecimal(number, casas)
if math.floor(number) == number then return number end
local c = casas and casas + 1 or 3
for a = 0, 10 do
if math.floor(number) < math.pow(10, a) then
local str = string.sub(""..number.."", 1, a + c)
return tonumber(str)
end
end
return number
end
function adjustPokemonLevel(item, cid, id, rarecandy)
if not isCreature(cid) then return true end
local exp = getItemAttribute(item, "exp")
local level = getItemAttribute(item, "level")
local leveltable = getPokemonExperienceTable(getPokeballName(item, true))
local newlevel = 1
for x = 1, 100 do
if exp >= leveltable[x] and exp < leveltable[x+1] then
newlevel = x
end
end
if newlevel <= 1 then return true end
local levelsup = (newlevel - level)
local pokemon = getItemAttribute(item, "poke")
local happy = getItemAttribute(item, "happy")
local rate = happy / 100
local newhappiness = happy
if happy >= 250 then
newhappiness = 255
elseif happy >= 230 then
newhappiness = happy + 4
elseif happy >= 210 then
newhappiness = happy + 6
elseif happy >= 180 then
newhappiness = happy + 8
elseif happy >= 140 then
newhappiness = happy + 10
elseif happy >= 110 then
newhappiness = happy + 12
else
newhappiness = happy + 15
end
local status = getPokemonStatus(pokemon)
local off = status.off * rate * levelsup
local def = status.def * rate * levelsup
local agi = status.agi * rate * levelsup
local spatk = status.spatk * rate * levelsup
local vit = status.vit * rate * levelsup
doItemSetAttribute(item, "level", newlevel)
if not rarecandy then
doItemSetAttribute(item, "happy", newhappiness)
end
local nextexp = leveltable[newlevel + 1] - exp
doItemSetAttribute(item, "nextlevelexp", nextexp)
doItemSetAttribute(item, "offense", getItemAttribute(item, "offense") + off)
doItemSetAttribute(item, "defense", getItemAttribute(item, "defense") + def)
doItemSetAttribute(item, "speed", getItemAttribute(item, "speed") + agi)
doItemSetAttribute(item, "specialattack", getItemAttribute(item, "specialattack") + spatk)
doItemSetAttribute(item, "vitality", getItemAttribute(item, "vitality") + vit)
if newlevel > getPlayerLevel(cid) + pokemonMaxLevelAbovePlayer then
addEvent(doPlayerSendTextMessage, 30, cid, 18, "Warning: Your "..getPokeballName(item).."'s ["..newlevel.."] level is much higher than yours, so you will not be able to call him to battles.")
end
if isCreature(cid) and id >= 1 and isBeingUsed(id) then
adjustStatus(getCreatureSummons(cid)[1], item, false, true)
doPlayerSendTextMessage(cid, 27, "• Level: "..newlevel.." (+"..levelsup..") • Offense: +"..doMathDecimal(off).." • Defense: +"..doMathDecimal(def).." • Spc. Atk: +"..doMathDecimal(spatk).." • Agility: +"..doMathDecimal(agi).." • Vitality: +"..doMathDecimal(vit).."")
if happy < minHappyToEvolve then return true end
if pokemonsCanEvolveByLevel then
local summon = getCreatureSummons(cid)[1]
local reqlevel = poevo[getCreatureName(summon)] and poevo[getCreatureName(summon)].level or -1
local level = getItemAttribute(item, "level")
local evolution = "none"
local name = getCreatureName(summon)
if name == "Tyrogue" and level >= 20 then
if getOffense(summon) == getDefense(summon) then
evolution = "Hitmontop"
elseif getOffense(summon) > getDefense(summon) then
evolution = "Hitmonlee"
else
evolution = "Hitmonchan"
end
elseif name == "Eevee" then
if happy >= maxHappyToEvolve then
if isDay() then
evolution = "Espeon"
else
evolution = "Umbreon"
end
end
elseif name == "Slowpoke" and level >= 28 then
evolution = "Slowbro"
elseif name == "Poliwhirl" and level >= 36 then
evolution = "Poliwrath"
elseif reqlevel > 4 and level >= reqlevel then
evolution = poevo[getCreatureName(summon)].evolution
elseif reqlevel == 2 and happy >= maxHappyToEvolve then
evolution = poevo[getCreatureName(summon)] and poevo[getCreatureName(summon)].evolution or "none"
end
if evolution ~= "none" then
doStartEvolution(summon, evolution, 4)
end
end
end
end
function adjustStatus(pk, item, health, vite, conditions)
if not isCreature(pk) then return true end
local bonusoffense = getItemAttribute(item, boffense) or 0
local bonusdefense = getItemAttribute(item, bdefense) or 0
local bonusagility = getItemAttribute(item, bagility) or 0
local bonussattack = getItemAttribute(item, bsattack) or 0
setPlayerStorageValue(pk, 1000, getItemAttribute(item, "level"))
setPlayerStorageValue(pk, 1001, getItemAttribute(item, "offense") + bonusoffense)
setPlayerStorageValue(pk, 1002, getItemAttribute(item, "defense") + bonusdefense)
setPlayerStorageValue(pk, 1003, getItemAttribute(item, "speed") + bonusagility)
setPlayerStorageValue(pk, 1005, getItemAttribute(item, "specialattack") + bonussattack)
local gender = getItemAttribute(item, "gender") and getItemAttribute(item, "gender") or 0
doCreatureSetSkullType(pk, gender)
if vite == true then
local pct = getCreatureHealth(pk) / getCreatureMaxHealth(pk)
local vit = getItemAttribute(item, "vitality") - getPlayerStorageValue(pk, 1004)
setCreatureMaxHealth(pk, getCreatureMaxHealth(pk) + ( vit * HPperVIT ))
doCreatureAddHealth(pk, pct * vit * HPperVIT)
end
setPlayerStorageValue(pk, 1004, getItemAttribute(item, "vitality"))
doRegainSpeed(pk)
local nick = getItemAttribute(item, "poke")
if string.find(tostring(nick), "Shiny") then
nick = tostring(nick):match("Shiny (.*)")
end
if getItemAttribute(item, "nick") then
nick = getItemAttribute(item, "nick")
end
setPlayerStorageValue(pk, 1007, nick)
local boostlevel = getItemAttribute(item, "boost") or 0
local boostshow = hideBoost and "]" or " + "..boostlevel.."]"
local lvlstr = ""
if showBoostSeparated then
boostshow = hideBoost and "]" or "] [+"..boostlevel.."]"
end
if hideSummonsLevel then
if not hideBoost then
nick = nick.." [+"..boostlevel.."]"
end
else
nick = nick.." ["..getItemAttribute(item, "level")..""..boostshow..""
end
doCreatureSetNick(pk, nick)
if not getItemAttribute(item, "happy") then
doItemSetAttribute(item, "happy", 120)
end
if not getItemAttribute(item, "hunger") then
doItemSetAttribute(item, "hunger", 5)
end
local happy = getItemAttribute(item, "happy")
if happy < 0 then
happy = 0
end
setPlayerStorageValue(pk, 1008, happy)
local hunger = getItemAttribute(item, "hunger")
setPlayerStorageValue(pk, 1009, hunger)
if health == true then
local mh = getCreatureMaxHealth(pk) + HPperVIT * getVitality(pk)
local rd = 1 - (tonumber(getItemAttribute(item, "hp")))
setCreatureMaxHealth(pk, mh)
doCreatureAddHealth(pk, getCreatureMaxHealth(pk))
doCreatureAddHealth(pk, -(getCreatureMaxHealth(pk) * rd))
end
if isSummon(pk) and conditions then
local burn = getItemAttribute(item, "burn")
if burn and burn >= 0 then
addEvent(doAdvancedBurn, 5000, pk, pk, getItemAttribute(item, "burndmg"), burn - 1)
end
local poison = getItemAttribute(item, "poison")
if poison and poison >= 0 then
addEvent(doAdvancedPoison, 2500, pk, pk, getItemAttribute(item, "poisondmg"), poison - 1)
end
if getItemAttribute(item, "confuse") and getItemAttribute(item, "confuse") >= 1 then
addEvent(doAdvancedConfuse, 1200, pk, getItemAttribute(item, "confuse"), getPlayerStorageValue(pk, 3891))
end
if getItemAttribute(item, "sleep") and getItemAttribute(item, "sleep") >= 1 then
doSleep(pk, getItemAttribute(item, "sleep"))
end
if getItemAttribute(item, "missSyst") and getItemAttribute(item, "missSyst") >= 1 then --edited miss system
doMissSyst(pk, getItemAttribute(item, "missSyst"), getItemAttribute(item, "missEff"), false, getItemAttribute(item, "missCond"))
end
cidd = isCreature(getMasterTarget(pk)) and getMasterTarget(pk) or pk
if getItemAttribute(item, "Fear") and getItemAttribute(item, "Fear") >= 1 then
doAdvancedFear(pk, getItemAttribute(item, "Fear"), false, cidd, "Fear") --edited fear/roar system
elseif getItemAttribute(item, "Roar") and getItemAttribute(item, "Roar") >= 1 then
doAdvancedFear(pk, getItemAttribute(item, "Roar"), false, cidd, "Roar")
end
if getItemAttribute(item, "buffSyst") and getItemAttribute(item, "buffSyst") >= 1 then --edited buff system
doBuffSyst(pk, getItemAttribute(item, "buffSyst"), getItemAttribute(item, "buffEff"), false, getItemAttribute(item, "buffSkill"), true)
end
end
if getItemAttribute(item, "boost") and getItemAttribute(item, "boost") == 50 then
sendAuraEffect(pk, auraSyst[getItemAttribute(item, "aura")]) --edited aura system
end
if getPlayerStorageValue(getCreatureMaster(pk), 6598754) >= 1 then
setPlayerStorageValue(pk, 6598754, 1) --edited pvp system
elseif getPlayerStorageValue(getCreatureMaster(pk), 6598755) >= 1 then
setPlayerStorageValue(pk, 6598755, 1)
end
return true
end
function setWildPokemonLevel(cid, optionalLevel, optionalStatus, optionalNick, optionalExtraExp)
if not isCreature(cid) then return true end
local levelRange = 0
local off = 0
local def = 0
local agi = 0
local spatk = 0
local vit = 0
local this = getCreatureName(cid)
local ee = 1
if optionalExtraExp then
ee = optionalExtraExp
end
if optionalLevel and tonumber(optionalLevel) >= 1 then
if optionalLevel <= 100 then
levelRange = optionalLevel
else
levelRange = 100
end
elseif getCreatureOutfit(cid).lookHead and getCreatureOutfit(cid).lookBody and getCreatureOutfit(cid).lookHead <= getCreatureOutfit(cid).lookBody then
levelRange = math.random(getCreatureOutfit(cid).lookHead, getCreatureOutfit(cid).lookBody)
else
levelRange = math.random(20, 30)
end
local status = getPokemonStatus(this)
if status then
off = status.off
def = status.def
agi = status.agi
vit = status.vit
spatk = status.spatk
end
setPlayerStorageValue(cid, 1000, levelRange)
if optionalStatus and optionalStatus.off then
setPlayerStorageValue(cid, 1001, optionalStatus.offense)
setPlayerStorageValue(cid, 1002, optionalStatus.defense)
setPlayerStorageValue(cid, 1003, optionalStatus.agility)
setPlayerStorageValue(cid, 1004, optionalStatus.vitality)
setPlayerStorageValue(cid, 1005, optionalStatus.specialattack)
setPlayerStorageValue(cid, 1011, optionalStatus.offense)
setPlayerStorageValue(cid, 1012, optionalStatus.defense)
setPlayerStorageValue(cid, 1013, optionalStatus.agility)
setPlayerStorageValue(cid, 1014, optionalStatus.vitality)
setPlayerStorageValue(cid, 1015, optionalStatus.specialattack)
else
setPlayerStorageValue(cid, 1001, 5 + math.random(off * levelRange * 0.9, off * levelRange * 1.8))
setPlayerStorageValue(cid, 1002, 5 + math.random(def * levelRange * 0.9, def * levelRange * 1.8))
setPlayerStorageValue(cid, 1003, math.random(agi * levelRange * 0.9, agi * levelRange * 1.8))
setPlayerStorageValue(cid, 1004, math.random(vit * levelRange * 0.9, vit * levelRange * 1.8))
setPlayerStorageValue(cid, 1005, 5 + math.random(spatk * levelRange * 0.9, spatk * levelRange * 1.8))
setPlayerStorageValue(cid, 1011, getPlayerStorageValue(cid, 1001))
setPlayerStorageValue(cid, 1012, getPlayerStorageValue(cid, 1002))
setPlayerStorageValue(cid, 1013, getPlayerStorageValue(cid, 1003))
setPlayerStorageValue(cid, 1014, getPlayerStorageValue(cid, 1004))
setPlayerStorageValue(cid, 1015, getPlayerStorageValue(cid, 1005))
end
doRegainSpeed(cid)
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + getPlayerStorageValue(cid, 1004) * HPperVIT * vitReductionForWild)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
if pokes[getCreatureName(cid)].exp then
--getMonsterInfo(getCreatureName(cid)).experience
local exp = (50 + pokes[getCreatureName(cid)].exp) * baseExpRate + pokes[getCreatureName(cid)].vitality * levelRange * pokemonExpPerLevelRate
setPlayerStorageValue(cid, 1006, exp * generalExpRate * ee)
end
local wildshow = wildBeforeNames and "Wild " or ""
if optionalNick then
if hideWildsLevel then
doCreatureSetNick(cid, optionalNick)
else
doCreatureSetNick(cid, optionalNick.." ["..getWildPokemonLevel(cid).."]")
end
else
if hideWildsLevel then
doCreatureSetNick(cid, ""..wildshow..""..getCreatureName(cid).."")
else
doCreatureSetNick(cid, ""..wildshow..""..getCreatureName(cid).." ["..getWildPokemonLevel(cid).."]")
end
end
end
function getOffense(cid)
if not isCreature(cid) then return 0 end
if getPlayerStorageValue(cid, 3894) >= 1 then
return tonumber(getPlayerStorageValue(cid, 1001)) / 2
end
return tonumber(getPlayerStorageValue(cid, 1001))
end
function getDefense(cid)
if not isCreature(cid) then return 0 end
if getPlayerStorageValue(cid, 3894) >= 1 then
return tonumber(getPlayerStorageValue(cid, 1002)) / 2
end
return tonumber(getPlayerStorageValue(cid, 1002))
end
function getSpeed(cid)
if not isCreature(cid) then return 0 end
return tonumber(getPlayerStorageValue(cid, 1003))
end
function getVitality(cid)
if not isCreature(cid) then return 0 end
return tonumber(getPlayerStorageValue(cid, 1004))
end
function getSpecialAttack(cid)
if not isCreature(cid) then return 0 end
return tonumber(getPlayerStorageValue(cid, 1005))
end
function getHappiness(cid)
if not isCreature(cid) then return 0 end
return tonumber(getPlayerStorageValue(cid, 1008))
end
function getSpecialDefense(cid)
if not isCreature(cid) then return 0 end
return getSpecialAttack(cid) * 0.85 + getDefense(cid) * 0.2
end
function getWildPokemonExp(cid)
return getPlayerStorageValue(cid, 1006)
end
function getWildPokemonLevel(cid)
return getPlayerStorageValue(cid, 1000)
end
function getLevel(cid)
if isSummon(cid) then
return getItemAttribute(getPlayerSlotItem(getCreatureMaster(cid), 8).uid, "level")
end
return getPlayerStorageValue(cid, 1000)
end
function getPokeName(cid)
if not isSummon(cid) then return getCreatureName(cid) end
if getCreatureName(cid) == "Evolution" then return getPlayerStorageValue(cid, 1007) end
local item = getPlayerSlotItem(getCreatureMaster(cid), 8)
if getItemAttribute(item.uid, "nick") then
return getItemAttribute(item.uid, "nick")
end
return getCreatureName(cid)
end
function getPokeballName(item, truename)
if not truename and getItemAttribute(item, "nick") then
return getItemAttribute(item, "nick")
end
return getItemAttribute(item, "poke")
end
function getPokemonName(cid)
return getCreatureName(cid)
end
function getPokemonLevel(cid)
if not isCreature(cid) then return 0 end
return getPlayerStorageValue(cid, 1000)
end
function getPokemonGender(cid)
return getCreatureSkullType(cid)
end
Editado Junho 2 por Critical
info
Grupo: Visconde
Registrado: 03/01/11
Posts: 303
Reputação: +47

Por favor, use Spoiler.
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

all#$
Alguem pode me ajuda com o bug do self do golem
Ele mata player quando está sem poke o player alguem pode me ajdua pff
Alguem ae sabé como eu faço tpw,
Seavell Podê usa shiny Vaporeon? igual pxg vlws ^^
Editado Junho 2 por StyloMaldoso
info
Grupo: Conde
Registrado: 30/04/11
Posts: 658
Reputação: +71
Gênero: Masculino
Char no Tibia: ExTibiano

algen sab como faz pra o char quando for dar surf naum ir até a borda?
info
Grupo: Campones
Registrado: 08/03/12
Posts: 13
Reputação: 0

[02/06/2012 17:09:13] [Error - Npc interface]
[02/06/2012 17:09:13] data/npc/scripts/brock.lua:onThink
[02/06/2012 17:09:14] Description:
[02/06/2012 17:09:14] data/lib/some functions.lua:280: bad argument #1 to 'pairs' (table expected, got nil)
[02/06/2012 17:09:14] stack traceback:
[02/06/2012 17:09:14] [C]: in function 'pairs'
[02/06/2012 17:09:15] data/lib/some functions.lua:280: in function 'hasPokemon'
[02/06/2012 17:09:15] data/npc/scripts/brock.lua:184: in function <data/npc/scripts/brock.lua:119>
????????????????????????
info
Grupo: Conde
Registrado: 06/08/11
Posts: 752
Reputação: +112

@StyloMaldoso
Um script simples para isso de só tal clan usar aquele poke:
procure isso no goback.lua (actions)
if not pokes[pokemon] then return true end
Depois disso coloque \/ e depois se quiser colocar mais, arrume ao seu gosto
Explicando:
se o nome do poke for "Shiny Vaporeon" e a vocation for diferente de 7 não vai poder soltar ele e vai mandar ali "Only Seavell use this pokemon."
if pokemon == "Shiny Vaporeon" and getPlayerVocation(cid) ~= 7 then return doPlayerSendCancel(cid, "Only Seavell use this pokemon.") elseif pokemon == "Shiny Flareon" and getPlayerVocation(cid) ~= 6 then return doPlayerSendCancel(cid, "Only Volcanic use this pokemon.") end
info
Grupo: Conde
Registrado: 06/08/11
Posts: 752
Reputação: +112
@DidoGunner
Nova versão da bike editada mas bonita
function onUse(cid, item, fromPosition, itemEx, toPosition)
BikeStorage = getPlayerStorageValue(cid, 5701)
SurfStorage = getPlayerStorageValue(cid, 63215)
FlyStorage = getPlayerStorageValue(cid, 17000)
RideStorage = getPlayerStorageValue(cid, 17001)
outfit = getCreatureOutfit(cid)
if #getCreatureSummons(cid) > 0 then
return true
end
if SurfStorage == 1 or FlyStorage == 1 or RideStorage == 1 then
if SurfStorage == 1 then
system = "surf"
elseif FlyStorage == 1 then
system = "fly"
elseif RideStorage == 1 then
system = "ride"
end
return doPlayerSendCancel(cid, "You can\'t use bike while "..system..".")
end
if getPlayerSex(cid) == 0 then
type = 1393
else
type = 1394
end
if BikeStorage <= 0 then
doSendMagicEffect(getThingPos(cid), 177)
setPlayerStorageValue(cid, 5701, 1)
doChangeSpeed(cid, PlayerSpeed * 2)
doSetCreatureOutfit(cid, {lookType = type, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)
return true
elseif BikeStorage > 0 then
doSendMagicEffect(getThingPos(cid), 177)
setPlayerStorageValue(cid, 5701, 0)
doChangeSpeed(cid, PlayerSpeed)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end
return true
end
e o login.lua edit
local config = {
loginMessage = getConfigValue('loginMessage'),
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
local flys = {
["Moltres"] = {229, 2300}, -- moltres
["Articuno"] = {230, 2100}, -- artic
["Zapdos"] = {224, 2600}, -- zapdos
["Mew"] = {232, 2200}, -- 1000
["Mewtwo"] = {233, 2200},-- two
["Dragonite"] = {221, 1300},-- nite
["Pidgeot"] = {222, 900}, -- geot
["Fearow"] = {226, 800}, -- fearow
["Aerodactyl"] = {227, 1100}, -- aero
["Charizard"] = {216, 1000}, -- chari
["Porygon"] = {316, 600}, -- porygon
["Shiny Moltres"] = {229, 2300}, -- Shiny moltres
["Shiny Articuno"] = {1018, 2100}, -- Shiny artic
["Shiny Zapdos"] = {1019, 2600}, -- Shiny zapdos
["Shiny Mew"] = {1022, 2200}, -- Shiny 1000
["Shiny Mewtwo"] = {1021, 2200},-- Shiny two
["Shiny Dragonite"] = {1020, 1300},-- Shiny nite
["Shiny Pidgeot"] = {996, 900}, -- Shiny geot
["Shiny Fearow"] = {997, 800}, -- Shiny fearow
["Shiny Aerodactyl"] = {1017, 1100}, -- Shiny aero
["Shiny Charizard"] = {995, 1000}, -- Shiny chari
["Shiny Porygon"] = {1016, 600}, -- Shiny porygon
["Porygon2"] = {648, 890}, -- 2
["Skarmory"] = {649, 1000}, -- skarmory
["Crobat"] = {652, 1190}, -- crobat
}
local rides = {
["Tauros"] = {128, 580}, -- tauros
["Ninetales"] = {129, 800}, -- kyuubi
["Rapidash"] = {130, 800}, -- rapid
["Ponyta"] = {131, 410}, -- ponyta
["Rhyhorn"] = {132, 400}, -- rhyhorn
["Arcanine"] = {12, 900}, -- arcan
["Onix"] = {126, 450}, -- onix
["Venusaur"] = {134, 390}, -- venu
["Dodrio"] = {133, 750}, -- dodrio
["Doduo"] = {135, 420}, -- doduo
["Shiny Tauros"] = {1024, 580}, -- tauros
["Shiny Ninetales"] = {999, 800}, -- kyuubi
["Shiny Rapidash"] = {1005, 800}, -- rapid
["Shiny Ponyta"] = {1004, 410}, -- ponyta
["Shiny Rhyhorn"] = {1023, 400}, -- rhyhorn
["Shiny Arcanine"] = {1003, 900}, -- arcan
["Shiny Onix"] = {126, 450}, -- onix
["Shiny Venusaur"] = {1040, 390}, -- venu
["Shiny Dodrio"] = {1007, 750}, -- dodrio
["Shiny Doduo"] = {1006, 420}, -- doduo
["Crystal Onix"] = {293, 480}, -- cristal onix
["Steelix"] = {646, 750}, -- steelix
["Meganium"] = {685, 720}, -- meganium
["Bayleef"] = {686, 555}, -- bayleef
["Stantler"] = {687, 595}, -- stantler
["Houndoom"] = {647, 820}, -- houndoom
["Piloswine"] = {689, 450}, -- piloswine
["Mareep"] = {688, 400}, -- marip
}
local surf = {
["Poliwag"] = {lookType=278, speed = 320},
["Poliwhirl"] = {lookType=137, speed = 480},
["Seaking"] = {lookType=269, speed = 520},
["Dewgong"] = {lookType=183, speed = 700},
["Blastoise"] = {lookType=184, speed = 850},
["Tentacruel"] = {lookType=185, speed = 750},
["Lapras"] = {lookType=186, speed = 960},
["Gyarados"] = {lookType=187, speed = 1050},
["Omastar"] = {lookType=188, speed = 680},
["Kabutops"] = {lookType=189, speed = 840},
["Poliwrath"] = {lookType=190, speed = 680},
["Vaporeon"] = {lookType=191, speed = 800},
["Staryu"] = {lookType=266, speed = 385},
["Starmie"] = {lookType=267, speed = 685},
["Goldeen"] = {lookType=268, speed = 355},
["Seadra"] = {lookType=270, speed = 655},
["Golduck"] = {lookType=271, speed = 760},
["Squirtle"] = {lookType=273, speed = 365},
["Wartortle"] = {lookType=275, speed = 605},
["Tentacool"] = {lookType=277, speed = 340},
["Snorlax"] = {lookType=300, speed = 500},
["Shiny Poliwag"] = {lookType=1010, speed = 320},
["Shiny Poliwhirl"] = {lookType=1011, speed = 480},
["Shiny Seaking"] = {lookType=1027, speed = 520},
["Shiny Dewgong"] = {lookType=1015, speed = 700},
["Shiny Blastoise"] = {lookType=1002, speed = 850},
["Shiny Tentacruel"] = {lookType=1014, speed = 750},
["Shiny Lapras"] = {lookType=1031, speed = 960},
["Shiny Gyarados"] = {lookType=1030, speed = 1050},
["Shiny Omastar"] = {lookType=1033, speed = 680},
["Shiny Kabutops"] = {lookType=1034, speed = 840},
["Shiny Poliwrath"] = {lookType=1012, speed = 680},
["Shiny Vaporeon"] = {lookType=1032, speed = 800},
["Shiny Staryu"] = {lookType=1028, speed = 385},
["Shiny Starmie"] = {lookType=1029, speed = 685},
["Shiny Goldeen"] = {lookType=1026, speed = 355},
["Shiny Seadra"] = {lookType=1025, speed = 655},
["Shiny Golduck"] = {lookType=1009, speed = 760},
["Shiny Squirtle"] = {lookType=1000, speed = 365},
["Shiny Wartortle"] = {lookType=1001, speed = 605},
["Shiny Tentacool"] = {lookType=1013, speed = 340},
["Shiny Snorlax"] = {lookType=1035, speed = 500},
["Mantine"] = {lookType=636, speed = 820},
["Totodile"] = {lookType=637, speed = 360},
["Croconow"] = {lookType=638, speed = 590},
["Feraligatr"] = {lookType=645, speed = 900},
["Marill"] = {lookType=639, speed = 340},
["Azumarill"] = {lookType=642, speed = 680},
["Quagsire"] = {lookType=643, speed = 740},
["Kingdra"] = {lookType=644, speed = 1020},
["Octillery"] = {lookType=641, speed = 600},
["Wooper"] = {lookType=640, speed = 315},
}
function onLogin(cid)
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 100)
doCreatureSetDropLoot(cid, false)
local accountManager = getPlayerAccountManager(cid)
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
end
if getCreatureName(cid) == "Account Manager" then
local outfit = {}
if accountManagerRandomPokemonOutfit then
outfit = {lookType = getPokemonXMLOutfit(oldpokedex[math.random(151)][1])}
else
outfit = accountManagerOutfit
end
doSetCreatureOutfit(cid, outfit, -1)
return true
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
local outfit = {}
if getPlayerVocation(cid) == 0 then
doPlayerSetMaxCapacity(cid, 0)
doPlayerSetVocation(cid, 1)
setCreatureMaxMana(cid, 6)
doPlayerAddSoul(cid, -getPlayerSoul(cid))
setPlayerStorageValue(cid, 19898, 0)
if getCreatureOutfit(cid).lookType == 128 then
outfit = {lookType = 510, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)}
elseif getCreatureOutfit(cid).lookType == 136 then
outfit = {lookType = 511, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)}
end
doCreatureChangeOutfit(cid, outfit)
end
registerCreatureEvent(cid, "WatchTv")
registerCreatureEvent(cid, "StopWatchingTv")
registerCreatureEvent(cid, "WalkTv")
registerCreatureEvent(cid, "RecordTv")
--registerCreatureEvent(cid, "Death")
registerCreatureEvent(cid, "PlayerLogout")
registerCreatureEvent(cid, "WildAttack")
registerCreatureEvent(cid, "Idle")
registerCreatureEvent(cid, "PokemonIdle")
registerCreatureEvent(cid, "EffectOnAdvance")
registerCreatureEvent(cid, "GeneralConfiguration")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "LookSystem")
registerCreatureEvent(cid, "T1")
registerCreatureEvent(cid, "T2")
registerCreatureEvent(cid, "task_count")
if getPlayerStorageValue(cid, 99284) == 1 then
setPlayerStorageValue(cid, 99284, -1)
end
if getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 then
setPlayerStorageValue(cid, 6598754, -1)
setPlayerStorageValue(cid, 6598755, -1)
end
doChangeSpeed(cid, -(getCreatureSpeed(cid)))
if getPlayerStorageValue(cid, 17000) >= 1 then -- fly
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
doRemoveCondition(cid, CONDITION_OUTFIT)
doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1)
local apos = getFlyingMarkedPos(cid)
apos.stackpos = 0
if getTileThingByPos(apos).itemid <= 2 then
doCombatAreaHealth(cid, FIREDAMAGE, getFlyingMarkedPos(cid), 0, 0, 0, CONST_ME_NONE)
doCreateItem(460, 1, getFlyingMarkedPos(cid))
end
doTeleportThing(cid, apos, false)
local posicao = getTownTemplePosition(getPlayerTown(cid))
markFlyingPos(cid, posicao)
elseif getPlayerStorageValue(cid, 63215) >= 1 then -- surf
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
doSetCreatureOutfit(cid, {lookType = surf[poke].lookType + 351}, -1)
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
elseif getPlayerStorageValue(cid, 17001) >= 1 then -- ride
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
if rides[poke] then
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
doRemoveCondition(cid, CONDITION_OUTFIT)
doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1)
else
setPlayerStorageValue(cid, 17001, -1)
doChangeSpeed(cid, PlayerSpeed)
end
local posicao2 = getTownTemplePosition(getPlayerTown(cid))
markFlyingPos(cid, posicao2)
elseif getPlayerStorageValue(cid, 13008) >= 1 then -- dive
if not isInArray({5405, 5406, 5407, 5408, 5409, 5410}, getTileInfo(getThingPos(cid)).itemid) then
setPlayerStorageValue(cid, 13008, 0)
doChangeSpeed(cid, PlayerSpeed)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end
if getPlayerSex(cid) == 1 then
doSetCreatureOutfit(cid, {lookType = 1034, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1)
else
doSetCreatureOutfit(cid, {lookType = 1035, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1)
end
doChangeSpeed(cid, 800)
elseif getPlayerStorageValue(cid, 5701) > 0 then --bike
if getPlayerSex(cid) == 0 then
type = 1393
else
type = 1394
end
doSetCreatureOutfit(cid, {lookType = type, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)
speed = PlayerSpeed * 2
if getPlayerGroupId(cid) >= 4 and getPlayerGroupId(cid) <= 7 then
speed = PlayerSpeed * getPlayerGroupId(cid)
end
doChangeSpeed(cid, speed)
return true
end
Qualquer bug fala...
@StyloMaldoso
Bem principalmente para ti que pede bastante as coisas, que eu saiba aqui é para duvidas...
Eu passei uma base boa para um player kse completo pro system dele e acho que ele ainda não conseguiu, nem sei como é teu sistema como ajudaria e.e fica dificil...
dica: antes da primeira magia do pokemon moves.lua algo assim
só isso, no caso voc 4 = é pra ser raibolt ou volcanic que aumenta dano em golpe eletrico
segunda vez que eu fiz era assim, agora minha é assim
Só isso que mostro, porque tem mais 2 else, no caso 3 else para 14 elementos, do jeito que eu disse é 9 ou 14 else para os 14 elementos
@All
Só eu acho estranho?
Editado Junho 2 por ZerefShirou