Skip to content

Core/Vehicles: Keep vendors seated on player passenger mounts - #32077

Open
Oreocide wants to merge 2 commits into
TrinityCore:masterfrom
Oreocide:pr/mount-vendor-passengers
Open

Oreocide wants to merge 2 commits into
TrinityCore:masterfrom
Oreocide:pr/mount-vendor-passengers

Conversation

@Oreocide

Copy link
Copy Markdown

Summary

  • Traveler's Tundra Mammoth, Grand Expedition Yak, Mighty Caravan Brutosaur, and Trader's Gilded Brutosaur seat their vendors with a control-vehicle aura. The ride spell's target selection was dropping the player mount, and stripping that aura during boarding ran the mammoth goodbye.
  • A passenger-cast ride aura is left in place while the vendor is still seated, including the indoor aura check. The mount aura itself still drops indoors.
  • Player mounts clear the vehicle record's no-jump and no-strafe flags when the vehicle id is sent and again on dismount.
  • Each vendor's board spline is sent with the spawn, then again on its own timer, so the client keeps both passengers.
  • Mounts 1039 and 2265 use creatures 9001039 and 9002265 for vehicle 6372. Those creatures are never spawned. Merchant Maku's stock is included.
  • Vehicle 6372 keeps the howdah seats but uses the mammoth locomotion flags so strafing turns onto the diagonal.

Still needed

  • Vendors board a moment after the mount appears. They do not spawn already sitting in the seat.
  • The vehicle 6372 hotfix applies to every user of that vehicle record, not only the player mounts.

Test plan

  • Mount Traveler's Tundra Mammoth, Grand Expedition Yak, Mighty Caravan Brutosaur, and Trader's Gilded Brutosaur and confirm both vendors sit and ride.
  • Switch among them, and dismount then remount, while the previous vendors are still despawning.
  • Eject a vendor, then dismount, and confirm jump and normal ground movement are back.
  • Strafe on either brutosaur and confirm the mount turns onto the diagonal instead of sliding with a forward run anim.
  • Go indoors and confirm the mount drops without the mammoth vendors running their goodbye early.
  • Open Merchant Maku, Killia (auction house), and Melanie Morten (mailbox).

Boarding stripped the ride aura and ran the mammoth goodbye, and the client
dropped the board spline when it arrived with the spawn. Player mounts also
kept the vehicle record's no-jump and no-strafe flags after dismount.

The Mighty Caravan Brutosaur and Trader's Gilded Brutosaur spells still name
the White Stallion, so mounts 1039 and 2265 now use the ceremonial howdah
vehicle. Merchant Maku's stock is included. Vehicle 6372 keeps howdah seats
but uses mammoth locomotion flags so strafing turns onto the diagonal.
OnAuraRemoved calls TempSummon::GetSummonerUnit for the mammoth vendors.
Clang needs the full type, not the Object.h forward declaration.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant