Core/Units: Named unit flags linked to CreatureDifficulty flags

This commit is contained in:
Shauren
2022-01-22 13:21:15 +01:00
parent 2fd4ce9fb9
commit b4952db464
11 changed files with 95 additions and 66 deletions

View File

@@ -574,7 +574,7 @@ public:
me->RestoreFaction();
CombatAI::Reset();
me->AddUnitFlag(UNIT_FLAG_SWIMMING);
me->AddUnitFlag(UNIT_FLAG_CAN_SWIM);
}
void SpellHit(WorldObject* caster, SpellInfo const* spellInfo) override
@@ -666,7 +666,7 @@ public:
return true;
me->SetImmuneToPC(false);
me->RemoveUnitFlag(UNIT_FLAG_SWIMMING);
me->RemoveUnitFlag(UNIT_FLAG_CAN_SWIM);
player->CastSpell(me, SPELL_DUEL, false);
player->CastSpell(player, SPELL_DUEL_FLAG, true);

View File

@@ -454,7 +454,7 @@ struct boss_sister_svalna : public BossAI
CastSpellExtraArgs args;
args.AddSpellBP0(1);
summon->CastSpell(target, VEHICLE_SPELL_RIDE_HARDCODED, args);
summon->AddUnitFlag2(UnitFlags2(UNIT_FLAG2_UNK1 | UNIT_FLAG2_ALLOW_ENEMY_INTERACT));
summon->AddUnitFlag2(UnitFlags2(UNIT_FLAG2_HIDE_BODY | UNIT_FLAG2_INTERACT_WHILE_HOSTILE));
}
break;
default:

View File

@@ -282,10 +282,10 @@ class spell_varos_centrifuge_shield : public SpellScriptLoader
if (Unit* caster = GetCaster())
{
// flags taken from sniffs
if (caster->HasUnitFlag(UnitFlags(UNIT_FLAG_SWIMMING | UNIT_FLAG_IMMUNE_TO_NPC | UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_UNK_6)))
if (caster->HasUnitFlag(UnitFlags(UNIT_FLAG_CAN_SWIM | UNIT_FLAG_IMMUNE_TO_NPC | UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_UNK_6)))
{
caster->ToCreature()->SetReactState(REACT_PASSIVE);
caster->AddUnitFlag(UnitFlags(UNIT_FLAG_SWIMMING | UNIT_FLAG_UNK_6));
caster->AddUnitFlag(UnitFlags(UNIT_FLAG_CAN_SWIM | UNIT_FLAG_UNK_6));
caster->SetImmuneToAll(true, true);
}
}
@@ -296,7 +296,7 @@ class spell_varos_centrifuge_shield : public SpellScriptLoader
if (Unit* caster = GetCaster())
{
caster->ToCreature()->SetReactState(REACT_AGGRESSIVE);
caster->RemoveUnitFlag(UnitFlags(UNIT_FLAG_SWIMMING | UNIT_FLAG_UNK_6));
caster->RemoveUnitFlag(UnitFlags(UNIT_FLAG_CAN_SWIM | UNIT_FLAG_UNK_6));
caster->SetImmuneToAll(false);
}
}

View File

@@ -312,7 +312,7 @@ struct boss_algalon_the_observer : public BossAI
{
case ACTION_START_INTRO:
{
me->AddUnitFlag2(UNIT_FLAG2_INSTANTLY_APPEAR_MODEL);
me->AddUnitFlag2(UNIT_FLAG2_INSTANTLY_DONT_FADE_IN);
me->SetDisableGravity(true);
DoCastSelf(SPELL_ARRIVAL, true);
DoCastSelf(SPELL_RIDE_THE_LIGHTNING, true);