AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
AuraStubBuilder Class Reference

Builder for creating AuraStub instances with fluent API. More...

#include "AuraStub.h"

Public Member Functions

 AuraStubBuilder ()
 
AuraStubBuilderWithId (uint32_t id)
 
AuraStubBuilderWithSpellFamilyName (uint32_t familyName)
 
AuraStubBuilderWithCharges (uint8_t charges)
 
AuraStubBuilderWithDuration (int32_t duration)
 
AuraStubBuilderWithStackAmount (uint8_t amount)
 
AuraStubBuilderWithPassive (bool isPassive)
 
AuraStubBuilderWithEffect (uint8_t effIndex, int32_t amount, uint32_t auraType=0)
 
AuraStubBuilderWithPeriodicEffect (uint8_t effIndex, int32_t amount, int32_t totalTicks)
 
std::unique_ptr< AuraStubBuild ()
 
AuraStubBuildRaw ()
 

Private Attributes

std::unique_ptr< AuraStub_stub
 

Detailed Description

Builder for creating AuraStub instances with fluent API.

Constructor & Destructor Documentation

◆ AuraStubBuilder()

AuraStubBuilder::AuraStubBuilder ( )
inline
292: _stub(std::make_unique<AuraStub>()) {}
std::unique_ptr< AuraStub > _stub
Definition AuraStub.h:364

Member Function Documentation

◆ Build()

std::unique_ptr< AuraStub > AuraStubBuilder::Build ( )
inline

◆ BuildRaw()

AuraStub * AuraStubBuilder::BuildRaw ( )
inline
359 {
360 return _stub.release();
361 }

References _stub.

◆ WithCharges()

AuraStubBuilder & AuraStubBuilder::WithCharges ( uint8_t  charges)
inline
307 {
308 _stub->SetCharges(charges);
309 _stub->SetUsingCharges(charges > 0);
310 return *this;
311 }

References _stub.

Referenced by TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), and TEST_F().

◆ WithDuration()

AuraStubBuilder & AuraStubBuilder::WithDuration ( int32_t  duration)
inline
314 {
315 _stub->SetDuration(duration);
316 _stub->SetMaxDuration(duration);
317 return *this;
318 }

References _stub.

◆ WithEffect()

AuraStubBuilder & AuraStubBuilder::WithEffect ( uint8_t  effIndex,
int32_t  amount,
uint32_t  auraType = 0 
)
inline
333 {
334 if (AuraEffectStub* eff = _stub->GetEffect(effIndex))
335 {
336 eff->SetAmount(amount);
337 eff->SetAuraType(auraType);
338 }
339 return *this;
340 }
Lightweight stub for AuraEffect proc-related functionality.
Definition AuraStub.h:34

References _stub.

◆ WithId()

AuraStubBuilder & AuraStubBuilder::WithId ( uint32_t  id)
inline

◆ WithPassive()

AuraStubBuilder & AuraStubBuilder::WithPassive ( bool  isPassive)
inline
327 {
328 _stub->SetPassive(isPassive);
329 return *this;
330 }

References _stub.

◆ WithPeriodicEffect()

AuraStubBuilder & AuraStubBuilder::WithPeriodicEffect ( uint8_t  effIndex,
int32_t  amount,
int32_t  totalTicks 
)
inline
343 {
344 if (AuraEffectStub* eff = _stub->GetEffect(effIndex))
345 {
346 eff->SetAmount(amount);
347 eff->SetPeriodic(true);
348 eff->SetTotalTicks(totalTicks);
349 }
350 return *this;
351 }

References _stub.

◆ WithSpellFamilyName()

AuraStubBuilder & AuraStubBuilder::WithSpellFamilyName ( uint32_t  familyName)
inline
301 {
302 _stub->SetSpellFamilyName(familyName);
303 return *this;
304 }

References _stub.

◆ WithStackAmount()

AuraStubBuilder & AuraStubBuilder::WithStackAmount ( uint8_t  amount)
inline
321 {
322 _stub->SetStackAmount(amount);
323 return *this;
324 }

References _stub.

Referenced by TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), TEST_F(), and TEST_P().

Member Data Documentation

◆ _stub


The documentation for this class was generated from the following file: