Ir para conteúdo
  • 0

respawn aleatorio na ouland


Mabel

Pergunta

bem eu só sei o basico do basico só que eu queria por respawn aleatorio de shiny de outland no meu ot 
 

Spoiler

local shinys = {
"Venusaur", "Blastoise", "Butterfree", "Mr. Mime", "Beedrill", "Pidgeot", "Rattata", "Raticate", "Raichu", "Golbat", "Paras", "Parasect", "Magmar", "Typhlosion", "Xatu", "Growlithe", "Arcanine", "Tentacruel", "Farfetch'd", "Gengar", "Krabby", "Tauros", "Magcargo", 
"Kingler", "Cubone", "Horsea", "Seadra", "Weezing", "Scyther", "Pinsir", "Crobat", "Zubat", "Tentacool", "Feraligatr", "Machamp", "Meganium", "Alakazam", "Tangela", "Ampharos", "Electabuzz", "Jynx", "Charizard", "Voltorb", "Electrode", "Grimer", "Muk", "Sandslash", "Mantine", "Marowak", "Lanturn"}

local raros = {"Magmortar", "Electivire", "Salamence"}                               

local function ShinyName(cid)
if isCreature(cid) then
   if string.find(tostring(getCreatureName(cid)), "Shiny") then
      local newName = tostring(getCreatureName(cid)):match("Shiny (.*)")             
      doCreatureSetNick(cid, newName)
      if isMonster(cid) then
         doSetCreatureDropLoot(cid, false)  
      end
   end
end
end

local function doSetRandomGender(cid)
    if not isCreature(cid) then return true end
    if isSummon(cid) then return true end
    local gender = 0
    local name = getCreatureName(cid)
    if not newpokedex[name] then return true end
    local rate = newpokedex[name].gender
        if rate == 0 then
            gender = 3
        elseif rate == 500 then
            gender = 4
        elseif rate == -1 then
            gender = 0
        elseif math.random(1, 500) <= rate then
            gender = 4
        else
            gender = 3
        end
    doCreatureSetSkullType(cid, gender)
end

local function doShiny(cid)
if isCreature(cid) then
   if isSummon(cid) then return true end
   if getPlayerStorageValue(cid, 74469) >= 1 then return true end
   if getPlayerStorageValue(cid, 22546) >= 1 then return true end 
   if isNpcSummon(cid) then return true end
   if getPlayerStorageValue(cid, 637500) >= 1 then return true end  --alterado v1.9
   
if isInArray(shinys, getCreatureName(cid)) then  --alterado v1.9 \/
   chance = 2.0    --1% chance        
elseif isInArray(raros, getCreatureName(cid)) then   --n coloquem valores menores que 0.1 !!
   chance = 1   --1% chance       
else
   return true
end    
    if math.random(1, 500) <= chance*10 then  
      doSendMagicEffect(getThingPos(cid), 18)               
      local name, pos = "Shiny ".. getCreatureName(cid), getThingPos(cid)
      doRemoveCreature(cid)
      local shi = doCreateMonster(name, pos, false)
      setPlayerStorageValue(shi, 74469, 1)      
   else
       setPlayerStorageValue(cid, 74469, 1)
   end                                        --/\
else                                                            
return true
end
end
                                                                
function onSpawn(cid)

    registerCreatureEvent(cid, "Experience")
    registerCreatureEvent(cid, "GeneralConfiguration")
    registerCreatureEvent(cid, "DirectionSystem")
    registerCreatureEvent(cid, "CastSystem")
    
    if isSummon(cid) then
        registerCreatureEvent(cid, "SummonDeath")
    return true
    end
    
    addEvent(doShiny, 10, cid)
    addEvent(ShinyName, 15, cid)
    addEvent(adjustWildPoke, 5, cid)

return true
end

 

Editado por Mabel
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
Em 05/03/2019 em 19:58, FlamesAdmin disse:

