src/engine.cpp
changeset 8307 d4cf68c0d50b
parent 8270 e7c342f6b14c
child 8400 1aaf4aa0bc9c
equal deleted inserted replaced
8306:22e1344c5457 8307:d4cf68c0d50b
   505 }
   505 }
   506 
   506 
   507 EngineID EngineReplacement(EngineRenewList erl, EngineID engine, GroupID group)
   507 EngineID EngineReplacement(EngineRenewList erl, EngineID engine, GroupID group)
   508 {
   508 {
   509 	const EngineRenew *er = GetEngineReplacement(erl, engine, group);
   509 	const EngineRenew *er = GetEngineReplacement(erl, engine, group);
       
   510 	if (er == NULL && (group == DEFAULT_GROUP || (IsValidGroupID(group) && !GetGroup(group)->replace_protection))) {
       
   511 		/* We didn't find anything useful in the vehicle's own group so we will try ALL_GROUP */
       
   512 		er = GetEngineReplacement(erl, engine, ALL_GROUP);
       
   513 	}
   510 	return er == NULL ? INVALID_ENGINE : er->to;
   514 	return er == NULL ? INVALID_ENGINE : er->to;
   511 }
   515 }
   512 
   516 
   513 CommandCost AddEngineReplacement(EngineRenewList *erl, EngineID old_engine, EngineID new_engine, GroupID group, uint32 flags)
   517 CommandCost AddEngineReplacement(EngineRenewList *erl, EngineID old_engine, EngineID new_engine, GroupID group, uint32 flags)
   514 {
   518 {