X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fmonsters%2Fall.qh;h=c9e5ad37ba6448ed85374378affde2e871a6197c;hb=cd4892b9fcd32bd4887f0b3bc2503894520945c7;hp=05eb4346db90d2cf958358410ec2d02e5546879a;hpb=948c08402a7b9b7af36059104937650e343ecefe;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/monsters/all.qh b/qcsrc/common/monsters/all.qh index 05eb4346d..c9e5ad37b 100644 --- a/qcsrc/common/monsters/all.qh +++ b/qcsrc/common/monsters/all.qh @@ -1,26 +1,16 @@ -#ifndef MONSTERS_ALL_H -#define MONSTERS_ALL_H +#pragma once -#include "monster.qh" +string M_Model(string m_mdl); -REGISTRY(Monsters, BIT(4)) -REGISTER_REGISTRY(RegisterMonsters) +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 (Monsters_COUNT - 1) -/** If you register a new monster, make sure to add it to all.inc */ -#define REGISTER_MONSTER(id, inst) REGISTER(RegisterMonsters, MON, Monsters, id, monsterid, inst) - -REGISTER_MONSTER(Null, NEW(Monster)); +#define REGISTER_MONSTER(id, inst) REGISTER(Monsters, MON, id, monsterid, inst) -Monster get_monsterinfo(int id) -{ - if (id >= MON_FIRST && id <= MON_LAST) { - Monster m = Monsters[id]; - if (m) return m; - } - return MON_Null; -} - -#include "all.inc" +#include "monster.qh" -#endif +REGISTER_MONSTER(Null, NEW(Monster));