basta adicionar todos os pokemons da outland no mesmo lugar dos normais local shinys = {

mas ae viria shiny aleatorios?

Link para o comentário
Compartilhar em outros sites

  • 0

Opa lek basta colocar desse jeito que talvez dé certo

local shinys = {
"Venusaur", "Blastoise", "Butterfree", "Beedrill", "Pidgeot", "Rattata", "Raticate", "Raichu", "Golbat", "Paras", "Parasect", "Magmar", "Typhlosion", "Xatu", "Growlithe", "Arcanine", "Tentacruel", "Farfetch'd", "Gengar", "Krabby", "Tauros",
"Kingler", "Cubone", "Horsea", "Seadra", "Weezing", "Scyther", "Pinsir", "Crobat", "Zubat", "Tentacool", "Feraligatr", "Meganium", "Alakazam", "Tangela", "Ampharos", "Electabuzz", "Jynx", "Charizard", "Voltorb", "Electrode"}
 
local raros = {"Dragonair", "Dratini", "Giant Magikarp", "Gyarados", "Magmortar", "Electivire", "Salamence", "Mantine", "Machamp"}  
local specialSummon = {
    chance = 1,                                                 --Chance, em porcentagem, do pokémon especial nascer.
    pokes = {
        {"Shiny Alakazam", "Shiny Arcanine", "Mega Blastoise", "Shiny Ariados", "Shiny Blastoise", "Shiny Charizard", "Shiny Marowak", "Shiny Ampharos", "Shiny Dragonite", "Shiny Magmar", "Shiny Scyther", "Shiny Gyarados", "Shiny Politoed", "Shiny Pinsir", "Shiny Raichu", "Shiny Tangela" },    --Pokémons que podem ser summonados.
        {"Ancient Alakazam", "Ancient Dragonite", "Ancient Meganium", "Ancient Onix", "Ancient Scyther", "Ancient Snorlax", "Aviator Pidgeot", "Banshee Misdreavus", "Bone Marowak", "Boxer Hitmonchan", "Brave Blastoise", "Brave Charizard", "Brave Nidoking", "Brave Nidoqueen", "Brave Noctwol", "Brave Venusaur", "Brute Farfetch'd", "Brute Rhydon", "Brute Ursaring", "Capoeira Hitmontop", "Charged Raichu", "Dark Crobat", "Dragon Machamp", "Elder Arcanine", "Elder Blastoise", "Elder Charizard", "Elder Electabuzz", "Elder Gengar", "Elder Jynx", "Elder Marowak", "Elder Muk", "Elder Pidgeot", "Elder Pinsir", "Elder Tangela", "Elder Raichu", "Elder Tentacruel", "Elder Tyranitar", "Enigmatic Girafarig", "Enraged Typhlosion", "Evil Cloyster", "Freezing Dewgong", "Furios Ampharos", "Furios Mantine", "Furios Murkrow", "Furious Sandslash", "Furious Scyther", "Gordo Snorlax", "Hard Golem", "Heavy Piloswine", "Iron Steelix", "Lava Magmar", "Iron Steelix", "Milch-Miltank", "Milch-Miltank", "Roll Donphan", "Tribal Feraligatr", "Tribal Xatu", "War Heracross", "Ancient Kingdra", "Hard Rhydon"},   --Pokémons que, quando spawnados, há chance de summonar um dos pokémons acima.
    },
}
 
local function ShinyName(cid)
    if isCreature(cid) then
        if string.find(tostring(getCreatureName(cid)), "Shiny") then
            local newName = tostring(getCreatureName(cid)):match("Shiny (.*)")             
            doCreatureSetNick(cid, newName)
            if isMonster(cid) then
                doSetCreatureDropLoot(cid, false)  
            end
        end
    end
end
 
local function doSetRandomGender(cid)
    if not isCreature(cid) then return true end
    if isSummon(cid) then return true end
    local gender = 0
    local name = getCreatureName(cid)
    if not newpokedex[name] then return true end
    local rate = newpokedex[name].gender
    if rate == 0 then
        gender = 3
    elseif rate == 500 then
        gender = 4
    elseif rate == -1 then
        gender = 0
    elseif math.random(1, 500) <= rate then
        gender = 4
    else
        gender = 3
    end
    doCreatureSetSkullType(cid, gender)
end
 
local function doShiny(cid)
    if isCreature(cid) then
        if isSummon(cid) then return true end
        if getPlayerStorageValue(cid, 74469) >= 1 then return true end
        if getPlayerStorageValue(cid, 22546) >= 1 then return true end
        if isNpcSummon(cid) then return true end
        if getPlayerStorageValue(cid, 637500) >= 1 then return true end  --alterado v1.9
 
        if isInArray(shinys, getCreatureName(cid)) then  --alterado v1.9 \/
            chance = 3.0    --1% chance        
        elseif isInArray(raros, getCreatureName(cid)) then   --n coloquem valores menores que 0.1 !!
            chance = 8   --1% chance       
        else
            return true
        end    
        if math.random(1, 500) <= chance*10 then  
            doSendMagicEffect(getThingPos(cid), 18)               
            local name, pos = "Shiny ".. getCreatureName(cid), getThingPos(cid)
            doRemoveCreature(cid)
            doBroadcastMessage("Nasceu um "..name.." no mapa, temos que pegalo!")
            local shi = doCreateMonster(name, pos, false)
            setPlayerStorageValue(shi, 74469, 1)      
        else
            setPlayerStorageValue(cid, 74469, 1)
        end                                        --/\
    else                                                            
        return true
    end
end
                                                                
function onSpawn(cid)
 
    registerCreatureEvent(cid, "Experience")
    registerCreatureEvent(cid, "GeneralConfiguration")
    registerCreatureEvent(cid, "DirectionSystem")
    registerCreatureEvent(cid, "CastSystem")
 
    if isSummon(cid) then
        registerCreatureEvent(cid, "SummonDeath")
        return true
    end
    
    addEvent(function()
        if isCreature(cid) then
            if isInArray(specialSummon.pokes[2], getCreatureName(cid)) then
                if math.random(1, 100) <= specialSummon.chance then
                    local position = getThingPos(cid)
                    doRemoveCreature(cid)
                    local w = specialSummon.pokes[1][math.random(#specialSummon.pokes[1])]
                    doCreateMonster(w, position)
                    doBroadcastMessage("Nasceu um "..w.." na outland, temos que pegalo!")
                end
            end
        end
    end, 15)       
    addEvent(doShiny, 10, cid)
    addEvent(ShinyName, 15, cid)
    addEvent(adjustWildPoke, 5, cid)
 
    return true
end

 

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...