wxrcg 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. data/.gitignore +1 -0
  2. data/LICENSE +24 -0
  3. data/README.md +51 -0
  4. data/Rakefile +30 -0
  5. data/VERSION +1 -0
  6. data/bin/dm_screen +17 -0
  7. data/bin/stats +21 -0
  8. data/bin/weapon_add +24 -0
  9. data/config/database.yml +22 -0
  10. data/db/development.sqlite +0 -0
  11. data/db/development.sqlite3 +0 -0
  12. data/db/sqlite scripts/create_armours.sql +16 -0
  13. data/db/sqlite scripts/create_categories.sql +10 -0
  14. data/db/sqlite scripts/create_characters.sql +21 -0
  15. data/db/sqlite scripts/create_races.sql +9 -0
  16. data/db/sqlite scripts/create_weapons.sql +16 -0
  17. data/db/sqlite scripts/critical.sql +12 -0
  18. data/db/sqlite scripts/damage.sql +21 -0
  19. data/db/sqlite scripts/damage_type.sql +15 -0
  20. data/db/sqlite scripts/encumbrance_type.sql +10 -0
  21. data/db/sqlite scripts/training_type.sql +8 -0
  22. data/db/sqlite scripts/weapon_special_qualities_weapons.sql +17 -0
  23. data/db/test.sqlite +0 -0
  24. data/lib/character.old.rb +72 -0
  25. data/lib/controllers/character_controller.rb +35 -0
  26. data/lib/controllers/dm_screen_controller.rb +23 -0
  27. data/lib/controllers/weapon_controller.rb +37 -0
  28. data/lib/initdb.rb +27 -0
  29. data/lib/models/armour.rb +3 -0
  30. data/lib/models/character.rb +120 -0
  31. data/lib/models/critical.rb +11 -0
  32. data/lib/models/damage.rb +8 -0
  33. data/lib/models/damage_type.rb +3 -0
  34. data/lib/models/encumbrance_type.rb +3 -0
  35. data/lib/models/race.rb +3 -0
  36. data/lib/models/size.rb +4 -0
  37. data/lib/models/training_type.rb +3 -0
  38. data/lib/models/weapon.rb +59 -0
  39. data/lib/models/weapon_special_quality.rb +3 -0
  40. data/lib/views/abilities_frame.rb +285 -0
  41. data/lib/views/char_select_dialog.rb +60 -0
  42. data/lib/views/dm_screen_frame.rb +64 -0
  43. data/lib/views/weapon_screen_frame.rb +232 -0
  44. data/log/.keep_me +0 -0
  45. data/tests/armour_model_test.rb +10 -0
  46. data/tests/character_model_test.rb +10 -0
  47. data/tests/critical_model_test.rb +10 -0
  48. data/tests/damage_model_test.rb +10 -0
  49. data/tests/damage_type_model_test.rb +10 -0
  50. data/tests/encumbrance_type_model_test.rb +10 -0
  51. data/tests/race_model_test.rb +10 -0
  52. data/tests/size_model_test.rb +10 -0
  53. data/tests/training_type_model_test.rb +10 -0
  54. data/tests/weapon_model_test.rb +19 -0
  55. data/tests/weapon_special_quality_model_test.rb +10 -0
  56. metadata +141 -0
