zyps 0.4.1 → 0.5.1

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 (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>