MCPcopy Create free account
hub / github.com/OpenLoco/OpenLoco / exportVehicleHead

Function exportVehicleHead

src/OpenLoco/src/S5/S5Entity.cpp:179–225  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

177 }
178
179 static Entity exportVehicleHead(const OpenLoco::Vehicles::VehicleHead& src)
180 {
181 Entity dst{};
182 S5::VehicleHead& dstHead = reinterpret_cast<S5::VehicleHead&>(dst);
183 dstHead.base = exportEntityBase(src, enumValue(src.getSubType()), enumValue(src.vehicleFlags));
184 dstHead.head = enumValue(src.head);
185 dstHead.remainingDistance = src.remainingDistance;
186 dstHead.trackAndDirection = src.trackAndDirection.track._data;
187 dstHead.subPosition = src.subPosition;
188 dstHead.tileX = src.tileX;
189 dstHead.tileY = src.tileY;
190 dstHead.tileBaseZ = src.tileBaseZ;
191 dstHead.trackType = src.trackType;
192 dstHead.routingHandle = src.routingHandle._data;
193 dstHead.var_38 = enumValue(src.var_38);
194 dstHead.nextCarId = enumValue(src.nextCarId);
195 dstHead.var_3C = src.var_3C;
196 dstHead.mode = enumValue(src.mode);
197 dstHead.ordinalNumber = src.ordinalNumber;
198 dstHead.orderTableOffset = src.orderTableOffset;
199 dstHead.currentOrder = src.currentOrder;
200 dstHead.sizeOfOrderTable = src.sizeOfOrderTable;
201 dstHead.trainAcceptedCargoTypes = src.trainAcceptedCargoTypes;
202 dstHead.var_52 = src.var_52;
203 dstHead.var_53 = src.var_53;
204 dstHead.stationId = enumValue(src.stationId);
205 dstHead.cargoTransferTimeout = src.cargoTransferTimeout;
206 dstHead.var_58 = src.var_58;
207 dstHead.var_5C = src.var_5C;
208 dstHead.status = enumValue(src.status);
209 dstHead.vehicleType = enumValue(src.vehicleType);
210 dstHead.breakdownFlags = enumValue(src.breakdownFlags);
211 dstHead.aiThoughtId = src.aiThoughtId;
212 dstHead.aiPlacementPos = src.aiPlacementPos;
213 dstHead.aiPlacementTaD = src.aiPlacementTaD;
214 dstHead.aiPlacementBaseZ = src.aiPlacementBaseZ;
215 dstHead.airportMovementEdge = src.airportMovementEdge;
216 dstHead.totalRefundCost = src.totalRefundCost;
217 dstHead.crashedTimeout = src.crashedTimeout;
218 dstHead.manualPower = src.manualPower;
219 dstHead.journeyStartPos = src.journeyStartPos;
220 dstHead.journeyStartTicks = src.journeyStartTicks;
221 dstHead.lastAverageSpeed = src.lastAverageSpeed.getRaw();
222 dstHead.restartStoppedCarsTimeout = src.restartStoppedCarsTimeout;
223
224 return dst;
225 }
226
227 static IncomeStats exportIncomeStats(const OpenLoco::Vehicles::IncomeStats& src)
228 {

Callers 1

exportVehicleEntityFunction · 0.85

Calls 4

exportEntityBaseFunction · 0.85
enumValueFunction · 0.85
getSubTypeMethod · 0.45
getRawMethod · 0.45

Tested by

no test coverage detected