diff --git a/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_finale.cpp b/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_finale.cpp index babafcf..5b52150 100644 --- a/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_finale.cpp +++ b/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_finale.cpp @@ -108,10 +108,22 @@ public: { player->GetSceneMgr().CancelSceneByPackageId(TanaanSceneObjects::SceneFinaleIronBastion); + /// Les scenes du bateau (986 / 953) font planter le client : elles sont ecrites pour + /// se jouer sur un transport en mouvement, alors que PlaySceneByPackageId les envoie + /// ancrees sur la position du joueur, avec un TransportGUID vide et un SceneID nul. + /// On fait donc directement ce que leur declencheur "Teleport" faisait, cf. + /// playerScript_tanaan_scene_boat plus bas (ses hooks restent en place au cas ou la + /// scene serait rejouee a la main). if (player->GetTeamId() == TEAM_ALLIANCE) - player->GetSceneMgr().PlaySceneByPackageId(TanaanSceneObjects::SceneAllianceBoat); + { + player->TeleportTo(TanaanZones::MapDraenor, 2308.9621f, 454.9409f, 6.0f, player->GetOrientation()); + player->CompletedAchievement(TanaanAchievements::AchievementWelcomeToDreanorA); + } else - player->GetSceneMgr().PlaySceneByPackageId(TanaanSceneObjects::SceneHordeBoat); + { + player->TeleportTo(TanaanZones::MapDraenor, 5538.213379f, 5015.2690f, 13.0f, player->GetOrientation()); + player->CompletedAchievement(TanaanAchievements::AchievementWelcomeToDreanorH); + } } } diff --git a/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_portal.cpp b/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_portal.cpp index 993109f..6337130 100644 --- a/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_portal.cpp +++ b/src/server/scripts/Draenor/TanaanIntro/tanaan_intro_portal.cpp @@ -317,7 +317,9 @@ public: return true; player->KilledMonsterCredit(TanaanKillCredits::CreditNorthernSpireDisabled); - player->GetSceneMgr().PlaySceneByPackageId(TanaanSceneObjects::SceneChoGallsFreedom); + /// Scenes 961 / 962 desactivees : jouees par PlaySceneByPackageId (SceneID nul, + /// ancrees sur la position du joueur), elles envoient le joueur sous la map. + /// Purement decoratif : le credit de quete est deja donne juste au-dessus. } /// Bleeding Hollow Gob (Teron'Gor) else if (gameObject->GetEntry() == TanaanGameObjects::GobMarkOfBleedingHollow) @@ -328,7 +330,7 @@ public: return true; player->KilledMonsterCredit(TanaanKillCredits::CreditSouthernSpireDisabled); - player->GetSceneMgr().PlaySceneByPackageId(TanaanSceneObjects::SceneTeronGorsFreedom); + /// Scene 962 desactivee, cf. le commentaire sur la marque des Ombrelune. } } return true;