Advertisement
warpdragon

Untitled

May 27th, 2017
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. if CreepPower == nil then
  2. DebugPrint ( 'Creating new CreepPower object...' )
  3. CreepPower = class({})
  4. end
  5.  
  6. function CreepPower:GetPowerForMinute (minute)
  7. local multFactor = 1
  8.  
  9. local ExponentialGrowthOnset = {
  10. [50] = 40,
  11. [100] = 60,
  12. [200] = 120
  13. }
  14.  
  15. if minute == 0 then
  16. return { 0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 * self.numPlayersXPFactor}
  17. end
  18.  
  19. if minute > ExponentialGrowthOnset[PointsManager:GetLimit()] then
  20. multFactor = 1.5 ^ (minute - ExponentialGrowthOnset[PointsManager:GetLimit()])
  21. end
  22.  
  23. return {
  24. minute, -- minute
  25. (45 * ((minute / 100) ^ 4) - 36 * ((minute/100) ^ 3) + 21 * ((minute/100) ^ 2) - 0 * (minute/100)) + 1, -- hp
  26. (45 * ((minute / 100) ^ 4) - 36 * ((minute/100) ^ 3) + 21 * ((minute/100) ^ 2) - 0 * (minute/100)) + 1, -- mana
  27. (180 * ((minute / 100) ^ 4) - 144 * ((minute/100) ^ 3) + 84 * ((minute/100) ^ 2) - 0 * (minute/100)) + 1, -- damage
  28. (minute / 24) ^ 2 + minute / 7 + 1, -- armor
  29. (minute / 2) + 1, -- gold
  30. ((21 * minute^2 - 19 * minute + 3002) / 3002) * self.numPlayersXPFactor * multFactor -- xp
  31. }
  32. end
  33.  
  34. function CreepPower:Init ()
  35. local maxTeamPlayerCount = 10 -- TODO: Make maxTeamPlayerCount based on values set in settings.lua (?)
  36. self.numPlayersXPFactor = PlayerResource:GetTeamPlayerCount() / maxTeamPlayerCount
  37. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement