UG_RRobots 1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/rrobots +202 -0
- data/bin/tournament +413 -0
- data/config/rrobots.yml +15 -0
- data/contribs/allbots.rb +0 -0
- data/doc/manual.rdoc +126 -0
- data/doc/manual_fr.rdoc +129 -0
- data/images/explosion00.gif +0 -0
- data/images/explosion01.gif +0 -0
- data/images/explosion02.gif +0 -0
- data/images/explosion03.gif +0 -0
- data/images/explosion04.gif +0 -0
- data/images/explosion05.gif +0 -0
- data/images/explosion06.gif +0 -0
- data/images/explosion07.gif +0 -0
- data/images/explosion08.gif +0 -0
- data/images/explosion09.gif +0 -0
- data/images/explosion10.gif +0 -0
- data/images/explosion11.gif +0 -0
- data/images/explosion12.gif +0 -0
- data/images/explosion13.gif +0 -0
- data/images/explosion14.gif +0 -0
- data/images/red_body000.gif +0 -0
- data/images/red_body010.gif +0 -0
- data/images/red_body020.gif +0 -0
- data/images/red_body030.gif +0 -0
- data/images/red_body040.gif +0 -0
- data/images/red_body050.gif +0 -0
- data/images/red_body060.gif +0 -0
- data/images/red_body070.gif +0 -0
- data/images/red_body080.gif +0 -0
- data/images/red_body090.gif +0 -0
- data/images/red_body100.gif +0 -0
- data/images/red_body110.gif +0 -0
- data/images/red_body120.gif +0 -0
- data/images/red_body130.gif +0 -0
- data/images/red_body140.gif +0 -0
- data/images/red_body150.gif +0 -0
- data/images/red_body160.gif +0 -0
- data/images/red_body170.gif +0 -0
- data/images/red_body180.gif +0 -0
- data/images/red_body190.gif +0 -0
- data/images/red_body200.gif +0 -0
- data/images/red_body210.gif +0 -0
- data/images/red_body220.gif +0 -0
- data/images/red_body230.gif +0 -0
- data/images/red_body240.gif +0 -0
- data/images/red_body250.gif +0 -0
- data/images/red_body260.gif +0 -0
- data/images/red_body270.gif +0 -0
- data/images/red_body280.gif +0 -0
- data/images/red_body290.gif +0 -0
- data/images/red_body300.gif +0 -0
- data/images/red_body310.gif +0 -0
- data/images/red_body320.gif +0 -0
- data/images/red_body330.gif +0 -0
- data/images/red_body340.gif +0 -0
- data/images/red_body350.gif +0 -0
- data/images/red_radar000.gif +0 -0
- data/images/red_radar010.gif +0 -0
- data/images/red_radar020.gif +0 -0
- data/images/red_radar030.gif +0 -0
- data/images/red_radar040.gif +0 -0
- data/images/red_radar050.gif +0 -0
- data/images/red_radar060.gif +0 -0
- data/images/red_radar070.gif +0 -0
- data/images/red_radar080.gif +0 -0
- data/images/red_radar090.gif +0 -0
- data/images/red_radar100.gif +0 -0
- data/images/red_radar110.gif +0 -0
- data/images/red_radar120.gif +0 -0
- data/images/red_radar130.gif +0 -0
- data/images/red_radar140.gif +0 -0
- data/images/red_radar150.gif +0 -0
- data/images/red_radar160.gif +0 -0
- data/images/red_radar170.gif +0 -0
- data/images/red_radar180.gif +0 -0
- data/images/red_radar190.gif +0 -0
- data/images/red_radar200.gif +0 -0
- data/images/red_radar210.gif +0 -0
- data/images/red_radar220.gif +0 -0
- data/images/red_radar230.gif +0 -0
- data/images/red_radar240.gif +0 -0
- data/images/red_radar250.gif +0 -0
- data/images/red_radar260.gif +0 -0
- data/images/red_radar270.gif +0 -0
- data/images/red_radar280.gif +0 -0
- data/images/red_radar290.gif +0 -0
- data/images/red_radar300.gif +0 -0
- data/images/red_radar310.gif +0 -0
- data/images/red_radar320.gif +0 -0
- data/images/red_radar330.gif +0 -0
- data/images/red_radar340.gif +0 -0
- data/images/red_radar350.gif +0 -0
- data/images/red_turret000.gif +0 -0
- data/images/red_turret010.gif +0 -0
- data/images/red_turret020.gif +0 -0
- data/images/red_turret030.gif +0 -0
- data/images/red_turret040.gif +0 -0
- data/images/red_turret050.gif +0 -0
- data/images/red_turret060.gif +0 -0
- data/images/red_turret070.gif +0 -0
- data/images/red_turret080.gif +0 -0
- data/images/red_turret090.gif +0 -0
- data/images/red_turret100.gif +0 -0
- data/images/red_turret110.gif +0 -0
- data/images/red_turret120.gif +0 -0
- data/images/red_turret130.gif +0 -0
- data/images/red_turret140.gif +0 -0
- data/images/red_turret150.gif +0 -0
- data/images/red_turret160.gif +0 -0
- data/images/red_turret170.gif +0 -0
- data/images/red_turret180.gif +0 -0
- data/images/red_turret190.gif +0 -0
- data/images/red_turret200.gif +0 -0
- data/images/red_turret210.gif +0 -0
- data/images/red_turret220.gif +0 -0
- data/images/red_turret230.gif +0 -0
- data/images/red_turret240.gif +0 -0
- data/images/red_turret250.gif +0 -0
- data/images/red_turret260.gif +0 -0
- data/images/red_turret270.gif +0 -0
- data/images/red_turret280.gif +0 -0
- data/images/red_turret290.gif +0 -0
- data/images/red_turret300.gif +0 -0
- data/images/red_turret310.gif +0 -0
- data/images/red_turret320.gif +0 -0
- data/images/red_turret330.gif +0 -0
- data/images/red_turret340.gif +0 -0
- data/images/red_turret350.gif +0 -0
- data/images/toolbox.gif +0 -0
- data/lib/battlefield.rb +102 -0
- data/lib/bullets.rb +39 -0
- data/lib/configuration.rb +26 -0
- data/lib/explosions.rb +20 -0
- data/lib/overloads.rb +10 -0
- data/lib/robot.rb +122 -0
- data/lib/robotrunner.rb +260 -0
- data/lib/tkarena.rb +197 -0
- data/lib/toolboxes.rb +28 -0
- data/robots/BillDuck.rb +92 -0
- data/robots/BotOne.rb +39 -0
- data/robots/DuckBill.rb +384 -0
- data/robots/DuckBill04.rb +330 -0
- data/robots/DuckToEndAllDucks.rb +140 -0
- data/robots/EdgeBot.rb +203 -0
- data/robots/HuntingDuck.rb +74 -0
- data/robots/HyperactiveDuck.rb +15 -0
- data/robots/Killer.rb +58 -0
- data/robots/Kite.rb +193 -0
- data/robots/KoDuck.rb +57 -0
- data/robots/LinearShooter.rb +279 -0
- data/robots/LuckyDuck.rb +83 -0
- data/robots/MoxonoM.rb +85 -0
- data/robots/MsgBot.rb +13 -0
- data/robots/NervousDuck.rb +13 -0
- data/robots/Polisher.rb +15 -0
- data/robots/RomBot.rb +514 -0
- data/robots/RoomPainter.rb +205 -0
- data/robots/Rrrkele.rb +48 -0
- data/robots/Seeker.rb +57 -0
- data/robots/ShootingStation.rb +15 -0
- data/robots/SittingDuck.rb +18 -0
- data/robots/SniperDuck.rb +277 -0
- data/robots/WallPainter.rb +224 -0
- metadata +220 -0
@@ -0,0 +1,224 @@
|
|
1
|
+
# WallPainter
|
2
|
+
# written by Jannis Harder (jix) in 2005
|
3
|
+
|
4
|
+
require 'robot'
|
5
|
+
|
6
|
+
# avoid clashes with other state robots
|
7
|
+
|
8
|
+
module WallPainterTools
|
9
|
+
|
10
|
+
# a state based robot
|
11
|
+
class StateRobot
|
12
|
+
include Robot
|
13
|
+
|
14
|
+
def initialize(*)
|
15
|
+
super
|
16
|
+
@mode = :idle
|
17
|
+
@sec_modes = []
|
18
|
+
init
|
19
|
+
end
|
20
|
+
|
21
|
+
# set mode for next tick
|
22
|
+
def next_mode new_mode
|
23
|
+
if has_mode? new_mode
|
24
|
+
@mode = new_mode
|
25
|
+
else
|
26
|
+
warn "Robot #{self.class} switched to unknown mode :#{new_mode}!"
|
27
|
+
@mode = :idle
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# activate a secondary mode
|
32
|
+
def add_sec_mode new_mode
|
33
|
+
if has_mode? new_mode
|
34
|
+
@sec_modes << new_mode
|
35
|
+
else
|
36
|
+
warn "Robot #{self.class} switched to unknown secondary mode :#{new_mode}!"
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
# activate some secondary modes
|
41
|
+
def add_sec_modes *modes
|
42
|
+
modes.flatten.each do |new_mode|
|
43
|
+
add_sec_mode new_mode
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# deactivate a secondary mode
|
48
|
+
def del_sec_mode old_mode
|
49
|
+
@sec_modes.delete old_mode
|
50
|
+
end
|
51
|
+
|
52
|
+
# deactivate some secondary modes
|
53
|
+
def del_sec_modes *modes
|
54
|
+
modes.flatten.each do |old_mode|
|
55
|
+
del_sec_mode old_mode
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
# test for a mode
|
60
|
+
def has_mode? new_mode
|
61
|
+
respond_to? new_mode.to_s<<'_tick'
|
62
|
+
end
|
63
|
+
|
64
|
+
# set new mode and tick it once
|
65
|
+
def mode new_mode
|
66
|
+
next_mode new_mode
|
67
|
+
tick @events
|
68
|
+
end
|
69
|
+
|
70
|
+
# tick a mode
|
71
|
+
def tick_mode temp_mode
|
72
|
+
send temp_mode.to_s<<'_tick'
|
73
|
+
end
|
74
|
+
|
75
|
+
# default tick
|
76
|
+
def idle_tick
|
77
|
+
end
|
78
|
+
|
79
|
+
# processing
|
80
|
+
def tick events
|
81
|
+
@events = events
|
82
|
+
tick_mode @mode
|
83
|
+
@sec_modes.each do |smode|
|
84
|
+
tick_mode smode
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
|
89
|
+
attr_reader :events
|
90
|
+
|
91
|
+
end
|
92
|
+
|
93
|
+
end
|
94
|
+
|
95
|
+
class WallPainter < WallPainterTools::StateRobot
|
96
|
+
|
97
|
+
def init
|
98
|
+
next_mode :find_wall
|
99
|
+
add_sec_modes :aim, :scan, :fire
|
100
|
+
@scan_range = 2
|
101
|
+
@tracking = 0
|
102
|
+
@fire = [nil]*2
|
103
|
+
@flip_flop = true
|
104
|
+
end
|
105
|
+
|
106
|
+
#helpers
|
107
|
+
|
108
|
+
def offset(heading_a,heading_b)
|
109
|
+
my_offset = heading_a-heading_b % 360
|
110
|
+
my_offset = my_offset -360 if my_offset > 180
|
111
|
+
my_offset
|
112
|
+
end
|
113
|
+
|
114
|
+
def nth?(n)
|
115
|
+
time % n == 0
|
116
|
+
end
|
117
|
+
|
118
|
+
#ticks
|
119
|
+
|
120
|
+
def find_wall_tick
|
121
|
+
if heading == 180
|
122
|
+
mode :go_to_wall
|
123
|
+
else
|
124
|
+
turn 180-heading
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
def go_to_wall_tick
|
129
|
+
left = x - size
|
130
|
+
if left <= 0
|
131
|
+
mode :turn_upwards
|
132
|
+
elsif left > velocity
|
133
|
+
accelerate(1)
|
134
|
+
elsif left < velocity
|
135
|
+
stop
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
139
|
+
def turn_upwards_tick
|
140
|
+
stop
|
141
|
+
if heading == 90
|
142
|
+
mode :paint
|
143
|
+
|
144
|
+
else
|
145
|
+
turn 90-heading
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
149
|
+
def scan_tick
|
150
|
+
@scan_range = [@scan_range,10].min
|
151
|
+
|
152
|
+
radar_offset = offset(radar_heading,gun_heading)
|
153
|
+
if nth? 2
|
154
|
+
turn_radar -@scan_range-radar_offset
|
155
|
+
else
|
156
|
+
turn_radar +@scan_range-radar_offset
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
160
|
+
def fire_tick
|
161
|
+
if x = @fire.pop
|
162
|
+
fire x
|
163
|
+
end
|
164
|
+
if scanned = events['robot_scanned'].first
|
165
|
+
away = scanned.first
|
166
|
+
str = [0.1,800.0/away].max
|
167
|
+
@fire << str
|
168
|
+
else
|
169
|
+
@fire << nil
|
170
|
+
end
|
171
|
+
|
172
|
+
end
|
173
|
+
|
174
|
+
def aim_tick
|
175
|
+
|
176
|
+
if scanned = events['robot_scanned'].first
|
177
|
+
away = scanned.first
|
178
|
+
@scan_range = 1.2
|
179
|
+
|
180
|
+
@last_offset = offset(radar_heading,gun_heading)
|
181
|
+
turn_gun(@last_offset)
|
182
|
+
@tracking = 10
|
183
|
+
elsif @tracking == 0
|
184
|
+
@scan_range += 0.1
|
185
|
+
if @flip_flop
|
186
|
+
turn_gun(20)
|
187
|
+
else
|
188
|
+
turn_gun(-20)
|
189
|
+
end
|
190
|
+
#puts gun_heading
|
191
|
+
if offset(gun_heading,0).abs > 90
|
192
|
+
@flip_flop = offset(gun_heading,0) < 0
|
193
|
+
end
|
194
|
+
else
|
195
|
+
@tracking-=1
|
196
|
+
@last_offset*=-2
|
197
|
+
turn_gun(@last_offset)
|
198
|
+
end
|
199
|
+
|
200
|
+
end
|
201
|
+
|
202
|
+
def paint_tick
|
203
|
+
if y <= size
|
204
|
+
sign = -1
|
205
|
+
left = 100
|
206
|
+
elsif y + size >= battlefield_height
|
207
|
+
sign = 1
|
208
|
+
left = 100
|
209
|
+
elsif velocity > 0
|
210
|
+
left = y - size
|
211
|
+
sign = 1
|
212
|
+
else
|
213
|
+
left = battlefield_height - y - size
|
214
|
+
sign = -1
|
215
|
+
end
|
216
|
+
|
217
|
+
if left < velocity
|
218
|
+
stop
|
219
|
+
elsif left > velocity
|
220
|
+
accelerate(sign)
|
221
|
+
end
|
222
|
+
end
|
223
|
+
|
224
|
+
end
|
metadata
ADDED
@@ -0,0 +1,220 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: UG_RRobots
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: "1.2"
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- "Simon Kr\xC3\xB6ger, Romain GEORGES"
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-12-18 00:00:00 +01:00
|
13
|
+
default_executable:
|
14
|
+
dependencies: []
|
15
|
+
|
16
|
+
description: Ultragreen RRobots Fork
|
17
|
+
email: dev@ultragreen.net
|
18
|
+
executables:
|
19
|
+
- rrobots
|
20
|
+
- tournament
|
21
|
+
extensions: []
|
22
|
+
|
23
|
+
extra_rdoc_files:
|
24
|
+
- doc/manual.rdoc
|
25
|
+
- doc/manual_fr.rdoc
|
26
|
+
files:
|
27
|
+
- bin/rrobots
|
28
|
+
- bin/tournament
|
29
|
+
- lib/battlefield.rb
|
30
|
+
- lib/bullets.rb
|
31
|
+
- lib/configuration.rb
|
32
|
+
- lib/explosions.rb
|
33
|
+
- lib/overloads.rb
|
34
|
+
- lib/robot.rb
|
35
|
+
- lib/robotrunner.rb
|
36
|
+
- lib/tkarena.rb
|
37
|
+
- lib/toolboxes.rb
|
38
|
+
- images/explosion00.gif
|
39
|
+
- images/explosion01.gif
|
40
|
+
- images/explosion02.gif
|
41
|
+
- images/explosion03.gif
|
42
|
+
- images/explosion04.gif
|
43
|
+
- images/explosion05.gif
|
44
|
+
- images/explosion06.gif
|
45
|
+
- images/explosion07.gif
|
46
|
+
- images/explosion08.gif
|
47
|
+
- images/explosion09.gif
|
48
|
+
- images/explosion10.gif
|
49
|
+
- images/explosion11.gif
|
50
|
+
- images/explosion12.gif
|
51
|
+
- images/explosion13.gif
|
52
|
+
- images/explosion14.gif
|
53
|
+
- images/red_body000.gif
|
54
|
+
- images/red_body010.gif
|
55
|
+
- images/red_body020.gif
|
56
|
+
- images/red_body030.gif
|
57
|
+
- images/red_body040.gif
|
58
|
+
- images/red_body050.gif
|
59
|
+
- images/red_body060.gif
|
60
|
+
- images/red_body070.gif
|
61
|
+
- images/red_body080.gif
|
62
|
+
- images/red_body090.gif
|
63
|
+
- images/red_body100.gif
|
64
|
+
- images/red_body110.gif
|
65
|
+
- images/red_body120.gif
|
66
|
+
- images/red_body130.gif
|
67
|
+
- images/red_body140.gif
|
68
|
+
- images/red_body150.gif
|
69
|
+
- images/red_body160.gif
|
70
|
+
- images/red_body170.gif
|
71
|
+
- images/red_body180.gif
|
72
|
+
- images/red_body190.gif
|
73
|
+
- images/red_body200.gif
|
74
|
+
- images/red_body210.gif
|
75
|
+
- images/red_body220.gif
|
76
|
+
- images/red_body230.gif
|
77
|
+
- images/red_body240.gif
|
78
|
+
- images/red_body250.gif
|
79
|
+
- images/red_body260.gif
|
80
|
+
- images/red_body270.gif
|
81
|
+
- images/red_body280.gif
|
82
|
+
- images/red_body290.gif
|
83
|
+
- images/red_body300.gif
|
84
|
+
- images/red_body310.gif
|
85
|
+
- images/red_body320.gif
|
86
|
+
- images/red_body330.gif
|
87
|
+
- images/red_body340.gif
|
88
|
+
- images/red_body350.gif
|
89
|
+
- images/red_radar000.gif
|
90
|
+
- images/red_radar010.gif
|
91
|
+
- images/red_radar020.gif
|
92
|
+
- images/red_radar030.gif
|
93
|
+
- images/red_radar040.gif
|
94
|
+
- images/red_radar050.gif
|
95
|
+
- images/red_radar060.gif
|
96
|
+
- images/red_radar070.gif
|
97
|
+
- images/red_radar080.gif
|
98
|
+
- images/red_radar090.gif
|
99
|
+
- images/red_radar100.gif
|
100
|
+
- images/red_radar110.gif
|
101
|
+
- images/red_radar120.gif
|
102
|
+
- images/red_radar130.gif
|
103
|
+
- images/red_radar140.gif
|
104
|
+
- images/red_radar150.gif
|
105
|
+
- images/red_radar160.gif
|
106
|
+
- images/red_radar170.gif
|
107
|
+
- images/red_radar180.gif
|
108
|
+
- images/red_radar190.gif
|
109
|
+
- images/red_radar200.gif
|
110
|
+
- images/red_radar210.gif
|
111
|
+
- images/red_radar220.gif
|
112
|
+
- images/red_radar230.gif
|
113
|
+
- images/red_radar240.gif
|
114
|
+
- images/red_radar250.gif
|
115
|
+
- images/red_radar260.gif
|
116
|
+
- images/red_radar270.gif
|
117
|
+
- images/red_radar280.gif
|
118
|
+
- images/red_radar290.gif
|
119
|
+
- images/red_radar300.gif
|
120
|
+
- images/red_radar310.gif
|
121
|
+
- images/red_radar320.gif
|
122
|
+
- images/red_radar330.gif
|
123
|
+
- images/red_radar340.gif
|
124
|
+
- images/red_radar350.gif
|
125
|
+
- images/red_turret000.gif
|
126
|
+
- images/red_turret010.gif
|
127
|
+
- images/red_turret020.gif
|
128
|
+
- images/red_turret030.gif
|
129
|
+
- images/red_turret040.gif
|
130
|
+
- images/red_turret050.gif
|
131
|
+
- images/red_turret060.gif
|
132
|
+
- images/red_turret070.gif
|
133
|
+
- images/red_turret080.gif
|
134
|
+
- images/red_turret090.gif
|
135
|
+
- images/red_turret100.gif
|
136
|
+
- images/red_turret110.gif
|
137
|
+
- images/red_turret120.gif
|
138
|
+
- images/red_turret130.gif
|
139
|
+
- images/red_turret140.gif
|
140
|
+
- images/red_turret150.gif
|
141
|
+
- images/red_turret160.gif
|
142
|
+
- images/red_turret170.gif
|
143
|
+
- images/red_turret180.gif
|
144
|
+
- images/red_turret190.gif
|
145
|
+
- images/red_turret200.gif
|
146
|
+
- images/red_turret210.gif
|
147
|
+
- images/red_turret220.gif
|
148
|
+
- images/red_turret230.gif
|
149
|
+
- images/red_turret240.gif
|
150
|
+
- images/red_turret250.gif
|
151
|
+
- images/red_turret260.gif
|
152
|
+
- images/red_turret270.gif
|
153
|
+
- images/red_turret280.gif
|
154
|
+
- images/red_turret290.gif
|
155
|
+
- images/red_turret300.gif
|
156
|
+
- images/red_turret310.gif
|
157
|
+
- images/red_turret320.gif
|
158
|
+
- images/red_turret330.gif
|
159
|
+
- images/red_turret340.gif
|
160
|
+
- images/red_turret350.gif
|
161
|
+
- images/toolbox.gif
|
162
|
+
- config/rrobots.yml
|
163
|
+
- doc/manual.rdoc
|
164
|
+
- doc/manual_fr.rdoc
|
165
|
+
- contribs/allbots.rb
|
166
|
+
- robots/BillDuck.rb
|
167
|
+
- robots/BotOne.rb
|
168
|
+
- robots/DuckBill.rb
|
169
|
+
- robots/DuckBill04.rb
|
170
|
+
- robots/DuckToEndAllDucks.rb
|
171
|
+
- robots/EdgeBot.rb
|
172
|
+
- robots/HuntingDuck.rb
|
173
|
+
- robots/HyperactiveDuck.rb
|
174
|
+
- robots/Killer.rb
|
175
|
+
- robots/Kite.rb
|
176
|
+
- robots/KoDuck.rb
|
177
|
+
- robots/LinearShooter.rb
|
178
|
+
- robots/LuckyDuck.rb
|
179
|
+
- robots/MoxonoM.rb
|
180
|
+
- robots/MsgBot.rb
|
181
|
+
- robots/NervousDuck.rb
|
182
|
+
- robots/Polisher.rb
|
183
|
+
- robots/RomBot.rb
|
184
|
+
- robots/RoomPainter.rb
|
185
|
+
- robots/Rrrkele.rb
|
186
|
+
- robots/Seeker.rb
|
187
|
+
- robots/ShootingStation.rb
|
188
|
+
- robots/SittingDuck.rb
|
189
|
+
- robots/SniperDuck.rb
|
190
|
+
- robots/WallPainter.rb
|
191
|
+
has_rdoc: true
|
192
|
+
homepage: http://www.ultragreen.net/projects/rrobots
|
193
|
+
licenses: []
|
194
|
+
|
195
|
+
post_install_message:
|
196
|
+
rdoc_options: []
|
197
|
+
|
198
|
+
require_paths:
|
199
|
+
- lib
|
200
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
201
|
+
requirements:
|
202
|
+
- - ">="
|
203
|
+
- !ruby/object:Gem::Version
|
204
|
+
version: "0"
|
205
|
+
version:
|
206
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
207
|
+
requirements:
|
208
|
+
- - ">="
|
209
|
+
- !ruby/object:Gem::Version
|
210
|
+
version: "0"
|
211
|
+
version:
|
212
|
+
requirements: []
|
213
|
+
|
214
|
+
rubyforge_project:
|
215
|
+
rubygems_version: 1.3.5
|
216
|
+
signing_key:
|
217
|
+
specification_version: 3
|
218
|
+
summary: Ultragreen RRobots Fork with new features like toolboxes, config file, gemified
|
219
|
+
test_files: []
|
220
|
+
|