@@ -0,0 +1,232 @@
1
+ class Weapon_screen_frame < Wx::Frame
2
+ def initialize(version, lists)
3
+ super(nil, :title => "Add a weapon to the Database", :size => [800,600])
4
+ create_status_bar
5
+ create_tool_bar
6
+
7
+ self.set_status_text("Current SCM Version: #{version}")
8
+
9
+ menu_bar = Wx::MenuBar.new
10
+ file_menu = Wx::Menu.new
11
+ menu_bar.append(file_menu, "&File")
12
+
13
+ self.menu_bar = menu_bar
14
+
15
+ # Set up Controls
16
+ @name = Wx::TextCtrl.new(self, -1)
17
+ @name_l = Wx::StaticText.new(self, -1, "Weapon Name")
18
+ @training_type = Wx::Choice.new(self, -1)
19
+ @training_type_l = Wx::StaticText.new(self, -1, "Training Type")
20
+ @encumbrance_type = Wx::Choice.new(self, -1)
21
+ @encumbrance_type_l = Wx::StaticText.new(self, -1, "Encumbrance Type")
22
+ @damage = Wx::Choice.new(self, -1)
23
+ @damage_l = Wx::StaticText.new(self, -1, "End One Damage")
24
+ @damage2 = Wx::Choice.new(self, -1)
25
+ @damage2_l = Wx::StaticText.new(self, -1, "End Two Damage")
26
+ @damage_type = Wx::Choice.new(self, -1)
27
+ @damage_type_l = Wx::StaticText.new(self, -1, "Damage Type")
28
+ @critical = Wx::Choice.new(self, -1)
29
+ @critical_l = Wx::StaticText.new(self, -1, "Critical")
30
+ @size = Wx::Choice.new(self, -1)
31
+ @size_l = Wx::StaticText.new(self, -1, "Size")
32
+ @cost = Wx::TextCtrl.new(self, -1)
33
+ @cost_l = Wx::StaticText.new(self, -1, "Cost")
34
+ @range = Wx::TextCtrl.new(self, -1)
35
+ @range_l = Wx::StaticText.new(self, -1, "Range")
36
+ @weight = Wx::TextCtrl.new(self, -1)
37
+ @weight_l = Wx::StaticText.new(self, -1, "Weight")
38
+ @blank_txt = Wx::StaticText.new(self,-1,"")
39
+ @save_btn = Wx::Button.new(self,:label=>'Save')
40
+ @load_btn = Wx::Button.new(self,:label=>'Load')
41
+ @table = Wx::Grid.new(self)
42
+ @sqs = WeaponSpecialQuality.find(:all, :order => "name ASC").map {|sq| Wx::CheckBox.new(self, -1, sq.name)}
43
+
44
+
45
+
46
+ # Set up Table
47
+ @labels = ["Name","Training", "Encumbrance", "Damage",
48
+ "Damage Type", "Critical", "Size", "Cost", "Range", "Weight",
49
+ "Special"]
50
+ @table.create_grid(0, @labels.length)
51
+ @labels.each do |lab|
52
+ @table.set_col_label_value(@labels.index(lab), lab)
53
+ end
54
+
55
+ Weapon.find(:all).each { |weapon| update_table(weapon) }
56
+
57
+ @table.set_selection_mode(Wx::Grid::GridSelectRows)
58
+ @table.auto_size_columns
59
+ @table.fit
60
+ @table.enable_editing(false)
61
+
62
+ # Set up Choices
63
+ lists[:training_types].each {|type| @training_type.append(type.name, type.id)}
64
+ lists[:encumbrance_types].each {|type| @encumbrance_type.append(type.name, type.id)}
65
+ lists[:damages].each {|type| @damage.append(type.to_s, type.id);@damage2.append(type.to_s, type.id)}
66
+ lists[:damage_types].each {|type| @damage_type.append(type.name, type.id)}
67
+ lists[:criticals].each {|type| @critical.append(type.to_s, type.id)}
68
+ lists[:sizes].each {|type| @size.append(type.name, type.id)}
69
+
70
+ # Set up menus
71
+ file_menu.append(@save_btn.get_id(), '&Save', 'Save')
72
+ file_menu.append_separator
73
+ file_menu.append(Wx::ID_EXIT, 'E&xit', 'Exit')
74
+
75
+ # Sizers
76
+ @main_sizer = Wx::BoxSizer.new(Wx::HORIZONTAL)
77
+ @vert_sizer = Wx::BoxSizer.new(Wx::VERTICAL)
78
+ @entry_sizer = Wx::GridSizer.new(0,2,0,0)
79
+ @btn_sizer = Wx::GridSizer.new(0,2,0,0)
80
+
81
+ #Add everythig into the sizer
82
+ @entry_sizer.add(@name_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
83
+ @entry_sizer.add(@name,0,Wx::ALIGN_CENTER|Wx::ALL,5)
84
+ @entry_sizer.add(@training_type_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
85
+ @entry_sizer.add(@training_type,0,Wx::ALIGN_CENTER|Wx::ALL,5)
86
+ @entry_sizer.add(@encumbrance_type_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
87
+ @entry_sizer.add(@encumbrance_type,0,Wx::ALIGN_CENTER|Wx::ALL,5)
88
+ @entry_sizer.add(@damage_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
89
+ @entry_sizer.add(@damage,0,Wx::ALIGN_CENTER|Wx::ALL,5)
90
+ @entry_sizer.add(@damage_type_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
91
+ @entry_sizer.add(@damage_type,0,Wx::ALIGN_CENTER|Wx::ALL,5)
92
+ @entry_sizer.add(@damage2_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
93
+ @entry_sizer.add(@damage2,0,Wx::ALIGN_CENTER|Wx::ALL,5)
94
+ @entry_sizer.add(@critical_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
95
+ @entry_sizer.add(@critical,0,Wx::ALIGN_CENTER|Wx::ALL,5)
96
+ @entry_sizer.add(@size_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
97
+ @entry_sizer.add(@size,0,Wx::ALIGN_CENTER|Wx::ALL,5)
98
+ @entry_sizer.add(@range_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
99
+ @entry_sizer.add(@range,0,Wx::ALIGN_CENTER|Wx::ALL,5)
100
+ @entry_sizer.add(@cost_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
101
+ @entry_sizer.add(@cost,0,Wx::ALIGN_CENTER|Wx::ALL,5)
102
+ @entry_sizer.add(@weight_l,0,Wx::ALIGN_CENTER|Wx::ALL,5)
103
+ @entry_sizer.add(@weight,0,Wx::ALIGN_CENTER|Wx::ALL,5)
104
+ @sqs.each do |sq|
105
+ @entry_sizer.add(sq,0,Wx::ALIGN_CENTER|Wx::ALL,5)
106
+ end
107
+
108
+ @btn_sizer.add(@load_btn,0,Wx::ALIGN_CENTER|Wx::ALL,5)
109
+ @btn_sizer.add(@save_btn,0,Wx::ALIGN_CENTER|Wx::ALL,5)
110
+
111
+ @vert_sizer.add(@entry_sizer)
112
+ @vert_sizer.add(@btn_sizer)
113
+
114
+ @main_sizer.add(@vert_sizer)
115
+ @main_sizer.add(@table)
116
+
117
+ # Finish Sizer Setting
118
+ set_sizer(@main_sizer)
119
+ get_sizer.layout
120
+ get_sizer.fit(self)
121
+
122
+ #Event Handling
123
+ evt_menu(Wx::ID_EXIT, :on_exit)
124
+ evt_button(@save_btn.get_id()) { |event| save_button_event(event)}
125
+ evt_button(@load_btn.get_id()) { |event| load_button_event(event)}
126
+
127
+ reset_fields
128
+ show
129
+ end
130
+
131
+ def on_exit
132
+ close
133
+ end
134
+
135
+ def save_button_event(event)
136
+ #get our shit together
137
+ name = @name.value
138
+ tt = @training_type.get_item_data(@training_type.get_selection)
139
+ et = @encumbrance_type.get_item_data(@encumbrance_type.get_selection)
140
+ dam = @damage.get_item_data(@damage.get_selection)
141
+ dam2 = @damage2.get_item_data(@damage2.get_selection)
142
+ dt = @damage_type.get_item_data(@damage_type.get_selection)
143
+ crit = @critical.get_item_data(@critical.get_selection)
144
+ size = @size.get_item_data(@size.get_selection)
145
+ cost = @cost.value
146
+ range = @range.value
147
+ weight = @weight.value
148
+
149
+ #Add to the DB
150
+ weapon = Weapon.create(:name => name, :training_type_id => tt, :encumbrance_type_id => et,
151
+ :damage_id => dam, :damage_type_id => dt, :damage2_id => dam2, :critical_id => crit,
152
+ :size_id => size, :cost => cost, :range => range, :weight => weight)
153
+
154
+ #Update the special qualities tables
155
+ @sqs.each do |sq|
156
+ if sq.is_checked then
157
+ weapon.has_quality(WeaponSpecialQuality.find_by_name(sq.get_label))
158
+ end
159
+ end
160
+
161
+ #Update the table, and reset everything for the next update...
162
+ update_table(weapon)
163
+ reset_fields
164
+ get_sizer.layout
165
+ get_sizer.fit(self)
166
+ end
167
+
168
+ def update_table(weapon)
169
+ @row = @table.get_number_rows
170
+ @table.append_rows
171
+ @table.set_cell_value(@row,0,weapon.name)
172
+ @table.set_cell_value(@row,1,weapon.training_type.name)
173
+ @table.set_cell_value(@row,2,weapon.encumbrance_type.name)
174
+ @table.set_cell_value(@row,3,weapon.combined_damage)
175
+ @table.set_cell_value(@row,4,weapon.damage_type.name)
176
+ @table.set_cell_value(@row,5,weapon.critical.to_s)
177
+ @table.set_cell_value(@row,6,weapon.size.name)
178
+ @table.set_cell_value(@row,7,weapon.fcost.to_s)
179
+ @table.set_cell_value(@row,8,weapon.frange.to_s)
180
+ @table.set_cell_value(@row,9,weapon.fweight.to_s)
181
+ @table.set_cell_value(@row,10,weapon.specials)
182
+ @table.auto_size_columns
183
+ @table.fit
184
+ end
185
+
186
+ def reset_fields
187
+ @name.value = ""
188
+ @training_type.set_string_selection "Simple"
189
+ @encumbrance_type.set_string_selection "Light"
190
+ @damage.set_string_selection "0D0"
191
+ @damage2.set_string_selection "0D0"
192
+ @damage_type.set_string_selection "Bludgeoning"
193
+ @critical.set_string_selection "x2"
194
+ @size.set_string_selection "Medium"
195
+ @cost.value = ""
196
+ @range.value = ""
197
+ @weight.value = ""
198
+ @sqs.each do |sq|
199
+ sq.set_value(0)
200
+ end
201
+ end
202
+
203
+ def load_button_event(event)
204
+ if @table.get_selected_rows.size != 1 then
205
+ Wx::MessageDialog.new(self,"Only Select 1 Row!", "Warning", Wx::OK).show_modal
206
+ else
207
+ weapon = Weapon.find_by_name(@table.get_cell_value(@table.get_selected_rows[0],0))
208
+ load_weapon(weapon)
209
+ end
210
+ end
211
+
212
+ def load_weapon(weapon)
213
+ @name.value = weapon.name
214
+ @training_type.set_string_selection weapon.training_type.name
215
+ @encumbrance_type.set_string_selection weapon.encumbrance_type.name
216
+ @damage.set_string_selection weapon.damage.to_s
217
+ @damage2.set_string_selection weapon.damage2.to_s
218
+ @damage_type.set_string_selection weapon.damage_type.name
219
+ @critical.set_string_selection weapon.critical.to_s
220
+ @size.set_string_selection weapon.size.name
221
+ @cost.value = weapon.cost.to_s
222
+ @range.value = weapon.range.to_s
223
+ @weight.value = weapon.weight.to_s
224
+ @sqs.each do |sq|
225
+ if weapon.has_quality?(sq.get_label) then
226
+ sq.set_value(1)
227
+ else
228
+ sq.set_value(0)
229
+ end
230
+ end
231
+ end
232
+ end
data/log/.keep_me ADDED
File without changes
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/armour'
3
+ require 'test/unit'
4
+
5
+ class MyArmourTest < Test::Unit::TestCase
6
+ def test_armours
7
+ armours = Armour.find(:all)
8
+ assert_not_equal(armours.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/character'
3
+ require 'test/unit'
4
+
5
+ class MyCharacterTest < Test::Unit::TestCase
6
+ def test_characters
7
+ characters = Character.find(:all)
8
+ assert_not_equal(characters.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/critical'
3
+ require 'test/unit'
4
+
5
+ class MyCriticalTest < Test::Unit::TestCase
6
+ def test_criticals
7
+ criticals = Critical.find(:all)
8
+ assert_not_equal(criticals.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/damage'
3
+ require 'test/unit'
4
+
5
+ class MyDamageTest < Test::Unit::TestCase
6
+ def test_damages
7
+ damages = Damage.find(:all)
8
+ assert_not_equal(damages.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/damage_type'
3
+ require 'test/unit'
4
+
5
+ class MyDamageTypeTest < Test::Unit::TestCase
6
+ def test_damage_types
7
+ damage_types = DamageType.find(:all)
8
+ assert_not_equal(damage_types.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/encumbrance_type'
3
+ require 'test/unit'
4
+
5
+ class MyEncumbranceTypeTest < Test::Unit::TestCase
6
+ def test_encumbrance_types
7
+ encumbrance_types = EncumbranceType.find(:all)
8
+ assert_not_equal(encumbrance_types.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/race'
3
+ require 'test/unit'
4
+
5
+ class MyRaceTest < Test::Unit::TestCase
6
+ def test_races
7
+ races = Race.find(:all)
8
+ assert_not_equal(races.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/size'
3
+ require 'test/unit'
4
+
5
+ class MySizeTest < Test::Unit::TestCase
6
+ def test_sizes
7
+ sizes = Size.find(:all)
8
+ assert_not_equal(sizes.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/training_type'
3
+ require 'test/unit'
4
+
5
+ class MyTrainingTypeTest < Test::Unit::TestCase
6
+ def test_training_types
7
+ training_types = TrainingType.find(:all)
8
+ assert_not_equal(training_types.size, 0)
9
+ end
10
+ end
@@ -0,0 +1,19 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/weapon'
3
+ require 'test/unit'
4
+
5
+ class MyWeaponTest < Test::Unit::TestCase
6
+ def test_weapons
7
+ weapons = Weapon.find(:all)
8
+ assert_not_equal(weapons.size, 0)
9
+ weapons.each do |weapon|
10
+ assert_not_equal(weapon.training_type, nil)
11
+ assert_not_equal(weapon.encumbrance_type, nil)
12
+ assert_not_equal(weapon.damage, nil)
13
+ assert_not_equal(weapon.damage_type, nil)
14
+ assert_not_equal(weapon.damage2, nil)
15
+ assert_not_equal(weapon.critical, nil)
16
+ assert_not_equal(weapon.size, nil)
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,10 @@
1
+ require 'lib/initdb'
2
+ require 'lib/models/weapon_special_quality'
3
+ require 'test/unit'
4
+
5
+ class MyWeaponSpecialQualityTest < Test::Unit::TestCase
6
+ def test_weapon_special_qualitys
7
+ weapon_special_qualitys = WeaponSpecialQuality.find(:all)
8
+ assert_not_equal(weapon_special_qualitys.size, 0)
9
+ end
10
+ end
metadata ADDED
@@ -0,0 +1,141 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: wxrcg
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Nevynxxx
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-10-14 00:00:00 +01:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: sqlite3-ruby
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: activerecord
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: wxruby-ruby19
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 2.0.0
44
+ version:
45
+ description: Describe your gem
46
+ email: nevyn@anferny.me.uk
47
+ executables:
48
+ - stats
49
+ - dm_screen
50
+ - weapon_add
51
+ extensions: []
52
+
53
+ extra_rdoc_files:
54
+ - LICENSE
55
+ - README.md
56
+ files:
57
+ - .gitignore
58
+ - LICENSE
59
+ - README.md
60
+ - Rakefile
61
+ - VERSION
62
+ - bin/dm_screen
63
+ - bin/stats
64
+ - bin/weapon_add
65
+ - config/database.yml
66
+ - db/development.sqlite
67
+ - db/development.sqlite3
68
+ - db/sqlite scripts/create_armours.sql
69
+ - db/sqlite scripts/create_categories.sql
70
+ - db/sqlite scripts/create_characters.sql
71
+ - db/sqlite scripts/create_races.sql
72
+ - db/sqlite scripts/create_weapons.sql
73
+ - db/sqlite scripts/critical.sql
74
+ - db/sqlite scripts/damage.sql
75
+ - db/sqlite scripts/damage_type.sql
76
+ - db/sqlite scripts/encumbrance_type.sql
77
+ - db/sqlite scripts/training_type.sql
78
+ - db/sqlite scripts/weapon_special_qualities_weapons.sql
79
+ - db/test.sqlite
80
+ - lib/character.old.rb
81
+ - lib/controllers/character_controller.rb
82
+ - lib/controllers/dm_screen_controller.rb
83
+ - lib/controllers/weapon_controller.rb
84
+ - lib/initdb.rb
85
+ - lib/models/armour.rb
86
+ - lib/models/character.rb
87
+ - lib/models/critical.rb
88
+ - lib/models/damage.rb
89
+ - lib/models/damage_type.rb
90
+ - lib/models/encumbrance_type.rb
91
+ - lib/models/race.rb
92
+ - lib/models/size.rb
93
+ - lib/models/training_type.rb
94
+ - lib/models/weapon.rb
95
+ - lib/models/weapon_special_quality.rb
96
+ - lib/views/abilities_frame.rb
97
+ - lib/views/char_select_dialog.rb
98
+ - lib/views/dm_screen_frame.rb
99
+ - lib/views/weapon_screen_frame.rb
100
+ - log/.keep_me
101
+ - tests/armour_model_test.rb
102
+ - tests/character_model_test.rb
103
+ - tests/critical_model_test.rb
104
+ - tests/damage_model_test.rb
105
+ - tests/damage_type_model_test.rb
106
+ - tests/encumbrance_type_model_test.rb
107
+ - tests/race_model_test.rb
108
+ - tests/size_model_test.rb
109
+ - tests/training_type_model_test.rb
110
+ - tests/weapon_model_test.rb
111
+ - tests/weapon_special_quality_model_test.rb
112
+ has_rdoc: true
113
+ homepage: http://codaset.com/nevynxxx/wxrcg#
114
+ licenses: []
115
+
116
+ post_install_message:
117
+ rdoc_options:
118
+ - --charset=UTF-8
119
+ require_paths:
120
+ - lib
121
+ required_ruby_version: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: "0"
126
+ version:
127
+ required_rubygems_version: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: "0"
132
+ version:
133
+ requirements: []
134
+
135
+ rubyforge_project:
136
+ rubygems_version: 1.3.5
137
+ signing_key:
138
+ specification_version: 3
139
+ summary: Some basic tools for helping DMs/players run PathfinderRPG games.
140
+ test_files: []
141
+