MCPcopy Create free account
hub / github.com/Norbyte/ositools / StatusGetAttribute

Function StatusGetAttribute

OsiInterface/Functions/StatusFunctions.cpp:109–182  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

107
108 template <OsiPropertyMapType Type>
109 bool StatusGetAttribute(OsiArgumentDesc & args)
110 {
111 auto status = GetStatusHelper(args);
112 if (status == nullptr) {
113 return false;
114 }
115
116 switch (status->GetStatusId()) {
117 case StatusType::Hit:
118 {
119 auto hit = static_cast<esv::StatusHit *>(status);
120 if (OsirisPropertyMapGet(gHitDamageInfoPropertyMap, &hit->DamageInfo, args, 2, Type, false)) {
121 return true;
122 } else {
123 return OsirisPropertyMapGet(gStatusHitPropertyMap, hit, args, 2, Type);
124 }
125 }
126
127 case StatusType::Heal:
128 {
129 auto heal = static_cast<esv::StatusHeal *>(status);
130 return OsirisPropertyMapGet(gStatusHealPropertyMap, heal, args, 2, Type);
131 }
132
133 case StatusType::Healing:
134 {
135 auto healing = static_cast<esv::StatusHealing *>(status);
136 return OsirisPropertyMapGet(gStatusHealingPropertyMap, healing, args, 2, Type);
137 }
138
139 case StatusType::Consume:
140 case StatusType::DarkAvenger:
141 case StatusType::DecayingTouch:
142 case StatusType::Remorse:
143 case StatusType::WindWalker:
144 case StatusType::Floating:
145 case StatusType::Incapacitated:
146 case StatusType::Polymorphed:
147 case StatusType::ShacklesOfPain:
148 case StatusType::ShacklesOfPainCaster:
149 case StatusType::Charmed:
150 case StatusType::ExtraTurn:
151 case StatusType::Damage:
152 case StatusType::Blind:
153 case StatusType::Encumbered:
154 case StatusType::Fear:
155 case StatusType::InfectiousDiseased:
156 case StatusType::Invisible:
157 case StatusType::Muted:
158 case StatusType::Stance:
159 case StatusType::Leadership:
160 case StatusType::Adrenaline:
161 case StatusType::LingeringWounds:
162 case StatusType::SpiritVision:
163 case StatusType::Overpowered:
164 case StatusType::Combustion:
165 case StatusType::GuardianAngel:
166 case StatusType::Challenge:

Callers

nothing calls this directly

Calls 2

GetStatusHelperFunction · 0.85
OsirisPropertyMapGetFunction · 0.85

Tested by

no test coverage detected