alch 0.0.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -7
  3. data/lib/alch.rb +1 -1
  4. data/lib/alch/item.rb +18 -24
  5. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6fb60e6e423677cd1c0488e22874d87cc542b8dd
4
- data.tar.gz: 0cdc2a36fc4e601a49066dc2978af99862f5aa5d
3
+ metadata.gz: cd3b7a3bd27afaf7c06e66161ceacfb90422ca0a
4
+ data.tar.gz: b6da70617e798c4ed9d8ee355d9f7285d9571ec0
5
5
  SHA512:
6
- metadata.gz: f5b84d51c8348384ba2ddea3cd34e797b6cf413cb519e7237083d8efecf5a8de2de42f894c75a64196ef2d1cdc74e3001695d958f4e78ade1735108898e71d5c
7
- data.tar.gz: c265351ae3da28092cc72d2c427c768f96f230ec0fcfaafab5b895fac587e432bbeb9e84935767575bf010bc46c4ea2c38846a7f19b9439a0495f8fe2b019db6
6
+ metadata.gz: b9fd3042b517f31681f9d9143e87168c099aceb40831c46c10ae92c1368ccc5801e74f2028283d5914fbfbaba0f266521f5b96136965e1be1bc3ab96b73e6c64
7
+ data.tar.gz: 3ad58144391253b2c54bd18270d4c05bcd3d0476b58de8cc5f56a1e363180a6af85dd38c15277ff175934cc8e97cb364b024123d0dbc8987da745672712796ca
data/README.md CHANGED
@@ -1,24 +1,25 @@
1
1
  # Alch.rb
2
- A very simplistic Runescape Alchemy API that can help you get alch prices of certain items. It's written in Ruby so that it can also be easily accessable within Rails.
2
+ A simplistic Runescape Alchemy API that can help you get alch prices of certain items.
3
3
 
4
4
  ## Installation
5
- You can download the newest version of Alch.rb through Git. Just enter the following in your command line:
5
+ You can get the newest gem of Alch.rb. Just enter the following in your command line:
6
6
 
7
7
  `$ gem install alch`
8
8
 
9
9
  That's it! You are now able to include the API into your projects.
10
10
 
11
- To do so, include the src files in your project and when you'd like to use this API in a Class, just require the `alch.rb` file like so:
11
+ If you plan on using alch in a class or file, you have to require it at the top of your Ruby file, like so:
12
12
 
13
13
  ```ruby
14
14
  require 'alch'
15
15
  ```
16
16
 
17
17
  ### Dependencies
18
- Since this was written in Ruby, you will need Ruby to use this API.
18
+ Ruby 2.0 and up
19
19
 
20
20
  ## Usage Examples
21
21
  A very basic use case:
22
+
22
23
  ```ruby
23
24
  require 'alch'
24
25
 
@@ -46,6 +47,4 @@ puts item.high_alch - (item.price + nature_rune.price)
46
47
  ```
47
48
 
48
49
  # Full Documentation
