zyps 0.4.1 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. data/bin/zyps +32 -80
  2. data/lib/zyps/actions.rb +74 -2
  3. data/lib/zyps/environmental_factors.rb +16 -0
  4. data/lib/zyps.rb +90 -17
  5. data/test/test_zyps.rb +111 -8
  6. data/test/zyps/test_actions.rb +111 -46
  7. data/test/zyps/test_behaviors.rb +0 -0
  8. data/test/zyps/test_environmental_factors.rb +33 -0
  9. metadata +3 -134
  10. data/doc/classes/AccelerateAction.html +0 -182
  11. data/doc/classes/AccelerateAction.src/M000009.html +0 -19
  12. data/doc/classes/AccelerateAction.src/M000010.html +0 -18
  13. data/doc/classes/Action.html +0 -118
  14. data/doc/classes/AgeCondition.html +0 -181
  15. data/doc/classes/AgeCondition.src/M000039.html +0 -18
  16. data/doc/classes/AgeCondition.src/M000040.html +0 -18
  17. data/doc/classes/ApproachAction.html +0 -189
  18. data/doc/classes/ApproachAction.src/M000048.html +0 -19
  19. data/doc/classes/ApproachAction.src/M000049.html +0 -38
  20. data/doc/classes/Behavior.html +0 -202
  21. data/doc/classes/Behavior.src/M000001.html +0 -18
  22. data/doc/classes/Behavior.src/M000002.html +0 -19
  23. data/doc/classes/BlendAction.html +0 -181
  24. data/doc/classes/BlendAction.src/M000043.html +0 -18
  25. data/doc/classes/BlendAction.src/M000044.html +0 -18
  26. data/doc/classes/Clock.html +0 -165
  27. data/doc/classes/Clock.src/M000041.html +0 -18
  28. data/doc/classes/Clock.src/M000042.html +0 -21
  29. data/doc/classes/CollisionCondition.html +0 -148
  30. data/doc/classes/CollisionCondition.src/M000053.html +0 -18
  31. data/doc/classes/Color.html +0 -299
  32. data/doc/classes/Color.src/M000022.html +0 -18
  33. data/doc/classes/Color.src/M000023.html +0 -16
  34. data/doc/classes/Color.src/M000024.html +0 -16
  35. data/doc/classes/Color.src/M000025.html +0 -16
  36. data/doc/classes/Color.src/M000026.html +0 -18
  37. data/doc/classes/Color.src/M000027.html +0 -22
  38. data/doc/classes/Condition.html +0 -118
  39. data/doc/classes/Creature.html +0 -191
  40. data/doc/classes/Creature.src/M000011.html +0 -19
  41. data/doc/classes/Creature.src/M000012.html +0 -18
  42. data/doc/classes/DestroyAction.html +0 -181
  43. data/doc/classes/DestroyAction.src/M000030.html +0 -18
  44. data/doc/classes/DestroyAction.src/M000031.html +0 -18
  45. data/doc/classes/EatAction.html +0 -149
  46. data/doc/classes/EatAction.src/M000045.html +0 -21
  47. data/doc/classes/Enclosure.html +0 -206
  48. data/doc/classes/Enclosure.src/M000005.html +0 -18
  49. data/doc/classes/Enclosure.src/M000006.html +0 -31
  50. data/doc/classes/Environment.html +0 -203
  51. data/doc/classes/Environment.src/M000046.html +0 -19
  52. data/doc/classes/Environment.src/M000047.html +0 -45
  53. data/doc/classes/EnvironmentalFactor.html +0 -118
  54. data/doc/classes/FaceAction.html +0 -148
  55. data/doc/classes/FaceAction.src/M000052.html +0 -18
  56. data/doc/classes/FleeAction.html +0 -189
  57. data/doc/classes/FleeAction.src/M000054.html +0 -19
  58. data/doc/classes/FleeAction.src/M000055.html +0 -38
  59. data/doc/classes/GameObject.html +0 -282
  60. data/doc/classes/GameObject.src/M000032.html +0 -19
  61. data/doc/classes/GameObject.src/M000033.html +0 -16
  62. data/doc/classes/GameObject.src/M000034.html +0 -19
  63. data/doc/classes/GameObject.src/M000035.html +0 -16
  64. data/doc/classes/GameObject.src/M000036.html +0 -16
  65. data/doc/classes/Location.html +0 -167
  66. data/doc/classes/Location.src/M000021.html +0 -18
  67. data/doc/classes/ProximityCondition.html +0 -182
  68. data/doc/classes/ProximityCondition.src/M000037.html +0 -18
  69. data/doc/classes/ProximityCondition.src/M000038.html +0 -18
  70. data/doc/classes/TagAction.html +0 -181
  71. data/doc/classes/TagAction.src/M000028.html +0 -18
  72. data/doc/classes/TagAction.src/M000029.html +0 -18
  73. data/doc/classes/TagCondition.html +0 -181
  74. data/doc/classes/TagCondition.src/M000007.html +0 -18
  75. data/doc/classes/TagCondition.src/M000008.html +0 -18
  76. data/doc/classes/TrailsView.html +0 -209
  77. data/doc/classes/TrailsView.src/M000003.html +0 -40
  78. data/doc/classes/TrailsView.src/M000004.html +0 -78
  79. data/doc/classes/TurnAction.html +0 -182
  80. data/doc/classes/TurnAction.src/M000050.html +0 -19
  81. data/doc/classes/TurnAction.src/M000051.html +0 -18
  82. data/doc/classes/Utility.html +0 -264
  83. data/doc/classes/Utility.src/M000056.html +0 -26
  84. data/doc/classes/Utility.src/M000057.html +0 -22
  85. data/doc/classes/Utility.src/M000058.html +0 -18
  86. data/doc/classes/Utility.src/M000059.html +0 -21
  87. data/doc/classes/Utility.src/M000060.html +0 -25
  88. data/doc/classes/Utility.src/M000061.html +0 -21
  89. data/doc/classes/Utility.src/M000062.html +0 -21
  90. data/doc/classes/Vector.html +0 -281
  91. data/doc/classes/Vector.src/M000013.html +0 -19
  92. data/doc/classes/Vector.src/M000014.html +0 -16
  93. data/doc/classes/Vector.src/M000015.html +0 -21
  94. data/doc/classes/Vector.src/M000016.html +0 -16
  95. data/doc/classes/Vector.src/M000017.html +0 -18
  96. data/doc/classes/Vector.src/M000018.html +0 -16
  97. data/doc/classes/Vector.src/M000019.html +0 -18
  98. data/doc/classes/Vector.src/M000020.html +0 -25
  99. data/doc/created.rid +0 -1
  100. data/doc/files/COPYING_LESSER_txt.html +0 -311
  101. data/doc/files/COPYING_txt.html +0 -1003
  102. data/doc/files/README_txt.html +0 -214
  103. data/doc/files/lib/zyps/actions_rb.html +0 -134
  104. data/doc/files/lib/zyps/conditions_rb.html +0 -134
  105. data/doc/files/lib/zyps/environmental_factors_rb.html +0 -134
  106. data/doc/files/lib/zyps/views/trails_rb.html +0 -134
  107. data/doc/files/lib/zyps_rb.html +0 -134
  108. data/doc/fr_class_index.html +0 -53
  109. data/doc/fr_file_index.html +0 -34
  110. data/doc/fr_method_index.html +0 -88
  111. data/doc/index.html +0 -24
  112. data/doc/rdoc-style.css +0 -208
