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 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | const l10n = require("../helpers/l10n").default; const id = "EVENT_IF_FLAGS_COMPARE"; const groups = ["EVENT_GROUP_CONTROL_FLOW"]; const subGroups = { EVENT_GROUP_CONTROL_FLOW: "EVENT_GROUP_VARIABLES", }; const autoLabel = (fetchArg) => { return l10n("EVENT_IF_FLAGS_COMPARE_LABEL", { variable: fetchArg("variable"), flag: String(Number(fetchArg("flag")) + 1), }); }; const fields = [ { key: "variable", label: l10n("FIELD_VARIABLE"), description: l10n("FIELD_VARIABLE_DESC"), type: "variable", defaultValue: "LAST_VARIABLE", }, { key: "flag", label: l10n("FIELD_FLAG"), description: l10n("FIELD_FLAG_CHECK_DESC"), type: "selectFlags", defaultValue: 0, }, { 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 { ifVariableBitwiseValue } = helpers; const truePath = input.true; const falsePath = input.__disableElse ? [] : input.false; let flags = 0; Iif (input.flag === 0) flags = 0x0001; Iif (input.flag === 1) flags = 0x0002; Iif (input.flag === 2) flags = 0x0004; Iif (input.flag === 3) flags = 0x0008; Iif (input.flag === 4) flags = 0x0010; if (input.flag === 5) flags = 0x0020; Iif (input.flag === 6) flags = 0x0040; Iif (input.flag === 7) flags = 0x0080; Iif (input.flag === 8) flags = 0x0100; Iif (input.flag === 9) flags = 0x0200; Iif (input.flag === 10) flags = 0x0400; Iif (input.flag === 11) flags = 0x0800; Iif (input.flag === 12) flags = 0x1000; Iif (input.flag === 13) flags = 0x2000; Iif (input.flag === 14) flags = 0x4000; Iif (input.flag === 15) flags = 0x8000; ifVariableBitwiseValue(input.variable, ".B_AND", flags, truePath, falsePath); }; module.exports = { id, description: l10n("EVENT_IF_FLAGS_COMPARE_DESC"), autoLabel, groups, subGroups, fields, compile, }; |