Changeset - r2542:60f8bc7d85aa
[Not reviewed]
master
0 2 0
peter1138 - 18 years ago 2005-10-20 15:15:58
peter1138@openttd.org
(svn r3071) -NewGRF: Add support for rail vehicle weight greater than 255 tons.
2 files changed with 13 insertions and 3 deletions:
0 comments (0 inline, 0 general)
engine.h
Show inline comments
 
@@ -14,7 +14,7 @@ typedef struct RailVehicleInfo {
 
	byte base_cost;
 
	uint16 max_speed;
 
	uint16 power;
 
	byte weight;
 
	uint16 weight;
 
	byte running_cost_base;
 
	byte engclass; // 0: steam, 1: diesel, 2: electric
 
	byte capacity;
newgrf.c
Show inline comments
 
@@ -311,7 +311,7 @@ static bool RailVehicleChangeInfo(uint e
 
			FOR_EACH_OBJECT {
 
				uint8 weight = grf_load_byte(&buf);
 

	
 
				rvi[i].weight = weight;
 
				SB(rvi[i].weight, 0, 8, weight);
 
			}
 
		} break;
 
		case 0x17: { /* Cost factor */
 
@@ -390,13 +390,23 @@ static bool RailVehicleChangeInfo(uint e
 
				rvi[i].pow_wag_weight = wag_weight;
 
			}
 
		} break;
 
		case 0x24: { /* High byte of vehicle weight */
 
			FOR_EACH_OBJECT {
 
				byte weight = grf_load_byte(&buf);
 

	
 
				if (weight < 4) {
 
					grfmsg(GMS_NOTICE, "RailVehicleChangeInfo: Nonsensical weight of %d tons, ignoring.", weight << 8);
 
				} else {
 
					SB(rvi[i].weight, 8, 8, weight);
 
				}
 
			}
 
		} break;
 
		/* TODO */
 
		/* Fall-through for unimplemented one byte long properties. */
 
		case 0x1A:	/* Sort order */
 
		case 0x1C:	/* Refit cost */
 
		case 0x1F:	/* Tractive effort */
 
		case 0x20:	/* Air drag */
 
		case 0x24:	/* High byte of vehicle weight */
 
		case 0x25:	/* User-defined bit mask to set when checking veh. var. 42 */
 
		case 0x26:	/* Retire vehicle early */
 
			{
0 comments (0 inline, 0 general)