zyps 0.2.1 → 0.3.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 (66) hide show
  1. data/README.txt +0 -14
  2. data/bin/zyps +240 -28
  3. data/bin/zyps_demo +18 -2
  4. data/doc/classes/Behavior.html +205 -0
  5. data/doc/classes/Behavior.src/M000003.html +18 -0
  6. data/doc/classes/Behavior.src/M000004.html +19 -0
  7. data/doc/classes/Clock.html +165 -0
  8. data/doc/classes/Clock.src/M000026.html +18 -0
  9. data/doc/classes/Clock.src/M000027.html +21 -0
  10. data/doc/classes/Color.html +299 -0
  11. data/doc/classes/Color.src/M000015.html +18 -0
  12. data/doc/classes/Color.src/M000016.html +16 -0
  13. data/doc/classes/Color.src/M000017.html +16 -0
  14. data/doc/classes/Color.src/M000018.html +16 -0
  15. data/doc/classes/Color.src/M000019.html +18 -0
  16. data/doc/classes/Color.src/M000020.html +22 -0
  17. data/doc/classes/Creature.html +176 -0
  18. data/doc/classes/Creature.src/M000005.html +19 -0
  19. data/doc/classes/Environment.html +203 -0
  20. data/doc/classes/Environment.src/M000028.html +19 -0
  21. data/doc/classes/Environment.src/M000029.html +45 -0
  22. data/doc/classes/EnvironmentalFactor.html +167 -0
  23. data/doc/classes/EnvironmentalFactor.src/M000021.html +18 -0
  24. data/doc/classes/GameObject.html +256 -0
  25. data/doc/classes/GameObject.src/M000022.html +20 -0
  26. data/doc/classes/GameObject.src/M000023.html +19 -0
  27. data/doc/classes/GameObject.src/M000024.html +16 -0
  28. data/doc/classes/GameObject.src/M000025.html +16 -0
  29. data/doc/classes/Location.html +167 -0
  30. data/doc/classes/Location.src/M000014.html +18 -0
  31. data/doc/classes/Responsive.html +143 -0
  32. data/doc/classes/Responsive.src/M000030.html +18 -0
  33. data/doc/classes/TrailsView.html +217 -0
  34. data/doc/classes/TrailsView.src/M000001.html +40 -0
  35. data/doc/classes/TrailsView.src/M000002.html +76 -0
  36. data/doc/classes/Utility.html +264 -0
  37. data/doc/classes/Utility.src/M000031.html +26 -0
  38. data/doc/classes/Utility.src/M000032.html +22 -0
  39. data/doc/classes/Utility.src/M000033.html +18 -0
  40. data/doc/classes/Utility.src/M000034.html +21 -0
  41. data/doc/classes/Utility.src/M000035.html +25 -0
  42. data/doc/classes/Utility.src/M000036.html +21 -0
  43. data/doc/classes/Utility.src/M000037.html +22 -0
  44. data/doc/classes/Vector.html +281 -0
  45. data/doc/classes/Vector.src/M000006.html +19 -0
  46. data/doc/classes/Vector.src/M000007.html +16 -0
  47. data/doc/classes/Vector.src/M000008.html +21 -0
  48. data/doc/classes/Vector.src/M000009.html +16 -0
  49. data/doc/classes/Vector.src/M000010.html +18 -0
  50. data/doc/classes/Vector.src/M000011.html +16 -0
  51. data/doc/classes/Vector.src/M000012.html +18 -0
  52. data/doc/classes/Vector.src/M000013.html +25 -0
  53. data/doc/created.rid +1 -0
  54. data/doc/files/COPYING_LESSER_txt.html +311 -0
  55. data/doc/files/COPYING_txt.html +1003 -0
  56. data/doc/files/README_txt.html +214 -0
  57. data/doc/files/lib/zyps/views/trails_rb.html +134 -0
  58. data/doc/files/lib/zyps_rb.html +134 -0
  59. data/doc/fr_class_index.html +38 -0
  60. data/doc/fr_file_index.html +31 -0
  61. data/doc/fr_method_index.html +63 -0
  62. data/doc/index.html +24 -0
  63. data/doc/rdoc-style.css +208 -0
  64. data/lib/zyps/views/trails.rb +3 -3
  65. metadata +81 -6
  66. data/bin/zyps_server +0 -178
