Trinitycore: Core/Vehicles: Accessories ejected on evade

Created on 13 Feb 2018  路  10Comments  路  Source: TrinityCore/TrinityCore

Description: Putricide tentacles are not handled correctly: 38309, 38308 they never appears, you can just see them on the floor with gm on once Putricide evades.

Current behaviour: Putricide tentacles are never installed on the boss.

Expected behaviour: Putricide tentacles must always be installed on the boss and morph on phase 2 and 3
related spells: (notice the scale changes according to the phase with the spell https://woehead.way-of-elendil.fr/?spell=71703 for example)
https://woehead.way-of-elendil.fr/?search=Green+Bottle
https://woehead.way-of-elendil.fr/?search=Orange+Bottle

Steps to reproduce the problem:

  1. .go c id 36678
  2. start a combat then gm on
  3. notice the 2 tentacle are on the floor
  4. Put the boss on phase 2 then 3 and notice there's no tentacles

Branch(es): 3.3.5 and master probably

TC rev. hash/commit: rev. f91a9f8b14e6

Comp-C++Script Priority-High Sub-Creature Sub-Vehicles

Most helpful comment

@Keader this could be funny to script

All 10 comments

@Keader this could be funny to script

I dont think so.
Sirikfoll says: It's vehicle issue :/

I tested after a crash the 2 tentacles were installed on the boss, and they get the correct auras on phase1 and 2, the only issue here that they are ejected after an evade, probably caused by a call "remove all auras"

I'm pretty sure I made vehicle auras not get removed on evade years ago

I fixed it like this, but I think It's better to find out why the accessories are ejected.
``` diff
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
index ff0dd69597..f8791a9c38 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
@@ -253,6 +253,7 @@ class boss_professor_putricide : public CreatureScript
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
me->SetImmuneToPC(false);
}
+
}

         void JustEngagedWith(Unit* who) override

@@ -266,7 +267,8 @@ class boss_professor_putricide : public CreatureScript
instance->DoCastSpellOnPlayers(LIGHT_S_HAMMER_TELEPORT);
return;
}
-

  • if (Vehicle* vehicleKit = me->GetVehicleKit())
  • vehicleKit->InstallAllAccessories(false);
    me->setActive(true);
    events.Reset();
    events.ScheduleEvent(EVENT_BERSERK, 600000);

This happen also with the leviathan, it ejects his turret on evade.

Also happens on Mimirons turret. ^

Your diff looks a bit unclear, does it really make a difference to add the blank line ?

@@ -253,6 +253,7 @@ class boss_professor_putricide : public CreatureScript
                     me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
                     me->SetImmuneToPC(false);
                 }
+
             }

             void JustEngagedWith(Unit* who) override

Maybe I'm wrong, but I think it would be enough to include this:

@@ -267,6 +267,8 @@ class boss_professor_putricide : public CreatureScript
                     return;
                 }

+                if (Vehicle* vehicleKit = me->GetVehicleKit())
+                    vehicleKit->InstallAllAccessories(false);
                 me->setActive(true);
                 events.Reset();
                 events.ScheduleEvent(EVENT_BERSERK, 600000);

works on master (for now, until all cherrypicks happen)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

tje3d picture tje3d  路  3Comments

Blasphemous picture Blasphemous  路  3Comments

Keader picture Keader  路  3Comments

jerbookins picture jerbookins  路  3Comments

daddycaddy picture daddycaddy  路  3Comments