Press n or j to go to the next uncovered block, b, p or k for the previous block.
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 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | const l10n = require("../helpers/l10n").default; const id = "EVENT_IF_ACTOR_RELATIVE_TO_ACTOR"; const groups = ["EVENT_GROUP_CONTROL_FLOW", "EVENT_GROUP_ACTOR"]; const subGroups = { "EVENT_GROUP_ACTOR": "EVENT_GROUP_CONTROL_FLOW", "EVENT_GROUP_CONTROL_FLOW": "EVENT_GROUP_ACTOR" } const autoLabel = (fetchArg) => { const dir = fetchArg("operation"); let direction = l10n("FIELD_IS_ABOVE"); if (dir === "down") { direction = l10n("FIELD_IS_BELOW"); } else if (dir === "left") { direction = l10n("FIELD_IS_LEFT_OF"); } else Iif (dir === "right") { direction = l10n("FIELD_IS_RIGHT_OF"); } return l10n("EVENT_IF_ACTOR_RELATIVE_TO_ACTOR_LABEL", { actor: fetchArg("actorId"), direction, otherActor: fetchArg("otherActorId"), }); }; const fields = [ { key: "actorId", label: l10n("ACTOR"), description: l10n("FIELD_ACTOR_CHECK_DESC"), type: "actor", defaultValue: "player", }, { key: "operation", label: l10n("FIELD_COMPARISON"), description: l10n("FIELD_COMPARISON_RELATIVE_DESC"), type: "select", options: [ ["up", l10n("FIELD_IS_ABOVE")], ["down", l10n("FIELD_IS_BELOW")], ["left", l10n("FIELD_IS_LEFT_OF")], ["right", l10n("FIELD_IS_RIGHT_OF")], ], defaultValue: "up", width: "50%", }, { key: "otherActorId", label: l10n("FIELD_OTHER_ACTOR"), description: l10n("FIELD_ACTOR_RELATIVE_DESC"), type: "actor", defaultValue: "$self$", }, { key: "true", label: l10n("FIELD_TRUE"), description: l10n("FIELD_TRUE_DESC"), type: "events", }, { key: "__collapseElse", label: l10n("FIELD_ELSE"), type: "collapsable", defaultValue: true, conditions: [ { key: "__disableElse", ne: true, }, ], }, { key: "false", label: l10n("FIELD_FALSE"), description: l10n("FIELD_FALSE_DESC"), conditions: [ { key: "__collapseElse", ne: true, }, { key: "__disableElse", ne: true, }, ], type: "events", }, ]; const compile = (input, helpers) => { const { actorSetActive, ifActorRelativeToActor } = helpers; const truePath = input.true; const falsePath = input.__disableElse ? [] : input.false; actorSetActive(input.actorId); ifActorRelativeToActor( input.operation, input.otherActorId, truePath, falsePath ); }; module.exports = { id, description: l10n("EVENT_IF_ACTOR_RELATIVE_TO_ACTOR_DESC"), autoLabel, groups, subGroups, fields, compile, }; |