@@ -1,45 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html>
7
- <head>
8
- <title>interact (Environment)</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
- </head>
12
- <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/zyps.rb, line 41</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">interact</span>
15
-
16
- <span class="ruby-comment cmt">#Get time since last interaction.</span>
17
- <span class="ruby-identifier">elapsed_time</span> = <span class="ruby-ivar">@clock</span>.<span class="ruby-identifier">elapsed_time</span>
18
-
19
- <span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">object</span><span class="ruby-operator">|</span>
20
-
21
- <span class="ruby-comment cmt">#Move each object according to its vector.</span>
22
- <span class="ruby-identifier">object</span>.<span class="ruby-identifier">move</span>(<span class="ruby-identifier">elapsed_time</span>)
23
-
24
- <span class="ruby-comment cmt">#Have all environmental factors interact with each object.</span>
25
- <span class="ruby-identifier">environmental_factors</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">factor</span><span class="ruby-operator">|</span> <span class="ruby-identifier">factor</span>.<span class="ruby-identifier">act</span>(<span class="ruby-identifier">object</span>)}
26
-
27
- <span class="ruby-comment cmt">#Have all creatures interact with each other.</span>
28
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:act</span>)
29
- <span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">target</span><span class="ruby-operator">|</span>
30
- <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">target</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">object</span>) <span class="ruby-comment cmt">#Ensure object does not act on itself.</span>
31
- <span class="ruby-identifier">object</span>.<span class="ruby-identifier">act</span>(<span class="ruby-identifier">target</span>)
32
- <span class="ruby-keyword kw">end</span>
33
- <span class="ruby-keyword kw">end</span>
34
-
35
- <span class="ruby-keyword kw">end</span>
36
-
37
- <span class="ruby-comment cmt">#Mark environment as changed.</span>
38
- <span class="ruby-identifier">changed</span>
39
-
40
- <span class="ruby-comment cmt">#Alert observers.</span>
41
- <span class="ruby-identifier">notify_observers</span>(<span class="ruby-keyword kw">self</span>)
42
-
43
- <span class="ruby-keyword kw">end</span></pre>
44
- </body>
45
- </html>
@@ -1,118 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: EnvironmentalFactor</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">EnvironmentalFactor</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../files/lib/zyps_rb.html">
59
- lib/zyps.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- Object
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- Something in the environment that acts on creatures. EnvironmentalFactors
84
- must implement an act(target) instance method.
85
- </p>
86
-
87
- </div>
88
-
89
-
90
- </div>
91
-
92
-
93
- </div>
94
-
95
-
96
- <!-- if includes -->
97
-
98
- <div id="section">
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
-
107
- <!-- if method_list -->
108
-
109
-
110
- </div>
111
-
112
-
113
- <div id="validator-badges">
114
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
115
- </div>
116
-
117
- </body>
118
- </html>
@@ -1,148 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: FaceAction</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">FaceAction</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../files/lib/zyps/actions_rb.html">
59
- lib/zyps/actions.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- <a href="Action.html">
69
- Action
70
- </a>
71
- </td>
72
- </tr>
73
- </table>
74
- </div>
75
- <!-- banner header -->
76
-
77
- <div id="bodyContent">
78
-
79
-
80
-
81
- <div id="contextContent">
82
-
83
- <div id="description">
84
- <p>
85
- Head toward a target.
86
- </p>
87
-
88
- </div>
89
-
90
-
91
- </div>
92
-
93
- <div id="method-list">
94
- <h3 class="section-bar">Methods</h3>
95
-
96
- <div class="name-list">
97
- <a href="#M000052">do</a>&nbsp;&nbsp;
98
- </div>
99
- </div>
100
-
101
- </div>
102
-
103
-
104
- <!-- if includes -->
105
-
106
- <div id="section">
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
-
115
- <!-- if method_list -->
116
- <div id="methods">
117
- <h3 class="section-bar">Public Instance methods</h3>
118
-
119
- <div id="method-M000052" class="method-detail">
120
- <a name="M000052"></a>
121
-
122
- <div class="method-heading">
123
- <a href="FaceAction.src/M000052.html" target="Code" class="method-signature"
124
- onclick="popupCode('FaceAction.src/M000052.html');return false;">
125
- <span class="method-name">do</span><span class="method-args">(actor, target)</span>
126
- </a>
127
- </div>
128
-
129
- <div class="method-description">
130
- <p>
131
- Set the actor&#8216;s heading to point directly at target.
132
- </p>
133
- </div>
134
- </div>
135
-
136
-
137
- </div>
138
-
139
-
140
- </div>
141
-
142
-
143
- <div id="validator-badges">
144
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
145
- </div>
146
-
147
- </body>
148
- </html>
@@ -1,18 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html>
7
- <head>
8
- <title>do (FaceAction)</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
- </head>
12
- <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/zyps/actions.rb, line 24</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">do</span>(<span class="ruby-identifier">actor</span>, <span class="ruby-identifier">target</span>)
15
- <span class="ruby-identifier">actor</span>.<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">pitch</span> = <span class="ruby-constant">Utility</span>.<span class="ruby-identifier">find_angle</span>(<span class="ruby-identifier">actor</span>.<span class="ruby-identifier">location</span>, <span class="ruby-identifier">target</span>.<span class="ruby-identifier">location</span>)
16
- <span class="ruby-keyword kw">end</span></pre>
17
- </body>
18
- </html>
@@ -1,189 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: FleeAction</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">FleeAction</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../files/lib/zyps/actions_rb.html">
59
- lib/zyps/actions.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- <a href="Action.html">
69
- Action
70
- </a>
71
- </td>
72
- </tr>
73
- </table>
74
- </div>
75
- <!-- banner header -->
76
-
77
- <div id="bodyContent">
78
-
79
-
80
-
81
- <div id="contextContent">
82
-
83
- <div id="description">
84
- <p>
85
- Flees from the target, but obeys law of inertia.
86
- </p>
87
-
88
- </div>
89
-
90
-
91
- </div>
92
-
93
- <div id="method-list">
94
- <h3 class="section-bar">Methods</h3>
95
-
96
- <div class="name-list">
97
- <a href="#M000055">do</a>&nbsp;&nbsp;
98
- <a href="#M000054">new</a>&nbsp;&nbsp;
99
- </div>
100
- </div>
101
-
102
- </div>
103
-
104
-
105
- <!-- if includes -->
106
-
107
- <div id="section">
108
-
109
-
110
-
111
-
112
-
113
- <div id="attribute-list">
114
- <h3 class="section-bar">Attributes</h3>
115
-
116
- <div class="name-list">
117
- <table>
118
- <tr class="top-aligned-row context-row">
119
- <td class="context-item-name">heading</td>
120
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
121
- <td class="context-item-desc">
122
- Direction/speed actor is accelerating in.
123
-
124
- </td>
125
- </tr>
126
- <tr class="top-aligned-row context-row">
127
- <td class="context-item-name">turn_rate</td>
128
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
129
- <td class="context-item-desc">
130
- Degrees per second the direction of acceleration can change.
131
-
132
- </td>
133
- </tr>
134
- </table>
135
- </div>
136
- </div>
137
-
138
-
139
-
140
- <!-- if method_list -->
141
- <div id="methods">
142
- <h3 class="section-bar">Public Class methods</h3>
143
-
144
- <div id="method-M000054" class="method-detail">
145
- <a name="M000054"></a>
146
-
147
- <div class="method-heading">
148
- <a href="FleeAction.src/M000054.html" target="Code" class="method-signature"
149
- onclick="popupCode('FleeAction.src/M000054.html');return false;">
150
- <span class="method-name">new</span><span class="method-args">(heading = Vector.new, turn_rate = 360)</span>
151
- </a>
152
- </div>
153
-
154
- <div class="method-description">
155
- </div>
156
- </div>
157
-
158
- <h3 class="section-bar">Public Instance methods</h3>
159
-
160
- <div id="method-M000055" class="method-detail">
161
- <a name="M000055"></a>
162
-
163
- <div class="method-heading">
164
- <a href="FleeAction.src/M000055.html" target="Code" class="method-signature"
165
- onclick="popupCode('FleeAction.src/M000055.html');return false;">
166
- <span class="method-name">do</span><span class="method-args">(actor, target)</span>
167
- </a>
168
- </div>
169
-
170
- <div class="method-description">
171
- <p>
172
- Accelerate away from the target, but limited by turn rate.
173
- </p>
174
- </div>
175
- </div>
176
-
177
-
178
- </div>
179
-
180
-
181
- </div>
182
-
183
-
184
- <div id="validator-badges">
185
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
186
- </div>
187
-
188
- </body>
189
- </html>
@@ -1,19 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html>
7
- <head>
8
- <title>new (FleeAction)</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
- </head>
12
- <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/zyps/actions.rb, line 104</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">heading</span> = <span class="ruby-constant">Vector</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">turn_rate</span> = <span class="ruby-value">360</span>)
15
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">heading</span>, <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">turn_rate</span> = <span class="ruby-identifier">heading</span>, <span class="ruby-identifier">turn_rate</span>
16
- <span class="ruby-ivar">@clock</span> = <span class="ruby-constant">Clock</span>.<span class="ruby-identifier">new</span>
17
- <span class="ruby-keyword kw">end</span></pre>
18
- </body>
19
- </html>
@@ -1,38 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html>
7
- <head>
8
- <title>do (FleeAction)</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
- </head>
12
- <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/zyps/actions.rb, line 109</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">do</span>(<span class="ruby-identifier">actor</span>, <span class="ruby-identifier">target</span>)
15
- <span class="ruby-comment cmt">#Find the difference between the current heading and the angle to the target.</span>
16
- <span class="ruby-identifier">turn_angle</span> = <span class="ruby-constant">Utility</span>.<span class="ruby-identifier">find_angle</span>(<span class="ruby-identifier">actor</span>.<span class="ruby-identifier">location</span>, <span class="ruby-identifier">target</span>.<span class="ruby-identifier">location</span>) <span class="ruby-operator">-</span> <span class="ruby-ivar">@heading</span>.<span class="ruby-identifier">pitch</span> <span class="ruby-operator">+</span> <span class="ruby-value">180</span>
17
- <span class="ruby-comment cmt">#If the angle is the long way around from the current heading, change it to the smaller angle.</span>
18
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">turn_angle</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">180</span> <span class="ruby-keyword kw">then</span>
19
- <span class="ruby-identifier">turn_angle</span> <span class="ruby-operator">-=</span> <span class="ruby-value">360.0</span>
20
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">turn_angle</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">-180</span> <span class="ruby-keyword kw">then</span>
21
- <span class="ruby-identifier">turn_angle</span> <span class="ruby-operator">+=</span> <span class="ruby-value">360.0</span>
22
- <span class="ruby-keyword kw">end</span>
23
- <span class="ruby-comment cmt">#The creature can only turn as fast as the elapsed time, of course.</span>
24
- <span class="ruby-identifier">maximum_turn</span> = <span class="ruby-identifier">turn_rate</span> <span class="ruby-operator">*</span> <span class="ruby-ivar">@clock</span>.<span class="ruby-identifier">elapsed_time</span>
25
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">turn_angle</span>.<span class="ruby-identifier">abs</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">maximum_turn</span>
26
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">turn_angle</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
27
- <span class="ruby-identifier">turn_angle</span> = <span class="ruby-identifier">maximum_turn</span>
28
- <span class="ruby-keyword kw">else</span>
29
- <span class="ruby-identifier">turn_angle</span> = <span class="ruby-identifier">maximum_turn</span> <span class="ruby-operator">*</span> <span class="ruby-value">-1</span>
30
- <span class="ruby-keyword kw">end</span>
31
- <span class="ruby-keyword kw">end</span>
32
- <span class="ruby-comment cmt">#Turn the appropriate amount.</span>
33
- <span class="ruby-ivar">@heading</span>.<span class="ruby-identifier">pitch</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">turn_angle</span>
34
- <span class="ruby-comment cmt">#Apply the heading to the creature's movement vector.</span>
35
- <span class="ruby-identifier">actor</span>.<span class="ruby-identifier">vector</span> <span class="ruby-operator">+=</span> <span class="ruby-ivar">@heading</span>
36
- <span class="ruby-keyword kw">end</span></pre>
37
- </body>
38
- </html>