本文整理汇总了C++中SetEquipmentSlots函数的典型用法代码示例。如果您正苦于以下问题:C++ SetEquipmentSlots函数的具体用法?C++ SetEquipmentSlots怎么用?C++ SetEquipmentSlots使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了SetEquipmentSlots函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Reset
void Reset() override
{
SetEquipmentSlots(false, EQUIP_MAIN_2, EQUIP_UNEQUIP, EQUIP_NO_CHANGE);
Weapon = EQUIP_MAIN_2;
AuraState = AURA_STATE_UNKNOWN19;
SisterNpcId = NPC_LIGHTBANE;
MyEmphatySpellId = SPELL_TWIN_EMPATHY_LIGHT;
OtherEssenceSpellId = SPELL_LIGHT_ESSENCE_HELPER;
SurgeSpellId = SPELL_DARK_SURGE;
VortexSpellId = SPELL_DARK_VORTEX;
ShieldSpellId = SPELL_DARK_SHIELD;
TwinPactSpellId = SPELL_DARK_TWIN_PACT;
TouchSpellId = SPELL_DARK_TOUCH;
SpikeSpellId = SPELL_DARK_TWIN_SPIKE;
boss_twin_baseAI::Reset();
}
示例2: Aggro
void Aggro(Unit* pWho)
{
if (!pInstance) return;
if (pWho->GetTypeId() != TYPEID_PLAYER) return;
if (Creature *pDummyTarget = pInstance->GetSingleCreatureFromStorage(NPC_BALTHARUS_TARGET))
pDummyTarget->ForcedDespawn();
SetEquipmentSlots(false, EQUIP_MAIN, EQUIP_OFFHAND, EQUIP_RANGED);
inCombat = true;
m_creature->InterruptNonMeleeSpells(true);
SetCombatMovement(true);
pInstance->SetData(TYPE_BALTHARUS, IN_PROGRESS);
DoScriptText(SAY_BALTHARUS_AGGRO,m_creature);
}
示例3: EnterCombat
void EnterCombat(Unit* pWho)
{
if(!pInstance)
return;
if(pWho->GetTypeId() != TYPEID_PLAYER)
return;
if(pDummyTarget)
pDummyTarget->ForcedDespawn();
SetEquipmentSlots(false, EQUIP_MAIN, EQUIP_OFFHAND, EQUIP_RANGED);
inCombat = true;
me->InterruptNonMeleeSpells(true);
SetCombatMovement(true);
pInstance->SetData(TYPE_BALTHARUS, IN_PROGRESS);
DoScriptText(-1666300,me);
}
示例4: Aggro
void Aggro(Unit* /*pWho*/) override
{
if (m_pInstance)
{
m_pInstance->SetData(TYPE_DEATHBRINGER_SAURFANG, IN_PROGRESS);
m_pInstance->SetSpecialAchievementCriteria(ACHIEVE_IVE_GONE_AND_MADE_A_MESS, true);
m_iMarkOfFallenCount = 0;
}
DoScriptText(SAY_AGGRO, m_creature);
SetEquipmentSlots(false, EQUIP_MAIN, EQUIP_OFFHAND, EQUIP_RANGED);
DoCastSpellIfCan(m_creature, SPELL_BLOOD_POWER, CAST_TRIGGERED);
DoCastSpellIfCan(m_creature, SPELL_RUNE_OF_BLOOD, CAST_TRIGGERED);
DoCastSpellIfCan(m_creature, SPELL_MARK_OF_FALLEN_CHAMPION, CAST_TRIGGERED);
}
示例5: Reset
void Reset()
{
if (instance)
{
instance->SetBossState(DATA_BALOROC, NOT_STARTED);
instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); // Remove
}
events.Reset();
me->GetMotionMaster()->MoveTargetedHome();
me->RemoveAllAuras();
summons.DespawnAll();
RemoveBlazeOfGlory();
//DoCast(me, SPELL_DUAL_BLADES);
SetEquipmentSlots(false, EQUIPMENT_ID_SWORD_1H, EQUIPMENT_ID_SWORD_1H, 0);
}
示例6: Reset
void Reset() {
SetEquipmentSlots(false, EQUIP_MAIN_2, EQUIP_UNEQUIP, EQUIP_NO_CHANGE);
m_uiStage = 1;
m_uiWeapon = EQUIP_MAIN_2;
m_uiAuraState = AURA_STATE_UNKNOWN19;
m_uiVortexEmote = EMOTE_VORTEX;
m_uiSisterNpcId = NPC_LIGHTBANE;
m_uiMyEmphatySpellId = SPELL_TWIN_EMPATHY_LIGHT;
m_uiOtherEssenceSpellId = SPELL_LIGHT_ESSENCE_HELPER;
m_uiSurgeSpellId = SPELL_DARK_SURGE;
m_uiVortexSpellId = SPELL_DARK_VORTEX;
m_uiShieldSpellId = SPELL_DARK_SHIELD;
m_uiTwinPactSpellId = SPELL_DARK_TWIN_PACT;
m_uiTouchSpellId = SPELL_DARK_TOUCH;
m_uiSpikeSpellId = SPELL_DARK_TWIN_SPIKE;
boss_twin_baseAI::Reset();
}
示例7: Reset
void Reset()
{
m_creature->SetRespawnDelay(DAY);
m_creature->SetDisplayId(29837);
SetEquipmentSlots(false, EQUIP_SWORD, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE);
Plague_Strike_Timer = m_bIsRegularMode ? 5000 : 4000;
Icy_Touch_Timer = m_bIsRegularMode ? 10000 : 7000;
Obliterate_Timer = m_bIsRegularMode ? 16000 : 10000;
Choke_Timer = 15000;
Summon_Ghoul = 4000;
m_uiBerserk_Timer = m_bIsRegularMode ? 300000 : 180000;
phase1 = true;
phase2 = false;
phase3 = false;
ghoul = false;
m_creature->GetMotionMaster()->MovePoint(0, 746, 614, m_creature->GetPositionZ());
m_creature->AddSplineFlag(SPLINEFLAG_WALKMODE);
}
示例8: EnterCombat
void EnterCombat(Unit* /*who*/) override
{
SetEquipmentSlots(false, EQUIP_ID_TANKARD, EQUIP_ID_TANKARD, EQUIP_NO_CHANGE);
for (uint8 i = 0; i < 3; ++i)
{
if (_add[i])
{
Creature* creature = ObjectAccessor::GetCreature((*me), _add[i]);
if (creature && creature->IsAlive())
{
creature->setFaction(FACTION_HOSTILE_CORE);
creature->SetInCombatWithZone();
}
_add[i] = 0;
}
}
}
示例9: Reset
void Reset()
{
_events.Reset();
_charged = false;
while (Creature* stormforgedLieutenant = me->FindNearestCreature(NPC_STORMFORGED_LIEUTENANT, 200.0f, false))
stormforgedLieutenant->Respawn();
if (_stance != STANCE_DEFENSIVE)
RemoveStance(_stance);
DoCast(me, SPELL_DEFENSIVE_STANCE, true);
SetEquipmentSlots(false, EQUIP_SWORD, EQUIP_SHIELD, EQUIP_NO_CHANGE);
_stance = STANCE_DEFENSIVE;
if (_instance)
_instance->SetData(TYPE_BJARNGRIM, NOT_STARTED);
}
示例10: Reset
void Reset() override
{
m_uiWhirlwindTimer = 15000;
m_uiHeroicStrikeTimer = 6000;
m_uiCleaveTimer = 13000;
m_uiSleepTimer = 15000;
m_uiBlastTimer = 6000;
m_uiCarrionTimer = 13000;
m_uiEscapeTimer = 0;
m_bIsYell = false;
m_bIsShield = false;
m_bIsTransform = false;
m_bIsDefeated = false;
m_creature->SetDisplayId(m_creature->GetNativeDisplayId());
SetEquipmentSlots(true);
}
示例11: SummonedCreatureJustDied
void SummonedCreatureJustDied(Creature* pSummoned)
{
if (pSummoned->GetEntry() == MOB_RUNE_WEAVER)
++WeaversDead;
if (WeaversDead >= MAX_WEAVERS)
{
m_creature->setFaction(FACTION_DARK_IRON);
m_creature->SetDisplayId(m_creature->GetNativeDisplayId());
SetEquipmentSlots(true);
if (GameObject* pGo = GetClosestGameObjectWithEntry(m_creature, m_uiRuneEntry, INTERACTION_DISTANCE))
if (pGo->GetGoState() == GO_STATE_ACTIVE)
pGo->SetGoState(GO_STATE_READY);
if (GameObject* pGo = GetClosestGameObjectWithEntry(m_creature, GO_RUNE_BASIS, INTERACTION_DISTANCE))
if (pGo->GetGoState() == GO_STATE_ACTIVE)
pGo->SetGoState(GO_STATE_READY);
}
}
示例12: Reset
void Reset()
{
m_bIsChangingStance = false;
m_uiChargingStatus = 0;
m_uiCharge_Timer = 1000;
m_uiChangeStance_Timer = urand(20000, 25000);
m_uiReflection_Timer = 8000;
m_uiKnockAway_Timer = 20000;
m_uiPummel_Timer = 10000;
m_uiIronform_Timer = 25000;
m_uiIntercept_Timer = 5000;
m_uiWhirlwind_Timer = 10000;
m_uiCleave_Timer = 8000;
m_uiMortalStrike_Timer = 8000;
m_uiSlam_Timer = 10000;
for (uint8 i = 0; i < 2; ++i)
{
if (Creature* pStormforgedLieutenant = ((Creature*)Unit::GetUnit((*m_creature), m_auiStormforgedLieutenantGUID[i])))
{
if (!pStormforgedLieutenant->isAlive())
pStormforgedLieutenant->Respawn();
}
}
if (m_uiStance != STANCE_DEFENSIVE)
{
DoRemoveStanceAura(m_uiStance);
DoCastSpellIfCan(m_creature, SPELL_DEFENSIVE_STANCE);
m_uiStance = STANCE_DEFENSIVE;
}
SetEquipmentSlots(false, EQUIP_SWORD, EQUIP_SHIELD, EQUIP_NO_CHANGE);
if (m_pInstance)
m_pInstance->SetData(TYPE_BJARNGRIM, NOT_STARTED);
}
示例13: DamageTaken
void DamageTaken(Unit* pDoneBy, uint32& uiDamage)
{
if (uiDamage > me->GetHealth() && uiPhase <= PHASE_SKELETON)
{
uiDamage = 0;
me->SetHealth(0);
me->AddUnitState(UNIT_STAT_ROOT | UNIT_STAT_STUNNED);
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
RemoveSummons();
switch(uiPhase)
{
case PHASE_UNDEAD:
me->SetDisplayId(MODEL_SKELETON);
break;
case PHASE_SKELETON:
me->SetDisplayId(MODEL_GHOST);
SetEquipmentSlots(false, EQUIP_UNEQUIP, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE);
break;
}
bEventInProgress = true;
}
}
示例14: Reset
void Reset()
{
events.Reset();
summons.DespawnAll();
if (instance)
instance->SetData(DATA_DAAKARAEVENT, NOT_STARTED);
Phase = PHASE_NONE;
firstSelection = false;
secondSelection = false;
clawRageTicks = 0;
lynxRushes = 0;
hasclawTarget = false;
canCastClaw = false;
canCastRush = false;
isFlameBreathing = false;
SetEquipmentSlots(false, 69916, 0, 0);
}
示例15: JustRespawned
void JustRespawned()
{
if (!m_pInstance)
return;
Reset();
if (m_pInstance->GetData(TYPE_THRALL_EVENT) == IN_PROGRESS)
{
SetEscortPaused(true);
m_bHadMount = false;
DoUnmount();
m_creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);
// check current states before fail and set spesific for the part
if (m_pInstance->GetData(TYPE_THRALL_PART1) == IN_PROGRESS)
{
SetCurrentWaypoint(1); // basement
SetEquipmentSlots(true);
m_creature->SetDisplayId(MODEL_THRALL_UNEQUIPPED);
m_creature->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
}
else if (m_pInstance->GetData(TYPE_THRALL_PART2) == IN_PROGRESS)
{
SetCurrentWaypoint(61); // barn
m_creature->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
}
else if (m_pInstance->GetData(TYPE_THRALL_PART3) == IN_PROGRESS || m_pInstance->GetData(TYPE_THRALL_PART4) == IN_PROGRESS)
SetCurrentWaypoint(96); // inn
// fail, and relocation handled in instance script
m_pInstance->SetData(TYPE_THRALL_EVENT, FAIL);
}
}