CommonLibSSE (powerof3)
|
#include <MagicCaster.h>
Public Types | |
enum class | State { kNone = 0 , kUnk01 , kUnk02 , kReady , kUnk04 , kCharging , kCasting , kUnk07 , kUnk08 , kUnk09 } |
Public Member Functions | |
virtual | ~MagicCaster () |
virtual void | CastSpellImmediate (MagicItem *a_spell, bool a_noHitEffectArt, TESObjectREFR *a_target, float a_effectiveness, bool a_hostileEffectivenessOnly, float a_magnitudeOverride, Actor *a_blameActor) |
virtual void | FindTouchTarget () |
virtual void | RequestCastImpl () |
virtual bool | StartChargeImpl () |
virtual void | StartReadyImpl () |
virtual void | StartCastImpl () |
virtual void | FinishCastImpl () |
virtual void | InterruptCastImpl (bool a_depleteEnergy) |
virtual void | SpellCast (bool a_doCast, std::uint32_t a_arg2, MagicItem *a_spell) |
virtual bool | CheckCast (MagicItem *a_spell, bool a_dualCast, float *a_effectStrength, MagicSystem::CannotCastReason *a_reason, bool a_useBaseValueForCost) |
virtual TESObjectREFR * | GetCasterStatsObject () const |
virtual Actor * | GetCasterAsActor () const |
virtual TESObjectREFR * | GetCasterObjectReference (Actor **a_outCaster) const |
virtual NiNode * | GetMagicNode () |
virtual void | ClearMagicNode () |
virtual void | SetCurrentSpellImpl (MagicItem *a_spell) |
virtual void | SelectSpellImpl () |
virtual void | DeselectSpellImpl () |
virtual void | SetSkipCheckCast () |
virtual void | SetCastingTimerForCharge () |
virtual MagicSystem::CastingSource | GetCastingSource () const |
virtual bool | GetIsDualCasting () const |
virtual void | SetDualCasting (bool a_set) |
virtual void | SaveGame (BGSSaveGameBuffer *a_buf) |
virtual void | LoadGame (BGSLoadGameBuffer *a_buf) |
virtual void | FinishLoadGame (BGSLoadGameBuffer *a_buf) |
virtual void | PrepareSound (MagicSystem::SoundID a_sound, MagicItem *a_spell) |
virtual void | AdjustActiveEffect (ActiveEffect *a_activeEffect, float a_power, bool a_arg3) |
MagicTarget * | FindPickTarget (NiPoint3 &a_targetLocation, TESObjectCELL **a_targetCell, bhkPickData &a_pickData) |
bool | FindTargets (float a_effectivenessMult, std::uint32_t &a_targetCount, TESBoundObject *a_source, bool a_loadCast, bool a_adjustOnlyHostileEffectiveness) |
void | FinishCast () |
float | GetCurrentSpellCost () |
void | InterruptCast (bool a_refund) |
void | PlayReleaseSound (MagicItem *a_item) |
void | SetCurrentSpell (MagicItem *a_item) |
bool | TestProjectilePlacement (const Effect &a_effect, const bhkPickData &a_pickData) |
void | UpdateImpl (float a_delta) |
Public Attributes | |
BSTArray< BSSoundHandle > | sounds |
ObjectRefHandle | desiredTarget |
std::uint32_t | pad24 |
MagicItem * | currentSpell |
REX::EnumSet< State, std::uint32_t > | state |
float | castingTimer |
float | currentSpellCost |
float | magnitudeOverride |
float | nextTargetUpdate |
float | projectileTimer |
Static Public Attributes | |
static constexpr auto | RTTI = RTTI_MagicCaster |
static constexpr auto | VTABLE = VTABLE_MagicCaster |
|
strong |
|
virtual |
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
MagicTarget* RE::MagicCaster::FindPickTarget | ( | NiPoint3 & | a_targetLocation, |
TESObjectCELL ** | a_targetCell, | ||
bhkPickData & | a_pickData | ||
) |
bool RE::MagicCaster::FindTargets | ( | float | a_effectivenessMult, |
std::uint32_t & | a_targetCount, | ||
TESBoundObject * | a_source, | ||
bool | a_loadCast, | ||
bool | a_adjustOnlyHostileEffectiveness | ||
) |
|
virtual |
void RE::MagicCaster::FinishCast | ( | ) |
|
virtual |
Reimplemented in RE::NonActorMagicCaster, and RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster, and RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster, and RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
float RE::MagicCaster::GetCurrentSpellCost | ( | ) |
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster, and RE::ActorMagicCaster.
void RE::MagicCaster::InterruptCast | ( | bool | a_refund | ) |
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster, and RE::ActorMagicCaster.
void RE::MagicCaster::PlayReleaseSound | ( | MagicItem * | a_item | ) |
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::NonActorMagicCaster, and RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
void RE::MagicCaster::SetCurrentSpell | ( | MagicItem * | a_item | ) |
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
|
virtual |
Reimplemented in RE::ActorMagicCaster.
bool RE::MagicCaster::TestProjectilePlacement | ( | const Effect & | a_effect, |
const bhkPickData & | a_pickData | ||
) |
void RE::MagicCaster::UpdateImpl | ( | float | a_delta | ) |
float RE::MagicCaster::castingTimer |
MagicItem* RE::MagicCaster::currentSpell |
float RE::MagicCaster::currentSpellCost |
ObjectRefHandle RE::MagicCaster::desiredTarget |
float RE::MagicCaster::magnitudeOverride |
float RE::MagicCaster::nextTargetUpdate |
std::uint32_t RE::MagicCaster::pad24 |
float RE::MagicCaster::projectileTimer |
|
inlinestaticconstexpr |
BSTArray<BSSoundHandle> RE::MagicCaster::sounds |
REX::EnumSet<State, std::uint32_t> RE::MagicCaster::state |
|
inlinestaticconstexpr |