X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fcommon%2FTargetingMode.cpp;h=9f8972ca50710f8f65be21f4fc233ca7d7bcd916;hb=f1e445b660889a18eaf05e7fcc16b360fb8605d5;hp=4f365c48d931ca6e584610804783c6d12bb3d812;hpb=46d158b25b842d2ec4b9734af09ca6006c934498;p=l2e.git diff --git a/src/common/TargetingMode.cpp b/src/common/TargetingMode.cpp index 4f365c4..9f8972c 100644 --- a/src/common/TargetingMode.cpp +++ b/src/common/TargetingMode.cpp @@ -17,10 +17,20 @@ namespace common { void TargetingMode::CreateTypeDescription() { TargetingMode t; + int boolId(TypeDescription::GetTypeId("Boolean")); + int numberId(TypeDescription::GetTypeId("Number")); + TypeDescription &td(TypeDescription::CreateOrGet("TargetingMode")); + td.SetDescription("Specifies how selection of a target (e.g. for a spell) is performed."); + td.SetConstructor(&Construct); td.SetSize(sizeof(TargetingMode)); - // TODO: fields + td.AddField("faction", FieldDescription(((char *)&t.ally) - ((char *)&t), boolId).SetDescription("targetted faction; true for ally, false for enemy")); + td.AddField("mode", FieldDescription(((char *)&t.mode) - ((char *)&t), numberId).SetDescription("attack mode; 0 = all, 1 = multiple, 2 = single")); +} + +void TargetingMode::Construct(void *data) { + new (data) TargetingMode; } }