X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fcommon%2FTargetingMode.cpp;h=9f8972ca50710f8f65be21f4fc233ca7d7bcd916;hb=4bc70f5311dcbcca4e6b9e852bbcb19602f50eeb;hp=d1627bcd0255f8281497ee40adcd8f7e336a23e8;hpb=ac3755adc509404528ef7de58695bf8e3bfb7dcd;p=l2e.git diff --git a/src/common/TargetingMode.cpp b/src/common/TargetingMode.cpp index d1627bc..9f8972c 100644 --- a/src/common/TargetingMode.cpp +++ b/src/common/TargetingMode.cpp @@ -16,11 +16,21 @@ namespace common { void TargetingMode::CreateTypeDescription() { TargetingMode t; - TypeDescription &td(TypeDescription::CreateOrGet("TargetingMode")); + 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; } }