This repository has been archived by the owner on May 5, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.tcl
323 lines (274 loc) · 35.1 KB
/
main.tcl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
set douala_yaounde_train "{121 591} {122 591} {123 591} {123 592} {124 592} {125 592} {125 593} {126 593} {127 593} {128 593} {128 594} {129 594} {129 595} {130 595} {131 595} {132 595} {132 596} {133 596} {134 596} {135 596} {136 596} {136 597} {137 597} {138 597} {138 598} {139 598} {139 599} {140 599} {141 599} {141 600} {142 600} {143 600} {144 600} {145 600} {146 600} {147 600} {147 601} {148 601} {149 601} {149 602} {150 602} {150 603} {151 603} {151 604} {151 605} {152 605} {152 606} {153 606} {153 607} {154 607} {155 607} {155 608} {156 608} {157 608} {158 608} {159 608} {159 609} {160 609} {161 609} {162 609} {162 610} {163 610} {163 611} {164 611} {165 612} {166 612} {166 613} {167 613} {168 613} {168 614} {169 614} {170 614} {170 615} {171 615} {172 615} {173 615} {174 615} {175 615} {176 615} {177 616} {178 616} {179 616} {180 616} {181 616} {182 616} {183 616} {184 616} {184 617} {185 617} {186 617} {187 617} {188 617} {189 617} {189 618} {190 618} {191 618} {191 619} {192 619} {193 619} {194 619} {195 619} {195 620} {196 620} {197 620} {198 620} {199 620} {199 621} {200 621} {201 621} {202 622} {202 623} {203 623} {204 623} {205 623} {206 623} {206 624} {207 624} {208 624} {209 624} {210 624} {211 624} {212 624} {213 624} {214 624} {215 624} {216 625} {217 625} {218 625} {219 625} {220 625} {221 625} {222 625} {222 626} {223 626} {224 626} {225 626} {225 627} {226 627} {227 628} {228 628} {229 628} {229 629} {230 629} {231 629} {232 629} {233 630} {233 631} {234 631} {235 631} {236 631} {237 631} {238 631} {238 632} {239 632} {240 632} {241 632} {242 632} {243 632} {244 632} {245 632} {246 632} {247 632} {248 632} {249 632} {250 632} {251 632} {251 633} {252 633} {253 633} {254 633} {255 633} {256 633} {257 633} {258 633} {259 633} {260 633} {261 633} {262 633} {263 633} {264 633} {265 633} {266 633} {267 633} {268 633} {269 633} {270 633} {271 633} {272 633} {273 633} {274 633} {275 633} {276 633} {277 633} {278 633} {279 633} {280 633} {281 633} {282 633} {282 632} {283 632} {284 632} {284 631} {285 631} {285 630} {286 629} {287 629} {287 628} {288 628} {288 627} {288 626} {289 626} {289 625} {289 624} {290 624} {291 624} {291 623} {291 622} {292 622} {292 621} {292 620} {293 620} {293 619} {294 618} {295 618} {295 617} {296 617} {296 616} {297 616} {297 615} {297 614} {298 614} {298 613} {299 613} {300 613} {300 612} {301 612} {301 611} {301 610} {301 609} {302 609} {302 608} {303 608} {304 608} {304 607}"
set yaounde_ngaoundere_train "{303 603} {303 602} {303 601} {303 600} {303 599} {303 598} {303 597} {303 596} {304 596} {304 595} {304 594} {304 593} {304 592} {304 591} {304 590} {304 589} {304 588} {304 587} {304 586} {304 585} {304 584} {304 583} {304 582} {304 581} {304 580} {305 580} {305 579} {305 578} {306 577} {306 576} {306 575} {307 575} {307 574} {307 573} {308 573} {308 572} {308 571} {309 571} {310 571} {311 571} {311 570} {312 570} {312 569} {313 569} {314 569} {315 569} {315 568} {316 567} {317 567} {318 567} {318 566} {319 566} {320 565} {321 565} {322 565} {323 565} {323 564} {324 563} {325 563} {326 563} {327 562} {328 562} {328 561} {329 561} {330 561} {331 560} {332 559} {333 559} {333 558} {334 558} {335 558} {335 557} {336 557} {337 557} {337 556} {338 556} {339 556} {339 555} {340 555} {341 554} {342 554} {343 554} {343 553} {344 553} {345 553} {345 552} {346 552} {347 552} {348 552} {349 551} {349 550} {350 550} {351 550} {351 549} {352 549} {353 549} {353 548} {354 548} {355 548} {355 547} {356 547} {357 547} {357 546} {358 546} {359 546} {360 546} {361 546} {361 545} {362 545} {363 545} {364 545} {364 544} {365 544} {366 544} {366 543} {367 543} {368 542} {369 542} {369 541} {370 541} {371 541} {372 541} {372 540} {373 540} {374 539} {374 538} {375 538} {376 538} {376 537} {377 537} {378 537} {378 536} {379 536} {380 536} {380 535} {380 534} {381 534} {382 534} {382 533} {383 533} {384 533} {384 532} {385 532} {386 532} {386 531} {387 531} {387 530} {388 530} {389 530} {390 529} {391 529} {392 529} {392 528} {393 528} {394 528} {395 527} {396 527} {397 527} {397 526} {398 526} {398 525} {399 525} {400 525} {401 525} {401 524} {402 524} {402 523} {403 523} {403 522} {404 522} {405 522} {405 521} {406 521} {406 520} {407 520} {407 519} {408 519} {409 518} {410 517} {411 517} {411 516} {412 516} {413 516} {414 516} {414 515} {415 515} {416 515} {416 514} {417 514} {417 513} {418 513} {419 513} {420 513} {421 512} {422 512} {423 512} {424 512} {424 511} {425 511} {426 511} {427 511} {428 511} {429 511} {430 511} {430 510} {431 510} {432 510} {433 510} {433 509} {434 509} {435 509} {436 509} {437 509} {438 508} {439 508} {440 508} {441 508} {442 507} {443 507} {444 507} {445 507} {446 507} {447 507} {448 507} {449 507} {450 507} {451 507} {452 507} {453 507} {454 507} {455 507} {456 507} {457 507} {458 507} {459 507} {460 507} {461 507} {462 507} {463 507} {464 507} {465 507} {466 507} {467 507} {468 507} {469 507} {470 507} {471 507} {472 507} {473 507} {474 507} {475 507} {476 507} {477 507} {478 507} {479 507} {480 507} {480 506} {481 506} {482 506} {483 506} {484 506} {484 505} {485 505} {486 505} {486 504} {487 504} {488 504} {488 503} {489 503} {489 502} {490 501} {490 500} {491 500} {491 499} {491 498} {491 497} {492 497} {492 496} {492 495} {492 494} {492 493} {492 492} {492 491} {492 490} {492 489} {492 488} {492 487} {492 486} {492 485} {492 484} {493 484} {493 483} {493 482} {493 481} {493 480} {493 479} {493 478} {494 477} {494 476} {494 475} {494 474} {494 473} {494 472} {494 471} {495 471} {495 470} {495 469} {496 468} {496 467} {496 466} {496 465} {496 464} {496 463} {496 462} {496 461} {496 460} {496 459} {496 458} {496 457} {496 455} {496 454} {496 453} {496 452} {496 451} {496 450} {497 450} {497 449} {497 448} {497 447} {497 446} {497 445} {497 444} {497 443} {497 442} {497 441} {497 440} {497 439} {497 438} {497 437} {497 436} {497 435} {497 434} {497 433} {497 432} {497 431} {497 430} {497 429} {497 428} {497 427} {497 426} {497 425} {497 424} {497 423} {497 422} {497 421} {498 420} {498 419} {498 418} {498 417} {498 416} {498 415} {498 414} {498 413} {498 412} {498 411} {498 410} {498 409} {498 408} {498 407} {498 406} {498 405} {498 404} {498 403} {498 402} {497 402} {497 401} {497 400} {497 399} {497 398} {496 398} {496 397} {495 397} {495 396} {495 395} {495 394} {495 393} {494 393} {494 392} {494 391} {494 390} {493 390} {493 389} {493 388} {493 387} {493 386} {492 386} {492 385} {492 384} {492 383} {491 383} {491 382} {491 381} {491 380} {491 379} {491 378} {490 377} {490 376} {490 375} {490 374} {490 373} {490 372} {489 372} {489 371} {489 370} {489 369} {489 368} {489 367} {489 366} {489 365} {489 364} {488 364} {488 363} {488 362} {488 361} {488 360} {488 359} {488 358} {487 357} {487 356} {487 355} {487 354} {487 353} {487 352} {487 351} {487 350} {487 349} {487 348} {487 347} {487 346} {487 345} {488 344} {488 343} {488 342} {489 342} {489 341} {489 340} {490 340} {490 339} {490 338} {491 338} {491 337} {491 336} {492 336} {492 335} {492 334} {492 333} {492 332} {493 332} {493 331} {493 330} {493 329} {493 328} {494 327} {494 326} {494 325} {495 325} {495 324} {496 324} {496 323} {496 322} {497 322} {497 321} {497 320} {497 319} {498 319} {498 318} {498 317} {498 316} {498 315} {498 314} {498 313} {498 312} {498 311} {498 310} {498 309} {498 308} {498 307} {499 307} {500 307} {500 306} {500 305} {500 303} {500 302} {500 301} {500 300} {500 299} {500 298} {500 297} {500 296} {500 295} {500 294} {500 293} {500 292} {500 291} {500 290} {500 289} {500 288} {500 287} {500 286} {500 285} {501 285} {501 284} {501 283} {501 282} {502 281} {502 280} {503 279} {503 278} {504 278} {505 278} {505 277} {506 277} {507 277} {507 278} {507 279} {508 279} {508 280}"
set yaounde_bertoua_vehicule "{288 615} {289 615} {290 615} {291 615} {291 614} {292 614} {293 614} {294 614} {295 614} {295 613} {296 613} {297 613} {298 613} {299 613} {300 613} {300 612} {301 612} {302 612} {303 611} {304 611} {304 610} {305 610} {306 610} {307 609} {308 609} {309 609} {310 609} {311 609} {312 609} {313 609} {314 609} {314 608} {315 608} {316 608} {317 608} {318 608} {318 607} {319 607} {319 606} {320 606} {321 606} {322 606} {322 605} {323 605} {324 605} {325 604} {326 604} {327 604} {328 604} {329 604} {330 604} {331 604} {332 604} {333 604} {334 603} {335 603} {336 603} {337 603} {338 603} {339 603} {340 603} {341 603} {342 603} {343 603} {344 603} {345 603} {346 603} {347 603} {348 603} {349 603} {350 603} {351 603} {352 603} {353 603} {354 603} {355 603} {356 603} {357 603} {358 603} {358 602} {359 602} {360 602} {361 602} {362 602} {363 602} {364 602} {365 602} {366 602} {367 602} {368 602} {369 602} {370 602} {371 602} {372 602} {373 602} {374 602} {375 602} {376 602} {377 602} {378 602} {379 602} {380 602} {381 602} {382 602} {383 602} {384 602} {385 602} {386 602} {387 602} {388 602} {389 602} {390 602} {391 602} {392 602} {393 602} {394 602} {395 602} {396 602} {397 602} {398 602} {399 602} {400 602} {401 602} {402 602} {403 602} {404 602} {405 602} {406 602} {407 602} {408 602} {409 602} {410 602} {411 602} {412 602} {413 602} {414 602} {415 602} {416 602} {417 602} {418 602} {419 602} {420 602} {421 602} {422 602} {423 602} {424 602} {425 602} {426 602} {427 602} {428 601} {429 601} {430 601} {431 600} {432 600} {433 599} {433 598} {434 598} {435 597} {435 596} {436 596} {437 595} {438 595} {439 595} {439 594} {440 594} {441 594} {442 594} {442 593} {443 593} {444 593} {445 593} {446 593} {447 593} {448 592} {449 592} {450 592} {451 592} {452 592} {453 592} {454 592} {455 592} {456 592} {457 592} {458 592} {459 592} {460 592} {460 591} {461 591} {462 591} {463 591} {464 591} {465 591} {466 591} {467 591} {468 591} {469 591} {470 591} {471 591} {472 591} {473 591} {474 591} {474 590} {475 590} {476 590} {476 589} {477 589} {478 589} {478 588} {479 588} {479 587} {480 586} {480 585} {481 585} {481 584} {481 583} {482 583} {482 582} {482 581} {483 581} {483 580} {484 580} {485 579} {486 579} {486 578} {487 578} {487 577} {488 577} {489 577} {489 576} {490 576} {490 575} {491 575} {492 574} {493 573} {494 573} {494 572} {495 571} {496 571} {497 570} {497 569} {498 569} {499 568} {500 568} {501 567} {502 566} {502 565} {503 565} {503 564} {504 564} {505 564} {505 563} {506 563} {507 562} {508 561} {508 560} {509 560} {509 559} {510 559} {510 558} {511 558} {511 557} {511 556} {512 556} {512 555} {513 555} {514 554} {514 553} {514 552} {515 551} {515 550} {515 549} {516 548} {516 547} {516 546} {517 545} {518 544} {518 543} {519 543} {519 542} {519 541} {520 541} {520 540}"
set ngaoundere_ngaroua_vehicule "{507 278} {507 277} {507 276} {507 275} {507 274} {507 273} {507 272} {508 271} {508 270} {508 269} {508 268} {508 267} {508 266} {508 265} {508 264} {508 263} {508 262} {508 261} {508 260} {508 259} {508 258} {508 257} {508 256} {508 255} {508 254} {508 253} {508 252} {508 251} {508 250} {508 249} {508 248} {508 247} {509 246} {509 245} {509 244} {509 243} {509 242} {510 241} {510 240} {510 239} {510 238} {511 238} {511 237} {511 236} {511 235} {511 234} {511 233} {511 232} {511 231} {511 230} {512 230} {512 229} {512 228} {512 227} {512 226} {512 225} {512 224} {512 223} {513 223} {513 222} {513 221} {513 220} {513 219} {513 218} {513 217} {514 217} {514 216} {514 215} {515 215} {515 214} {515 213} {515 212} {516 212} {516 211} {516 210} {516 209} {517 209} {517 208} {517 207} {518 207} {518 206} {519 206} {520 206} {520 205} {520 204} {521 204} {521 203} {521 202} {522 202} {522 201} {523 201} {523 200} {523 199} {523 198} {523 197} {523 196} {523 195} {524 195} {524 194} {524 193} {524 192} {524 191} {524 190} {524 189} {524 188} {524 187} {523 187} {523 186} {522 186} {521 186} {520 186} {519 186} {518 186} {518 185} {517 185} {516 185} {516 184} {515 184} {514 184} {513 184} {513 183} {512 183} {512 182} {511 182} {510 181} {510 180} {509 180} {509 179} {509 178} {509 177} {509 176} {508 176} {508 175} {508 174} {508 173} {508 172} {507 172} {507 171} {507 170} {507 169} {506 169} {506 168} {505 168} {505 167} {505 166} {505 165} {505 164} {505 163} {505 162} {505 161} {505 160} {505 159} {505 158} {504 157} {504 156} {504 155} {504 154} {504 153} {504 152} {504 151} {504 150} {504 149} {504 148} {504 147} {504 146} {504 145} {504 144} {504 143} {504 142} {504 141} {504 140} {504 139} {504 138} {504 137} {504 136} {504 135} {504 134} {504 133} {504 132} {504 131} {504 130} {503 130} {503 129} {503 128} {503 127} {503 126} {503 125} {502 125} {502 124} {501 124} {501 123} {501 122} {500 122} {500 121} {500 120} {499 120} {499 119} {498 119} {497 118} {496 118} {496 117} {496 116} {495 116} {495 115} {495 114} {494 114} {494 113} {493 113} {493 112} {493 111} {492 111} {492 110} {491 110}"
set yaounde_ebolowa_vehicule "{305 608} {305 609} {306 610} {307 611} {307 612} {307 613} {307 614} {307 615} {307 616} {307 617} {307 618} {307 619} {307 620} {307 621} {307 622} {307 623} {307 624} {307 625} {307 626} {307 627} {307 628} {307 629} {307 630} {307 631} {306 631} {306 632} {306 633} {306 634} {305 634} {305 635} {305 636} {305 637} {305 638} {305 639} {305 640} {305 641} {305 642} {305 643} {305 644} {304 644} {304 645} {304 646} {303 646} {303 647} {302 647} {302 648} {302 649} {301 649} {301 650} {301 651} {300 651} {300 652} {299 652} {299 653} {298 653} {297 653} {297 654} {296 655} {295 655} {295 656} {294 656} {293 656} {293 657} {292 657} {292 658} {292 659} {292 660} {291 660} {291 661} {291 662} {291 663} {290 663} {290 664} {290 665} {290 666} {290 667} {290 668} {290 669} {290 670} {290 671} {290 672} {291 672} {291 673} {292 673} {292 674} {292 675} {292 676} {292 677} {292 678} {292 679} {292 680} {292 681} {292 682} {292 683} {292 684} {292 685} {292 686} {292 687} {291 687} {290 687} {289 687} {289 688} {288 688} {287 688} {286 688} {285 688} {284 688} {283 688} {282 688} {282 689} {281 689} {280 689} {279 689} {278 689} {277 689} {277 690} {276 690} {275 690} {274 690} {273 690} {272 690} {271 690} {270 690} {270 691} {269 691} {269 692} {268 692} {267 692} {266 692} {265 692} {265 691}"
set douala_ebolowa_vehicule "{119 588} {120 588} {121 588} {122 588} {122 589} {123 589} {124 589} {125 590} {126 590} {126 591} {127 591} {127 592} {128 592} {129 593} {130 593} {131 593} {132 593} {133 593} {134 593} {135 593} {136 593} {137 594} {138 594} {139 594} {140 594} {141 594} {141 595} {142 595} {142 596} {143 596} {143 597} {144 597} {144 598} {145 598} {146 598} {146 599} {147 599} {148 600} {149 601} {150 601} {151 601} {151 602} {152 602} {152 603} {153 603} {154 603} {154 604} {155 605} {155 606} {156 606} {156 607} {156 608} {157 609} {157 610} {157 611} {158 611} {158 612} {158 613} {158 614} {158 615} {158 616} {158 617} {159 617} {159 618} {159 619} {159 620} {159 621} {160 621} {160 622} {160 623} {160 624} {160 625} {160 626} {160 627} {161 627} {161 628} {161 629} {161 630} {161 631} {161 632} {162 632} {162 633} {162 634} {162 635} {162 636} {162 637} {162 638} {163 638} {163 639} {163 640} {163 641} {163 642} {163 643} {163 644} {163 645} {163 646} {163 647} {163 648} {163 649} {163 650} {163 651} {163 652} {163 653} {163 654} {162 654} {162 655} {162 656} {161 656} {161 657} {161 658} {161 659} {160 659} {160 660} {159 660} {159 661} {158 661} {158 662} {157 662} {157 663} {157 664} {156 664} {156 665} {156 666} {155 666} {155 667} {155 668} {155 669} {154 669} {154 670} {153 670} {153 671} {153 672} {152 672} {152 673} {151 673} {151 674} {151 675} {150 675} {150 676} {149 677} {149 678} {149 679} {149 680} {148 680} {148 681} {147 682} {147 683} {147 684} {146 684} {146 685} {145 685} {145 686} {145 687} {144 687} {144 688} {144 689} {144 690} {144 691} {144 692} {144 693} {145 693} {145 694} {146 694} {146 695} {147 695} {147 696} {148 696} {149 696} {150 696} {151 696} {152 696} {153 696} {154 697} {155 697} {156 697} {157 698} {158 698} {159 698} {160 698} {161 698} {162 698} {163 698} {164 698} {164 699} {165 699} {166 699} {167 699} {167 700} {168 700} {169 700} {170 700} {171 700} {172 700} {172 701} {173 701} {174 701} {175 701} {176 701} {177 701} {177 702} {178 702} {179 702} {180 702} {181 702} {182 702} {183 702} {184 702} {185 702} {186 702} {187 702} {188 702} {189 702} {190 702} {191 702} {192 702} {193 702} {193 703} {194 703} {195 703} {196 703} {197 703} {198 703} {199 703} {200 703} {201 703} {202 703} {203 703} {204 703} {205 703} {206 703} {207 703} {208 703} {209 703} {210 703} {211 703} {212 703} {213 703} {214 703} {215 703} {216 703} {217 703} {218 703} {219 703} {219 704} {220 704} {221 704} {222 704} {223 704} {224 704} {225 704} {226 704} {227 704} {228 704} {229 704} {230 704} {231 704} {232 704} {233 704} {234 704} {235 703} {236 703} {237 703} {238 703} {239 703} {239 702} {240 702} {241 702} {241 701} {242 701} {243 701} {244 701} {244 700} {245 700} {246 700} {246 699} {247 699} {248 699} {249 699} {250 699} {251 699} {252 699} {253 699} {254 699} {254 698} {255 698} {256 698} {257 698} {258 698} {258 697} {259 697} {259 696} {259 695} {260 695} {261 695} {261 694} {262 694} {263 693} {264 692} {265 692} {265 691} {266 691}"
set buea_bamenda_vehicule "{87 571} {86 571} {85 571} {84 571} {83 571} {83 570} {84 569} {85 568} {85 567} {86 567} {86 566} {87 566} {87 565} {88 565} {89 565} {90 565} {90 564} {91 564} {91 563} {92 562} {93 562} {93 561} {93 560} {93 559} {93 558} {93 557} {93 556} {93 555} {93 554} {93 553} {93 552} {93 551} {93 550} {93 549} {93 548} {93 547} {93 546} {93 545} {93 544} {93 543} {93 542} {93 541} {93 540} {93 539} {93 538} {93 537} {94 537} {94 536} {94 535} {94 534} {94 533} {94 532} {94 531} {94 530} {94 529} {94 528} {94 527} {94 526} {94 525} {94 524} {94 523} {94 522} {94 521} {94 520} {94 519} {94 518} {94 517} {94 516} {94 515} {94 514} {94 513} {94 512} {94 511} {94 510} {94 509} {93 509} {93 508} {92 508} {92 507} {91 507} {91 506} {91 505} {90 505} {90 504} {89 503} {88 503} {88 502} {88 501} {88 500} {87 500} {87 499} {87 498} {87 497} {86 497} {86 496} {86 495} {86 494} {86 493} {86 492} {86 491} {86 490} {86 489} {86 488} {86 487} {86 486} {85 486} {85 485} {85 484} {85 483} {85 482} {85 481} {85 480} {85 479} {85 478} {85 477} {85 476} {86 476} {86 475} {87 475} {87 474} {87 473} {87 472} {88 472} {88 471} {89 470} {89 469} {89 468} {89 467} {90 467} {90 466} {90 465} {91 464} {91 463} {91 462} {92 462} {93 462} {93 461} {93 460} {94 460} {94 459} {95 459} {95 458} {96 458} {96 457} {97 457} {97 456} {97 455} {98 455} {98 454} {98 453} {98 452} {98 451} {98 450} {97 450} {96 450} {96 449} {96 448} {96 447} {95 447} {95 446} {95 445} {94 445} {94 444} {94 443} {93 443} {93 442} {93 441} {93 440} {94 440} {94 439} {95 439} {96 439} {97 439} {98 439} {99 439} {100 439} {101 439} {102 439} {103 439} {104 439} {105 439} {106 439} {107 439} {108 439} {109 439} {110 438} {111 438} {112 438} {113 438} {113 437} {114 437} {115 437} {115 436} {116 435} {117 435} {118 435} {118 434} {119 434} {119 433} {120 433} {121 433} {121 432} {122 432} {122 431} {123 431} {123 430} {123 429} {124 429} {124 428} {124 427} {125 427} {126 427} {127 427} {128 427} {128 426} {129 426} {130 426} {131 426} {132 426} {133 426} {134 426} {135 426} {135 425} {136 425} {137 425} {138 425} {139 425} {140 425} {141 425} {142 425} {142 424} {143 424} {144 424} {145 424} {146 424} {147 424} {148 424} {148 423} {149 423} {149 422} {150 422} {151 422} {151 421} {152 421} {153 420} {154 420} {154 419} {155 419} {155 418} {156 418} {156 417} {157 417} {157 416} {158 416}"
set bamenda_bafoussam_vehicule "{147 421} {147 422} {147 423} {148 423} {148 424} {148 425} {149 425} {150 425} {150 426} {151 426} {151 427} {152 427} {153 427} {153 428} {154 428} {154 429} {155 429} {156 429} {157 429} {158 429} {159 429} {160 430} {160 431} {160 432} {161 433} {161 434} {162 434} {162 435} {162 436} {163 436} {163 437} {164 437} {165 437} {165 438} {166 438} {167 439} {168 439} {169 439} {169 440} {170 440} {170 441} {171 441} {172 441} {173 441} {173 442} {174 442} {174 443} {175 443} {175 444} {176 444} {176 445} {177 445} {177 446} {178 446} {178 447} {179 447} {179 448} {180 448} {180 449} {181 450} {181 451} {182 451} {182 452} {183 452} {183 453} {183 454} {184 454} {185 454} {185 455} {186 455} {186 456} {186 457} {187 457} {187 458} {188 458} {189 458} {189 459} {190 459} {191 459} {191 460} {192 460} {193 460} {193 461} {193 462}"
set douala_buea_vehicule "{118 590} {117 590} {116 590} {115 590} {114 589} {114 588} {113 588} {113 587} {112 587} {111 587} {111 586} {110 586} {109 586} {108 585} {107 584} {106 584} {105 584} {105 583} {105 582} {104 582} {104 581} {104 580} {103 580} {102 580} {101 580} {100 580} {99 580} {98 580} {97 580} {96 580} {95 580} {94 580} {93 580} {92 580} {91 580} {90 580} {89 580} {88 580} {87 580} {86 580} {85 580} {84 580} {83 580} {82 580} {81 580} {80 580} {79 580} {78 580} {77 580} {76 580} {75 580} {74 580} {73 580} {72 580}"
set yaounde_bafoussam_vehicule "{304 602} {303 602} {303 601} {303 600} {303 599} {303 598} {303 597} {303 596} {303 595} {304 595} {304 594} {305 594} {305 593} {305 592} {305 591} {305 590} {305 589} {305 588} {305 587} {305 586} {305 585} {305 584} {305 583} {305 582} {305 581} {305 580} {305 579} {305 578} {304 578} {304 577} {303 577} {302 577} {302 576} {301 576} {300 576} {300 575} {299 575} {299 574} {299 573} {298 573} {298 572} {297 572} {297 571} {296 571} {295 571} {295 570} {294 569} {293 569} {293 568} {292 568} {291 568} {290 568} {289 568} {288 568} {287 567} {286 567} {285 566} {284 565} {283 565} {282 564} {281 564} {281 563} {280 563} {279 563} {279 562} {279 561} {278 561} {278 560} {278 559} {278 558} {277 558} {277 557} {277 556} {277 555} {277 554} {277 553} {277 552} {277 551} {277 550} {276 550} {276 549} {276 548} {276 547} {276 546} {276 545} {276 544} {276 543} {276 542} {276 541} {276 540} {276 539} {276 538} {276 537} {276 536} {276 535} {276 534} {275 534} {275 533} {275 532} {275 531} {275 530} {275 529} {275 528} {275 527} {275 526} {275 525} {274 525} {274 524} {273 524} {273 523} {272 523} {271 523} {271 522} {270 522} {270 521} {269 521} {269 520} {268 520} {267 519} {266 519} {265 519} {265 518} {264 518} {263 518} {262 518} {261 518} {260 518} {259 518} {258 518} {257 518} {256 518} {255 518} {254 518} {253 518} {252 518} {251 518} {250 518} {249 518} {249 519} {248 520} {248 521} {247 521} {246 522} {245 522} {244 522} {243 522} {242 522} {241 522} {240 522} {240 523} {239 523} {238 523} {237 523} {236 523} {235 523} {235 522} {235 521} {235 520} {234 519} {234 518} {233 518} {233 517} {233 516} {233 515} {232 514} {232 513} {232 512} {232 511} {231 511} {231 510} {230 510} {229 510} {228 510} {227 510} {227 509} {227 508} {227 507} {227 506} {226 506} {225 506} {225 505} {224 505} {224 504} {223 504} {223 503} {223 502} {222 502} {221 501} {220 501} {220 500} {219 500} {219 499} {218 499} {217 499} {216 498} {215 498} {215 497} {214 497} {213 496} {213 495} {212 495} {212 494} {211 494} {210 494} {210 493} {209 493} {209 492} {208 491} {207 491} {207 490} {206 490} {205 490} {204 489} {203 489} {203 488} {203 487} {203 486} {202 486} {202 485} {202 484} {201 483} {201 482} {200 482} {200 481} {199 481} {198 481} {198 480} {198 479} {197 479} {197 478} {196 478} {196 477} {195 477} {195 476} {195 475} {194 475} {194 474} {194 473} {193 473} {192 473} {192 472} {192 471} {191 471} {191 470} {191 469} {191 468} {191 467} {191 466} {191 465} {191 464} {191 463} {191 462} {192 462} {193 462} {193 461}"
set garoua_maroua_vehicule "{491 112} {492 112} {493 112} {494 112} {494 111} {495 111} {496 111} {496 110} {497 110} {497 109} {497 108} {497 107} {498 107} {498 106} {499 105} {500 104} {501 104} {502 104} {503 104} {504 104} {505 104} {506 104} {507 104} {508 104} {508 103} {509 103} {510 103} {511 103} {512 103} {512 102} {513 102} {514 101} {515 101} {515 100} {516 100} {517 100} {517 99} {518 99} {519 99} {519 98} {520 98} {520 97} {521 97} {521 96} {522 96} {522 95} {523 95} {523 94} {524 94} {524 93} {524 92} {525 92} {525 91} {526 91} {526 90} {527 90} {527 89} {528 89} {528 88} {529 88} {529 87} {530 87} {530 86} {531 86} {531 85} {531 84} {531 83} {532 83} {532 82} {532 81} {532 80} {532 79} {532 78} {533 78} {533 77} {533 76} {533 75} {534 75} {534 74} {535 74} {535 73} {536 73} {536 72} {536 71} {537 71} {537 70} {538 70} {538 69} {539 69} {540 69} {540 68} {540 67} {541 67} {541 66} {542 66} {542 65} {543 65} {543 64} {544 64} {544 63} {544 62} {544 61} {544 60} {544 59} {544 58} {545 58} {546 58} {547 58} {548 58} {549 58} {550 58} {551 58} {552 58} {553 58} {554 58} {555 58} {556 58} {557 58} {557 57} {558 57} {559 57} {560 57} {561 57} {562 57} {562 56} {563 56} {563 55} {564 54} {564 53} {564 52} {565 52} {565 51} {565 50} {565 49} {565 48} {566 47} {566 46} {566 45} {566 44} {567 44} {567 43} {568 43} {568 42} {568 41} {568 40} {569 40} {569 39} {569 38} {569 37} {569 36} {569 35} {569 34} {569 33} {570 33} {570 32} {570 31} {570 30} {570 29} {570 28} {570 27} {571 26} {571 25} {571 24} {571 23} {571 22} {572 21} {572 20} {573 20} {573 19} {573 18} {574 17} {574 16} {575 16} {575 15} {575 14} {575 13} {575 12} {575 11} {576 11} {576 10} {576 9} {577 8} {577 7} {577 6} {577 5} {578 5} {578 4} {578 3} {578 2} {579 1} {579 0} {580 0} {580 -1} {581 -1} {581 -2} {581 -3}"
set travel_list "douala_yaounde_train yaounde_ngaoundere_train yaounde_bertoua_vehicule ngaoundere_ngaroua_vehicule yaounde_ebolowa_vehicule douala_ebolowa_vehicule buea_bamenda_vehicule bamenda_bafoussam_vehicule douala_buea_vehicule yaounde_bafoussam_vehicule garoua_maroua_vehicule"
set color_list "red cyan blue green violet grey black white orange yellow"
set char_list "a b c d e f g h i j k l m n o p q r s t v w x y z"
set engin_list ""
set data ""
set id ""
set can_zoom 0
set money 101000
if {$argv == ""} {
set simu False
} else {
set simu [lindex $argv 0]
}
puts $argv
set ball_size 5
set travel_info ""
set v 1
set editor False
set view 0
set delay 50
set coord_scanner ""
set coord_scanner2 ""
set travel_selected "bamenda_bafoussam_vehicule"
set color_selected "black"
set engin_selected ""
proc data_save {} {
set money %s
foreach car [list %s] {
add_car 1
}
}
proc save {} {
global money engin_list
set f [open data.save w]
puts $f [format [info body data_save] $money $engin_list]
close $f
}
proc load {} {
global money engin_list
source data.save
}
proc get_coord_scanner {x y} {
global coord_scanner ball_edit ball_size
.c coords $ball_edit [expr {$x-$ball_size}] [expr {$y-$ball_size}] [expr {$x+$ball_size}] [expr {$y+$ball_size}]
lappend coord_scanner "$x $y"
}
proc get_coord_scanner2 {x y} {
global coord_scanner2 ball_edit ball_size
.c coords $ball_edit [expr {$x-$ball_size}] [expr {$y-$ball_size}] [expr {$x+$ball_size}] [expr {$y+$ball_size}]
lappend coord_scanner2 "$x $y"
}
proc random x {return [expr {int(rand()*$x)}]}
proc add_car {{free 0}} {
global money engin_list
set price 100000
if {$money > $price || $free} {
set name "Engin[llength $engin_list]"
lappend engin_list $name
.myMenubutton3.myMenu add command -label "$name" -command "set engin_selected {$name}"
if !{$free} {
incr money -$price
}
} else {
tk_messageBox -message "Vous avez pas assez d'argent,, requis $price"
}
}
proc add_trajet {} {
global travel_selected color_selected engin_selected money engin_money
if {$engin_selected == ""} {
tk_messageBox -message {selectionne un engin}
return 0
}
set tax [get_price $travel_selected]
if {$money < $tax} {
tk_messageBox -message {argent inssufisant} -icon warning
} else {
give_money trajet_with_$engin_selected $tax
active_trajet trajet_with_$engin_selected itinerence_from_$engin_selected $engin_selected sens_from_$engin_selected $travel_selected $color_selected
}
}
proc simulation_auto {} {
global travel_list color_list char_list
set a [llength $char_list]
set b [llength $color_list]
set c [llength $travel_list]
set travel_generated [lindex $travel_list [random $c]]
set color_generated [lindex $color_list [random $b]]
set text_generated1 "[lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]]"
set text_generated2 "[lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]]"
set text_generated3 "[lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]]"
set text_generated4 "[lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]][lindex $char_list [random $a]]"
active_trajet $text_generated1 $text_generated2 $text_generated3 $text_generated4 $travel_generated $color_generated
}
#active_trajet t1 i1 o1 sens douala_ebolowa_vehicule#
proc active_trajet {trajet itinerence obj sens coords {color black}} {
global id data $trajet $itinerence $obj $sens
if {[expr [catch {set $trajet}] & [catch {set $itinerence}]] || [expr {[set $trajet] == 0 & [set $itinerence] == 0}]} {
lappend id $trajet
set $trajet 1
set $itinerence 0
if {[catch {set $obj}]} {
set $obj [.c create oval 0 0 0 0 -fill $color]
} else {
.c itemconfigure [set $obj] -fill $color
}
if {[catch {set $sens}]} {set $sens 1}
if {[lsearch $data "$trajet $itinerence $obj $sens $coords"] == -1} {
lappend data "$trajet $itinerence $obj $sens $coords"
}
} else {tk_messageBox -title Warning -icon warning -message "Trajet deja en cours \nou element deja utiliser."}
}
proc get_price map {
global $map
return [expr [llength [set $map]]*10]
}
proc get_money id {
global money engin_money
incr money $engin_money($id)
}
proc give_money {to tax} {
global money engin_money
incr money -$tax
set engin_money($to) [expr int($tax*1.5)]
}
proc anim {} {
save
global delay ball_size v travel_info data simu id
set travel_info ""
foreach elements $data {
foreach element $elements {
global $element
}
set trajet [lindex $elements 0]
set trajet_used [set $trajet]
set itinerence [lindex $elements 1]
set itinerence_used [set $itinerence]
set obj [lindex $elements 2]
set obj_used [set $obj]
set sens [lindex $elements 3]
set sens_used [set $sens]
set coords [lindex $elements 4]
if {$sens_used >= 0} {
set coords_used [lindex [set $coords] $itinerence_used]
} else {
set coords_used [lindex [lreverse [set $coords]] $itinerence_used]
}
if {$coords_used != "" && $trajet_used} {
incr $itinerence $v
set x [lindex $coords_used 0]
set y [lindex $coords_used 1]
if {[llength $travel_info] < 5} {
if {!$simu} {
set time_restant [expr {[expr {[llength [set $coords]]-$itinerence_used}]*$delay/1000+1}]
set time_unit sec
if {$time_restant >= 60 && $time_restant < 3600} {
set time_restant [expr {$time_restant/60}]
set time_unit min
}
lappend travel_info "$obj time: $time_restant $time_unit"
} else {lappend travel_info "$obj coords (X:$x Y:$y)"}
}
.c coords $obj_used [expr {$x-$ball_size}] [expr {$y-$ball_size}] [expr {$x+$ball_size}] [expr {$y+$ball_size}]
} else {
set i [lsearch $id $trajet]
set id [lreplace $id $i $i]
if {$simu} {
set data [lreplace $data $i $i]
set $trajet 0
}
get_money $trajet
if {[set $itinerence] != 0} {set $sens [expr -$sens_used]}
set $itinerence 0
.c coords $obj_used 0 0 0 0
}
}
after $delay anim
}
pack [canvas .c -width 800 -height 800 -background black] -padx 5 -pady 5
pack [ttk::label .info_travel -textvariable travel_info]
set map [image create photo]
$map read "map.gif"
.c create image 400 300 -image $map
place [ttk::frame .view_navig] -x 100 -y 200
###
bind . <Down> {
global can_zoom
if {$can_zoom > 0} {
.c yview scroll 1 units
incr can_zoom -1
}
}
bind . <MouseWheel> {
global can_zoom
set l 0
if {%D < 0 && $can_zoom < 3} {
set l -1
} elseif {%D > 0 && $can_zoom > 0} {
set l 1
}
.c yview scroll $l units
incr can_zoom [expr -1*$l]
}
###
if {$simu} {
wm title . "Simulation Mode"
bind . <space> simulation_auto
place [ttk::frame .frame] -x 0 -y 0
pack [ttk::label .label1 -text TimeRefresh(ms):] -side left -in .frame
ttk::menubutton .myMenubutton -menu .myMenubutton.myMenu -textvariable delay
menu .myMenubutton.myMenu
foreach number "5 10 15 25 40 65 105 170 275 345 620 965 1585" {
.myMenubutton.myMenu add command -label "$number" -command "set delay $number"
}
pack .myMenubutton -side left -in .frame
pack [ttk::label .label2 -text Saut:] -side left -in .frame
ttk::menubutton .myMenubutton2 -menu .myMenubutton2.myMenu -textvariable v
menu .myMenubutton2.myMenu
foreach number "0 1 2 3 4 5 6 7 8 9 10" {
.myMenubutton2.myMenu add command -label "$number" -command "set v $number"
}
pack .myMenubutton2 -side left -in .frame
} elseif {$editor} {
wm title . "Editor Mode"
puts "coords stocked in coord_scanner and coord_scanner2"
set delay 50
puts "delay changed to $delay"
set ball_edit [.c create oval 0 0 0 0 -fill red]
bind . <B1-Motion> {get_coord_scanner %x %y}
bind . <B3-Motion> {get_coord_scanner2 %x %y}
} else {
wm title . "Game Mode"
place [ttk::frame .frame] -x 0 -y 0
pack [ttk::label .label1 -text Trajet:] -side left -in .frame
ttk::menubutton .myMenubutton1 -menu .myMenubutton1.myMenu -textvariable travel_selected
menu .myMenubutton1.myMenu
foreach travel $travel_list {
.myMenubutton1.myMenu add command -label "$travel [get_price $travel] FCFA" -command "set travel_selected {$travel}"
}
pack .myMenubutton1 -side left -in .frame
pack [ttk::label .label2 -text Color:] -side left -in .frame
ttk::menubutton .myMenubutton2 -menu .myMenubutton2.myMenu -textvariable color_selected
menu .myMenubutton2.myMenu
foreach color $color_list {
.myMenubutton2.myMenu add command -label "$color" -command "set color_selected {$color}"
}
pack .myMenubutton2 -side left -in .frame
pack [ttk::label .label3 -text Engin:] -side left -in .frame
ttk::menubutton .myMenubutton3 -menu .myMenubutton3.myMenu -textvariable engin_selected
menu .myMenubutton3.myMenu
foreach car $engin_list {
add_car free
}
pack .myMenubutton3 -side left -in .frame
pack [ttk::button .button0 -text "En route" -command {add_trajet}] -side left -padx 2 -in .frame
pack [ttk::button .button1 -text "Add Engin" -command {add_car}] -side left -padx 2 -in .frame
pack [ttk::label .label5 -text {Money (en FCFA):}] -in .frame
pack [ttk::label .label4 -textvariable money] -in .frame
}
catch {
load
} err
puts $err
anim