]>
Commit | Line | Data |
---|---|---|
1 | BUGS: | |
2 | ||
3 | ||
4 | * multi-user "select city" dialog | |
5 | ** Add about, configure buttons | |
6 | ** draw and erase on map window | |
7 | ||
8 | * configuration panel | |
9 | ** players | |
10 | ** keys | |
11 | ||
12 | * sim. | |
13 | ** command to set process nice | |
14 | ** first editor on a display gets a control window | |
15 | ||
16 | ||
17 | * control window. | |
18 | ** file menu. | |
19 | *** About (dialog) | |
20 | *** LoadScenario (confirm) | |
21 | *** StartNewCity (confirm) | |
22 | *** LoadCity (file dialog) | |
23 | *** SaveCity (file dialog if no file name) | |
24 | *** SaveCityAs (file dialog) | |
25 | *** PrintCity (print dialog) | |
26 | *** GetKey (key dialog) | |
27 | *** QuitMicropolis (confirm) | |
28 | ** options menu | |
29 | *** auto budget, auto goto, auto bulldoze, disasters, sound | |
30 | ** disasters menu | |
31 | *** monster, fire, flood, air crash, tornado, earthquake, meltdown | |
32 | ** window menu | |
33 | defer creating windows | |
34 | ||
35 | ||
36 | * more controls | |
37 | ** command field | |
38 | *** type in arguments to menu commands | |
39 | *** interpret tcl | |
40 | ** icon for each window opened and openable (dim) | |
41 | *** window name, display name, user name | |
42 | *** click opened icon to bring to top | |
43 | *** click openable icon to make new window | |
44 | *** make nice icons | |
45 | *** display nice icons in x window icons too | |
46 | *** save window layout | |
47 | *** restore window layout | |
48 | ** speed slider | |
49 | ** priority slider | |
50 | ||
51 | ||
52 | * editor window. | |
53 | ** editor view. | |
54 | ** tool pallet. | |
55 | ** various text fields. | |
56 | *** funds, date, message, cost. | |
57 | ** initialize controls | |
58 | ** autogoto is a per-editor flag | |
59 | ** autogoto toggle | |
60 | ** coal/nuclear toggle | |
61 | ** update frequency slider | |
62 | ** cursor tool outline (preview?) | |
63 | ** pie menus | |
64 | ** earthquake | |
65 | ** demand gauge | |
66 | ** auto scroll | |
67 | ** constrained drag | |
68 | ** arrow keys pan | |
69 | ** fix autorepeat problem | |
70 | ||
71 | ||
72 | * map window. | |
73 | ** set window title | |
74 | ** initialize pallet and menus | |
75 | ** legend tied to map state | |
76 | ** menu buttons that appear when needed | |
77 | *** zone type | |
78 | *** population type | |
79 | *** service type | |
80 | ** disable manipulation of other peoples maps (unless you're god) | |
81 | ** click on a rectangle to bring that editor to the top | |
82 | ** create a new editor by clicking on the small map | |
83 | ** open new display by typing in a display name and creating a new editor | |
84 | ** update frequency slider | |
85 | ||
86 | * budget window. | |
87 | ** set window title | |
88 | ** hour glass | |
89 | ** auto budget behavior | |
90 | do we or don't we pause the simulator? | |
91 | do we or don't we bring up other peoples budget window? | |
92 | when AutoBudget, simulator continues, and just your window opens. | |
93 | when not AutoBudget, simulator pauses, so everyones window opens, | |
94 | hour glasses starts | |
95 | how about we just don't pause, and everyone controls their own window. | |
96 | ||
97 | * graph window | |
98 | ** set window title | |
99 | ** graph object | |
100 | *** GraphRange ?10|120? | |
101 | *** GraphType 0..5 ?0..1? | |
102 | *** set window title | |
103 | ||
104 | ||
105 | * dialogs | |
106 | ||
107 | ** start scenario. | |
108 | *** 6 scenario buttons, labeled. | |
109 | *** new city. | |
110 | *** load city. | |
111 | *** get key | |
112 | *** dynamic scenario description | |
113 | ||
114 | ** generate city | |
115 | *** label "creating new map" | |
116 | *** city name text field | |
117 | *** city level buttons with labels | |
118 | *** map view | |
119 | *** generate new terrain | |
120 | *** use this map | |
121 | *** load city | |
122 | *** play scenario | |
123 | *** get key | |
124 | ||
125 | ** load | |
126 | *** file dialog | |
127 | ||
128 | ** save | |
129 | *** file dialog | |
130 | ||
131 | ||
132 | *** mono / color | |
133 | *** small map / large map | |
134 | *** printer command text field | |
135 | *** print button | |
136 | ||
137 | ** key | |
138 | *** Instructions, Address, Phone Number (labels) | |
139 | *** License Type: Node/Network (exclusive settings) | |
140 | *** License Code: (field) | |
141 | *** Enter Key: (text field) | |
142 | *** Install Key (button) | |
143 | ||
144 | ** zone status | |
145 | *** zone type label | |
146 | *** Density, Value, Crime, Pollution, Growth (fields) | |
147 | ||
148 | ** notice | |
149 | *** city size | |
150 | **** city size label, description message | |
151 | **** town, city, capital, metropolis, megalopolis, winner | |
152 | *** warning messages | |
153 | **** warning name, description message | |
154 | **** pollution, crime, traffic, monster, meltdown, riots, demo, impeachment | |
155 | ||
156 | ** about | |
157 | *** text, pictures, noises | |
158 | ||
159 | ** confirm | |
160 | *** message, yes button, no button | |
161 | ||
162 | ** error | |
163 | *** message | |
164 | *** ok | |
165 | ||
166 | * evaluation window. | |
167 | ||
168 | ||
169 | * help | |
170 | ||
171 | ||
172 | * printing | |
173 | ||
174 | ||
175 | * sound | |
176 | ||
177 | ||
178 | * new elm interface | |
179 | ||
180 | ||
181 | * tk | |
182 | ** masked pixmap object for canvases (or a regular componant) | |
183 | ** pie menus | |
184 | ||
185 | ||
186 | ||
187 | ||
188 | * stacks | |
189 | ||
190 | ** Audio | |
191 | implement audio interface | |
192 | ||
193 | ** Micropolis | |
194 | About box | |
195 | *** messages | |
196 | /StartGame { % HomeDir ResourceDir StackDir KeyDir => - | |
197 | /ReallyStartGame { % - => - | |
198 | /NewGame { % - => - | |
199 | /StartLoad { % - => - | |
200 | /StartScenario { % name|number => - | |
201 | /DoStartNewCity { % - => - | |
202 | /DoPlayNewCity { % - => - | |
203 | /DoLoseGame { % - => - | |
204 | /DoLoadScenario { % - => - | |
205 | /DidLoadScenario { % - => - | |
206 | /DoLoadCity { % - => - | |
207 | /HeyLoadCity { % name => - | |
208 | /CancelLoadCity { % - => - | |
209 | /DidLoadCity { % - => - | |
210 | /DidntLoadCity { % error => - | |
211 | /DoSaveCity { % - => - | |
212 | /DoSaveCityAs { % - => - | |
213 | /HeySaveCityAs { % name => - | |
214 | /DidSaveCity { % - => - | |
215 | /DidntSaveCity { % error => - | |
216 | /DoGetKey { % - => - | |
217 | /DoQuitMicropolis { % - => - | |
218 | /InitializeSound { % - => - | |
219 | /ShutDownSound { % - => - | |
220 | /SetUserSound { % bool => - | |
221 | /MakeSound { % n => - | |
222 | /StartSound { % n => - | |
223 | /StopSound { % n => - | |
224 | /SoundOff { % - => - | |
225 | /UckfayEthayOlicepay { % - => - | |
226 | /PrintLargeMap { % - => - | |
227 | /PrintSmallMap { % - => - | |
228 | /HyperDrawLargeMap { % - => - | |
229 | /HyperDrawSmallMap { % - => - | |
230 | /HyperDrawCityView { % - => - | |
231 | /DoPrintCity { % - => - | |
232 | /StartElmd { % - => - | |
233 | ||
234 | ** Budget | |
235 | Tax Rate Percent: (slider 0% 20%) | |
236 | /SetTaxRate | |
237 | Taxes Collected: (field) | |
238 | Amount Requested (column heading) | |
239 | Amount Allocated (column heading) | |
240 | Funding Level (column heading) | |
241 | Fire Fund: (field) (numeric) (slider 0% 100%) | |
242 | /SetFireFund | |
243 | Police Fund: (field) (numeric) (slider 0% 100%) | |
244 | /SetPoliceFund | |
245 | Trans. Fund: (field) (numeric) (slider 0% 100%) | |
246 | /SetTransFund | |
247 | Cash Flow: (field) | |
248 | Previous Funds: (field) | |
249 | Current Funds: (field) | |
250 | Hour Glass (inactivity timer) | |
251 | goes for 20 seconds then takes down budget window and continues | |
252 | Go With These Figures (button) | |
253 | /GoWithTheseFigures /ResumeSim /Hide | |
254 | *** messages | |
255 | /SetBudget { % [($flow) ($previous) () ($current)] ($collected) tax => - | |
256 | /SetMaxFunds { % [($road)] [road] [($police)] [police] [($fire)] [fire] => - | |
257 | /StartWaiting { % - => - | |
258 | shows hour glass | |
259 | ||
260 | ** Editor | |
261 | File (menu) | |
262 | { NIL /DoLoadScenario /Micropolis Send } | |
263 | { NIL /DoStartNewCity /Micropolis Send } | |
264 | { NIL /DoLoadCity /Micropolis Send } | |
265 | { NIL /DoSaveCity /Micropolis Send } | |
266 | { NIL /DoSaveCityAs /Micropolis Send } | |
267 | { NIL /DoPrintCity /Micropolis Send } | |
268 | { NIL /DoGetKey /Micropolis Send } | |
269 | { NIL /DoQuitMicropolis /Micropolis Send } | |
270 | Options (menu) | |
271 | [exch] /SetOptions ClientSend | |
272 | Disasters (menu) | |
273 | { NIL /MakeMonster ClientSend } | |
274 | { NIL /MakeFire ClientSend } | |
275 | { NIL /MakeFlood ClientSend } | |
276 | { NIL /MakeAirCrash ClientSend } | |
277 | { NIL /MakeTornado ClientSend } | |
278 | { NIL /MakeEarthquake ClientSend } | |
279 | { NIL /MakeMeltdown ClientSend } | |
280 | Time (menu) | |
281 | /Action { | |
282 | [exch] /SetSpeed ClientSend | |
283 | } def | |
284 | Priority (menu) | |
285 | /Action { | |
286 | { {1000 5} {500 4} {250 3} {120 2} {60 0} {25 0} {0 0} | |
287 | } exch get cvx exec | |
288 | [exch] /SetNice ClientSend | |
289 | [exch] /SetDelay ClientSend | |
290 | } def | |
291 | Windows (menu) | |
292 | { NIL /UpdateBudget ClientSend } | |
293 | { NIL /UpdateEvaluation ClientSend | |
294 | /MicropolisEvaluation ShowStack } | |
295 | { /MicropolisGraph ShowStack } | |
296 | { /MicropolisSurveyor ShowStack } | |
297 | { /MicropolisNotice ShowStack } | |
298 | { /MicropolisMap ShowStack } | |
299 | { /MicropolisEditor ShowStack } | |
300 | Funds: (field) | |
301 | Date: (field) | |
302 | Message: (field) | |
303 | Editing Icons (exclusive settings) | |
304 | /InitGame | |
305 | /DoSetWandState /SetPowerType | |
306 | Demand: (gauge) | |
307 | /SetDemand { % r c i => - | |
308 | Zoom In/Out (rocker switch) | |
309 | Zoom Reset (button) | |
310 | Tool Cost: (field) | |
311 | Editor View | |
312 | Editing Icons (pie menu) | |
313 | /DoSetWandState | |
314 | Cursor outline showing where tool will operate | |
315 | color codes for tools | |
316 | query gray | |
317 | bulldozer brown | |
318 | road black white | |
319 | wire black yellow | |
320 | rail black brown | |
321 | park brown green | |
322 | residential green | |
323 | commercial blue | |
324 | industrial yellow | |
325 | police brown blue | |
326 | fire brown red | |
327 | stadium gray green | |
328 | coal gray yellow | |
329 | seaport gray blue | |
330 | airport gray white | |
331 | nuclear gray yellow | |
332 | monster orange | |
333 | helicopter red | |
334 | ||
335 | draw (colored pen) | |
336 | ||
337 | ||
338 | ||
339 | Panning with arrow keys | |
340 | Panning by dragging | |
341 | Dynamic panning & bouncing | |
342 | Earthquake | |
343 | Mouse tool handling | |
344 | Tools connect corners | |
345 | Constrained drag | |
346 | Auto scroll | |
347 | *** messages | |
348 | /InitGame { % - => - | |
349 | /DoEarthQuake { % - => - | |
350 | /DoSetWandState { % state => - | |
351 | /JustSetWandState { % n => - | |
352 | /SetMessage { % str => - | |
353 | ||
354 | ** Evaluation | |
355 | Public Opinion (column header) | |
356 | Is the mayor doing a good job? (field) | |
357 | % yes, % no (fields) | |
358 | What are the worst problems? (field) | |
359 | % problem, ... (fields) | |
360 | Statistics (column header) | |
361 | Population, Net Migration, Assessed, Value, Category (fields) | |
362 | Overall City Score (field) | |
363 | current score (field) | |
364 | anual change (field) | |
365 | *** messages | |
366 | /SetEvaluation { % [strings] => - | |
367 | ||
368 | ** Graph | |
369 | Graph Plot | |
370 | /InitGraph /GraphMe | |
371 | /SetGraph { % [range year month res com ind money crime pollution] => - | |
372 | 10/120 Year (exclusive toggle) | |
373 | /SetGraphRange | |
374 | Residential, Commercial, Industrial, Money, Crime, Pollution (toggles) | |
375 | *** messages | |
376 | ||
377 | ** Map | |
378 | Scenerio Screen | |
379 | Noisy Grill (toggle) | |
380 | Duck (button) | |
381 | Key (button) | |
382 | New City, Load City (buttons) | |
383 | 6 scenarios (buttons) | |
384 | scenario names (labels) | |
385 | Map Background | |
386 | Map View | |
387 | Shows rectangles for editor views | |
388 | Drag rectangles to scroll editor views | |
389 | Terrain Generator | |
390 | Generate New Terrain, Use This Map (buttons) | |
391 | City Map | |
392 | Map State Icons (exclusive settings) | |
393 | Zone Type (menu) | |
394 | Population Type (menu) | |
395 | Service Type (menu) | |
396 | /OnInit | |
397 | /SetMapState /SetZoneType /SetPopNRate /SetPoliceRadius | |
398 | Legend | |
399 | Max/Min / +/- / none (picture) | |
400 | *** messages | |
401 | /InitGame { % - => - | |
402 | ||
403 | ** Notice | |
404 | Welcome Notice | |
405 | New City (dialog) | |
406 | Creating New Map ... (label) | |
407 | City Name: (text field) | |
408 | Game Level: Easy/Medium/Hard (exclusive settings) | |
409 | Are You Sure? | |
410 | Yes, No (buttons) | |
411 | Really Quit? | |
412 | Save City, Really Quit, Never Mind (buttons) | |
413 | Print City | |
414 | Monochrome/Color (exclusive settings) | |
415 | Edit Small Map, Edit Large Map, Edit City View (buttons) | |
416 | Printer Command: (text field) | |
417 | Print Small Map, Print Large Map, Show Printer Queue (buttons) | |
418 | Install Key | |
419 | Instructions, Address, Phone Number (labels) | |
420 | License Type: Node/Network (exclusive settings) | |
421 | License Code: (field) | |
422 | Enter Key: (text field) | |
423 | Install Key (button) | |
424 | Earthquake Control | |
425 | Richter Scale: (slider .1% 10%) | |
426 | Earthquake (button) | |
427 | Scenario Descriptions | |
428 | Zone Status | |
429 | Zone Type (field) | |
430 | Density, Value, Crime, Pollution, Growth (fields) | |
431 | Game Level Notices | |
432 | Warnings | |
433 | *** messages | |
434 | /InitGame { % - => - | |
435 | /ShowNotice { % card => - | |
436 | /ShowPicture { % id => - | |
437 | /ShowZoneStatus { % type [s0 s1 s2 s3 s4] => - | |
438 | /AreYouSure? { % yesResponse => - | |
439 | /Respond { % target thing|null => - | |
440 | /Yes { % - => - | |
441 | /No { % - => - | |
442 | ||
443 | ** Surveyor | |
444 | Editor View(s) | |
445 | Zoom In/Out (rocker switch) | |
446 | Zoom Reset (button) | |
447 | Single/Multiple View (toggle) | |
448 | Click on surveyor view to center editor there | |
449 | *** messages | |
450 | /AutoGoto { % x y msg => - | |
451 | /AutoGotoClick { % - => - | |
452 | ||
453 | ** Help | |
454 | Help Text Display | |
455 | Done (button) | |
456 | ||
457 | ||
458 | ||
459 | Dullsville | |
460 | Philip Glass, Powaqqatsi, That Place | |
461 | San_Francisco | |
462 | Grateful Dead, Fire on the Mountain | |
463 | Philip Glass, Powaqqatsi, Serra Pelada | |
464 | Hamburg | |
465 | Yello, Oh Yeah | |
466 | Bern | |
467 | Yello, RubberBandMan | |
468 | Philip Glass, Powaqqatsi, CAUGHT! | |
469 | Tokyo | |
470 | Percussions D'Asie | |
471 | Philip Glass, Powaqqatsi, Serra Pelada | |
472 | Detroit | |
473 | Boston | |
474 | Rio_de_Janeiro | |
475 | Philip Glass, Powaqqatsi, From Egypt |