X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fmonsters%2Fall.qh;h=c9e5ad37ba6448ed85374378affde2e871a6197c;hb=e2763aba040ce6b50c64165ac93e6927309ddb1d;hp=7c2f13ddf6967414a0b56d1e73953f6e6ec6a44e;hpb=e175584f9680a06bb6f22e7e3a94ad98b094d394;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/monsters/all.qh b/qcsrc/common/monsters/all.qh index 7c2f13ddf..c9e5ad37b 100644 --- a/qcsrc/common/monsters/all.qh +++ b/qcsrc/common/monsters/all.qh @@ -1,23 +1,16 @@ -#ifndef MONSTERS_ALL_H -#define MONSTERS_ALL_H +#pragma once -#include "monster.qh" +string M_Model(string m_mdl); -void RegisterMonsters(); -const int MON_MAXCOUNT = 24; -entity monster_info[MON_MAXCOUNT], monster_info_first, monster_info_last; -entity get_monsterinfo(float id); -int MON_COUNT; +REGISTRY(Monsters, BITS(5)) +#define Monsters_from(i) _Monsters_from(i, MON_Null) +#define get_monsterinfo(i) Monsters_from(i) +REGISTER_REGISTRY(Monsters) +REGISTRY_CHECK(Monsters) const int MON_FIRST = 1; -#define MON_LAST (MON_FIRST + MON_COUNT - 1) -/** If you register a new monster, make sure to add it to all.inc */ -#define REGISTER_MONSTER(id, inst) REGISTER(RegisterMonsters, MON, monster_info, MON_COUNT, id, monsterid, inst) -REGISTER_REGISTRY(RegisterMonsters) +#define MON_LAST (Monsters_COUNT - 1) +#define REGISTER_MONSTER(id, inst) REGISTER(Monsters, MON, id, monsterid, inst) -entity get_monsterinfo(int id); +#include "monster.qh" REGISTER_MONSTER(Null, NEW(Monster)); - -#include "all.inc" - -#endif