Class: EveOnline::Formulas::BlueprintCopyTime

Inherits:
Object
  • Object
show all
Defined in:
lib/eve_online/formulas/blueprint_copy_time.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(seconds, science_level, advanced_industry_level, science_copy_speed_bonus_per_level, advanced_industry_skill_industry_job_time_bonus_per_level, runs = 1) ⇒ BlueprintCopyTime

Returns a new instance of BlueprintCopyTime.



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 10

def initialize(seconds, science_level, advanced_industry_level,
  science_copy_speed_bonus_per_level,
  advanced_industry_skill_industry_job_time_bonus_per_level,
  runs = 1)
  @seconds = seconds
  @science_level = science_level
  @advanced_industry_level = advanced_industry_level
  @science_copy_speed_bonus_per_level = science_copy_speed_bonus_per_level
  @advanced_industry_skill_industry_job_time_bonus_per_level = advanced_industry_skill_industry_job_time_bonus_per_level
  @runs = runs
end

Instance Attribute Details

#advanced_industry_levelObject (readonly)

Returns the value of attribute advanced_industry_level.



6
7
8
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 6

def advanced_industry_level
  @advanced_industry_level
end

#advanced_industry_skill_industry_job_time_bonus_per_levelObject (readonly)

Returns the value of attribute advanced_industry_skill_industry_job_time_bonus_per_level.



6
7
8
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 6

def advanced_industry_skill_industry_job_time_bonus_per_level
  @advanced_industry_skill_industry_job_time_bonus_per_level
end

#runsObject (readonly)

Returns the value of attribute runs.



6
7
8
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 6

def runs
  @runs
end

#science_copy_speed_bonus_per_levelObject (readonly)

Returns the value of attribute science_copy_speed_bonus_per_level.



6
7
8
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 6

def science_copy_speed_bonus_per_level
  @science_copy_speed_bonus_per_level
end

#science_levelObject (readonly)

Returns the value of attribute science_level.



6
7
8
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 6

def science_level
  @science_level
end

#secondsObject (readonly)

Returns the value of attribute seconds.



6
7
8
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 6

def seconds
  @seconds
end

Instance Method Details

#advanced_industry_job_time_bonusObject



38
39
40
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 38

def advanced_industry_job_time_bonus
  advanced_industry_level * advanced_industry_skill_industry_job_time_bonus_per_level
end

#advanced_industry_job_time_bonus_time_modifierObject



42
43
44
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 42

def advanced_industry_job_time_bonus_time_modifier
  (100.0 + advanced_industry_job_time_bonus) / 100.0
end

#science_copy_bonusObject



30
31
32
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 30

def science_copy_bonus
  science_level * science_copy_speed_bonus_per_level
end

#science_copy_bonus_time_modifierObject



34
35
36
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 34

def science_copy_bonus_time_modifier
  (100.0 + science_copy_bonus) / 100.0
end

#timeObject



22
23
24
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 22

def time
  (BigDecimal(seconds.to_s) * BigDecimal(time_modifier.to_s) * BigDecimal(runs.to_s)).to_f
end

#time_modifierObject



26
27
28
# File 'lib/eve_online/formulas/blueprint_copy_time.rb', line 26

def time_modifier
  science_copy_bonus_time_modifier * advanced_industry_job_time_bonus_time_modifier
end