etw_math 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/example.rb +4 -0
- data/lib/etw_math.rb +21 -1
- data/test.rb +10 -0
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2a6bc32aa40fd9881fd07c4504ec0ec8bd62391395216c6bdae1d63ae3f67a88
|
|
4
|
+
data.tar.gz: fd2bde9416a952dca7fed4b0e492db218d8b8ad4252e81ba0ea25bcc3b86f353
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 42cbf495e7ec47ba887ae8c002ac554881b99abeca3f10121fb85693271887ce9e36119f748afbded820bff94d04bdaad2f2b0da373e7774cc47030d25a508d8
|
|
7
|
+
data.tar.gz: b34240e9f07ecb3cb8ac77eb97773b94b695893220c0e2b339eede77a19ee7180dd91cbdffb2636b87e3fd5b6d9ef2ced443d4e1286a8677d1a8f05d8ca36774
|
data/example.rb
CHANGED
|
@@ -53,6 +53,10 @@ puts "\nActual size level for a max size of 509,999 is:"
|
|
|
53
53
|
puts EtwMath.actual_level_at_size(509999)
|
|
54
54
|
puts "\nNearest size level for a max size of 510,999 is:"
|
|
55
55
|
puts EtwMath.nearest_level_at_size(510999)
|
|
56
|
+
puts "\nEat speed level for an eat speed value of 5.4:"
|
|
57
|
+
puts EtwMath.eat_speed_level(5.4)
|
|
58
|
+
puts "\nEat speed value for an eat speed level of 23:"
|
|
59
|
+
puts EtwMath.eat_speed_value(23)
|
|
56
60
|
puts "\nOptimal size level for a multi of 100 using a factor of 5.5 is:"
|
|
57
61
|
puts EtwMath.optimal_size_level_threshold(100, 5.5)
|
|
58
62
|
puts "\nOptimal multi for a size level of 550 using a ratio of 5.5 is:"
|
data/lib/etw_math.rb
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
# This class contains various methods that perform Eat the World calculations
|
|
29
29
|
class EtwMath
|
|
30
30
|
# EtwMath version
|
|
31
|
-
VERSION = "1.
|
|
31
|
+
VERSION = "1.2.0"
|
|
32
32
|
|
|
33
33
|
# Number of seconds in 1 day
|
|
34
34
|
SECONDS_PER_DAY = 86400
|
|
@@ -216,6 +216,26 @@ class EtwMath
|
|
|
216
216
|
end
|
|
217
217
|
end
|
|
218
218
|
|
|
219
|
+
# Calculates eat speed value
|
|
220
|
+
# @param eat_speed_level [Integer] Eat speed level
|
|
221
|
+
# @return [String, Boolean] String representation of a float or false if input is invalid
|
|
222
|
+
# @example
|
|
223
|
+
# EtwMath.eat_speed_value(31) # 7.0
|
|
224
|
+
def self.eat_speed_value(eat_speed_level)
|
|
225
|
+
return false if !input_valid?(eat_speed_level)
|
|
226
|
+
format_number(0.2 * eat_speed_level + 0.8, true)
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
# Calculates eat speed level
|
|
230
|
+
# @param eat_speed_value [Float] Eat speed value
|
|
231
|
+
# @return [String, Boolean] String representation of an integer or false if input is invalid
|
|
232
|
+
# @example
|
|
233
|
+
# EtwMath.eat_speed_level(7.0) # 31
|
|
234
|
+
def self.eat_speed_level(eat_speed_value)
|
|
235
|
+
return false if !input_valid?(eat_speed_value)
|
|
236
|
+
format_number(5 * eat_speed_value - 4)
|
|
237
|
+
end
|
|
238
|
+
|
|
219
239
|
# Calculates optimal size level threshold
|
|
220
240
|
# @param multi [Integer] Multiplier level
|
|
221
241
|
# @param ratio [Numeric] Ratio
|
data/test.rb
CHANGED
|
@@ -116,6 +116,16 @@ class EtwMathTests < Minitest::Test
|
|
|
116
116
|
assert(!EtwMath.nearest_level_at_size(-1))
|
|
117
117
|
end
|
|
118
118
|
|
|
119
|
+
def test_eat_speed_value
|
|
120
|
+
assert_equal("5.4", EtwMath.eat_speed_value(23))
|
|
121
|
+
assert(!EtwMath.eat_speed_value(-1))
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def test_eat_speed_level
|
|
125
|
+
assert_equal("23", EtwMath.eat_speed_level(5.4))
|
|
126
|
+
assert(!EtwMath.eat_speed_level(-1))
|
|
127
|
+
end
|
|
128
|
+
|
|
119
129
|
def test_optimal_size_level_threshold
|
|
120
130
|
assert_equal("550", EtwMath.optimal_size_level_threshold(100, 5.5))
|
|
121
131
|
assert(!EtwMath.optimal_size_level_threshold(-1, -1))
|