49
- ## Classes
50
- * **[Item.rb](https://github.com/RubySometimes/alchrb/blob/master/docs/classes/Item.md)**
51
-
50
+ [View the Full Documentation](http://www.rubydoc.info/gems/alch/)
@@ -2,7 +2,7 @@
2
2
  # Released under the MIT License agreement
3
3
 
4
4
  # @author RubySometimes (GitHub)
5
- # @version 0.0.1
5
+ # @version 1.0.5
6
6
  require_relative('alch/item')
7
7
  require_relative('alch/osrs')
8
8
  require_relative('alch/runes')
@@ -5,19 +5,13 @@ require('net/http')
5
5
 
6
6
  # Items are anything that can be in your inventory.
7
7
  #
8
- # @author RubySometimes (GitHub)
8
+ # @author Marcello A. Sabino
9
9
  class Item
10
- # Attributes
11
- attr_reader :id
12
- attr_reader :name
13
- attr_reader :price
14
- attr_reader :store_price
15
- attr_reader :low_alch
16
- attr_reader :high_alch
17
- attr_reader :image
10
+ attr_reader :id, :name, :price, :store_price,
11
+ :low_price, :high_alch, :image
18
12
 
19
13
  # Creates a new Item object
20
- # @param id - the id of the Item
14
+ # @param [Integer] id - the id of the Item
21
15
  # @raise RunTimeError if the id is not an integer
22
16
  def initialize(id)
23
17
  raise 'Parameter id must be an Integer' unless id.instance_of? Integer
@@ -31,9 +25,9 @@ class Item
31
25
  end
32
26
 
33
27
  # Class method to get the item's id by name
34
- # @param item_name - the name of the item to search for
28
+ # @param [String] item_name - the name of the item to search for
35
29
  # the item_name gets capitalized for search.
36
- # @return the item's id
30
+ # @return [Integer] the item's id
37
31
  # @raise RunTimeError if the item doesn't exist
38
32
  def self.id_by_name(item_name)
39
33
  item_name = item_name.capitalize
@@ -46,29 +40,29 @@ class Item
46
40
  end
47
41
 
48
42
  # Checks if this item's GE price is less than another item's
49
- # @param other - the other item to compare to
50
- # @return true if this item is worth less than the other_item.
43
+ # @param [Item] other - the other item to compare to
44
+ # @return [Boolean] true if this item is worth less than the other_item.
51
45
  def <(other)
52
46
  price < other.price
53
47
  end
54
48
 
55
49
  # Checks if this item's GE price is greater than another item's
56
- # @param other_item - the other item to compare to
57
- # @return true if this item is worth less than the other_item.
50
+ # @param [Item] other - the other item to compare to
51
+ # @return [Boolean] true if this item is worth less than the other_item.
58
52
  def >(other)
59
53
  price > other.price
60
54
  end
61
55
 
62
56
  # Take another item's price and subtract it from this item
63
- # @param other - the other item, which price we will subtract from
64
- # @return self.price - other.price
57
+ # @param [Item] other - the other item, which price we will subtract from
58
+ # @return [Integer] self.price - other.price
65
59
  def -(other)
66
60
  price - other.price
67
61
  end
68
62
 
69
63
  # Take another item's price and add it with this item's price
70
- # @param other - the other item, which price we will subtract from
71
- # @return self.price - other.price
64
+ # @param [Item] other - the other item, which price we will subtract from
65
+ # @return [Integer] self.price - other.price
72
66
  def +(other)
73
67
  price + other.price
74
68
  end
@@ -84,7 +78,7 @@ class Item
84
78
  end
85
79
 
86
80
  # Gets the store price of the Item
87
- # @return the store price of the Item
81
+ # @return [Integer] the store price of the Item
88
82
  def generate_store
89
83
  uri = URI(OSRS::SHOP_DATA)
90
84
  json = JSON.parse(Net::HTTP.get(uri))
@@ -92,7 +86,7 @@ class Item
92
86
  end
93
87
 
94
88
  # Gets the average price of the Item on the GE
95
- # @return the average price on the GE
89
+ # @return [Integer] the average price on the GE
96
90
  def generate_price
97
91
  uri = URI(OSRS::GE_JSON + @id.to_s)
98
92
  json = JSON.parse(Net::HTTP.get(uri))
@@ -109,7 +103,7 @@ class Item
109
103
 
110
104
  # Turns a price, like 1.9m and converts to an Integer.
111
105
  # @param price - the price of an item in string form
112
- # @return the integer form of a price.
106
+ # @return [Integer] the integer form of a price.
113
107
  def price_to_int(price)
114
108
  price_float = clean_price(price.to_s)
115
109
  price_float *= 1_000_000 if price[-1] == 'm'
@@ -118,7 +112,7 @@ class Item
118
112
  end
119
113
 
120
114
  # Takes a price as a string, and removes any commas.
121
- # @param price - the price from the JSON in string form.
115
+ # @param [Float] price - the price from the JSON in string form.
122
116
  def clean_price(price)
123
117
  price.sub(/,/, '').to_f
124
118
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcello A. Sabino
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-03 00:00:00.000000000 Z
11
+ date: 2017-10-04 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: A simple way to determine alch prices on Oldschool Runescape.
13
+ description: A simple way to determine alch prices on Oldschool Runescape
14
14
  email: march@marchy.me
15
15
  executables: []
16
16
  extensions: []