smash_and_grab 0.0.1alpha

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.
Files changed (93) hide show
  1. data/CHANGELOG.txt +0 -0
  2. data/Gemfile +4 -0
  3. data/Gemfile.lock +61 -0
  4. data/README.md +92 -0
  5. data/Rakefile +69 -0
  6. data/bin/smash_and_grab +3 -0
  7. data/bin/smash_and_grab.rbw +3 -0
  8. data/config/gui/schema.yml +61 -0
  9. data/config/levels/01_bank.sgl +0 -0
  10. data/config/map/entities.yml +373 -0
  11. data/config/map/objects.yml +14 -0
  12. data/config/map/tiles.yml +46 -0
  13. data/config/map/vehicles.yml +19 -0
  14. data/config/map/walls.yml +77 -0
  15. data/lib/smash_and_grab/abilities/ability.rb +104 -0
  16. data/lib/smash_and_grab/abilities/area.rb +37 -0
  17. data/lib/smash_and_grab/abilities/melee.rb +39 -0
  18. data/lib/smash_and_grab/abilities/move.rb +32 -0
  19. data/lib/smash_and_grab/abilities/ranged.rb +34 -0
  20. data/lib/smash_and_grab/abilities/sprint.rb +42 -0
  21. data/lib/smash_and_grab/abilities.rb +10 -0
  22. data/lib/smash_and_grab/fidgit_ext/container.rb +10 -0
  23. data/lib/smash_and_grab/fidgit_ext/cursor.rb +7 -0
  24. data/lib/smash_and_grab/fidgit_ext/element.rb +27 -0
  25. data/lib/smash_and_grab/game_window.rb +27 -0
  26. data/lib/smash_and_grab/gosu_ext/font.rb +39 -0
  27. data/lib/smash_and_grab/gui/editor_selector.rb +174 -0
  28. data/lib/smash_and_grab/gui/entity_summary.rb +58 -0
  29. data/lib/smash_and_grab/gui/info_panel.rb +105 -0
  30. data/lib/smash_and_grab/gui/minimap.rb +92 -0
  31. data/lib/smash_and_grab/history/action_history.rb +60 -0
  32. data/lib/smash_and_grab/history/editor_action_history.rb +21 -0
  33. data/lib/smash_and_grab/history/editor_actions/erase_object.rb +20 -0
  34. data/lib/smash_and_grab/history/editor_actions/place_object.rb +34 -0
  35. data/lib/smash_and_grab/history/editor_actions/set_tile_type.rb +18 -0
  36. data/lib/smash_and_grab/history/editor_actions/set_wall_type.rb +18 -0
  37. data/lib/smash_and_grab/history/game_action_history.rb +43 -0
  38. data/lib/smash_and_grab/history/game_actions/ability.rb +26 -0
  39. data/lib/smash_and_grab/history/game_actions/end_turn.rb +18 -0
  40. data/lib/smash_and_grab/log.rb +30 -0
  41. data/lib/smash_and_grab/main.rb +75 -0
  42. data/lib/smash_and_grab/map/faction.rb +84 -0
  43. data/lib/smash_and_grab/map/map.rb +262 -0
  44. data/lib/smash_and_grab/map/tile.rb +181 -0
  45. data/lib/smash_and_grab/map/wall.rb +139 -0
  46. data/lib/smash_and_grab/mouse_selection.rb +154 -0
  47. data/lib/smash_and_grab/objects/entity.rb +359 -0
  48. data/lib/smash_and_grab/objects/floating_text.rb +27 -0
  49. data/lib/smash_and_grab/objects/static.rb +47 -0
  50. data/lib/smash_and_grab/objects/vehicle.rb +100 -0
  51. data/lib/smash_and_grab/objects/world_object.rb +94 -0
  52. data/lib/smash_and_grab/path.rb +147 -0
  53. data/lib/smash_and_grab/players/player.rb +71 -0
  54. data/lib/smash_and_grab/sprite_sheet.rb +16 -0
  55. data/lib/smash_and_grab/states/edit_level.rb +180 -0
  56. data/lib/smash_and_grab/states/main_menu.rb +71 -0
  57. data/lib/smash_and_grab/states/play_level.rb +148 -0
  58. data/lib/smash_and_grab/states/world.rb +216 -0
  59. data/lib/smash_and_grab/std_ext/array.rb +18 -0
  60. data/lib/smash_and_grab/std_ext/hash.rb +18 -0
  61. data/lib/smash_and_grab/texplay_ext/color.rb +7 -0
  62. data/lib/smash_and_grab/texplay_ext/image.rb +146 -0
  63. data/lib/smash_and_grab/texplay_ext/window.rb +10 -0
  64. data/lib/smash_and_grab/version.rb +3 -0
  65. data/lib/smash_and_grab/z_order.rb +12 -0
  66. data/lib/smash_and_grab/z_order_recorder.rb +59 -0
  67. data/lib/smash_and_grab.rb +107 -0
  68. data/media/fonts/UnmaskedBB.ttf +0 -0
  69. data/media/fonts/fontinfo.txt +25 -0
  70. data/media/icon.ico +0 -0
  71. data/media/images/entities.png +0 -0
  72. data/media/images/entity_portraits.png +0 -0
  73. data/media/images/floor_tiles.png +0 -0
  74. data/media/images/mouse_cursor.png +0 -0
  75. data/media/images/mouse_hover.png +0 -0
  76. data/media/images/mouse_hover_wall.png +0 -0
  77. data/media/images/objects.png +0 -0
  78. data/media/images/path.png +0 -0
  79. data/media/images/tile_selection.png +0 -0
  80. data/media/images/vehicles.png +0 -0
  81. data/media/images/walls.png +0 -0
  82. data/smash_and_grab.gemspec +35 -0
  83. data/test/smash_and_grab/abilities/helpers/ability_helper.rb +6 -0
  84. data/test/smash_and_grab/abilities/melee_test.rb +105 -0
  85. data/test/smash_and_grab/abilities/move_test.rb +87 -0
  86. data/test/smash_and_grab/abilities/sprint_test.rb +75 -0
  87. data/test/smash_and_grab/map/faction_test.rb +62 -0
  88. data/test/smash_and_grab/map/map_test.rb +114 -0
  89. data/test/smash_and_grab/map/tile_test.rb +17 -0
  90. data/test/smash_and_grab/map/wall_test.rb +5 -0
  91. data/test/smash_and_grab/std_ext/hash_test.rb +21 -0
  92. data/test/teststrap.rb +108 -0
  93. metadata +226 -0
