Module: Lich::Gemstone::SK
- Defined in:
- documented/gemstone/sk.rb
Class Method Summary collapse
-
.add(*numbers) ⇒ void
Adds one or more spell numbers to the known SK spells.
-
.help ⇒ void
Provides help information for managing SK spells.
-
.known?(spell) ⇒ Boolean
Checks if a specific spell is known.
-
.list ⇒ void
Lists the current known SK spells.
-
.main(action = help, spells = nil) ⇒ void
Main entry point for managing SK spells based on the action provided.
-
.remove(*numbers) ⇒ void
Removes one or more spell numbers from the known SK spells.
-
.sk_known ⇒ Array<String>?
Retrieves the known SK spells.
-
.sk_known=(val) ⇒ void
Sets the known SK spells.
Class Method Details
.add(*numbers) ⇒ void
This method returns an undefined value.
Adds one or more spell numbers to the known SK spells.
69 70 71 72 |
# File 'documented/gemstone/sk.rb', line 69 def self.add(*numbers) self.sk_known = (@sk_known + numbers).uniq self.list end |
.help ⇒ void
This method returns an undefined value.
Provides help information for managing SK spells.
55 56 57 58 59 60 61 62 63 |
# File 'documented/gemstone/sk.rb', line 55 def self.help respond " Script to add SK spells to be known and used with Spell API calls." respond "" respond " ;sk add <SPELL_NUMBER> - Add spell number to saved list" respond " ;sk rm <SPELL_NUMBER> - Remove spell number from saved list" respond " ;sk list - Show all currently saved SK spell numbers" respond " ;sk help - Show this menu" respond "" end |
.known?(spell) ⇒ Boolean
Checks if a specific spell is known.
41 42 43 44 |
# File 'documented/gemstone/sk.rb', line 41 def self.known?(spell) self.sk_known if @sk_known.nil? @sk_known.include?(spell.num.to_s) end |
.list ⇒ void
This method returns an undefined value.
Lists the current known SK spells.
48 49 50 51 |
# File 'documented/gemstone/sk.rb', line 48 def self.list respond "Current SK Spells: #{@sk_known.inspect}" respond "" end |
.main(action = help, spells = nil) ⇒ void
This method returns an undefined value.
Main entry point for managing SK spells based on the action provided.
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
# File 'documented/gemstone/sk.rb', line 88 def self.main(action = help, spells = nil) self.sk_known if @sk_known.nil? action = action.to_sym spells = spells.split(" ").uniq case action when :add self.add(*spells) unless spells.empty? self.help if spells.empty? when :rm self.remove(*spells) unless spells.empty? self.help if spells.empty? when :list self.list else self.help end end |
.remove(*numbers) ⇒ void
This method returns an undefined value.
Removes one or more spell numbers from the known SK spells.
78 79 80 81 |
# File 'documented/gemstone/sk.rb', line 78 def self.remove(*numbers) self.sk_known = (@sk_known - numbers).uniq self.list end |
.sk_known ⇒ Array<String>?
Retrieves the known SK spells.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'documented/gemstone/sk.rb', line 9 def self.sk_known if @sk_known.nil? val = DB_Store.read("#{XMLData.game}:#{XMLData.name}", "sk_known") if val.nil? || (val.is_a?(Hash) && val.empty?) old_settings = DB_Store.read("#{XMLData.game}:#{XMLData.name}", "vars")["sk/known"] if old_settings.is_a?(Array) val = old_settings else val = [] end self.sk_known = val end @sk_known = val unless val.nil? end return @sk_known end |
.sk_known=(val) ⇒ void
This method returns an undefined value.
Sets the known SK spells.
30 31 32 33 34 35 |
# File 'documented/gemstone/sk.rb', line 30 def self.sk_known=(val) unless @sk_known == val DB_Store.save("#{XMLData.game}:#{XMLData.name}", "sk_known", val) @sk_known = val end end |