src/train_cmd.cpp
changeset 9163 79101c0c3bc9
parent 9162 ec5f2f4eee15
child 9191 ae14770c829a
equal deleted inserted replaced
9162:ec5f2f4eee15 9163:79101c0c3bc9
  1784 
  1784 
  1785 	if (IsTileDepotType(v->tile, TRANSPORT_RAIL)) {
  1785 	if (IsTileDepotType(v->tile, TRANSPORT_RAIL)) {
  1786 		InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
  1786 		InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
  1787 	}
  1787 	}
  1788 
  1788 
       
  1789 	/* set reversed flag on all parts */
       
  1790 	for (Vehicle *u = v; u != NULL; u = u->Next()) ToggleBit(u->u.rail.flags, VRF_TOGGLE_REVERSE);
       
  1791 
       
  1792 	ClrBit(v->u.rail.flags, VRF_REVERSING);
       
  1793 
       
  1794 	/* recalculate cached data */
       
  1795 	TrainConsistChanged(v);
       
  1796 
  1789 	/* update all images */
  1797 	/* update all images */
  1790 	for (Vehicle *u = v; u != NULL; u = u->Next()) {
  1798 	for (Vehicle *u = v; u != NULL; u = u->Next()) u->cur_image = u->GetImage(u->direction);
  1791 		ToggleBit(u->u.rail.flags, VRF_TOGGLE_REVERSE);
       
  1792 		u->cur_image = u->GetImage(u->direction);
       
  1793 	}
       
  1794 
       
  1795 	ClrBit(v->u.rail.flags, VRF_REVERSING);
       
  1796 
  1799 
  1797 	/* update crossing we were approaching */
  1800 	/* update crossing we were approaching */
  1798 	if (crossing != INVALID_TILE) UpdateLevelCrossing(crossing);
  1801 	if (crossing != INVALID_TILE) UpdateLevelCrossing(crossing);
  1799 
  1802 
  1800 	/* maybe we are approaching crossing now, after reversal */
  1803 	/* maybe we are approaching crossing now, after reversal */