Administrative source import: native x86 compilation passed for 423 authored units. Source placement and submission states are migrated separately; this commit does not imply peer acceptance.
Previous head: 35d2a8cb36
Payload SHA256: 592f016d2730c5593bb653aa054c1e5f76a6df72c8f5a09e66f74876e2e33dee
27 lines
745 B
C++
27 lines
745 B
C++
#ifndef RAGNAROK_SOURCE_CONTENTS_EFFECTS_EFFECTLISTS_H
|
|
#define RAGNAROK_SOURCE_CONTENTS_EFFECTS_EFFECTLISTS_H
|
|
|
|
#include "Contents/Effects/Effect.h"
|
|
|
|
#include <map>
|
|
|
|
struct EffectLists {
|
|
std::map<int, std::list<CEffect*>>& active;
|
|
EffectRetirement& retirement;
|
|
std::map<int, std::vector<CEffect*>>& indexed;
|
|
|
|
CEffect* Find(int actor, int id) const;
|
|
CEffect* Find(int actor, int instance, int id) const;
|
|
CEffect* At(int id, unsigned index) const;
|
|
void Add(int actor, CEffect* effect);
|
|
void Retire(CEffect* effect, unsigned char removeActive);
|
|
void Retire(int actor, int id);
|
|
void Retire(int actor, int instance, int id);
|
|
void RetireActor(int actor);
|
|
void Clear();
|
|
|
|
private:
|
|
void RemoveActive(CEffect* effect);
|
|
};
|
|
|
|
#endif
|