aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Maps/MapReference.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Maps/MapReference.h')
-rw-r--r--src/server/game/Maps/MapReference.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/server/game/Maps/MapReference.h b/src/server/game/Maps/MapReference.h
index 2a9074ac1cd..c674c9aa971 100644
--- a/src/server/game/Maps/MapReference.h
+++ b/src/server/game/Maps/MapReference.h
@@ -23,18 +23,15 @@
class Map;
class Player;
-class MapReference : public Reference<Map, Player>
+class MapReference : public Reference<Map, Player, MapReference>
{
protected:
- void targetObjectBuildLink() override;
- void targetObjectDestroyLink() override;
- void sourceObjectDestroyLink() override;
+ friend Reference<Map, Player, MapReference>;
+ void targetObjectBuildLink();
+ void targetObjectDestroyLink();
+ void sourceObjectDestroyLink();
public:
- MapReference() : Reference<Map, Player>() { }
+ MapReference() = default;
~MapReference() { unlink(); }
- MapReference* next() { return (MapReference*)Reference<Map, Player>::next(); }
- MapReference const* next() const { return (MapReference const*)Reference<Map, Player>::next(); }
- MapReference* nockeck_prev() { return (MapReference*)Reference<Map, Player>::nocheck_prev(); }
- MapReference const* nocheck_prev() const { return (MapReference const*)Reference<Map, Player>::nocheck_prev(); }
};
#endif