Advertisement
Guest User

Untitled

a guest
Jul 30th, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.08 KB | None | 0 0
  1. function adjustWildPoke(cid, optionalLevel)
  2. if isMonster(cid) and pokes[getCreatureName(cid)] then
  3.  
  4. local level = (optionalLevel and optionalLevel >= 1) and optionalLevel or getPokemonLevel(cid) --alterado v1.8
  5.  
  6. setPlayerStorageValue(cid, 1000, level) --alterado v1.8
  7. setPlayerStorageValue(cid, 1001, pokes[getCreatureName(cid)].offense * level)
  8. setPlayerStorageValue(cid, 1002, pokes[getCreatureName(cid)].defense)
  9. setPlayerStorageValue(cid, 1003, pokes[getCreatureName(cid)].agility)
  10. setPlayerStorageValue(cid, 1004, pokes[getCreatureName(cid)].vitality * level)
  11. setPlayerStorageValue(cid, 1005, pokes[getCreatureName(cid)].specialattack * level * 5)
  12.  
  13.  
  14. doRegainSpeed(cid) --alterado!
  15. setCreatureMaxHealth(cid, (getVitality(cid) * HPperVITwild))
  16. doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
  17.  
  18. if pokes[getCreatureName(cid)].exp then
  19. local exp = pokes[getCreatureName(cid)].exp * baseExpRate + pokes[getCreatureName(cid)].vitality * pokemonExpPerLevelRate
  20. setPlayerStorageValue(cid, 1006, (exp * generalExpRate/2)*10)
  21. if getPlayerStorageValue(cid, 22546) == 1 then
  22. setPlayerStorageValue(cid, 1006, 750)
  23. doSetCreatureDropLoot(cid, false)
  24. end
  25. end
  26. end
  27. end
  28.  
  29. function getPokemonXMLOutfit(name) --alterado v1.9 \/
  30. local path = "data/monster/pokes/Shiny/"..name..".xml"
  31. local tpw = io.type(io.open(path))
  32.  
  33. if not tpw then
  34. path = "data/monster/pokes/geracao 2/"..name..".xml"
  35. tpw = io.type(io.open(path))
  36. end
  37. if not tpw then
  38. path = "data/monster/pokes/geracao 1/"..name..".xml"
  39. tpw = io.type(io.open(path))
  40. end
  41. if not tpw then
  42. path = "data/monster/pokes/"..name..".xml"
  43. tpw = io.type(io.open(path))
  44. end
  45. if not tpw then
  46. return print("[getPokemonXMLOutfit] Poke with name: "..name.." ins't in any paste on monster/pokes/") and 2
  47. end
  48. local arq = io.open(path, "a+")
  49. local txt = arq:read("*all")
  50. arq:close()
  51. local a, b = txt:find('look type="(.-)"')
  52. txt = string.sub(txt, a + 11, b - 1)
  53. return tonumber(txt)
  54. end
  55.  
  56. function doEvolutionOutfit(cid, oldout, outfit)
  57. if not isCreature(cid) then return true end
  58. if getCreatureOutfit(cid).lookType == oldout then
  59. doSetCreatureOutfit(cid, {lookType = outfit}, -1)
  60. else
  61. doSetCreatureOutfit(cid, {lookType = oldout}, -1)
  62. end
  63. end
  64.  
  65. function doSendEvolutionEffect(cid, pos, evolution, turn, ssj, evolve, f, h)
  66. if not isCreature(cid) then
  67. doSendAnimatedText(pos, "CANCEL", 215)
  68. return true
  69. end
  70. if evolve then
  71. doEvolvePokemon(getCreatureMaster(cid), {uid = cid}, evolution, 0, 0)
  72. return true
  73. end
  74. doSendMagicEffect(pos, 18)
  75. if ssj then
  76. sendSSJEffect(evo)
  77. end
  78. doEvolutionOutfit(cid, f, h)
  79. addEvent(doSendEvolutionEffect, math.pow(1900, turn/20), cid, getThingPos(cid), evolution, turn - 1, turn == 19, turn == 2, f, h)
  80. end
  81.  
  82. function sendSSJEffect(cid)
  83. if not isCreature(cid) then return true end
  84. local pos1 = getThingPos(cid)
  85. local pos2 = getThingPos(cid)
  86. pos2.x = pos2.x + math.random(-1, 1)
  87. pos2.y = pos2.y - math.random(1, 2)
  88. doSendDistanceShoot(pos1, pos2, 37)
  89. addEvent(sendSSJEffect, 45, cid)
  90. end
  91.  
  92. function sendFinishEvolutionEffect(cid, alternate)
  93. if not isCreature(cid) then return true end
  94. local pos1 = getThingPos(cid)
  95.  
  96. if alternate then
  97. local pos = {
  98. [1] = {-2, 0},
  99. [2] = {-1, -1},
  100. [3] = {0, -2},
  101. [4] = {1, -1},
  102. [5] = {2, 0},
  103. [6] = {1, 1},
  104. [7] = {0, 2},
  105. [8] = {-1, 1}}
  106. for a = 1, 8 do
  107. local pos2 = getThingPos(cid)
  108. pos2.x = pos2.x + pos[a][1]
  109. pos2.y = pos2.y + pos[a][2]
  110. local pos = getThingPos(cid)
  111. doSendDistanceShoot(pos2, pos, 37)
  112. addEvent(doSendDistanceShoot, 300, pos, pos2, 37)
  113. end
  114. else
  115. for a = 0, 3 do
  116. doSendDistanceShoot(pos1, getPosByDir(pos1, a), 37)
  117. end
  118. for a = 4, 7 do
  119. addEvent(doSendDistanceShoot, 600, pos1, getPosByDir(pos1, a), 37)
  120. end
  121. end
  122. end
  123.  
  124. function doEvolvePokemon(cid, item2, theevo, stone1, stone2)
  125.  
  126. if not isCreature(cid) then return true end
  127.  
  128. if not pokes[theevo] or not pokes[theevo].offense then
  129. doReturnPokemon(cid, item2.uid, getPlayerSlotItem(cid, 8), pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect, false, true)
  130. return true
  131. end
  132.  
  133. local owner = getCreatureMaster(item2.uid)
  134. local pokeball = getPlayerSlotItem(cid, 8)
  135. local description = "Contains a "..theevo.."."
  136. local pct = getCreatureHealth(item2.uid) / getCreatureMaxHealth(item2.uid)
  137.  
  138. doItemSetAttribute(pokeball.uid, "hp", pct)
  139.  
  140. doItemSetAttribute(pokeball.uid, "poke", theevo)
  141. doItemSetAttribute(pokeball.uid, "description", "Contains a "..theevo..".")
  142.  
  143. doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getPokeName(item2.uid).." evolved into a "..theevo.."!")
  144.  
  145. doSendMagicEffect(getThingPos(item2.uid), 18)
  146. doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos[theevo])
  147. doSendMagicEffect(getThingPos(cid), 173)
  148.  
  149. local oldpos = getThingPos(item2.uid)
  150. local oldlod = getCreatureLookDir(item2.uid)
  151. doRemoveCreature(item2.uid)
  152.  
  153. doSummonMonster(cid, theevo)
  154. local pk = getCreatureSummons(cid)[1]
  155.  
  156. doTeleportThing(pk, oldpos, false)
  157. doCreatureSetLookDir(pk, oldlod)
  158.  
  159. sendFinishEvolutionEffect(pk, true)
  160. addEvent(sendFinishEvolutionEffect, 550, pk, true)
  161. addEvent(sendFinishEvolutionEffect, 1050, pk)
  162.  
  163. doPlayerRemoveItem(cid, stone1, 1)
  164. doPlayerRemoveItem(cid, stone2, 1)
  165.  
  166. doAddPokemonInOwnList(cid, theevo)
  167.  
  168. local happy = getItemAttribute(pokeball.uid, "happy")
  169.  
  170. doItemSetAttribute(pokeball.uid, "happy", happy + happyGainedOnEvolution)
  171.  
  172. if happy + happyGainedOnEvolution > 255 then
  173. doItemSetAttribute(pokeball.uid, "happy", 255)
  174. end
  175.  
  176. adjustStatus(pk, pokeball.uid, true, false)
  177.  
  178. if useKpdoDlls then
  179. doUpdateMoves(cid)
  180. end
  181. end
  182.  
  183. function doMathDecimal(number, casas)
  184.  
  185. if math.floor(number) == number then return number end
  186.  
  187. local c = casas and casas + 1 or 3
  188.  
  189. for a = 0, 10 do
  190. if math.floor(number) < math.pow(10, a) then
  191. local str = string.sub(""..number.."", 1, a + c)
  192. return tonumber(str)
  193. end
  194. end
  195.  
  196. return number
  197. end
  198.  
  199. function doAdjustWithDelay(cid, pk, health, vit, status)
  200. if isCreature(cid) then
  201. adjustStatus(pk, getPlayerSlotItem(cid, 8).uid, health, vir, status)
  202. end
  203. end
  204.  
  205. function adjustStatus(pk, item, health, vite, conditions)
  206.  
  207. if not isCreature(pk) then return true end
  208.  
  209. local gender = getItemAttribute(item, "gender") and getItemAttribute(item, "gender") or 0
  210. addEvent(doCreatureSetSkullType, 10, pk, gender)
  211.  
  212. setPlayerStorageValue(pk, 1001, pokes[getCreatureName(pk)].offense * (getMasterLevel(pk) + getPokemonBoost(pk)))
  213. setPlayerStorageValue(pk, 1002, pokes[getCreatureName(pk)].defense)
  214. setPlayerStorageValue(pk, 1003, pokes[getCreatureName(pk)].agility)
  215. setPlayerStorageValue(pk, 1004, pokes[getCreatureName(pk)].vitality * 75)
  216. setPlayerStorageValue(pk, 1005, pokes[getCreatureName(pk)].specialattack * (getMasterLevel(pk) + getPokemonBoost(pk) )*9)
  217.  
  218. if vite == true then
  219. local pct = getCreatureHealth(pk) / getCreatureMaxHealth(pk)
  220. local vit = getVitality(pk)
  221. setCreatureMaxHealth(pk, ( vit * HPperVITsummon ))
  222. doCreatureAddHealth(pk, pct * vit * HPperVITsummon)
  223. end
  224.  
  225. doRegainSpeed(pk)
  226.  
  227. local nick = getItemAttribute(item, "poke")
  228.  
  229. if isGhostPokemon(pk) then
  230. setPlayerStorageValue(pk, 8981, 1)
  231. updateGhostWalk(pk)
  232. end
  233.  
  234.  
  235. if getItemAttribute(item, "nick") then
  236. nick = getItemAttribute(item, "nick")
  237. end
  238.  
  239. setPlayerStorageValue(pk, 1007, nick)
  240.  
  241. local lvl = getItemAttribute(item, "level") or 0
  242. nick = nick
  243.  
  244. doCreatureSetNick(pk, nick)
  245.  
  246. if not getItemAttribute(item, "happy") then
  247. doItemSetAttribute(item, "happy", 120)
  248. end
  249.  
  250. if not getItemAttribute(item, "hunger") then
  251. doItemSetAttribute(item, "hunger", 5)
  252. end
  253.  
  254. local happy = getItemAttribute(item, "happy")
  255. if happy < 0 then
  256. happy = 1
  257. end
  258. setPlayerStorageValue(pk, 1008, happy)
  259.  
  260. local hunger = getItemAttribute(item, "hunger")
  261. setPlayerStorageValue(pk, 1009, hunger)
  262.  
  263. if health == true then
  264. local mh = HPperVITsummon * getVitality(pk)
  265. local rd = 1 - (tonumber(getItemAttribute(item, "hp")))
  266. setCreatureMaxHealth(pk, mh)
  267. doCreatureAddHealth(pk, getCreatureMaxHealth(pk))
  268. doCreatureAddHealth(pk, -(getCreatureMaxHealth(pk) * rd))
  269. end
  270.  
  271. if isSummon(pk) and conditions then
  272. local burn = getItemAttribute(item, "burn")
  273. if burn and burn >= 0 then
  274. local ret = {id = pk, cd = burn, check = false, damage = getItemAttribute(item, "burndmg"), cond = "Burn"}
  275. addEvent(doCondition2, 3500, ret)
  276. end
  277.  
  278. local poison = getItemAttribute(item, "poison")
  279. if poison and poison >= 0 then
  280. local ret = {id = pk, cd = poison, check = false, damage = getItemAttribute(item, "poisondmg"), cond = "Poison"}
  281. addEvent(doCondition2, 1500, ret)
  282. end
  283.  
  284. local confuse = getItemAttribute(item, "confuse")
  285. if confuse and confuse >= 0 then
  286. local ret = {id = pk, cd = confuse, check = false, cond = "Confusion"}
  287. addEvent(doCondition2, 1200, ret)
  288. end
  289.  
  290. local sleep = getItemAttribute(item, "sleep")
  291. if sleep and sleep >= 0 then
  292. local ret = {id = pk, cd = sleep, check = false, first = true, cond = "Sleep"}
  293. doCondition2(ret)
  294. end
  295.  
  296. local miss = getItemAttribute(item, "miss")
  297. if miss and miss >= 0 then
  298. local ret = {id = pk, cd = miss, eff = getItemAttribute(item, "missEff"), check = false, spell = getItemAttribute(item, "missSpell"), cond = "Miss"}
  299. doCondition2(ret)
  300. end
  301.  
  302. local fear = getItemAttribute(item, "fear")
  303. if fear and fear >= 0 then
  304. local ret = {id = pk, cd = fear, check = false, skill = getItemAttribute(item, "fearSkill"), cond = "Fear"}
  305. doCondition2(ret)
  306. end
  307.  
  308. local silence = getItemAttribute(item, "silence")
  309. if silence and silence >= 0 then
  310. local ret = {id = pk, cd = silence, eff = getItemAttribute(item, "silenceEff"), check = false, cond = "Silence"}
  311. doCondition2(ret)
  312. end
  313.  
  314. local stun = getItemAttribute(item, "stun")
  315. if stun and stun >= 0 then
  316. local ret = {id = pk, cd = stun, eff = getItemAttribute(item, "stunEff"), check = false, spell = getItemAttribute(item, "stunSpell"), cond = "Stun"}
  317. doCondition2(ret)
  318. end
  319.  
  320. local paralyze = getItemAttribute(item, "paralyze")
  321. if paralyze and paralyze >= 0 then
  322. local ret = {id = pk, cd = paralyze, eff = getItemAttribute(item, "paralyzeEff"), check = false, first = true, cond = "Paralyze"}
  323. doCondition2(ret)
  324. end
  325.  
  326. local slow = getItemAttribute(item, "slow")
  327. if slow and slow >= 0 then
  328. local ret = {id = pk, cd = slow, eff = getItemAttribute(item, "slowEff"), check = false, first = true, cond = "Slow"}
  329. doCondition2(ret)
  330. end
  331.  
  332. local leech = getItemAttribute(item, "leech")
  333. if leech and leech >= 0 then
  334. local ret = {id = pk, cd = leech, attacker = 0, check = false, damage = getItemAttribute(item, "leechdmg"), cond = "Leech"}
  335. doCondition2(ret)
  336. end
  337.  
  338. for i = 1, 3 do
  339. local buff = getItemAttribute(item, "Buff"..i)
  340. if buff and buff >= 0 then
  341. local ret = {id = pk, cd = buff, eff = getItemAttribute(item, "Buff"..i.."eff"), check = false,
  342. buff = getItemAttribute(item, "Buff"..i.."skill"), first = true, attr = "Buff"..i}
  343. doCondition2(ret)
  344. end
  345. end
  346.  
  347. end
  348. --alterado v1.9
  349. if getItemAttribute(item, "boost") and getItemAttribute(item, "boost") >= 50 and getItemAttribute(item, "aura") then
  350. sendAuraEffect(pk, auraSyst[getItemAttribute(item, "aura")])
  351. end
  352.  
  353. if getPlayerStorageValue(getCreatureMaster(pk), 6598754) >= 1 then
  354. setPlayerStorageValue(pk, 6598754, 1)
  355. elseif getPlayerStorageValue(getCreatureMaster(pk), 6598755) >= 1 then
  356. setPlayerStorageValue(pk, 6598755, 1)
  357. end
  358.  
  359. return true
  360. end
  361.  
  362. function setWildPokemonLevel(cid, optionalLevel, optionalStatus, optionalNick, optionalExtraExp)
  363.  
  364. if not isCreature(cid) then return true end
  365. if not pokes[getCreatureName(cid)] then return true end --alterado v2.6
  366.  
  367. local levelRange = 0
  368. local off = 0
  369. local def = 0
  370. local agi = 0
  371. local spatk = 0
  372. local vit = 0
  373. local this = getCreatureName(cid)
  374. local ee = 1
  375.  
  376. if optionalExtraExp then
  377. ee = optionalExtraExp
  378. end
  379.  
  380.  
  381. if optionalLevel and tonumber(optionalLevel) >= 1 then --alterado v2.8\/
  382. levelRange = optionalLevel
  383. else
  384. levelRange = math.random(pokes[this].wildLvlMin, pokes[this].wildLvlMax)
  385. end
  386.  
  387. local status = getPokemonStatus(this)
  388. if status then
  389. off = status.off
  390. def = status.def
  391. agi = status.agi
  392. vit = status.vit
  393. spatk = status.spatk
  394. end
  395.  
  396. setPlayerStorageValue(cid, 1000, (levelRange > 100 and 100 or levelRange)) --alterado v2.8
  397.  
  398. if optionalStatus and optionalStatus.off then
  399. setPlayerStorageValue(cid, 1001, optionalStatus.offense)
  400. setPlayerStorageValue(cid, 1002, optionalStatus.defense)
  401. setPlayerStorageValue(cid, 1003, optionalStatus.agility)
  402. setPlayerStorageValue(cid, 1004, optionalStatus.vitality)
  403. setPlayerStorageValue(cid, 1005, optionalStatus.specialattack)
  404. setPlayerStorageValue(cid, 1011, optionalStatus.offense)
  405. setPlayerStorageValue(cid, 1012, optionalStatus.defense)
  406. setPlayerStorageValue(cid, 1013, optionalStatus.agility)
  407. setPlayerStorageValue(cid, 1014, optionalStatus.vitality)
  408. setPlayerStorageValue(cid, 1015, optionalStatus.specialattack)
  409. else
  410. setPlayerStorageValue(cid, 1001, 5 + math.random(off * levelRange * 0.9, off * levelRange * 1.8))
  411. setPlayerStorageValue(cid, 1002, 5 + math.random(def * levelRange * 0.9, def * levelRange * 1.8))
  412. setPlayerStorageValue(cid, 1003, math.random(agi * levelRange * 0.9, agi * levelRange * 1.8))
  413. setPlayerStorageValue(cid, 1004, math.random(vit * levelRange * 0.9, vit * levelRange * 1.8))
  414. setPlayerStorageValue(cid, 1005, 5 + math.random(spatk * levelRange * 0.9, spatk * levelRange * 1.8))
  415. setPlayerStorageValue(cid, 1011, getPlayerStorageValue(cid, 1001))
  416. setPlayerStorageValue(cid, 1012, getPlayerStorageValue(cid, 1002))
  417. setPlayerStorageValue(cid, 1013, getPlayerStorageValue(cid, 1003))
  418. setPlayerStorageValue(cid, 1014, getPlayerStorageValue(cid, 1004))
  419. setPlayerStorageValue(cid, 1015, getPlayerStorageValue(cid, 1005))
  420. end
  421.  
  422. doRegainSpeed(cid)
  423.  
  424. setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + getPlayerStorageValue(cid, 1004) * HPperVIT * vitReductionForWild)
  425. doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
  426.  
  427. if pokes[getCreatureName(cid)].exp then
  428. --getMonsterInfo(getCreatureName(cid)).experience
  429. local exp = (50 + pokes[getCreatureName(cid)].exp) * baseExpRate + pokes[getCreatureName(cid)].vitality * levelRange * pokemonExpPerLevelRate
  430. setPlayerStorageValue(cid, 1006, exp * generalExpRate * ee)
  431. if getPlayerStorageValue(cid, 22546) == 1 then
  432. setPlayerStorageValue(cid, 1006, 750)
  433. doSetCreatureDropLoot(cid, false) --edited golden arena
  434. end
  435. end
  436.  
  437. local wildshow = wildBeforeNames and "Wild " or ""
  438. if optionalNick then
  439. if hideWildsLevel then
  440. doCreatureSetNick(cid, optionalNick)
  441. else
  442. doCreatureSetNick(cid, optionalNick.." ["..getWildPokemonLevel(cid).."]")
  443. end
  444. else
  445. if hideWildsLevel then
  446. doCreatureSetNick(cid, ""..wildshow..""..getCreatureName(cid).."")
  447. else
  448. doCreatureSetNick(cid, ""..wildshow..""..getCreatureName(cid).." ["..getWildPokemonLevel(cid).."]")
  449. end
  450. end
  451. end
  452.  
  453. function getOffense(cid)
  454. if not isCreature(cid) then return 0 end
  455. return tonumber(getPlayerStorageValue(cid, 1001))
  456. end
  457.  
  458. function getDefense(cid)
  459. if not isCreature(cid) then return 0 end
  460. return tonumber(getPlayerStorageValue(cid, 1002))
  461. end
  462.  
  463. function getSpeed(cid)
  464. if not isCreature(cid) then return 0 end
  465. return tonumber(getPlayerStorageValue(cid, 1003))
  466. end
  467.  
  468. function getVitality(cid)
  469. if not isCreature(cid) then return 0 end
  470. return tonumber(getPlayerStorageValue(cid, 1004))
  471. end
  472.  
  473. function getSpecialAttack(cid)
  474. if not isCreature(cid) then return 0 end
  475. return tonumber(getPlayerStorageValue(cid, 1005))
  476. end
  477.  
  478. function getHappiness(cid)
  479. if not isCreature(cid) then return 0 end
  480. return tonumber(getPlayerStorageValue(cid, 1008))
  481. end
  482.  
  483. function getSpecialDefense(cid)
  484. if not isCreature(cid) then return 0 end
  485. return getSpecialAttack(cid) * 0.85 + getDefense(cid) * 0.2
  486. end
  487.  
  488. function getPokemonLevel(cid, dex)
  489. if not isCreature(cid) then return 0 end
  490. if not dex then --alterado v1.9
  491. if ehMonstro(cid) and getPlayerStorageValue(cid, 1000) > 0 then
  492. return getPlayerStorageValue(cid, 1000)
  493. elseif ehMonstro(cid) then
  494. return pokes[getCreatureName(cid)].wildLvl
  495. end
  496. end
  497. return pokes[getCreatureName(cid)].level
  498. end
  499.  
  500. function getPokemonLevelByName(name)
  501. return pokes[name] and pokes[name].level or 0 --alterado v1.9
  502. end
  503.  
  504. function getMasterLevel(poke)
  505. if not isSummon(poke) then return 0 end
  506. return getPlayerLevel(getCreatureMaster(poke))
  507. end
  508.  
  509. function getPokemonBoost(poke)
  510. if not isSummon(poke) then return 0 end
  511. return getItemAttribute(getPlayerSlotItem(getCreatureMaster(poke), 8).uid, "boost") or 0
  512. end
  513.  
  514. function getPokeballBoost(ball)
  515. if not isPokeball(ball.itemid) then return 0 end --alterado v1.8
  516. return getItemAttribute(ball.uid, "boost") or 0
  517. end
  518.  
  519. function getPokeName(cid)
  520. if not isSummon(cid) then return getCreatureName(cid) end
  521. if getCreatureName(cid) == "Evolution" then return getPlayerStorageValue(cid, 1007) end
  522.  
  523. local item = getPlayerSlotItem(getCreatureMaster(cid), 8)
  524. if getItemAttribute(item.uid, "nick") then
  525. return getItemAttribute(item.uid, "nick")
  526. end
  527. return getCreatureName(cid)
  528. end
  529.  
  530. function getPokeballName(item, truename)
  531. if not truename and getItemAttribute(item, "nick") then
  532. return getItemAttribute(item, "nick")
  533. end
  534. return getItemAttribute(item, "poke")
  535. end
  536.  
  537. function getPokemonName(cid)
  538. return getCreatureName(cid)
  539. end
  540.  
  541. function getPokemonGender(cid) --alterado v1.9
  542. return getCreatureSkullType(cid)
  543. end
  544.  
  545. function setPokemonGender(cid, gender)
  546. if isCreature(cid) and gender then --alterado v1.8
  547. doCreatureSetSkullType(cid, gender)
  548. return true
  549. end
  550. return false
  551. end
  552.  
  553. function getWildPokemonExp(cid)
  554. return getPlayerStorageValue(cid, 1006)
  555. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement