BR

(Duvida) Resp De Shiny

Por BrunooMaciell, 07 de abr. de 2016 em Scripts

5
918
BrunooMaciellB
07 de abril de 2016 às 20:20

Estou com uma duvida relacionado ao systema de shiny em resp.

 

Spoiler

if isInArray(shinys, getCreatureName(cid)) then  --alterado v1.9 \/
   chance = 6    --1% chance        
elseif isInArray(raros, getCreatureName(cid)) then   --n coloquem valores menores que 0.1 !!
   chance = 3   --1% chance       
else

Eu queria uma expliçao de como funciona +ou- isso porque vou mexer no meu queria te uma ideia como funciona esta %%

zipter98Z
07 de abril de 2016 às 21:31

Sem o código inteiro não há como interpretarmos como o cálculo é feito.

BrunooMaciellB
07 de abril de 2016 às 21:47
15 minutos atrás, zipter98 disse:

Sem o código inteiro não há como interpretarmos como o cálculo é feito.

Spoiler

local shinys = {

"Venusaur", "Charizard", "Blastoise", "Butterfree", "Beedrill", "Pidgeot", "Rattata", "Raticate", "Raichu", "Zubat", "Golbat", "Paras", "Parasect", 

"Venonat", "Venomoth", "Growlithe", "Arcanine", "Abra", "Alakazam", "Tentacool", "Tentacruel", "Farfetch'd", "Grimer", "Muk", "Gengar", "Onix", "Krabby", 

"Kingler", "Voltorb", "Electrode", "Cubone", "Marowak", "Tangela", "Horsea", "Seadra", "Scyther", "Jynx", "Electabuzz", "Pinsir", 

"Magikarp", "Gyarados", "Snorlax", "Dragonair", "Machamp", "Dratini", "Feraligatr", "Typhlosion", "Meganium", "Ampharos", "Tauros", "Xatu", "Rhydon", "Crobat", "Magmar", "Pupitar", "Stantler", "Umbreon", "Mr. Mime", "Magneton", "Ariados", "Dodrio", "Ninetales", "Espeon", "Magby", "Dragonite"}

local raros = {"Ditto"}                               

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 == 1000 then

            gender = 4

        elseif rate == -1 then

            gender = 0

        elseif math.random(1, 1000) <= 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 = 6    --1% chance        

elseif isInArray(raros, getCreatureName(cid)) then   --n coloquem valores menores que 0.1 !!

   chance = 3   --1% chance       

else

   return true

end    

    if math.random(1, 1000) <= 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(doSetRandomGender, 5, cid)

    addEvent(doShiny, 10, cid)

    addEvent(ShinyName, 15, cid)

    addEvent(adjustWildPoke, 5, cid)

return true

end

aii /\

zipter98Z
07 de abril de 2016 às 22:15

Este valor é basicamente a chance, em porcentagem, do pokémon shiny nascer. Há dois possíveis valores, um para a tabela raros e um para a tabela shinys. Se você estabelecer o valor como 5, há 5% de chance de um pokémon shiny nascer. 10, 10% de chance. 70, 70% seria a chance. O mesmo vale para valores decimais acima ou iguais a 0.1. Ou seja, você pode configurar valores como 0.5 (0.5% chance de respaw), 0.75 (0.75% a chance), etc.

No caso do exemplo postado no tópico, há 6% de chance dos pokémons da tabela shinys nascerem e 3% de chance do pokémon da tabela raros nascer.

Editado Abril 7 por zipter98

BrunooMaciellB
07 de abril de 2016 às 22:51

haa entendi!!!