summaryrefslogtreecommitdiff
path: root/src/emap/data/npcd.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emap/data/npcd.c')
-rw-r--r--src/emap/data/npcd.c38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/emap/data/npcd.c b/src/emap/data/npcd.c
new file mode 100644
index 0000000..183db46
--- /dev/null
+++ b/src/emap/data/npcd.c
@@ -0,0 +1,38 @@
+// Copyright (c) Copyright (c) Hercules Dev Team, licensed under GNU GPL.
+// Copyright (c) 2014 Evol developers
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "common/HPMi.h"
+#include "common/malloc.h"
+#include "common/mmo.h"
+#include "common/socket.h"
+#include "common/strlib.h"
+#include "map/battle.h"
+#include "map/npc.h"
+
+#include "emap/data/npcd.h"
+#include "emap/struct/npcdext.h"
+
+struct NpcdExt *npcd_get(TBL_NPC *nd)
+{
+ struct NpcdExt *data = getFromNPCD(nd, 0);
+ if (!data)
+ {
+ data = npcd_create();
+ addToNPCD(nd, data, 0, true);
+ }
+ return data;
+}
+
+struct NpcdExt *npcd_create(void)
+{
+ struct NpcdExt *data = NULL;
+ CREATE(data, struct NpcdExt, 1);
+ if (!data)
+ return NULL;
+ data->init = false;
+ return data;
+}