diff --git a/src/server/game/DataStores/DBCEnums.h b/src/server/game/DataStores/DBCEnums.h index 33fb519e3d3..1945b0a2305 100644 --- a/src/server/game/DataStores/DBCEnums.h +++ b/src/server/game/DataStores/DBCEnums.h @@ -641,33 +641,33 @@ enum VehicleSeatFlagsB enum VehicleAttachmentIds { - VEHICLE_ATTACHMENT_ID_UNK0 = -1, - VEHICLE_ATTACHMENT_ID_UNK1 = 0, - VEHICLE_ATTACHMENT_ID_UNK2 = 1, - VEHICLE_ATTACHMENT_ID_INVERT_SEAT_ANGLE = 2, - VEHICLE_ATTACHMENT_ID_UNK3 = 3, - VEHICLE_ATTACHMENT_ID_UNK4 = 4, - VEHICLE_ATTACHMENT_ID_UNK5 = 5, - VEHICLE_ATTACHMENT_ID_UNK6 = 6, - VEHICLE_ATTACHMENT_ID_UNK7 = 7, - VEHICLE_ATTACHMENT_ID_UNK8 = 8, - VEHICLE_ATTACHMENT_ID_UNK9 = 9, - VEHICLE_ATTACHMENT_ID_UNK10 = 10, - VEHICLE_ATTACHMENT_ID_UNK11 = 11, - VEHICLE_ATTACHMENT_ID_UNK12 = 12, - VEHICLE_ATTACHMENT_ID_UNK13 = 13, - VEHICLE_ATTACHMENT_ID_UNK14 = 14, - VEHICLE_ATTACHMENT_ID_UNK15 = 15, - VEHICLE_ATTACHMENT_ID_UNK16 = 16, - VEHICLE_ATTACHMENT_ID_UNK17 = 17, - VEHICLE_ATTACHMENT_ID_UNK18 = 18, - VEHICLE_ATTACHMENT_ID_UNK19 = 19, - VEHICLE_ATTACHMENT_ID_UNK20 = 20, - VEHICLE_ATTACHMENT_ID_UNK21 = 21, - VEHICLE_ATTACHMENT_ID_UNK22 = 22, - VEHICLE_ATTACHMENT_ID_UNK23 = 23, - VEHICLE_ATTACHMENT_ID_UNK24 = 24, - VEHICLE_ATTACHMENT_ID_UNK25 = 25 + VEHICLE_ATTACHMENT_ID_UNK0 = -1, + VEHICLE_ATTACHMENT_ID_UNK1 = 0, + VEHICLE_ATTACHMENT_ID_UNK2 = 1, + VEHICLE_ATTACHMENT_ID_INVERT_SEAT_ANGLE_1 = 2, + VEHICLE_ATTACHMENT_ID_UNK3 = 3, + VEHICLE_ATTACHMENT_ID_UNK4 = 4, + VEHICLE_ATTACHMENT_ID_UNK5 = 5, + VEHICLE_ATTACHMENT_ID_UNK6 = 6, + VEHICLE_ATTACHMENT_ID_UNK7 = 7, + VEHICLE_ATTACHMENT_ID_UNK8 = 8, + VEHICLE_ATTACHMENT_ID_UNK9 = 9, + VEHICLE_ATTACHMENT_ID_UNK10 = 10, + VEHICLE_ATTACHMENT_ID_UNK11 = 11, + VEHICLE_ATTACHMENT_ID_UNK12 = 12, + VEHICLE_ATTACHMENT_ID_UNK13 = 13, + VEHICLE_ATTACHMENT_ID_UNK14 = 14, + VEHICLE_ATTACHMENT_ID_UNK15 = 15, + VEHICLE_ATTACHMENT_ID_INVERT_SEAT_ANGLE_2 = 16, + VEHICLE_ATTACHMENT_ID_UNK16 = 17, + VEHICLE_ATTACHMENT_ID_UNK17 = 18, + VEHICLE_ATTACHMENT_ID_UNK18 = 19, + VEHICLE_ATTACHMENT_ID_UNK19 = 20, + VEHICLE_ATTACHMENT_ID_UNK20 = 21, + VEHICLE_ATTACHMENT_ID_UNK21 = 22, + VEHICLE_ATTACHMENT_ID_UNK22 = 23, + VEHICLE_ATTACHMENT_ID_UNK23 = 24, + VEHICLE_ATTACHMENT_ID_UNK24 = 25 }; // CurrencyTypes.dbc diff --git a/src/server/game/Entities/Vehicle/Vehicle.cpp b/src/server/game/Entities/Vehicle/Vehicle.cpp index 4786ce42d32..6ad86bd8711 100644 --- a/src/server/game/Entities/Vehicle/Vehicle.cpp +++ b/src/server/game/Entities/Vehicle/Vehicle.cpp @@ -877,7 +877,8 @@ bool VehicleJoinEvent::Execute(uint64, uint32) Passenger->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); float o = 0.0f; - if (veSeat->m_attachmentID == VEHICLE_ATTACHMENT_ID_INVERT_SEAT_ANGLE) + if ((veSeat->m_attachmentID == VEHICLE_ATTACHMENT_ID_INVERT_SEAT_ANGLE_1 || veSeat->m_attachmentID == VEHICLE_ATTACHMENT_ID_INVERT_SEAT_ANGLE_2) + && veSeat->HasFlag(VEHICLE_SEAT_FLAG_B_USABLE_FORCED_4)) // This flag is common in all vehicles that use inverted orientation in combination with the attachment IDs o += float(M_PI); float x = veSeat->m_attachmentOffsetX;