summaryrefslogtreecommitdiff
path: root/src/KingSystem/Resource/GeneralParamList/resGParamListTraits.h
blob: 9e7a4b5c98bd7ba01d242cd421b17aeab62f2807 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#pragma once

#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h"

namespace ksys::res {

template <GParamListObjType>
struct GParamListObjTypeTraits;

#define KSYS_DECLARE_GPARAM_TRAIT_(NAME)                                                           \
    template <>                                                                                    \
    struct GParamListObjTypeTraits<GParamListObjType::NAME> {                                      \
        using type = class GParamListObject##NAME;                                                 \
        static inline constexpr auto enum_value = GParamListObjType::NAME;                         \
        static inline constexpr auto index = static_cast<s32>(enum_value);                         \
    };

KSYS_DECLARE_GPARAM_TRAIT_(System)
KSYS_DECLARE_GPARAM_TRAIT_(General)
KSYS_DECLARE_GPARAM_TRAIT_(Enemy)
KSYS_DECLARE_GPARAM_TRAIT_(EnemyLevel)
KSYS_DECLARE_GPARAM_TRAIT_(EnemyRace)
KSYS_DECLARE_GPARAM_TRAIT_(AttackInterval)
KSYS_DECLARE_GPARAM_TRAIT_(EnemyShown)
KSYS_DECLARE_GPARAM_TRAIT_(BindBone)
KSYS_DECLARE_GPARAM_TRAIT_(Attack)
KSYS_DECLARE_GPARAM_TRAIT_(WeaponCommon)
KSYS_DECLARE_GPARAM_TRAIT_(WeaponThrow)
KSYS_DECLARE_GPARAM_TRAIT_(Sandworm)
KSYS_DECLARE_GPARAM_TRAIT_(SmallSword)
KSYS_DECLARE_GPARAM_TRAIT_(Rod)
KSYS_DECLARE_GPARAM_TRAIT_(LargeSword)
KSYS_DECLARE_GPARAM_TRAIT_(Spear)
KSYS_DECLARE_GPARAM_TRAIT_(Shield)
KSYS_DECLARE_GPARAM_TRAIT_(Bow)
KSYS_DECLARE_GPARAM_TRAIT_(WeaponOption)
KSYS_DECLARE_GPARAM_TRAIT_(MasterSword)
KSYS_DECLARE_GPARAM_TRAIT_(GuardianMiniWeapon)
KSYS_DECLARE_GPARAM_TRAIT_(Player)
KSYS_DECLARE_GPARAM_TRAIT_(Camera)
KSYS_DECLARE_GPARAM_TRAIT_(Grab)
KSYS_DECLARE_GPARAM_TRAIT_(Armor)
KSYS_DECLARE_GPARAM_TRAIT_(ArmorEffect)
KSYS_DECLARE_GPARAM_TRAIT_(ArmorHead)
KSYS_DECLARE_GPARAM_TRAIT_(ArmorUpper)
KSYS_DECLARE_GPARAM_TRAIT_(ShiekerStone)
KSYS_DECLARE_GPARAM_TRAIT_(SeriesArmor)
KSYS_DECLARE_GPARAM_TRAIT_(Liftable)
KSYS_DECLARE_GPARAM_TRAIT_(Item)
KSYS_DECLARE_GPARAM_TRAIT_(Rupee)
KSYS_DECLARE_GPARAM_TRAIT_(Arrow)
KSYS_DECLARE_GPARAM_TRAIT_(Bullet)
KSYS_DECLARE_GPARAM_TRAIT_(CureItem)
KSYS_DECLARE_GPARAM_TRAIT_(CookSpice)
KSYS_DECLARE_GPARAM_TRAIT_(LumberjackTree)
KSYS_DECLARE_GPARAM_TRAIT_(Npc)
KSYS_DECLARE_GPARAM_TRAIT_(NpcEquipment)
KSYS_DECLARE_GPARAM_TRAIT_(Zora)
KSYS_DECLARE_GPARAM_TRAIT_(Traveler)
KSYS_DECLARE_GPARAM_TRAIT_(Prey)
KSYS_DECLARE_GPARAM_TRAIT_(AnimalFollowOffset)
KSYS_DECLARE_GPARAM_TRAIT_(ExtendedEntity)
KSYS_DECLARE_GPARAM_TRAIT_(BindActor)
KSYS_DECLARE_GPARAM_TRAIT_(EatTarget)
KSYS_DECLARE_GPARAM_TRAIT_(AnimalUnit)
KSYS_DECLARE_GPARAM_TRAIT_(Insect)
KSYS_DECLARE_GPARAM_TRAIT_(Fish)
KSYS_DECLARE_GPARAM_TRAIT_(Rope)
KSYS_DECLARE_GPARAM_TRAIT_(Horse)
KSYS_DECLARE_GPARAM_TRAIT_(HorseUnit)
KSYS_DECLARE_GPARAM_TRAIT_(HorseObject)
KSYS_DECLARE_GPARAM_TRAIT_(HorseRider)
KSYS_DECLARE_GPARAM_TRAIT_(HorseCreator)
KSYS_DECLARE_GPARAM_TRAIT_(GiantArmorSlot)
KSYS_DECLARE_GPARAM_TRAIT_(GiantArmor)
KSYS_DECLARE_GPARAM_TRAIT_(Guardian)
KSYS_DECLARE_GPARAM_TRAIT_(MonsterShop)
KSYS_DECLARE_GPARAM_TRAIT_(Swarm)
KSYS_DECLARE_GPARAM_TRAIT_(GelEnemy)
KSYS_DECLARE_GPARAM_TRAIT_(Nest)
KSYS_DECLARE_GPARAM_TRAIT_(Wizzrobe)
KSYS_DECLARE_GPARAM_TRAIT_(StalEnemy)
KSYS_DECLARE_GPARAM_TRAIT_(GuardianMini)
KSYS_DECLARE_GPARAM_TRAIT_(ClothReaction)
KSYS_DECLARE_GPARAM_TRAIT_(Global)
KSYS_DECLARE_GPARAM_TRAIT_(Beam)
KSYS_DECLARE_GPARAM_TRAIT_(AutoGen)
KSYS_DECLARE_GPARAM_TRAIT_(ChemicalType)
KSYS_DECLARE_GPARAM_TRAIT_(Golem)
KSYS_DECLARE_GPARAM_TRAIT_(HorseTargetedInfo)
KSYS_DECLARE_GPARAM_TRAIT_(WolfLink)
KSYS_DECLARE_GPARAM_TRAIT_(Event)
KSYS_DECLARE_GPARAM_TRAIT_(GolemIK)
KSYS_DECLARE_GPARAM_TRAIT_(PictureBook)
KSYS_DECLARE_GPARAM_TRAIT_(AirWall)
KSYS_DECLARE_GPARAM_TRAIT_(Motorcycle)

#undef KSYS_DECLARE_GPARAM_TRAIT_

}  // namespace ksys::res