Advertisement
Vendily

Size pID

Jul 1st, 2018
602
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 1.17 KB | None | 0 0
  1.   SIZE_LOOKUP_TABLE={9=>[290,1,0],
  2.                      109=>[300,1,10],
  3.                      309=>[400,2,110],
  4.                      709=>[500,4,310],
  5.                      2709=>[600,20,710],
  6.                      7709=>[700,50,2710],
  7.                      17709=>[800,100,7710],
  8.                      32709=>[900,150,17710],
  9.                      47709=>[1000,150,32710],
  10.                      57709=>[1100,100,47710],
  11.                      62709=>[1200,50,57710],
  12.                      64709=>[1300,20,62710],
  13.                      65209=>[1400,5,64710],
  14.                      65409=>[1500,2,65210],
  15.                      65535=>[1700,1,65510],
  16.   }
  17.  
  18.   def size
  19.     p1=@personalID%256
  20.     p2=((@personalID/256)%256).floor
  21.     ivlow=@iv
  22.     for i in PBStats::HP..PBStats::SPDEF
  23.       ivlow[i]=ivlow[i]%16
  24.     end
  25.     s=(((ivlow[PBStats::ATTACK]^ivlow[PBStats::DEFENSE])*ivlow[PBStats::HP])^p1)*256+
  26.       (((ivlow[PBStats::SPATK]^ivlow[PBStats::SPDEF])*ivlow[PBStats::SPEED])^p2)
  27.     smax=SIZE_LOOKUP_TABLE.keys.sort
  28.     i=0
  29.     while s>=smax[i]
  30.       i+=1  
  31.     end
  32.     x,y,z=SIZE_LOOKUP_TABLE[smax[i]]
  33.     ret=(((((s-z)/y)+x)*self.height)/10).floor
  34.     return ret
  35.   end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement