… | |
… | |
373 | { |
373 | { |
374 | delete head; |
374 | delete head; |
375 | return 0; |
375 | return 0; |
376 | } |
376 | } |
377 | |
377 | |
378 | assert (("pippijn sagt es gibt keine tiles mehr", head->clone.face == more->clone.face)); |
|
|
379 | |
|
|
380 | if (more->clone.x > head->tail_x) head->tail_x = more->clone.x; |
378 | if (more->clone.x > head->tail_x) head->tail_x = more->clone.x; |
381 | if (more->clone.y > head->tail_y) head->tail_y = more->clone.y; |
379 | if (more->clone.y > head->tail_y) head->tail_y = more->clone.y; |
382 | |
380 | |
383 | more->head = head; |
381 | more->head = head; |
384 | more->clone.head = &head->clone; |
382 | more->clone.head = &head->clone; |
… | |
… | |
476 | } |
474 | } |
477 | } |
475 | } |
478 | } |
476 | } |
479 | } |
477 | } |
480 | |
478 | |
481 | #ifdef DEBUG |
|
|
482 | void |
|
|
483 | check_generators (void) |
|
|
484 | { |
|
|
485 | archetype *at; |
|
|
486 | |
|
|
487 | for (at = first_archetype; at != NULL; at = at->next) |
|
|
488 | if (QUERY_FLAG (&at->clone, FLAG_GENERATOR) && at->clone.other_arch == NULL) |
|
|
489 | LOG (llevError, "Warning: %s is generator but lacks other_arch.\n", &at->name); |
|
|
490 | } |
|
|
491 | #endif |
|
|
492 | |
|
|
493 | /* |
479 | /* |
494 | * First initialises the archtype hash-table (init_archetable()). |
480 | * First initialises the archtype hash-table (init_archetable()). |
495 | * Reads and parses the archetype file (with the first and second-pass |
481 | * Reads and parses the archetype file (with the first and second-pass |
496 | * functions). |
482 | * functions). |
497 | * Then initialises treasures by calling load_treasures(). |
483 | * Then initialises treasures by calling load_treasures(). |
498 | */ |
484 | */ |
499 | |
|
|
500 | void |
485 | void |
501 | load_archetypes (void) |
486 | load_archetypes (void) |
502 | { |
487 | { |
503 | char filename[MAX_BUF]; |
488 | char filename[MAX_BUF]; |
504 | |
489 | |
… | |
… | |
526 | load_treasures (); |
511 | load_treasures (); |
527 | LOG (llevDebug, " done\n"); |
512 | LOG (llevDebug, " done\n"); |
528 | LOG (llevDebug, " arch-pass 2...\n"); |
513 | LOG (llevDebug, " arch-pass 2...\n"); |
529 | second_arch_pass (f); |
514 | second_arch_pass (f); |
530 | LOG (llevDebug, " done\n"); |
515 | LOG (llevDebug, " done\n"); |
531 | #ifdef DEBUG |
|
|
532 | check_generators (); |
|
|
533 | #endif |
|
|
534 | } |
516 | } |
535 | LOG (llevDebug, " done\n"); |
517 | LOG (llevDebug, " done\n"); |
536 | } |
518 | } |
537 | |
519 | |
538 | /* |
520 | /* |