@@ -0,0 +1,208 @@
1
+
2
+ body {
3
+ font-family: Verdana,Arial,Helvetica,sans-serif;
4
+ font-size: 90%;
5
+ margin: 0;
6
+ margin-left: 40px;
7
+ padding: 0;
8
+ background: white;
9
+ }
10
+
11
+ h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; }
12
+ h1 { font-size: 150%; }
13
+ h2,h3,h4 { margin-top: 1em; }
14
+
15
+ a { background: #eef; color: #039; text-decoration: none; }
16
+ a:hover { background: #039; color: #eef; }
17
+
18
+ /* Override the base stylesheet's Anchor inside a table cell */
19
+ td > a {
20
+ background: transparent;
21
+ color: #039;
22
+ text-decoration: none;
23
+ }
24
+
25
+ /* and inside a section title */
26
+ .section-title > a {
27
+ background: transparent;
28
+ color: #eee;
29
+ text-decoration: none;
30
+ }
31
+
32
+ /* === Structural elements =================================== */
33
+
34
+ div#index {
35
+ margin: 0;
36
+ margin-left: -40px;
37
+ padding: 0;
38
+ font-size: 90%;
39
+ }
40
+
41
+
42
+ div#index a {
43
+ margin-left: 0.7em;
44
+ }
45
+
46
+ div#index .section-bar {
47
+ margin-left: 0px;
48
+ padding-left: 0.7em;
49
+ background: #ccc;
50
+ font-size: small;
51
+ }
52
+
53
+
54
+ div#classHeader, div#fileHeader {
55
+ width: auto;
56
+ color: white;
57
+ padding: 0.5em 1.5em 0.5em 1.5em;
58
+ margin: 0;
59
+ margin-left: -40px;
60
+ border-bottom: 3px solid #006;
61
+ }
62
+
63
+ div#classHeader a, div#fileHeader a {
64
+ background: inherit;
65
+ color: white;
66
+ }
67
+
68
+ div#classHeader td, div#fileHeader td {
69
+ background: inherit;
70
+ color: white;
71
+ }
72
+
73
+
74
+ div#fileHeader {
75
+ background: #057;
76
+ }
77
+
78
+ div#classHeader {
79
+ background: #048;
80
+ }
81
+
82
+
83
+ .class-name-in-header {
84
+ font-size: 180%;
85
+ font-weight: bold;
86
+ }
87
+
88
+
89
+ div#bodyContent {
90
+ padding: 0 1.5em 0 1.5em;
91
+ }
92
+
93
+ div#description {
94
+ padding: 0.5em 1.5em;
95
+ background: #efefef;
96
+ border: 1px dotted #999;
97
+ }
98
+
99
+ div#description h1,h2,h3,h4,h5,h6 {
100
+ color: #125;;
101
+ background: transparent;
102
+ }
103
+
104
+ div#validator-badges {
105
+ text-align: center;
106
+ }
107
+ div#validator-badges img { border: 0; }
108
+
109
+ div#copyright {
110
+ color: #333;
111
+ background: #efefef;
112
+ font: 0.75em sans-serif;
113
+ margin-top: 5em;
114
+ margin-bottom: 0;
115
+ padding: 0.5em 2em;
116
+ }
117
+
118
+
119
+ /* === Classes =================================== */
120
+
121
+ table.header-table {
122
+ color: white;
123
+ font-size: small;
124
+ }
125
+
126
+ .type-note {
127
+ font-size: small;
128
+ color: #DEDEDE;
129
+ }
130
+
131
+ .xxsection-bar {
132
+ background: #eee;
133
+ color: #333;
134
+ padding: 3px;
135
+ }
136
+
137
+ .section-bar {
138
+ color: #333;
139
+ border-bottom: 1px solid #999;
140
+ margin-left: -20px;
141
+ }
142
+
143
+
144
+ .section-title {
145
+ background: #79a;
146
+ color: #eee;
147
+ padding: 3px;
148
+ margin-top: 2em;
149
+ margin-left: -30px;
150
+ border: 1px solid #999;
151
+ }
152
+
153
+ .top-aligned-row { vertical-align: top }
154
+ .bottom-aligned-row { vertical-align: bottom }
155
+
156
+ /* --- Context section classes ----------------------- */
157
+
158
+ .context-row { }
159
+ .context-item-name { font-family: monospace; font-weight: bold; color: black; }
160
+ .context-item-value { font-size: small; color: #448; }
161
+ .context-item-desc { color: #333; padding-left: 2em; }
162
+
163
+ /* --- Method classes -------------------------- */
164
+ .method-detail {
165
+ background: #efefef;
166
+ padding: 0;
167
+ margin-top: 0.5em;
168
+ margin-bottom: 1em;
169
+ border: 1px dotted #ccc;
170
+ }
171
+ .method-heading {
172
+ color: black;
173
+ background: #ccc;
174
+ border-bottom: 1px solid #666;
175
+ padding: 0.2em 0.5em 0 0.5em;
176
+ }
177
+ .method-signature { color: black; background: inherit; }
178
+ .method-name { font-weight: bold; }
179
+ .method-args { font-style: italic; }
180
+ .method-description { padding: 0 0.5em 0 0.5em; }
181
+
182
+ /* --- Source code sections -------------------- */
183
+
184
+ a.source-toggle { font-size: 90%; }
185
+ div.method-source-code {
186
+ background: #262626;
187
+ color: #ffdead;
188
+ margin: 1em;
189
+ padding: 0.5em;
190
+ border: 1px dashed #999;
191
+ overflow: hidden;
192
+ }
193
+
194
+ div.method-source-code pre { color: #ffdead; overflow: hidden; }
195
+
196
+ /* --- Ruby keyword styles --------------------- */
197
+
198
+ .standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
199
+
200
+ .ruby-constant { color: #7fffd4; background: transparent; }
201
+ .ruby-keyword { color: #00ffff; background: transparent; }
202
+ .ruby-ivar { color: #eedd82; background: transparent; }
203
+ .ruby-operator { color: #00ffee; background: transparent; }
204
+ .ruby-identifier { color: #ffdead; background: transparent; }
205
+ .ruby-node { color: #ffa07a; background: transparent; }
206
+ .ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
207
+ .ruby-regexp { color: #ffa07a; background: transparent; }
208
+ .ruby-value { color: #7fffd4; background: transparent; }
@@ -33,7 +33,7 @@ class TrailsView
33
33
 
34
34
  def initialize (width = 600, height = 400, trail_length = 5, trail_width = trail_length)
35
35
 
36
- @width, @height, @trail_length, @trail_width, @background = width, height, trail_length, trail_width
36
+ @width, @height, @trail_length, @trail_width = width, height, trail_length, trail_width
37
37
 
38
38
  #Create a drawing area.
39
39
  @canvas = Gtk::DrawingArea.new
@@ -78,8 +78,8 @@ class TrailsView
78
78
  buffer.draw_rectangle(
79
79
  graphics_context,
80
80
  true, #Filled.
81
- 0, 0, #Upper-left corner.
82
- @width, @height #Lower-right corner.
81
+ 0, 0, #Lower-left corner.
82
+ @width, @height #Upper-right corner.
83
83
  )
84
84
 
85
85
  #For each GameObject in the environment:
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.2
2
+ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: zyps
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.2.1
7
- date: 2007-08-06 00:00:00 -07:00
6
+ version: 0.3.1
7
+ date: 2007-08-16 00:00:00 -07:00
8
8
  summary: A simulation/game with autonomous creatures
9
9
  require_paths:
10
10
  - lib
@@ -34,12 +34,88 @@ files:
34
34
  - README.txt
35
35
  - bin/zyps
36
36
  - bin/zyps_demo
37
- - bin/zyps_server
38
37
  - lib/zyps
38
+ - lib/zyps.rb
39
39
  - lib/zyps/views
40
40
  - lib/zyps/views/trails.rb
41
- - lib/zyps.rb
42
41
  - test/test_zyps.rb
42
+ - doc/created.rid
43
+ - doc/rdoc-style.css
44
+ - doc/files
45
+ - doc/classes
46
+ - doc/fr_file_index.html
47
+ - doc/fr_class_index.html
48
+ - doc/fr_method_index.html
49
+ - doc/index.html
50
+ - doc/files/lib
51
+ - doc/files/COPYING_LESSER_txt.html
52
+ - doc/files/COPYING_txt.html
53
+ - doc/files/README_txt.html
54
+ - doc/files/lib/zyps_rb.html
55
+ - doc/files/lib/zyps
56
+ - doc/files/lib/zyps/views
57
+ - doc/files/lib/zyps/views/trails_rb.html
58
+ - doc/classes/TrailsView.src
59
+ - doc/classes/Behavior.src
60
+ - doc/classes/Creature.src
61
+ - doc/classes/Vector.src
62
+ - doc/classes/Location.src
63
+ - doc/classes/Color.src
64
+ - doc/classes/EnvironmentalFactor.src
65
+ - doc/classes/GameObject.src
66
+ - doc/classes/Clock.src
67
+ - doc/classes/Environment.src
68
+ - doc/classes/Responsive.src
69
+ - doc/classes/Utility.src
70
+ - doc/classes/TrailsView.html
71
+ - doc/classes/Behavior.html
72
+ - doc/classes/Creature.html
73
+ - doc/classes/Vector.html
74
+ - doc/classes/Location.html
75
+ - doc/classes/Color.html
76
+ - doc/classes/EnvironmentalFactor.html
77
+ - doc/classes/GameObject.html
78
+ - doc/classes/Clock.html
79
+ - doc/classes/Environment.html
80
+ - doc/classes/Responsive.html
81
+ - doc/classes/Utility.html
82
+ - doc/classes/TrailsView.src/M000001.html
83
+ - doc/classes/TrailsView.src/M000002.html
84
+ - doc/classes/Behavior.src/M000003.html
85
+ - doc/classes/Behavior.src/M000004.html
86
+ - doc/classes/Creature.src/M000005.html
87
+ - doc/classes/Vector.src/M000006.html
88
+ - doc/classes/Vector.src/M000007.html
89
+ - doc/classes/Vector.src/M000008.html
90
+ - doc/classes/Vector.src/M000009.html
91
+ - doc/classes/Vector.src/M000010.html
92
+ - doc/classes/Vector.src/M000011.html
93
+ - doc/classes/Vector.src/M000012.html
94
+ - doc/classes/Vector.src/M000013.html
95
+ - doc/classes/Location.src/M000014.html
96
+ - doc/classes/Color.src/M000015.html
97
+ - doc/classes/Color.src/M000016.html
98
+ - doc/classes/Color.src/M000017.html
99
+ - doc/classes/Color.src/M000018.html
100
+ - doc/classes/Color.src/M000019.html
101
+ - doc/classes/Color.src/M000020.html
102
+ - doc/classes/EnvironmentalFactor.src/M000021.html
103
+ - doc/classes/GameObject.src/M000022.html
104
+ - doc/classes/GameObject.src/M000023.html
105
+ - doc/classes/GameObject.src/M000024.html
106
+ - doc/classes/GameObject.src/M000025.html
107
+ - doc/classes/Clock.src/M000026.html
108
+ - doc/classes/Clock.src/M000027.html
109
+ - doc/classes/Environment.src/M000028.html
110
+ - doc/classes/Environment.src/M000029.html
111
+ - doc/classes/Responsive.src/M000030.html
112
+ - doc/classes/Utility.src/M000031.html
113
+ - doc/classes/Utility.src/M000032.html
114
+ - doc/classes/Utility.src/M000033.html
115
+ - doc/classes/Utility.src/M000034.html
116
+ - doc/classes/Utility.src/M000035.html
117
+ - doc/classes/Utility.src/M000036.html
118
+ - doc/classes/Utility.src/M000037.html
43
119
  test_files:
44
120
  - test/test_zyps.rb
45
121
  rdoc_options:
@@ -54,7 +130,6 @@ extra_rdoc_files:
54
130
  executables:
55
131
  - zyps
56
132
  - zyps_demo
57
- - zyps_server
58
133
  extensions: []
59
134
 
60
135
  requirements:
data/bin/zyps_server DELETED
@@ -1,178 +0,0 @@
1
- #!/usr/local/bin/ruby
2
-
3
- # Copyright 2007 Jay McGavren, jay@mcgavren.com.
4
- #
5
- # This file is part of Zyps.
6
- #
7
- # Zyps is free software; you can redistribute it and/or modify
8
- # it under the terms of the GNU Lesser General Public License as published by
9
- # the Free Software Foundation; either version 3 of the License, or
10
- # (at your option) any later version.
11
- #
12
- # This program is distributed in the hope that it will be useful,
13
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- # GNU General Public License for more details.
16
- #
17
- # You should have received a copy of the GNU Lesser General Public License
18
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
-
20
-
21
- begin
22
- require 'optparse'
23
- require 'zyps'
24
- require 'zyps/views/trails'
25
- require 'drb'
26
- rescue LoadError
27
- require 'optparse'
28
- require 'rubygems'
29
- require 'zyps'
30
- require 'zyps/views/trails'
31
- require 'drb'
32
- end
33
-
34
-
35
- #An Environment intended for serving over DRb.
36
- class RemoteEnvironment < Environment
37
- def initialize
38
- super
39
- @objects.extend DRbUndumped
40
- @environmental_factors.extend DRbUndumped
41
- end
42
- def objects=(value)
43
- @objects = value
44
- @objects.extend DRbUndumped
45
- end
46
- def environmental_factors=(value)
47
- @environmental_factors = value
48
- @environmental_factors.extend DRbUndumped
49
- end
50
- end
51
-
52
-
53
- #A server for a Zyps Environment.
54
- class EnvironmentServer
55
-
56
- #Port to open service on.
57
- attr_accessor :port
58
- #Maximum allowed number of objects.
59
- attr_accessor :max_population
60
- #View dimensions.
61
- attr_accessor :view_width, :view_height
62
-
63
- #Set up default values.
64
- def initialize(port = nil, max_population = 25, fps = 60, view_width = 800, view_height = 600)
65
- @port, @max_population, @fps, @view_width, @view_height = port, max_population, fps, view_width, view_height
66
- end
67
-
68
- #Create app window, game environment, view, and network service.
69
- def main
70
-
71
- #A clock to track frames to draw this second.
72
- clock = Clock.new
73
-
74
- #Create a window, and set GTK up to quit when it is closed.
75
- window = Gtk::Window.new
76
- window.signal_connect("delete_event") {false}
77
- window.signal_connect("destroy") {Gtk.main_quit}
78
-
79
- #Add view to window.
80
- view = TrailsView.new(@view_width, @view_height)
81
- window.add(view.canvas)
82
- window.show_all
83
-
84
- #Create environment.
85
- environment = RemoteEnvironment.new
86
- #Point view at environment.
87
- environment.add_observer(view)
88
-
89
- #Create thread to update environment.
90
- update_thread = Thread.new do
91
- begin
92
- loop do
93
- environment.interact
94
- #Control population.
95
- environment.objects.shift while environment.objects.length > @max_population
96
- #Sleep for the rest of this frame.
97
- delay = (1.0 / @fps) - clock.elapsed_time
98
- sleep delay if delay > 0
99
- end
100
- rescue Exception => exception
101
- puts exception, exception.backtrace
102
- end
103
- end
104
-
105
- #Start a network service.
106
- DRb.start_service(
107
- @port ? "druby://localhost:#{@port}" : nil,
108
- environment
109
- )
110
- #If port was automatically chosen, display our URI.
111
- puts DRb.uri unless @port
112
-
113
- #Activate the GUI.
114
- Gtk.main
115
-
116
- end
117
-
118
-
119
- #Set attributes according to command-line arguments.
120
- def process_options(arguments)
121
-
122
- #Set up option parser.
123
- options = OptionParser.new
124
-
125
- #Define valid options.
126
- options.on("-h", "--help", TrueClass, "Display program help.") {
127
- puts options.help
128
- exit
129
- }
130
- options.on(
131
- "-m",
132
- "--max-population [number]",
133
- Integer,
134
- "The maximum number of allowed game objects. 25 by default."
135
- ) {|value| @max_population = value}
136
- options.on(
137
- "-p",
138
- "--port [number]",
139
- Integer,
140
- "Port number to run the server on. If not defined, next available one will be selected and the URI printed to STDOUT."
141
- ) {|value| @port = value}
142
- options.on(
143
- "-f",
144
- "--fps [frames]",
145
- Integer,
146
- "Number of frames to draw per second."
147
- ) {|value| @fps = value}
148
- options.on(
149
- "--view-width [pixels]",
150
- Integer,
151
- "Window width. 800 by default."
152
- ) {|value| @view_width = value}
153
- options.on(
154
- "--view-height [pixels]",
155
- Integer,
156
- "Window height. 600 by default."
157
- ) {|value| @view_height = value}
158
-
159
- #Parse the options, printing usage if parsing fails.
160
- options.parse(arguments) rescue puts "#{$!}\nType '#{$0} --help' for valid options."
161
-
162
- end
163
-
164
-
165
- end
166
-
167
-
168
- begin
169
- #Create a server.
170
- server = EnvironmentServer.new
171
- #Parse the command line.
172
- server.process_options(ARGV)
173
- #Start the server.
174
- server.main
175
- rescue => exception
176
- #Print error to STDERR and exit with an abnormal status.
177
- abort "Error: " + exception.message + exception.backtrace.join("\n")
178
- end