Postado Junho 14, 2021 4 anos Preciso de ajuda com o script de dar respawn aleatório dos Megas, como se fosse o spawn de Shiny. A base do servidor é a PokemasterX Tentei mexer em tudo quanto é forma de fazer com que funcione, mas aparentemente não tá dando certo. Hahaha Você tem o código disponível? Se tiver publique-o aqui: local respGrande = {"Pupitar", "Tyranitar", "Skarmory", "Magcargo", "Ampharos", "Xatu", "Crobat", "Typhlosion", "Magmar", "Electabuzz", "Cubone", "Marowak", "Electrode", "Charizard", "Oddish", "Paras", "Parasect"} local respMedio = {"Lanturn", "Dratini", "Dragonair", "Snorlax", "Krabby", "Kingler", "Gengar", "Pidgeot", "Raichu", "Machamp"} local respPequeno = {"Steelix", "Sudowoodo", "Feraligatr", "Meganium", "Dragonite", "Gyarados", "Pinsir", "Tauros", "Jynx", "Scyther", "Mr. mime", "Horsea", "Seadra", "Tangela", "Grimer", "Muk", "Tentacool", "Tentacruel", "Farfetch'd", "Growlithe", "Arcanine", "Alakazam", "Venusaur", "Blastoise", "Butterfree", "Beedrill", "Ratatta", "Raticate", "Golbat", "Venonat", "Venomoth"} local shinykarp = {"Magikarp"} local megas = {"Blastoise", "Alakazam", "Absol", "Venusaur", "Aggron", "Tyranitar", "Gengar", "Ampharos", "Lucario", "Pidgeot", "Scizor"} function onSpawn(cid) if isSummon(cid) then return true end if not isCreature(cid) then return true end if getCreatureName(cid) == "" or getCreatureName(cid) == nil then setPlayerStorageValue(cid, 510, getCreatureNick(cid)) end registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "WildAttack") registerCreatureEvent(cid, "PokeWalk") if not ehMonstro(cid) then setPokemonGhost(cid) if getCreatureName(cid):find("Shiny ") then setPlayerStorageValue(cid, storages.EhShiny, 1) end return true end local name = getCreatureName(cid) local pos = getThingPos(cid) addEvent(function() if not isSummon(cid) and not isShinyName(name) then local chance = 0 if isInArray(respGrande, doCorrectString(name)) then --alterado v1.9 \/ chance = 20 elseif isInArray(respMedio, doCorrectString(name)) then chance = 25 elseif isInArray(respPequeno, doCorrectString(name)) then chance = 30 end local function doShiny(cid, pos, name, mode) if pos and name then name = "Shiny "..name if not pokes[name] then return true end doSendMagicEffect(pos, 18) doCreateMonsterNick(cid, name, retireShinyName(name), pos, false) end end if math.random(1, 1000) <= chance then doRemoveCreature(cid) doShiny(cid, pos, name, 1) return true end local storages = {"Hoodeasy", "Hoodmedium", "Hoodhard", "Hoodexpert", "Hoodlendary"} for i = 1, #storages do if isShinyName(name) and getPlayerStorageValue(cid, storages[i]) >= 1 then doRemoveCreature(cid) end end end local spawn_arrs = { {frompos = {x = 1922, y = 41, z = 14}, topos = {x = 2833, y = 1428, z = 14}}, } for _, arr in pairs(spawn_arrs) do if isInRange(pos, arr.frompos, arr.topos) then if isWild(cid) and string.find(name, "Shiny") and not isInArray({"Shiny Salamence", "Shiny Scizor", "Shiny Magmortar", "Shiny Electivire"}, name) then doRemoveCreature(cid) end end end if isInArray({"Abporygon", "Aporygon"}, name) then doCreatureSetHideHealth(cid, true) end if isWild(cid) and getCreatureName(cid) == "Magikarp" then if math.random(1, 5000) <= 25 then doRemoveCreature(cid) doCreateMonster("Feebas", pos, false) end end if isWild(cid) and isHoenn(getCreatureName(cid)) then if math.random(1, 5000) <= 25 then local sorte = bossName[math.random(#bossName)] doRemoveCreature(cid) doCreateMonster(sorte, pos, false) end end if not isSummon(cid) then adjustWildPoke(cid) end if isPokePassive(cid) then setPokemonPassive(cid, true) end end, 5) setPokemonGhost(cid) doMarkedPos(cid, getThingPos(cid)) setSmeargle(cid) addEvent(Camouflage, 5, cid) return true end function Camouflage(cid) if isWild(cid) and getCreatureName(cid) == "Kecleon" then doSetCreatureOutfit(cid, {lookType = 2057}, -1) doCreatureSetHideHealth(cid, true) end end function setSmeargle(cid) if isSummon(cid) then return true end if getCreatureName(cid):find("Smeargle") then local id = math.random(5, 6) if math.random(1, 500) <= 50 then id = math.random(7, 8) end setPlayerStorageValue(cid, storages.SmeargleID, "Smeargle " .. id) end end function doShiny(cid) if isCreature(cid) then if isSummon(cid) then return true end if isNpcSummon(cid) then return true end local chance = 0 if isInArray(megas, doCorrectString(getCreatureName(cid))) then --alterado v1.9 \/ chance = 500 --50% chance end local sid = cid if math.random(1, 1000) <= chance then doSendMagicEffect(getThingPos(cid), 18) local name, pos = "Mega ".. getCreatureName(cid), getThingPos(cid) if not pokes[name] then return true end doRemoveCreature(cid) --print(name .. ", " .. retireShinyName(name)) local shi = doCreateMonsterNick(sid, name, retireShinyName(name), pos, false) end else return true end end
Postado Julho 1, 2021 3 anos local respGrande = {"Pupitar", "Tyranitar", "Skarmory", "Magcargo", "Ampharos", "Xatu", "Crobat", "Typhlosion", "Magmar", "Electabuzz", "Cubone", "Marowak", "Electrode", "Charizard", "Oddish", "Paras", "Parasect"} local respMedio = {"Lanturn", "Dratini", "Dragonair", "Snorlax", "Krabby", "Kingler", "Gengar", "Pidgeot", "Raichu", "Machamp"} local respPequeno = {"Steelix", "Sudowoodo", "Feraligatr", "Meganium", "Dragonite", "Gyarados", "Pinsir", "Tauros", "Jynx", "Scyther", "Mr. mime", "Horsea", "Seadra", "Tangela", "Grimer", "Muk", "Tentacool", "Tentacruel", "Farfetch'd", "Growlithe", "Arcanine", "Alakazam", "Venusaur", "Blastoise", "Butterfree", "Beedrill", "Ratatta", "Raticate", "Golbat", "Venonat", "Venomoth"} local shinykarp = {"Magikarp"} local pokemonMega = {"Alakazam"} function onSpawn(cid) if isSummon(cid) then return true end if not isCreature(cid) then return true end if getCreatureName(cid) == "" or getCreatureName(cid) == nil then setPlayerStorageValue(cid, 510, getCreatureNick(cid)) end registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "WildAttack") registerCreatureEvent(cid, "PokeWalk") if not ehMonstro(cid) then setPokemonGhost(cid) if getCreatureName(cid):find("Shiny ") then setPlayerStorageValue(cid, storages.EhShiny, 1) end return true end local name = getCreatureName(cid) local pos = getThingPos(cid) addEvent(function() if not isSummon(cid) and not isShinyName(name) then local chance = 0 if isInArray(respGrande, doCorrectString(name)) then --alterado v1.9 \/ chance = 20 elseif isInArray(respMedio, doCorrectString(name)) then chance = 25 elseif isInArray(respPequeno, doCorrectString(name)) then chance = 30 elseif isInArray(pokemonMega, doCorrectString(name)) then chance = 10 end local function doShiny(cid, pos, name, mode) if pos and name then name = "Shiny "..name if not pokes[name] then return true end doSendMagicEffect(pos, 18) doCreateMonsterNick(cid, name, retireShinyName(name), pos, false) end end if math.random(1, 1000) <= chance then doRemoveCreature(cid) doShiny(cid, pos, name, 1) return true end local storages = {"Hoodeasy", "Hoodmedium", "Hoodhard", "Hoodexpert", "Hoodlendary"} for i = 1, #storages do if isShinyName(name) and getPlayerStorageValue(cid, storages[i]) >= 1 then doRemoveCreature(cid) end end end local spawn_arrs = { {frompos = {x = 1922, y = 41, z = 7}, topos = {x = 2833, y = 1428, z = 7}}, } for _, arr in pairs(spawn_arrs) do if isInRange(pos, arr.frompos, arr.topos) then if isWild(cid) and string.find(name, "Shiny") and not isInArray({"Shiny Salamence", "Shiny Scizor", "Shiny Magmortar", "Shiny Electivire"}, name) then doRemoveCreature(cid) end end end if isInArray({"Abporygon", "Aporygon"}, name) then doCreatureSetHideHealth(cid, true) end if isWild(cid) and getCreatureName(cid) == "Magikarp" then if math.random(1, 5000) <= 25 then doRemoveCreature(cid) doCreateMonster("Feebas", pos, false) end end if isWild(cid) and isHoenn(getCreatureName(cid)) then if math.random(1, 5000) <= 25 then local sorte = bossName[math.random(#bossName)] doRemoveCreature(cid) doCreateMonster(sorte, pos, false) end end if not isSummon(cid) then adjustWildPoke(cid) end if isPokePassive(cid) then setPokemonPassive(cid, true) end end, 5) setPokemonGhost(cid) doMarkedPos(cid, getThingPos(cid)) setSmeargle(cid) addEvent(Camouflage, 5, cid) return true end function Camouflage(cid) if isWild(cid) and getCreatureName(cid) == "Kecleon" then doSetCreatureOutfit(cid, {lookType = 2057}, -1) doCreatureSetHideHealth(cid, true) end end function setSmeargle(cid) if isSummon(cid) then return true end if getCreatureName(cid):find("Smeargle") then local id = math.random(5, 6) if math.random(1, 500) <= 50 then id = math.random(7, 8) end setPlayerStorageValue(cid, storages.SmeargleID, "Smeargle " .. id) end end
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.