495 |
495 |
496 case 0x1F: // Tractive effort coefficient |
496 case 0x1F: // Tractive effort coefficient |
497 rvi->tractive_effort = grf_load_byte(&buf); |
497 rvi->tractive_effort = grf_load_byte(&buf); |
498 break; |
498 break; |
499 |
499 |
|
500 case 0x20: // Air drag |
|
501 /** @todo Air drag for trains. */ |
|
502 grf_load_byte(&buf); |
|
503 ret = true; |
|
504 break; |
|
505 |
500 case 0x21: // Shorter vehicle |
506 case 0x21: // Shorter vehicle |
501 rvi->shorten_factor = grf_load_byte(&buf); |
507 rvi->shorten_factor = grf_load_byte(&buf); |
502 break; |
508 break; |
503 |
509 |
504 case 0x22: // Visual effect |
510 case 0x22: // Visual effect |
636 |
636 |
637 case 0x17: // Callback mask |
637 case 0x17: // Callback mask |
638 ei->callbackmask = grf_load_byte(&buf); |
638 ei->callbackmask = grf_load_byte(&buf); |
639 break; |
639 break; |
640 |
640 |
641 case 0x1A: // Refit cost |
|
642 ei->refit_cost = grf_load_byte(&buf); |
|
643 break; |
|
644 |
|
645 case 0x1B: // Retire vehicle early |
|
646 ei->retire_early = grf_load_byte(&buf); |
|
647 break; |
|
648 |
|
649 case 0x1C: // Miscellaneous flags |
|
650 ei->misc_flags = grf_load_byte(&buf); |
|
651 _loaded_newgrf_features.has_2CC |= HASBIT(ei->misc_flags, EF_USES_2CC); |
|
652 break; |
|
653 |
|
654 case 0x1D: // Cargo classes allowed |
|
655 cargo_allowed[ROAD_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
656 break; |
|
657 |
|
658 case 0x1E: // Cargo classes disallowed |
|
659 cargo_disallowed[ROAD_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
660 break; |
|
661 |
|
662 case 0x1F: // Long format introduction date (days since year 0) |
|
663 ei->base_intro = grf_load_dword(&buf); |
|
664 break; |
|
665 |
|
666 case 0x18: // Tractive effort |
641 case 0x18: // Tractive effort |
667 case 0x19: // Air drag |
642 case 0x19: // Air drag |
668 /** @todo Tractive effort and air drag for road vehicles. */ |
643 /** @todo Tractive effort and air drag for road vehicles. */ |
669 grf_load_byte(&buf); |
644 grf_load_byte(&buf); |
670 ret = true; |
645 ret = true; |
671 break; |
646 break; |
672 |
647 |
|
648 case 0x1A: // Refit cost |
|
649 ei->refit_cost = grf_load_byte(&buf); |
|
650 break; |
|
651 |
|
652 case 0x1B: // Retire vehicle early |
|
653 ei->retire_early = grf_load_byte(&buf); |
|
654 break; |
|
655 |
|
656 case 0x1C: // Miscellaneous flags |
|
657 ei->misc_flags = grf_load_byte(&buf); |
|
658 _loaded_newgrf_features.has_2CC |= HASBIT(ei->misc_flags, EF_USES_2CC); |
|
659 break; |
|
660 |
|
661 case 0x1D: // Cargo classes allowed |
|
662 cargo_allowed[ROAD_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
663 break; |
|
664 |
|
665 case 0x1E: // Cargo classes disallowed |
|
666 cargo_disallowed[ROAD_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
667 break; |
|
668 |
|
669 case 0x1F: // Long format introduction date (days since year 0) |
|
670 ei->base_intro = grf_load_dword(&buf); |
|
671 break; |
|
672 |
673 default: |
673 default: |
674 ret = true; |
674 ret = true; |
675 break; |
675 break; |
676 } |
676 } |
677 } |
677 } |
746 |
746 |
747 case 0x13: // Refit cost |
747 case 0x13: // Refit cost |
748 ei->refit_cost = grf_load_byte(&buf); |
748 ei->refit_cost = grf_load_byte(&buf); |
749 break; |
749 break; |
750 |
750 |
751 case 0x16: // Retire vehicle early |
|
752 ei->retire_early = grf_load_byte(&buf); |
|
753 break; |
|
754 |
|
755 case 0x17: // Miscellaneous flags |
|
756 ei->misc_flags = grf_load_byte(&buf); |
|
757 _loaded_newgrf_features.has_2CC |= HASBIT(ei->misc_flags, EF_USES_2CC); |
|
758 break; |
|
759 |
|
760 case 0x18: // Cargo classes allowed |
|
761 cargo_allowed[SHIP_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
762 break; |
|
763 |
|
764 case 0x19: // Cargo classes disallowed |
|
765 cargo_disallowed[SHIP_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
766 break; |
|
767 |
|
768 case 0x1A: // Long format introduction date (days since year 0) |
|
769 ei->base_intro = grf_load_dword(&buf); |
|
770 break; |
|
771 |
|
772 case 0x14: // Ocean speed fraction |
751 case 0x14: // Ocean speed fraction |
773 case 0x15: // Canal speed fraction |
752 case 0x15: // Canal speed fraction |
774 /** @todo Speed fractions for ships on oceans and canals */ |
753 /** @todo Speed fractions for ships on oceans and canals */ |
775 grf_load_byte(&buf); |
754 grf_load_byte(&buf); |
776 ret = true; |
755 ret = true; |
|
756 break; |
|
757 |
|
758 case 0x16: // Retire vehicle early |
|
759 ei->retire_early = grf_load_byte(&buf); |
|
760 break; |
|
761 |
|
762 case 0x17: // Miscellaneous flags |
|
763 ei->misc_flags = grf_load_byte(&buf); |
|
764 _loaded_newgrf_features.has_2CC |= HASBIT(ei->misc_flags, EF_USES_2CC); |
|
765 break; |
|
766 |
|
767 case 0x18: // Cargo classes allowed |
|
768 cargo_allowed[SHIP_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
769 break; |
|
770 |
|
771 case 0x19: // Cargo classes disallowed |
|
772 cargo_disallowed[SHIP_ENGINES_INDEX + engine + i] = grf_load_word(&buf); |
|
773 break; |
|
774 |
|
775 case 0x1A: // Long format introduction date (days since year 0) |
|
776 ei->base_intro = grf_load_dword(&buf); |
777 break; |
777 break; |
778 |
778 |
779 default: |
779 default: |
780 ret = true; |
780 ret = true; |
781 break; |
781 break; |