rodecomp/Source/Contents/Effects/EffectLists.h
ragnarok-clanker a47d20f8be Reconstruct readable C++ and organize cohesive source subsystems
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
2026-10-25 07:42:41 +00:00

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