data/CHANGELOG.txt ADDED
File without changes
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source :rubygems
2
+
3
+ gemspec
4
+
data/Gemfile.lock ADDED
@@ -0,0 +1,61 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ smash_and_grab (0.0.1alpha)
5
+ chingu (~> 0.9rc7)
6
+ fidgit (~> 0.1.10)
7
+ gosu (~> 0.7.41)
8
+ texplay (~> 0.3)
9
+
10
+ GEM
11
+ remote: http://rubygems.org/
12
+ specs:
13
+ bacon (1.1.0)
14
+ bacon-rr (0.1.0)
15
+ bacon (>= 1.1.0)
16
+ rr (>= 1.0)
17
+ chingu (0.9rc7)
18
+ gosu (>= 0.7.33)
19
+ gosu (>= 0.7.33)
20
+ clipboard (0.9.9)
21
+ cri (2.1.0)
22
+ faster_xml_simple (0.5.0)
23
+ libxml-ruby (>= 0.3.8.4)
24
+ ffi (1.0.9-x86-mingw32)
25
+ fidgit (0.1.10)
26
+ chingu (~> 0.9rc7)
27
+ clipboard (~> 0.9.9)
28
+ ffi (= 1.0.9)
29
+ gosu (~> 0.7.33)
30
+ gosu (0.7.41-x86-mingw32)
31
+ httpclient (2.2.4)
32
+ json (1.6.5)
33
+ libxml-ruby (2.2.2-x86-mingw32)
34
+ net-github-upload (0.0.8)
35
+ faster_xml_simple
36
+ httpclient
37
+ json
38
+ nokogiri (>= 1.4.0)
39
+ nokogiri (1.5.0-x86-mingw32)
40
+ ocra (1.3.0)
41
+ rake (0.9.2.2)
42
+ releasy (0.2.2)
43
+ cri (~> 2.1.0)
44
+ net-github-upload (~> 0.0.8)
45
+ ocra (~> 1.3.0)
46
+ rake (~> 0.9.2.2)
47
+ thor (~> 0.14.6)
48
+ rr (1.0.4)
49
+ texplay (0.3.5-x86-mingw32)
50
+ gosu (>= 0.7.25)
51
+ thor (0.14.6)
52
+
53
+ PLATFORMS
54
+ ruby
55
+ x86-mingw32
56
+
57
+ DEPENDENCIES
58
+ bacon-rr (~> 0.1.0)
59
+ rake (~> 0.9.2.2)
60
+ releasy (~> 0.2.2)
61
+ smash_and_grab!
data/README.md ADDED
@@ -0,0 +1,92 @@
1
+ Smash and Grab
2
+ ==============
3
+
4
+ * [Website](http://spooner.github.com/games/smash_and_grab/)
5
+ * The game was developed by Spooner (Bil Bas) bil.bagpuss@gmail.com
6
+
7
+ Description
8
+ -----------
9
+
10
+ _Smash and Grab!_ is a retro isometric supervillainous turn-based hiest game.
11
+
12
+ Requirements
13
+ ------------
14
+
15
+ ### Windows
16
+
17
+ If running <tt>smash_and_grab.exe</tt>, there are no other requirements.
18
+
19
+ ### OS X
20
+
21
+ If running OS X, use the executable (<tt>SmashAndGrab.app</tt>), which has no dependencies.
22
+
23
+ ### Source for Linux (or Windows/OS X if not using the executable)
24
+
25
+ If running from source, users must install the Ruby interpreter and some rubygems. Linux users must also install some "extra dependencies](https://github.com/jlnr/gosu/wiki/Getting-Started-on-Linux for Gosu.
26
+
27
+ #### Dependencies
28
+
29
+ * Ruby 1.9.2 (Install via package manager or rvm). Ruby 1.9.3 recommended though, since loading is significantly faster.
30
+ ** Gosu gem 0.7.32 (Dependencies: "Linux only](https://github.com/jlnr/gosu/wiki/Getting-Started-on-Linux)
31
+ ** A number of other rubygems, which can be installed automatically using Bundler (see below).
32
+ ** Linux Only: <tt>xsel</tt> or <tt>xcopy</tt> command to allow access to the system clipboard:
33
+ <pre> sudo apt-get install xsel</pre>
34
+
35
+ #### Using Bundler to install gems
36
+
37
+ If the Bundler gem isn't already installed, that can be installed with:
38
+
39
+ <pre>
40
+ gem install bundler --no-ri --no-rdoc
41
+ </pre>
42
+
43
+ In the game's main directory (with <tt>Gemfile</tt> in it), use Bundler to automatically install the correct gem versions:
44
+
45
+ <pre>
46
+ bundle install
47
+ </pre>
48
+
49
+ #### Running the game
50
+
51
+ May need to use <tt>ruby19</tt> rather than <tt>ruby</tt>. Depends how you installed Ruby!
52
+
53
+ <pre>
54
+ ruby bin/smash_and_grab.rbw
55
+ </pre>
56
+
57
+ How to Play
58
+ -----------
59
+
60
+ Move your supervillains around until you win!
61
+
62
+ ### Implemented game features
63
+
64
+ * Scroll map with keyboard arrows; zoom with mouse wheel.
65
+ * Your Villains can move around.
66
+ * Your Villains can melee with enemies (Goodies or Bystanders).
67
+ * You can activate _Sprint_ ability to give a Villain extra movement (sacrificing all actions for that turn).
68
+ * Goodies and Bystanders will take a turn (very trivial AI) when you end yours.
69
+ * Editor works, but some bugs with placing Vehicles over other objects.
70
+ * Saving/loading (F5/F6) of state in Editor & Game.
71
+ * Undo/Redo (Ctrl-Z/Ctrl-Shift-Z)support in both Editor and Game (can't take back attacks though, since they are non-deterministic).
72
+
73
+ Credits
74
+ -------
75
+
76
+ Many thanks to:
77
+
78
+ * Kaiserbill and SiliconEidolon for epic brainstorming sessions.
79
+ * Kaiserbill, SiliconEidolon and Tomislav Uzelac and for play-testing and feedback.
80
+
81
+ Third party tools and assets used
82
+ ---------------------------------
83
+
84
+ * Original music by [Maverick (Brian Peppers)](http://polyhedricpeppers.weebly.com/). [![http://i.creativecommons.org/l/by-sa/3.0/88x31.png](CC BY-SA)](http://creativecommons.org/licenses/by-sa/3.0/)
85
+ * Original sprites created with [GIMP](http://www.gimp.org/) and Graphics Gale [Free Edition]
86
+ * Sound effects created using [bfxr](http://www.bfxr.net/) and converted using [Audacity](http://audacity.sourceforge.net/
87
+ * [Unmasked font](http://www.blambot.com/font_unmasked.shtml) by "Nate Piekos" [Free for personal use]
88
+ * [Gosu](http://libgosu.org/) game development library
89
+ * [Chingu](http://ippa.se/chingu) game library (extending Gosu)
90
+ * [Fidgit](https://github.com/Spooner/fidgit) gui library (extending Chingu)
91
+ * [Texplay](http://banisterfiend.wordpress.com/2008/08/23/texplay-an-image-manipulation-tool-for-ruby-and-gosu/ image manipulation library for Gosu.
92
+ * [R18n](http://r18n.rubyforge.org/) i18n library
data/Rakefile ADDED
@@ -0,0 +1,69 @@
1
+ Config = RbConfig if RUBY_VERSION > '1.9.2' # Hack to allow stuff that isn't compatible with 1.9.3 to work.
2
+
3
+ require 'bundler/setup'
4
+ require 'rake/clean'
5
+ require 'rake/testtask'
6
+ require 'releasy'
7
+
8
+ require_relative "lib/smash_and_grab/version"
9
+
10
+ CLEAN.include("*.log")
11
+ CLOBBER.include("doc/**/*")
12
+
13
+ require_relative 'build/outline_images'
14
+ require_relative 'build/create_portraits'
15
+
16
+ Releasy::Project.new do
17
+ name "Smash and Grab"
18
+ version SmashAndGrab::VERSION
19
+ executable "bin/smash_and_grab.rbw"
20
+ files `git ls-files`.split("\n")
21
+ files.exclude %w[.gitignore build/**/*.* raw_media/**/*.* saves/**/*.* test/**/*.*]
22
+ exposed_files %w[README.txt]
23
+ add_link "http://spooner.github.com/games/smash_and_grab", "Smash and Grab website"
24
+ exclude_encoding
25
+
26
+ add_build :osx_app do
27
+ wrapper "../releasy/wrappers/gosu-mac-wrapper-0.7.41.tar.gz"
28
+ url "com.github.spooner.games.smash_and_grab"
29
+ icon "media/icon.icns"
30
+ add_package :tar_gz
31
+ end
32
+
33
+ add_build :source do
34
+ add_package :zip
35
+ end
36
+
37
+ add_build :windows_folder do
38
+ icon "media/icon.ico"
39
+ add_package :exe
40
+ end
41
+
42
+ add_build :windows_installer do
43
+ icon "media/icon.ico"
44
+ start_menu_group "Spooner Games"
45
+ readme "README.html"
46
+ add_package :zip
47
+ end
48
+
49
+ add_deploy :local do
50
+ path "C:/users/spooner/dropbox/Public/games/smash_and_grab"
51
+ end
52
+ end
53
+
54
+ namespace :gem do
55
+ Bundler::GemHelper.install_tasks
56
+ end
57
+
58
+ desc "Generate Yard docs."
59
+ task :yard do
60
+ system "yard doc lib"
61
+ end
62
+
63
+ desc "test"
64
+ task :test do
65
+ system "bacon test/**/*_test.rb --quiet"
66
+ end
67
+
68
+ task default: :test
69
+
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require_relative "../lib/smash_and_grab"
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require_relative "../lib/smash_and_grab"
@@ -0,0 +1,61 @@
1
+ ---
2
+ :constants:
3
+ :blue_white: [224, 224, 255]
4
+ :very_dark_blue: [0, 0, 100]
5
+ :dark_blue: [50, 50, 150]
6
+ :light_blue: [150, 150, 255]
7
+
8
+ :elements:
9
+ :Element:
10
+ :font_name: UnmaskedBB.ttf
11
+ :font_height: 24
12
+ :color: ?blue_white
13
+ :background_color: ?none
14
+ :border_color: ?light_blue
15
+
16
+ :Button:
17
+ :disabled:
18
+ :background_color: ?very_dark_blue
19
+ :border_color: ?dark_blue
20
+ :hover:
21
+ :background_color: ?light_blue
22
+
23
+ :Packer:
24
+ :spacing_h: 8
25
+ :spacing_v: 8
26
+ :padding_left: 16
27
+ :padding_right: 16
28
+ :padding_top: 12
29
+ :padding_bottom: 18
30
+
31
+ :Button:
32
+ :border_thickness: 2
33
+ :padding_left: 12
34
+ :padding_right: 12
35
+ :padding_top: 4
36
+ :padding_bottom: 4
37
+ :background_color: ?dark_blue
38
+
39
+ :ComboBox:
40
+ :border_thickness: 0
41
+
42
+ :MenuPane::Item:
43
+ :padding_top: 0.4
44
+ :padding_bottom: 0.4
45
+
46
+ :ToolTip:
47
+ :font_height: 16
48
+ :padding_top: 4
49
+ :padding_bottom: 4
50
+ :background_color: ?very_dark_blue
51
+
52
+ :TextArea:
53
+ :color: ?blue_white
54
+ :background_color: ?very_dark_blue
55
+
56
+ :ScrollBar: # < Composite
57
+ :rail_width: 20
58
+
59
+ :ScrollWindow: # < Composite
60
+ :scroll_bar_thickness: 20
61
+
Binary file
@@ -0,0 +1,373 @@
1
+ ---
2
+
3
+ # === ENTITIES CONFIG ===
4
+ # Entities are mobile people and creatures, which can be moved by player/AI.
5
+
6
+ # === BADDIES ===
7
+
8
+ # - Supervillains -
9
+
10
+ :green_goddess:
11
+ :faction: :baddies
12
+ :spritesheet_position: [5, 4]
13
+ :movement_points: 10
14
+ :action_points: 3
15
+ :health: 8
16
+ :abilities:
17
+ -
18
+ :type: :melee
19
+ :skill: 4
20
+ -
21
+ :type: :ranged
22
+ :skill: 1
23
+ :range: 3
24
+ :action_cost: 2
25
+ -
26
+ :type: :sprint
27
+ :skill: 4
28
+
29
+
30
+ :octobrain: # Scientist with giant brain.
31
+ :faction: :baddies
32
+ :spritesheet_position: [7, 3]
33
+ :movement_points: 6
34
+ :action_points: 1
35
+ :health: 5
36
+ :abilities:
37
+ -
38
+ :type: :melee
39
+ :skill: 1
40
+
41
+ :femme_fatale: # Woman in red dress.
42
+ :faction: :baddies
43
+ :spritesheet_position: [7, 1]
44
+ :movement_points: 8
45
+ :action_points: 2
46
+ :health: 8
47
+ :abilities:
48
+ -
49
+ :type: :melee
50
+ :skill: 2
51
+ -
52
+ :type: :sprint
53
+ :skill: 2
54
+
55
+ :radioactive_gorilla:
56
+ :faction: :baddies
57
+ :spritesheet_position: [1, 4]
58
+ :movement_points: 8
59
+ :action_points: 3
60
+ :health: 15
61
+ :abilities:
62
+ -
63
+ :type: :melee
64
+ :skill: 5
65
+ -
66
+ :type: :sprint
67
+ :skill: 1
68
+
69
+ :robot:
70
+ :faction: :baddies
71
+ :spritesheet_position: [0, 4]
72
+ :movement_points: 5
73
+ :action_points: 3
74
+ :health: 10
75
+ :abilities:
76
+ -
77
+ :type: :melee
78
+ :skill: 4
79
+ :action_cost: 1
80
+ -
81
+ :type: :sprint
82
+ :skill: 1
83
+
84
+ :artist:
85
+ :faction: :baddies
86
+ :spritesheet_position: [3, 2]
87
+ :movement_points: 8
88
+ :action_points: 2
89
+ :health: 10
90
+ :abilities:
91
+ -
92
+ :type: :melee
93
+ :skill: 2
94
+ -
95
+ :type: :sprint
96
+ :skill: 3
97
+
98
+ :invisible_man:
99
+ :faction: :baddies
100
+ :spritesheet_position: [7, 4]
101
+ :movement_points: 7
102
+ :action_points: 1
103
+ :health: 10
104
+ :abilities:
105
+ -
106
+ :type: :melee
107
+ :skill: 2
108
+ -
109
+ :type: :sprint
110
+ :skill: 3
111
+
112
+ :professor_goggles:
113
+ :faction: :baddies
114
+ :spritesheet_position: [2, 4]
115
+ :movement_points: 7
116
+ :action_points: 1
117
+ :health: 8
118
+ :abilities:
119
+ -
120
+ :type: :melee
121
+ :skill: 2
122
+ -
123
+ :type: :sprint
124
+ :skill: 2
125
+
126
+ # - Minions -
127
+
128
+ # === GOODIES ===
129
+
130
+ # - Cops, G-men and Soldiers -
131
+
132
+ :cop_with_gun:
133
+ :faction: :goodies
134
+ :spritesheet_position: [0, 0]
135
+ :movement_points: 8
136
+ :action_points: 1
137
+ :health: 5
138
+ :abilities:
139
+ -
140
+ :type: :melee
141
+ :skill: 1
142
+ -
143
+ :type: :sprint
144
+ :skill: 2
145
+
146
+ :g_man_coat_with_gun:
147
+ :faction: :goodies
148
+ :spritesheet_position: [5, 0]
149
+ :movement_points: 8
150
+ :action_points: 1
151
+ :health: 5
152
+ :abilities:
153
+ -
154
+ :type: :melee
155
+ :skill: 2
156
+ -
157
+ :type: :sprint
158
+ :skill: 2
159
+
160
+ :g_man_shirt_with_gun:
161
+ :faction: :goodies
162
+ :spritesheet_position: [6, 0]
163
+ :movement_points: 8
164
+ :action_points: 1
165
+ :health: 5
166
+ :abilities:
167
+ -
168
+ :type: :melee
169
+ :skill: 2
170
+ -
171
+ :type: :sprint
172
+ :skill: 2
173
+
174
+ :soldier_with_gun:
175
+ :faction: :goodies
176
+ :spritesheet_position: [3, 0]
177
+ :movement_points: 8
178
+ :action_points: 1
179
+ :health: 5
180
+ :abilities:
181
+ -
182
+ :type: :melee
183
+ :skill: 1
184
+ -
185
+ :type: :sprint
186
+ :skill: 2
187
+
188
+ :soldier_with_bazooka:
189
+ :faction: :goodies
190
+ :spritesheet_position: [4, 0]
191
+ :movement_points: 6
192
+ :action_points: 1
193
+ :health: 5
194
+ :abilities:
195
+ -
196
+ :type: :melee
197
+ :skill: 1
198
+
199
+ # - Superheroes -
200
+
201
+ :catman:
202
+ :faction: :goodies
203
+ :spritesheet_position: [4, 1]
204
+ :movement_points: 10
205
+ :action_points: 2
206
+ :health: 8
207
+ :abilities:
208
+ -
209
+ :type: :melee
210
+ :skill: 3
211
+ -
212
+ :type: :sprint
213
+ :skill: 5
214
+
215
+ :femme_fatale2: # Woman in green dress.
216
+ :faction: :goodies
217
+ :spritesheet_position: [6, 1]
218
+ :movement_points: 8
219
+ :action_points: 2
220
+ :health: 8
221
+ :abilities:
222
+ -
223
+ :type: :melee
224
+ :skill: 2
225
+ -
226
+ :type: :sprint
227
+ :skill: 2
228
+
229
+ :homerun: # Baseball player
230
+ :faction: :goodies
231
+ :spritesheet_position: [2, 2]
232
+ :movement_points: 10
233
+ :action_points: 2
234
+ :health: 10
235
+ :abilities:
236
+ -
237
+ :type: :melee
238
+ :skill: 4
239
+ -
240
+ :type: :sprint
241
+ :skill: 4
242
+
243
+ :moleman:
244
+ :faction: :goodies
245
+ :spritesheet_position: [0, 2]
246
+ :movement_points: 7
247
+ :action_points: 2
248
+ :health: 12
249
+ :abilities:
250
+ -
251
+ :type: :melee
252
+ :skill: 2
253
+ -
254
+ :type: :sprint
255
+ :skill: 1
256
+
257
+ :mountie: # Canadian Mountie.
258
+ :faction: :goodies
259
+ :spritesheet_position: [0, 5]
260
+ :movement_points: 8
261
+ :action_points: 2
262
+ :health: 10
263
+ :abilities:
264
+ -
265
+ :type: :melee
266
+ :skill: 3
267
+ -
268
+ :type: :sprint
269
+ :skill: 2
270
+
271
+ :spandexman: # Guy in red spandex.
272
+ :faction: :goodies
273
+ :spritesheet_position: [3, 1]
274
+ :movement_points: 8
275
+ :action_points: 3
276
+ :health: 15
277
+ :abilities:
278
+ -
279
+ :type: :melee
280
+ :skill: 4
281
+ -
282
+ :type: :sprint
283
+ :skill: 3
284
+
285
+ :stinger: # Wasp-lady
286
+ :faction: :goodies
287
+ :spritesheet_position: [1, 2]
288
+ :movement_points: 8
289
+ :action_points: 2
290
+ :health: 10
291
+ :abilities:
292
+ -
293
+ :type: :melee
294
+ :skill: 3
295
+ -
296
+ :type: :sprint
297
+ :skill: 3
298
+
299
+ :knockout: # Boxer.
300
+ :faction: :goodies
301
+ :spritesheet_position: [5, 1]
302
+ :movement_points: 8
303
+ :action_points: 3
304
+ :health: 10
305
+ :abilities:
306
+ -
307
+ :type: :melee
308
+ :skill: 5
309
+ -
310
+ :type: :sprint
311
+ :skill: 2
312
+
313
+ # === BYSTANDERS ===
314
+
315
+ # - Newspaper -
316
+
317
+ :boy_selling_papers:
318
+ :faction: :bystanders
319
+ :spritesheet_position: [6, 4]
320
+ :movement_points: 7
321
+ :action_points: 0
322
+ :health: 1
323
+ :abilities: []
324
+
325
+ :editor:
326
+ :faction: :bystanders
327
+ :spritesheet_position: [5, 2]
328
+ :movement_points: 6
329
+ :action_points: 0
330
+ :health: 2
331
+ :abilities: []
332
+
333
+ :photographer:
334
+ :faction: :bystanders
335
+ :spritesheet_position: [7, 0]
336
+ :movement_points: 8
337
+ :action_points: 0
338
+ :health: 2
339
+ :abilities: []
340
+
341
+ :reporter:
342
+ :faction: :bystanders
343
+ :spritesheet_position: [0, 1]
344
+ :movement_points: 8
345
+ :action_points: 0
346
+ :health: 2
347
+ :abilities: []
348
+
349
+ # - Other innocents and children
350
+
351
+ :assistant:
352
+ :faction: :bystanders
353
+ :spritesheet_position: [3, 4]
354
+ :movement_points: 8
355
+ :action_points: 0
356
+ :health: 2
357
+ :abilities: []
358
+
359
+ :boy_with_slingshot:
360
+ :faction: :bystanders
361
+ :spritesheet_position: [1, 1]
362
+ :movement_points: 7
363
+ :action_points: 0
364
+ :health: 2
365
+ :abilities: []
366
+
367
+ :girl_with_balloon:
368
+ :faction: :bystanders
369
+ :spritesheet_position: [2, 1]
370
+ :movement_points: 7
371
+ :action_points: 0
372
+ :health: 2
373
+ :abilities: []
@@ -0,0 +1,14 @@
1
+ ---
2
+
3
+ # === OBJECTS CONFIG ===
4
+ # Objects are immobile, and cannot be controlled by the player/AI.
5
+
6
+ :bag_of_cash:
7
+ :spritesheet_position: [1, 0]
8
+ :minimap_color: [255, 255, 255]
9
+ :passable: true
10
+
11
+ :tree:
12
+ :spritesheet_position: [0, 0]
13
+ :minimap_color: [50, 100, 50]
14
+ :passable: false