<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Attack &lt; Base
+      def description
+        &quot;Attack the enemy in given direction (forward by default).&quot;
+      end
+      
       def perform(direction = :forward)
         receiver = unit(direction)
         if receiver</diff>
      <filename>lib/ruby_warrior/abilities/attack.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,10 +2,10 @@ module RubyWarrior
   module Abilities
     class Base
       DIRECTIONS = {
-        :forward =&gt; [1, 0],
-        :right   =&gt; [0, 1],
-        :backward    =&gt; [-1, 0],
-        :left    =&gt; [0, -1]
+        :forward  =&gt; [1, 0],
+        :right    =&gt; [0, 1],
+        :backward =&gt; [-1, 0],
+        :left     =&gt; [0, -1]
       }
       
       def initialize(unit)
@@ -28,6 +28,9 @@ module RubyWarrior
         receiver.take_damage(amount)
         @unit.earn_points(receiver.max_health) unless receiver.alive?
       end
+      
+      def description
+      end
     end
   end
 end</diff>
      <filename>lib/ruby_warrior/abilities/base.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Feel &lt; Base
+      def description
+        &quot;Returns a Space for the given direction (forward by default).&quot;
+      end
+      
       def possible_arguments
         [[], *DIRECTIONS.keys]
       end</diff>
      <filename>lib/ruby_warrior/abilities/feel.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Health &lt; Base
+      def description
+        &quot;Returns an integer representing your health.&quot;
+      end
+      
       def possible_arguments
         [[]]
       end</diff>
      <filename>lib/ruby_warrior/abilities/health.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Look &lt; Base
+      def description
+        &quot;Returns an array of Spaces in given direction (forward by default).&quot;
+      end
+      
       def possible_arguments
         [[], :forward, :left, :right]
       end</diff>
      <filename>lib/ruby_warrior/abilities/look.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Rescue &lt; Base
+      def description
+        &quot;Rescue a captive from his chains (earning 50 points) in given direction (forward by default).&quot;
+      end
+      
       def perform(direction = :forward)
         if space(direction).captive?
           @unit.say &quot;rescues captive&quot;</diff>
      <filename>lib/ruby_warrior/abilities/rescue.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Rest &lt; Base
+      def description
+        &quot;Gain 10% of max health back, but do nothing more.&quot;
+      end
+      
       def perform
         amount = (@unit.max_health*0.1).round
         @unit.say &quot;receives #{amount} health from resting&quot;</diff>
      <filename>lib/ruby_warrior/abilities/rest.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Shoot &lt; Base
+      def description
+        &quot;Shoot your bow &amp; arrow in given direction (forward by default).&quot;
+      end
+      
       def perform(direction = :forward)
         receiver = multi_unit(direction, 1..3).compact.first
         if receiver</diff>
      <filename>lib/ruby_warrior/abilities/shoot.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,10 @@
 module RubyWarrior
   module Abilities
     class Walk &lt; Base
+      def description
+        &quot;Move in given direction (forward by default).&quot;
+      end
+      
       def perform(direction = :forward)
         if @unit.position
           if space(direction).empty?</diff>
      <filename>lib/ruby_warrior/abilities/walk.rb</filename>
    </modified>
    <modified>
      <diff>@@ -17,4 +17,8 @@ describe RubyWarrior::Abilities::Base do
     @ability.expects(:space).with(:right, 3).returns(stub(:unit =&gt; 'unit'))
     @ability.unit(:right, 3).should == 'unit'
   end
+  
+  it &quot;should have no description&quot; do
+    @ability.description.should be_nil
+  end
 end</diff>
      <filename>spec/ruby_warrior/abilities/base_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -10,3 +10,11 @@ Tip: &lt;%= level.tip %&gt;
 &lt;%- for unit in level.floor.unique_units -%&gt;
   &lt;%= unit.to_map %&gt; = &lt;%= unit.name %&gt; (&lt;%= unit.max_health %&gt; HP)
 &lt;%- end -%&gt;
+
+
+Available Abilities:
+&lt;%- level.warrior.abilities.each do |name, ability| -%&gt;
+
+  warrior.&lt;%= name %&gt;
+    &lt;%= ability.description %&gt;
+&lt;%- end -%&gt;</diff>
      <filename>templates/README.erb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>e091a4ea3da48e30ac20bb0deef3dee622bc03ce</id>
    </parent>
  </parents>
  <author>
    <name>Ryan Bates</name>
    <email>ryan@railscasts.com</email>
  </author>
  <url>http://github.com/ryanb/ruby-warrior/commit/2f9e708a3d0d6db22e3d9dad18380cbae824a452</url>
  <id>2f9e708a3d0d6db22e3d9dad18380cbae824a452</id>
  <committed-date>2008-09-04T14:06:26-07:00</committed-date>
  <authored-date>2008-09-04T14:06:26-07:00</authored-date>
  <message>adding warrior abilities to level readme</message>
  <tree>9798d57cbec99cb6ce6249d308d8de098927086a</tree>
  <committer>
    <name>Ryan Bates</name>
    <email>ryan@railscasts.com</email>
  </committer>
</commit>
