wuira 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/data/spells/forever.json +224281 -0
- package/docs/spells.md +62 -0
- package/lib/Spells.d.ts +3 -1
- package/lib/Spells.lua +1 -1
- package/lib/index.d.ts +4 -2
- package/lib/index.lua +7 -3
- package/lib/platform/Encoding.d.ts +6 -0
- package/lib/platform/Encoding.lua +58 -0
- package/lib/platform/forever.d.ts +12 -1
- package/lib/spells/BindingActions.d.ts +298 -0
- package/lib/spells/BindingActions.lua +3 -0
- package/lib/spells/DruidSpells.d.ts +1093 -0
- package/lib/spells/DruidSpells.lua +3 -0
- package/lib/spells/GeneralSpells.d.ts +941 -0
- package/lib/spells/GeneralSpells.lua +3 -0
- package/lib/spells/HunterSpells.d.ts +1201 -0
- package/lib/spells/HunterSpells.lua +3 -0
- package/lib/spells/MageSpells.d.ts +1116 -0
- package/lib/spells/MageSpells.lua +3 -0
- package/lib/spells/PaladinSpells.d.ts +918 -0
- package/lib/spells/PaladinSpells.lua +3 -0
- package/lib/spells/PetSpells.d.ts +379 -0
- package/lib/spells/PetSpells.lua +3 -0
- package/lib/spells/PriestSpells.d.ts +942 -0
- package/lib/spells/PriestSpells.lua +3 -0
- package/lib/spells/ProfessionSpells.d.ts +5007 -0
- package/lib/spells/ProfessionSpells.lua +3 -0
- package/lib/spells/RacialSpells.d.ts +83 -0
- package/lib/spells/RacialSpells.lua +3 -0
- package/lib/spells/RogueSpells.d.ts +745 -0
- package/lib/spells/RogueSpells.lua +3 -0
- package/lib/spells/ShamanSpells.d.ts +1093 -0
- package/lib/spells/ShamanSpells.lua +3 -0
- package/lib/spells/WarlockSpells.d.ts +870 -0
- package/lib/spells/WarlockSpells.lua +3 -0
- package/lib/spells/WarriorSpells.d.ts +764 -0
- package/lib/spells/WarriorSpells.lua +3 -0
- package/lib/spells/WorldSpells.d.ts +31948 -0
- package/lib/spells/WorldSpells.lua +3 -0
- package/lib/spells/index.d.ts +17 -0
- package/lib/spells/index.lua +3 -0
- package/lib/ui/Icon.d.ts +1 -1
- package/lib/ui/Label.d.ts +1 -1
- package/lib/ui/ScrollHost.d.ts +19 -0
- package/lib/ui/ScrollHost.lua +67 -0
- package/lib/ui/TextInput.d.ts +26 -0
- package/lib/ui/TextInput.lua +206 -0
- package/lib/ui/Window.d.ts +2 -0
- package/lib/ui/Window.lua +17 -7
- package/lib/ui/index.d.ts +2 -0
- package/lib/ui/index.lua +8 -0
- package/package.json +19 -1
- package/tools/build-library.mjs +1 -1
- package/tools/generate-spells.mjs +48 -0
- package/tools/spell-data.mjs +27 -0
- package/tools/update-spells.mjs +92 -0
- package/tsconfig.json +2 -0
package/docs/spells.md
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Forever spell catalog
|
|
2
|
+
|
|
3
|
+
The generated enums cover all 31,863 IDs in both Spell and SpellName for
|
|
4
|
+
**wow_classic_beta 1.60.1.70374**, matching the locally verified Forever client.
|
|
5
|
+
No Retail, Season of Discovery, TBC or Classic Era tables are merged into it.
|
|
6
|
+
The source URLs, row counts and SHA-256 hashes are recorded in
|
|
7
|
+
data/spells/forever.json. Game data belongs to Blizzard Entertainment.
|
|
8
|
+
|
|
9
|
+
import { PaladinSpells, RacialSpells, GeneralSpells } from "wuira/spells";
|
|
10
|
+
import { MageSpells } from "wuira/spells/MageSpells";
|
|
11
|
+
|
|
12
|
+
const heal = PaladinSpells.HolyLight;
|
|
13
|
+
const rankedHeal = PaladinSpells.HolyLightRank1_635;
|
|
14
|
+
const racial = RacialSpells.WillOfTheForsaken;
|
|
15
|
+
const attack = GeneralSpells.Attack;
|
|
16
|
+
const fireball = MageSpells.Fireball;
|
|
17
|
+
|
|
18
|
+
The nine class enums group spell-family and class-mask metadata. Racial,
|
|
19
|
+
profession, pet and general spell enums use the client's skill-line metadata.
|
|
20
|
+
Remaining records live in WorldSpells: NPC abilities, world effects, item
|
|
21
|
+
effects and records whose ownership cannot be established from these tables.
|
|
22
|
+
No heuristic turns every unclassified record into an NPC-only spell.
|
|
23
|
+
Class-family membership does not prove that a spell is learnable by a player.
|
|
24
|
+
The snapshot includes retired, test and hidden records still present in this
|
|
25
|
+
Forever client's tables. Use KnownSpells for a character's learned abilities.
|
|
26
|
+
|
|
27
|
+
Every ID has an explicit ID-suffixed member. Rank labels come from the client.
|
|
28
|
+
Short aliases select the lowest linked rank; ambiguous unranked names require
|
|
29
|
+
the explicit member. Existing Spells aliases remain compatible.
|
|
30
|
+
The two historical Sanctuary aliases in that legacy enum are deprecated because
|
|
31
|
+
their IDs do not occur in this snapshot; they are not added to the generated
|
|
32
|
+
Forever catalog.
|
|
33
|
+
|
|
34
|
+
These are const enums: TypeScriptToLua replaces accesses with literal numbers,
|
|
35
|
+
so the entire catalog is not allocated as Lua tables. They support static
|
|
36
|
+
member access, not runtime iteration or string-based indexing.
|
|
37
|
+
|
|
38
|
+
## General actions
|
|
39
|
+
|
|
40
|
+
BindingActions contains 295 native command tokens from the pinned Forever
|
|
41
|
+
UI source's Bindings_Camelot.xml. Its source commit and hash are recorded
|
|
42
|
+
separately from the DB2 build.
|
|
43
|
+
|
|
44
|
+
import { BindingActions } from "wuira/spells";
|
|
45
|
+
const command = BindingActions.MOVEFORWARD; // "MOVEFORWARD"
|
|
46
|
+
|
|
47
|
+
Binding commands are strings. They are neither spell IDs nor keyboard shortcuts
|
|
48
|
+
such as SHIFT-1, and do not automatically become SecureButton spell actions.
|
|
49
|
+
|
|
50
|
+
## Regeneration
|
|
51
|
+
|
|
52
|
+
Normal builds use the committed snapshot and generated files without network
|
|
53
|
+
access. The updater restricts imports to the Forever 1.60 client branch.
|
|
54
|
+
To update deliberately to another Forever build:
|
|
55
|
+
|
|
56
|
+
npm run spells:update -- --build 1.60.1.70374
|
|
57
|
+
npm run spells:generate
|
|
58
|
+
npm run check
|
|
59
|
+
npm test
|
|
60
|
+
|
|
61
|
+
Review the build identity, source hashes, ID coverage and category differences
|
|
62
|
+
before committing an updated snapshot.
|
package/lib/Spells.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** Legacy aliases. Prefer the generated class enums for build-pinned Forever IDs. */
|
|
2
2
|
export declare enum Spells {
|
|
3
3
|
Judgement = 20271,
|
|
4
4
|
HolyStrike = 679,
|
|
@@ -14,6 +14,7 @@ export declare enum Spells {
|
|
|
14
14
|
BlessingOfKings = 20217,
|
|
15
15
|
BlessingOfLight = 19977,
|
|
16
16
|
BlessingOfSalvation = 1038,
|
|
17
|
+
/** @deprecated Absent from Forever 1.60.1.70374; retained for source compatibility. */
|
|
17
18
|
BlessingOfSanctuary = 20911,
|
|
18
19
|
BlessingOfSacrifice = 6940,
|
|
19
20
|
GreaterBlessingOfMight = 25782,
|
|
@@ -21,6 +22,7 @@ export declare enum Spells {
|
|
|
21
22
|
GreaterBlessingOfKings = 25898,
|
|
22
23
|
GreaterBlessingOfLight = 25890,
|
|
23
24
|
GreaterBlessingOfSalvation = 25895,
|
|
25
|
+
/** @deprecated Absent from Forever 1.60.1.70374; retained for source compatibility. */
|
|
24
26
|
GreaterBlessingOfSanctuary = 25899,
|
|
25
27
|
DevotionAura = 465,
|
|
26
28
|
RetributionAura = 7294,
|
package/lib/Spells.lua
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
--[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
|
|
2
2
|
local ____exports = {}
|
|
3
|
-
---
|
|
3
|
+
--- Legacy aliases. Prefer the generated class enums for build-pinned Forever IDs.
|
|
4
4
|
____exports.Spells = ____exports.Spells or ({})
|
|
5
5
|
____exports.Spells.Judgement = 20271
|
|
6
6
|
____exports.Spells[____exports.Spells.Judgement] = "Judgement"
|
package/lib/index.d.ts
CHANGED
|
@@ -3,7 +3,9 @@ import "./console-polyfill";
|
|
|
3
3
|
export { wuira } from "./wuira";
|
|
4
4
|
export type { CommandCallback } from "./platform/SlashCommands";
|
|
5
5
|
export { AddonSettings } from "./platform/AddonSettings";
|
|
6
|
+
export { Encoding } from "./platform/Encoding";
|
|
6
7
|
export { Spells } from "./Spells";
|
|
8
|
+
export { DruidSpells, GeneralSpells, HunterSpells, MageSpells, PaladinSpells, PetSpells, PriestSpells, ProfessionSpells, RacialSpells, RogueSpells, ShamanSpells, WarlockSpells, WarriorSpells, WorldSpells, BindingActions, } from "./spells/index";
|
|
7
9
|
export { BlizzardUI } from "./platform/BlizzardUI";
|
|
8
10
|
export { ActionBars } from "./platform/ActionBars";
|
|
9
11
|
export type { ActionSlot, EmptyActionBarsOptions } from "./platform/ActionBars";
|
|
@@ -15,5 +17,5 @@ export type { HoverTrackerOptions, HoverFrame } from "./ui/HoverTracker";
|
|
|
15
17
|
export { MicroBar } from "./skins/MicroBar";
|
|
16
18
|
export type { Element, Component } from "./ui/primitives/jsx";
|
|
17
19
|
export type { Cell } from "./ui/Cell";
|
|
18
|
-
export { Store, StoreRegistry } from "./store";
|
|
19
|
-
export type { StoreClass, ReadonlyData, SavedStoreOptions } from "./store";
|
|
20
|
+
export { Store, StoreRegistry } from "./store/index";
|
|
21
|
+
export type { StoreClass, ReadonlyData, SavedStoreOptions } from "./store/index";
|
package/lib/index.lua
CHANGED
|
@@ -9,6 +9,10 @@ do
|
|
|
9
9
|
local ____AddonSettings = require("platform.AddonSettings")
|
|
10
10
|
____exports.AddonSettings = ____AddonSettings.AddonSettings
|
|
11
11
|
end
|
|
12
|
+
do
|
|
13
|
+
local ____Encoding = require("platform.Encoding")
|
|
14
|
+
____exports.Encoding = ____Encoding.Encoding
|
|
15
|
+
end
|
|
12
16
|
do
|
|
13
17
|
local ____Spells = require("Spells")
|
|
14
18
|
____exports.Spells = ____Spells.Spells
|
|
@@ -34,8 +38,8 @@ do
|
|
|
34
38
|
____exports.MicroBar = ____MicroBar.MicroBar
|
|
35
39
|
end
|
|
36
40
|
do
|
|
37
|
-
local
|
|
38
|
-
____exports.Store =
|
|
39
|
-
____exports.StoreRegistry =
|
|
41
|
+
local ____index = require("store.index")
|
|
42
|
+
____exports.Store = ____index.Store
|
|
43
|
+
____exports.StoreRegistry = ____index.StoreRegistry
|
|
40
44
|
end
|
|
41
45
|
return ____exports
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Native CBOR, compression and Base64 transport for serializable data. */
|
|
2
|
+
export declare class Encoding {
|
|
3
|
+
static Encode(value: unknown): string;
|
|
4
|
+
/** Returns unvalidated data; the size bound is also checked after decompression. */
|
|
5
|
+
static Decode(value: string, maxBytes?: number): unknown;
|
|
6
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
--[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
|
|
2
|
+
-- Lua Library inline imports
|
|
3
|
+
local function __TS__Class(self)
|
|
4
|
+
local c = {prototype = {}}
|
|
5
|
+
c.prototype.__index = c.prototype
|
|
6
|
+
c.prototype.constructor = c
|
|
7
|
+
return c
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
local function __TS__NumberIsFinite(value)
|
|
11
|
+
return type(value) == "number" and value == value and value ~= math.huge and value ~= -math.huge
|
|
12
|
+
end
|
|
13
|
+
-- End of Lua Library inline imports
|
|
14
|
+
local ____exports = {}
|
|
15
|
+
--- Native CBOR, compression and Base64 transport for serializable data.
|
|
16
|
+
____exports.Encoding = __TS__Class()
|
|
17
|
+
local Encoding = ____exports.Encoding
|
|
18
|
+
Encoding.name = "Encoding"
|
|
19
|
+
function Encoding.prototype.____constructor(self)
|
|
20
|
+
end
|
|
21
|
+
function Encoding.Encode(self, value)
|
|
22
|
+
if C_EncodingUtil == nil then
|
|
23
|
+
error("Encoding: native codec is unavailable")
|
|
24
|
+
end
|
|
25
|
+
local compressed = C_EncodingUtil.CompressString(C_EncodingUtil.SerializeCBOR(value))
|
|
26
|
+
if compressed == nil then
|
|
27
|
+
error("Encoding: compression failed")
|
|
28
|
+
end
|
|
29
|
+
local encoded = C_EncodingUtil.EncodeBase64(compressed)
|
|
30
|
+
if encoded == nil then
|
|
31
|
+
error("Encoding: encoding failed")
|
|
32
|
+
end
|
|
33
|
+
return encoded
|
|
34
|
+
end
|
|
35
|
+
function Encoding.Decode(self, value, maxBytes)
|
|
36
|
+
if maxBytes == nil then
|
|
37
|
+
maxBytes = 262144
|
|
38
|
+
end
|
|
39
|
+
if not __TS__NumberIsFinite(maxBytes) or maxBytes < 1 then
|
|
40
|
+
error("Encoding: invalid size limit")
|
|
41
|
+
end
|
|
42
|
+
if type(value) ~= "string" or issecretvalue(value) or #value > maxBytes then
|
|
43
|
+
error("Encoding: invalid encoded data")
|
|
44
|
+
end
|
|
45
|
+
if C_EncodingUtil == nil then
|
|
46
|
+
error("Encoding: native codec is unavailable")
|
|
47
|
+
end
|
|
48
|
+
local decoded = C_EncodingUtil.DecodeBase64(value)
|
|
49
|
+
if decoded == nil then
|
|
50
|
+
error("Encoding: invalid encoding")
|
|
51
|
+
end
|
|
52
|
+
local decompressed = C_EncodingUtil.DecompressString(decoded)
|
|
53
|
+
if decompressed == nil or #decompressed > maxBytes then
|
|
54
|
+
error("Encoding: invalid or oversized compressed data")
|
|
55
|
+
end
|
|
56
|
+
return C_EncodingUtil.DeserializeCBOR(decompressed)
|
|
57
|
+
end
|
|
58
|
+
return ____exports
|
|
@@ -30,14 +30,16 @@ interface wuiraNativeFrame {
|
|
|
30
30
|
StopMovingOrSizing(): void;
|
|
31
31
|
EnableKeyboard(enabled: boolean): void;
|
|
32
32
|
SetPropagateKeyboardInput(propagate: boolean): void;
|
|
33
|
-
SetScript(script: "OnClick" | "OnDragStart" | "OnDragStop" | "OnEnter" | "OnLeave", handler: ((this: void, frame: wuiraNativeFrame) => void) | undefined): void;
|
|
33
|
+
SetScript(script: "OnClick" | "OnDragStart" | "OnDragStop" | "OnEnter" | "OnLeave" | "OnEscapePressed", handler: ((this: void, frame: wuiraNativeFrame) => void) | undefined): void;
|
|
34
34
|
SetScript(script: "OnKeyDown", handler: ((this: void, frame: wuiraNativeFrame, key: string) => void) | undefined): void;
|
|
35
|
+
SetScript(script: "OnMouseWheel", handler: ((this: void, frame: wuiraNativeFrame, delta: number) => void) | undefined): void;
|
|
35
36
|
GetName(): string | undefined;
|
|
36
37
|
IsProtected?(): boolean;
|
|
37
38
|
GetParent(): wuiraNativeFrame;
|
|
38
39
|
GetNumPoints(): number;
|
|
39
40
|
GetPoint(index: number): wuiraNativeReturns<[wuiraAnchor, wuiraNativeFrame, wuiraAnchor, number, number]>;
|
|
40
41
|
GetScale(): number;
|
|
42
|
+
SetScale(scale: number): void;
|
|
41
43
|
GetChildren(): wuiraNativeFrame[] & { readonly __tstlMultiReturn: unknown };
|
|
42
44
|
IsMouseOver(): boolean;
|
|
43
45
|
SetFrameStrata(strata: "BACKGROUND" | "LOW" | "MEDIUM" | "HIGH" | "DIALOG" | "FULLSCREEN" | "FULLSCREEN_DIALOG" | "TOOLTIP"): void;
|
|
@@ -175,3 +177,12 @@ declare const GetTotemInfo: ((this: void, slot: number) => wuiraNativeReturns<[
|
|
|
175
177
|
number | undefined, number | undefined, number | undefined,
|
|
176
178
|
]>) | undefined;
|
|
177
179
|
declare const GetTotemDuration: ((this: void, slot: number) => import("../datasources/TimerSource").NativeDuration) | undefined;
|
|
180
|
+
|
|
181
|
+
declare const C_EncodingUtil: {
|
|
182
|
+
SerializeCBOR(this: void, value: unknown): string;
|
|
183
|
+
DeserializeCBOR(this: void, value: string): unknown;
|
|
184
|
+
CompressString(this: void, value: string): string | undefined;
|
|
185
|
+
DecompressString(this: void, value: string): string | undefined;
|
|
186
|
+
EncodeBase64(this: void, value: string): string | undefined;
|
|
187
|
+
DecodeBase64(this: void, value: string): string | undefined;
|
|
188
|
+
} | undefined;
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
/** Native binding command tokens; these are not spell IDs or keyboard shortcuts. */
|
|
2
|
+
export declare const enum BindingActions {
|
|
3
|
+
ACTIONBUTTON1 = "ACTIONBUTTON1",
|
|
4
|
+
ACTIONBUTTON10 = "ACTIONBUTTON10",
|
|
5
|
+
ACTIONBUTTON11 = "ACTIONBUTTON11",
|
|
6
|
+
ACTIONBUTTON12 = "ACTIONBUTTON12",
|
|
7
|
+
ACTIONBUTTON2 = "ACTIONBUTTON2",
|
|
8
|
+
ACTIONBUTTON3 = "ACTIONBUTTON3",
|
|
9
|
+
ACTIONBUTTON4 = "ACTIONBUTTON4",
|
|
10
|
+
ACTIONBUTTON5 = "ACTIONBUTTON5",
|
|
11
|
+
ACTIONBUTTON6 = "ACTIONBUTTON6",
|
|
12
|
+
ACTIONBUTTON7 = "ACTIONBUTTON7",
|
|
13
|
+
ACTIONBUTTON8 = "ACTIONBUTTON8",
|
|
14
|
+
ACTIONBUTTON9 = "ACTIONBUTTON9",
|
|
15
|
+
ACTIONPAGE1 = "ACTIONPAGE1",
|
|
16
|
+
ACTIONPAGE2 = "ACTIONPAGE2",
|
|
17
|
+
ACTIONPAGE3 = "ACTIONPAGE3",
|
|
18
|
+
ACTIONPAGE4 = "ACTIONPAGE4",
|
|
19
|
+
ACTIONPAGE5 = "ACTIONPAGE5",
|
|
20
|
+
ACTIONPAGE6 = "ACTIONPAGE6",
|
|
21
|
+
ALLNAMEPLATES = "ALLNAMEPLATES",
|
|
22
|
+
ASSISTTARGET = "ASSISTTARGET",
|
|
23
|
+
ATTACKTARGET = "ATTACKTARGET",
|
|
24
|
+
BONUSACTIONBUTTON1 = "BONUSACTIONBUTTON1",
|
|
25
|
+
BONUSACTIONBUTTON10 = "BONUSACTIONBUTTON10",
|
|
26
|
+
BONUSACTIONBUTTON2 = "BONUSACTIONBUTTON2",
|
|
27
|
+
BONUSACTIONBUTTON3 = "BONUSACTIONBUTTON3",
|
|
28
|
+
BONUSACTIONBUTTON4 = "BONUSACTIONBUTTON4",
|
|
29
|
+
BONUSACTIONBUTTON5 = "BONUSACTIONBUTTON5",
|
|
30
|
+
BONUSACTIONBUTTON6 = "BONUSACTIONBUTTON6",
|
|
31
|
+
BONUSACTIONBUTTON7 = "BONUSACTIONBUTTON7",
|
|
32
|
+
BONUSACTIONBUTTON8 = "BONUSACTIONBUTTON8",
|
|
33
|
+
BONUSACTIONBUTTON9 = "BONUSACTIONBUTTON9",
|
|
34
|
+
CAMERAORSELECTORMOVE = "CAMERAORSELECTORMOVE",
|
|
35
|
+
CAMERAZOOMIN = "CAMERAZOOMIN",
|
|
36
|
+
CAMERAZOOMOUT = "CAMERAZOOMOUT",
|
|
37
|
+
CENTERCAMERA = "CENTERCAMERA",
|
|
38
|
+
CHATBOTTOM = "CHATBOTTOM",
|
|
39
|
+
CHATPAGEDOWN = "CHATPAGEDOWN",
|
|
40
|
+
CHATPAGEUP = "CHATPAGEUP",
|
|
41
|
+
COMBATLOGBOTTOM = "COMBATLOGBOTTOM",
|
|
42
|
+
COMBATLOGPAGEDOWN = "COMBATLOGPAGEDOWN",
|
|
43
|
+
COMBATLOGPAGEUP = "COMBATLOGPAGEUP",
|
|
44
|
+
COPYTOOLTIP = "COPYTOOLTIP",
|
|
45
|
+
DISMOUNT = "DISMOUNT",
|
|
46
|
+
DUMPMOVEMENTCAPTURE = "DUMPMOVEMENTCAPTURE",
|
|
47
|
+
EXTRAACTIONBUTTON1 = "EXTRAACTIONBUTTON1",
|
|
48
|
+
FLIPCAMERAYAW = "FLIPCAMERAYAW",
|
|
49
|
+
FOCUSTARGET = "FOCUSTARGET",
|
|
50
|
+
FOLLOWTARGET = "FOLLOWTARGET",
|
|
51
|
+
FRIENDNAMEPLATES = "FRIENDNAMEPLATES",
|
|
52
|
+
FSTACK = "FSTACK",
|
|
53
|
+
INTERACTMOUSEOVER = "INTERACTMOUSEOVER",
|
|
54
|
+
INTERACTTARGET = "INTERACTTARGET",
|
|
55
|
+
ITEMCOMPARISONCYCLING = "ITEMCOMPARISONCYCLING",
|
|
56
|
+
JUMP = "JUMP",
|
|
57
|
+
MASTERVOLUMEDOWN = "MASTERVOLUMEDOWN",
|
|
58
|
+
MASTERVOLUMEUP = "MASTERVOLUMEUP",
|
|
59
|
+
MINIMAPZOOMIN = "MINIMAPZOOMIN",
|
|
60
|
+
MINIMAPZOOMOUT = "MINIMAPZOOMOUT",
|
|
61
|
+
MOVEANDSTEER = "MOVEANDSTEER",
|
|
62
|
+
MOVEBACKWARD = "MOVEBACKWARD",
|
|
63
|
+
MOVEFORWARD = "MOVEFORWARD",
|
|
64
|
+
MULTIACTIONBAR1BUTTON1 = "MULTIACTIONBAR1BUTTON1",
|
|
65
|
+
MULTIACTIONBAR1BUTTON10 = "MULTIACTIONBAR1BUTTON10",
|
|
66
|
+
MULTIACTIONBAR1BUTTON11 = "MULTIACTIONBAR1BUTTON11",
|
|
67
|
+
MULTIACTIONBAR1BUTTON12 = "MULTIACTIONBAR1BUTTON12",
|
|
68
|
+
MULTIACTIONBAR1BUTTON2 = "MULTIACTIONBAR1BUTTON2",
|
|
69
|
+
MULTIACTIONBAR1BUTTON3 = "MULTIACTIONBAR1BUTTON3",
|
|
70
|
+
MULTIACTIONBAR1BUTTON4 = "MULTIACTIONBAR1BUTTON4",
|
|
71
|
+
MULTIACTIONBAR1BUTTON5 = "MULTIACTIONBAR1BUTTON5",
|
|
72
|
+
MULTIACTIONBAR1BUTTON6 = "MULTIACTIONBAR1BUTTON6",
|
|
73
|
+
MULTIACTIONBAR1BUTTON7 = "MULTIACTIONBAR1BUTTON7",
|
|
74
|
+
MULTIACTIONBAR1BUTTON8 = "MULTIACTIONBAR1BUTTON8",
|
|
75
|
+
MULTIACTIONBAR1BUTTON9 = "MULTIACTIONBAR1BUTTON9",
|
|
76
|
+
MULTIACTIONBAR2BUTTON1 = "MULTIACTIONBAR2BUTTON1",
|
|
77
|
+
MULTIACTIONBAR2BUTTON10 = "MULTIACTIONBAR2BUTTON10",
|
|
78
|
+
MULTIACTIONBAR2BUTTON11 = "MULTIACTIONBAR2BUTTON11",
|
|
79
|
+
MULTIACTIONBAR2BUTTON12 = "MULTIACTIONBAR2BUTTON12",
|
|
80
|
+
MULTIACTIONBAR2BUTTON2 = "MULTIACTIONBAR2BUTTON2",
|
|
81
|
+
MULTIACTIONBAR2BUTTON3 = "MULTIACTIONBAR2BUTTON3",
|
|
82
|
+
MULTIACTIONBAR2BUTTON4 = "MULTIACTIONBAR2BUTTON4",
|
|
83
|
+
MULTIACTIONBAR2BUTTON5 = "MULTIACTIONBAR2BUTTON5",
|
|
84
|
+
MULTIACTIONBAR2BUTTON6 = "MULTIACTIONBAR2BUTTON6",
|
|
85
|
+
MULTIACTIONBAR2BUTTON7 = "MULTIACTIONBAR2BUTTON7",
|
|
86
|
+
MULTIACTIONBAR2BUTTON8 = "MULTIACTIONBAR2BUTTON8",
|
|
87
|
+
MULTIACTIONBAR2BUTTON9 = "MULTIACTIONBAR2BUTTON9",
|
|
88
|
+
MULTIACTIONBAR3BUTTON1 = "MULTIACTIONBAR3BUTTON1",
|
|
89
|
+
MULTIACTIONBAR3BUTTON10 = "MULTIACTIONBAR3BUTTON10",
|
|
90
|
+
MULTIACTIONBAR3BUTTON11 = "MULTIACTIONBAR3BUTTON11",
|
|
91
|
+
MULTIACTIONBAR3BUTTON12 = "MULTIACTIONBAR3BUTTON12",
|
|
92
|
+
MULTIACTIONBAR3BUTTON2 = "MULTIACTIONBAR3BUTTON2",
|
|
93
|
+
MULTIACTIONBAR3BUTTON3 = "MULTIACTIONBAR3BUTTON3",
|
|
94
|
+
MULTIACTIONBAR3BUTTON4 = "MULTIACTIONBAR3BUTTON4",
|
|
95
|
+
MULTIACTIONBAR3BUTTON5 = "MULTIACTIONBAR3BUTTON5",
|
|
96
|
+
MULTIACTIONBAR3BUTTON6 = "MULTIACTIONBAR3BUTTON6",
|
|
97
|
+
MULTIACTIONBAR3BUTTON7 = "MULTIACTIONBAR3BUTTON7",
|
|
98
|
+
MULTIACTIONBAR3BUTTON8 = "MULTIACTIONBAR3BUTTON8",
|
|
99
|
+
MULTIACTIONBAR3BUTTON9 = "MULTIACTIONBAR3BUTTON9",
|
|
100
|
+
MULTIACTIONBAR4BUTTON1 = "MULTIACTIONBAR4BUTTON1",
|
|
101
|
+
MULTIACTIONBAR4BUTTON10 = "MULTIACTIONBAR4BUTTON10",
|
|
102
|
+
MULTIACTIONBAR4BUTTON11 = "MULTIACTIONBAR4BUTTON11",
|
|
103
|
+
MULTIACTIONBAR4BUTTON12 = "MULTIACTIONBAR4BUTTON12",
|
|
104
|
+
MULTIACTIONBAR4BUTTON2 = "MULTIACTIONBAR4BUTTON2",
|
|
105
|
+
MULTIACTIONBAR4BUTTON3 = "MULTIACTIONBAR4BUTTON3",
|
|
106
|
+
MULTIACTIONBAR4BUTTON4 = "MULTIACTIONBAR4BUTTON4",
|
|
107
|
+
MULTIACTIONBAR4BUTTON5 = "MULTIACTIONBAR4BUTTON5",
|
|
108
|
+
MULTIACTIONBAR4BUTTON6 = "MULTIACTIONBAR4BUTTON6",
|
|
109
|
+
MULTIACTIONBAR4BUTTON7 = "MULTIACTIONBAR4BUTTON7",
|
|
110
|
+
MULTIACTIONBAR4BUTTON8 = "MULTIACTIONBAR4BUTTON8",
|
|
111
|
+
MULTIACTIONBAR4BUTTON9 = "MULTIACTIONBAR4BUTTON9",
|
|
112
|
+
MULTIACTIONBAR5BUTTON1 = "MULTIACTIONBAR5BUTTON1",
|
|
113
|
+
MULTIACTIONBAR5BUTTON10 = "MULTIACTIONBAR5BUTTON10",
|
|
114
|
+
MULTIACTIONBAR5BUTTON11 = "MULTIACTIONBAR5BUTTON11",
|
|
115
|
+
MULTIACTIONBAR5BUTTON12 = "MULTIACTIONBAR5BUTTON12",
|
|
116
|
+
MULTIACTIONBAR5BUTTON2 = "MULTIACTIONBAR5BUTTON2",
|
|
117
|
+
MULTIACTIONBAR5BUTTON3 = "MULTIACTIONBAR5BUTTON3",
|
|
118
|
+
MULTIACTIONBAR5BUTTON4 = "MULTIACTIONBAR5BUTTON4",
|
|
119
|
+
MULTIACTIONBAR5BUTTON5 = "MULTIACTIONBAR5BUTTON5",
|
|
120
|
+
MULTIACTIONBAR5BUTTON6 = "MULTIACTIONBAR5BUTTON6",
|
|
121
|
+
MULTIACTIONBAR5BUTTON7 = "MULTIACTIONBAR5BUTTON7",
|
|
122
|
+
MULTIACTIONBAR5BUTTON8 = "MULTIACTIONBAR5BUTTON8",
|
|
123
|
+
MULTIACTIONBAR5BUTTON9 = "MULTIACTIONBAR5BUTTON9",
|
|
124
|
+
MULTIACTIONBAR6BUTTON1 = "MULTIACTIONBAR6BUTTON1",
|
|
125
|
+
MULTIACTIONBAR6BUTTON10 = "MULTIACTIONBAR6BUTTON10",
|
|
126
|
+
MULTIACTIONBAR6BUTTON11 = "MULTIACTIONBAR6BUTTON11",
|
|
127
|
+
MULTIACTIONBAR6BUTTON12 = "MULTIACTIONBAR6BUTTON12",
|
|
128
|
+
MULTIACTIONBAR6BUTTON2 = "MULTIACTIONBAR6BUTTON2",
|
|
129
|
+
MULTIACTIONBAR6BUTTON3 = "MULTIACTIONBAR6BUTTON3",
|
|
130
|
+
MULTIACTIONBAR6BUTTON4 = "MULTIACTIONBAR6BUTTON4",
|
|
131
|
+
MULTIACTIONBAR6BUTTON5 = "MULTIACTIONBAR6BUTTON5",
|
|
132
|
+
MULTIACTIONBAR6BUTTON6 = "MULTIACTIONBAR6BUTTON6",
|
|
133
|
+
MULTIACTIONBAR6BUTTON7 = "MULTIACTIONBAR6BUTTON7",
|
|
134
|
+
MULTIACTIONBAR6BUTTON8 = "MULTIACTIONBAR6BUTTON8",
|
|
135
|
+
MULTIACTIONBAR6BUTTON9 = "MULTIACTIONBAR6BUTTON9",
|
|
136
|
+
MULTIACTIONBAR7BUTTON1 = "MULTIACTIONBAR7BUTTON1",
|
|
137
|
+
MULTIACTIONBAR7BUTTON10 = "MULTIACTIONBAR7BUTTON10",
|
|
138
|
+
MULTIACTIONBAR7BUTTON11 = "MULTIACTIONBAR7BUTTON11",
|
|
139
|
+
MULTIACTIONBAR7BUTTON12 = "MULTIACTIONBAR7BUTTON12",
|
|
140
|
+
MULTIACTIONBAR7BUTTON2 = "MULTIACTIONBAR7BUTTON2",
|
|
141
|
+
MULTIACTIONBAR7BUTTON3 = "MULTIACTIONBAR7BUTTON3",
|
|
142
|
+
MULTIACTIONBAR7BUTTON4 = "MULTIACTIONBAR7BUTTON4",
|
|
143
|
+
MULTIACTIONBAR7BUTTON5 = "MULTIACTIONBAR7BUTTON5",
|
|
144
|
+
MULTIACTIONBAR7BUTTON6 = "MULTIACTIONBAR7BUTTON6",
|
|
145
|
+
MULTIACTIONBAR7BUTTON7 = "MULTIACTIONBAR7BUTTON7",
|
|
146
|
+
MULTIACTIONBAR7BUTTON8 = "MULTIACTIONBAR7BUTTON8",
|
|
147
|
+
MULTIACTIONBAR7BUTTON9 = "MULTIACTIONBAR7BUTTON9",
|
|
148
|
+
NAMEPLATES = "NAMEPLATES",
|
|
149
|
+
NEXTACTIONPAGE = "NEXTACTIONPAGE",
|
|
150
|
+
NEXTVIEW = "NEXTVIEW",
|
|
151
|
+
OPENALLBAGS = "OPENALLBAGS",
|
|
152
|
+
OPENCHAT = "OPENCHAT",
|
|
153
|
+
OPENCHATSLASH = "OPENCHATSLASH",
|
|
154
|
+
PETATTACK = "PETATTACK",
|
|
155
|
+
PITCHDOWN = "PITCHDOWN",
|
|
156
|
+
PITCHUP = "PITCHUP",
|
|
157
|
+
PREVIOUSACTIONPAGE = "PREVIOUSACTIONPAGE",
|
|
158
|
+
PREVVIEW = "PREVVIEW",
|
|
159
|
+
RAIDTARGET1 = "RAIDTARGET1",
|
|
160
|
+
RAIDTARGET2 = "RAIDTARGET2",
|
|
161
|
+
RAIDTARGET3 = "RAIDTARGET3",
|
|
162
|
+
RAIDTARGET4 = "RAIDTARGET4",
|
|
163
|
+
RAIDTARGET5 = "RAIDTARGET5",
|
|
164
|
+
RAIDTARGET6 = "RAIDTARGET6",
|
|
165
|
+
RAIDTARGET7 = "RAIDTARGET7",
|
|
166
|
+
RAIDTARGET8 = "RAIDTARGET8",
|
|
167
|
+
RAIDTARGETNONE = "RAIDTARGETNONE",
|
|
168
|
+
RELOADUI = "RELOADUI",
|
|
169
|
+
REPEATCONSOLECOMMAND = "REPEATCONSOLECOMMAND",
|
|
170
|
+
REPLY = "REPLY",
|
|
171
|
+
REPLY2 = "REPLY2",
|
|
172
|
+
RESETVIEW1 = "RESETVIEW1",
|
|
173
|
+
RESETVIEW2 = "RESETVIEW2",
|
|
174
|
+
RESETVIEW3 = "RESETVIEW3",
|
|
175
|
+
RESETVIEW4 = "RESETVIEW4",
|
|
176
|
+
RESETVIEW5 = "RESETVIEW5",
|
|
177
|
+
SAVEVIEW1 = "SAVEVIEW1",
|
|
178
|
+
SAVEVIEW2 = "SAVEVIEW2",
|
|
179
|
+
SAVEVIEW3 = "SAVEVIEW3",
|
|
180
|
+
SAVEVIEW4 = "SAVEVIEW4",
|
|
181
|
+
SAVEVIEW5 = "SAVEVIEW5",
|
|
182
|
+
SCREENSHOT = "SCREENSHOT",
|
|
183
|
+
SETVIEW1 = "SETVIEW1",
|
|
184
|
+
SETVIEW2 = "SETVIEW2",
|
|
185
|
+
SETVIEW3 = "SETVIEW3",
|
|
186
|
+
SETVIEW4 = "SETVIEW4",
|
|
187
|
+
SETVIEW5 = "SETVIEW5",
|
|
188
|
+
SHAPESHIFTBUTTON1 = "SHAPESHIFTBUTTON1",
|
|
189
|
+
SHAPESHIFTBUTTON10 = "SHAPESHIFTBUTTON10",
|
|
190
|
+
SHAPESHIFTBUTTON2 = "SHAPESHIFTBUTTON2",
|
|
191
|
+
SHAPESHIFTBUTTON3 = "SHAPESHIFTBUTTON3",
|
|
192
|
+
SHAPESHIFTBUTTON4 = "SHAPESHIFTBUTTON4",
|
|
193
|
+
SHAPESHIFTBUTTON5 = "SHAPESHIFTBUTTON5",
|
|
194
|
+
SHAPESHIFTBUTTON6 = "SHAPESHIFTBUTTON6",
|
|
195
|
+
SHAPESHIFTBUTTON7 = "SHAPESHIFTBUTTON7",
|
|
196
|
+
SHAPESHIFTBUTTON8 = "SHAPESHIFTBUTTON8",
|
|
197
|
+
SHAPESHIFTBUTTON9 = "SHAPESHIFTBUTTON9",
|
|
198
|
+
SITORSTAND = "SITORSTAND",
|
|
199
|
+
STARTATTACK = "STARTATTACK",
|
|
200
|
+
STARTAUTORUN = "STARTAUTORUN",
|
|
201
|
+
STOPATTACK = "STOPATTACK",
|
|
202
|
+
STOPAUTORUN = "STOPAUTORUN",
|
|
203
|
+
STOPCASTING = "STOPCASTING",
|
|
204
|
+
STRAFELEFT = "STRAFELEFT",
|
|
205
|
+
STRAFERIGHT = "STRAFERIGHT",
|
|
206
|
+
TARGETFOCUS = "TARGETFOCUS",
|
|
207
|
+
TARGETLASTHOSTILE = "TARGETLASTHOSTILE",
|
|
208
|
+
TARGETLASTTARGET = "TARGETLASTTARGET",
|
|
209
|
+
TARGETMOUSEOVER = "TARGETMOUSEOVER",
|
|
210
|
+
TARGETNEARESTENEMY = "TARGETNEARESTENEMY",
|
|
211
|
+
TARGETNEARESTENEMYPLAYER = "TARGETNEARESTENEMYPLAYER",
|
|
212
|
+
TARGETNEARESTFRIEND = "TARGETNEARESTFRIEND",
|
|
213
|
+
TARGETNEARESTFRIENDPLAYER = "TARGETNEARESTFRIENDPLAYER",
|
|
214
|
+
TARGETPARTYMEMBER1 = "TARGETPARTYMEMBER1",
|
|
215
|
+
TARGETPARTYMEMBER2 = "TARGETPARTYMEMBER2",
|
|
216
|
+
TARGETPARTYMEMBER3 = "TARGETPARTYMEMBER3",
|
|
217
|
+
TARGETPARTYMEMBER4 = "TARGETPARTYMEMBER4",
|
|
218
|
+
TARGETPARTYPET1 = "TARGETPARTYPET1",
|
|
219
|
+
TARGETPARTYPET2 = "TARGETPARTYPET2",
|
|
220
|
+
TARGETPARTYPET3 = "TARGETPARTYPET3",
|
|
221
|
+
TARGETPARTYPET4 = "TARGETPARTYPET4",
|
|
222
|
+
TARGETPET = "TARGETPET",
|
|
223
|
+
TARGETPREVIOUSENEMY = "TARGETPREVIOUSENEMY",
|
|
224
|
+
TARGETPREVIOUSENEMYPLAYER = "TARGETPREVIOUSENEMYPLAYER",
|
|
225
|
+
TARGETPREVIOUSFRIEND = "TARGETPREVIOUSFRIEND",
|
|
226
|
+
TARGETPREVIOUSFRIENDPLAYER = "TARGETPREVIOUSFRIENDPLAYER",
|
|
227
|
+
TARGETSCANENEMY = "TARGETSCANENEMY",
|
|
228
|
+
TARGETSELF = "TARGETSELF",
|
|
229
|
+
TARGETTALKER = "TARGETTALKER",
|
|
230
|
+
TEXT_TO_SPEECH_STOP = "TEXT_TO_SPEECH_STOP",
|
|
231
|
+
TOGGLE_VOICE_PUSH_TO_TALK = "TOGGLE_VOICE_PUSH_TO_TALK",
|
|
232
|
+
TOGGLE_VOICE_SELF_DEAFEN = "TOGGLE_VOICE_SELF_DEAFEN",
|
|
233
|
+
TOGGLE_VOICE_SELF_MUTE = "TOGGLE_VOICE_SELF_MUTE",
|
|
234
|
+
TOGGLEACTIONBARLOCK = "TOGGLEACTIONBARLOCK",
|
|
235
|
+
TOGGLEANIMKITDISPLAY = "TOGGLEANIMKITDISPLAY",
|
|
236
|
+
TOGGLEAUTORUN = "TOGGLEAUTORUN",
|
|
237
|
+
TOGGLEAUTOSELFCAST = "TOGGLEAUTOSELFCAST",
|
|
238
|
+
TOGGLEBACKPACK = "TOGGLEBACKPACK",
|
|
239
|
+
TOGGLEBAG1 = "TOGGLEBAG1",
|
|
240
|
+
TOGGLEBAG2 = "TOGGLEBAG2",
|
|
241
|
+
TOGGLEBAG3 = "TOGGLEBAG3",
|
|
242
|
+
TOGGLEBAG4 = "TOGGLEBAG4",
|
|
243
|
+
TOGGLEBATTLEFIELDMINIMAP = "TOGGLEBATTLEFIELDMINIMAP",
|
|
244
|
+
TOGGLECHARACTER0 = "TOGGLECHARACTER0",
|
|
245
|
+
TOGGLECHARACTER2 = "TOGGLECHARACTER2",
|
|
246
|
+
TOGGLECHARACTER4 = "TOGGLECHARACTER4",
|
|
247
|
+
TOGGLECHATTAB = "TOGGLECHATTAB",
|
|
248
|
+
TOGGLECOLLECTIONS = "TOGGLECOLLECTIONS",
|
|
249
|
+
TOGGLECOLLECTIONSMOUNTJOURNAL = "TOGGLECOLLECTIONSMOUNTJOURNAL",
|
|
250
|
+
TOGGLECOLLECTIONSPETJOURNAL = "TOGGLECOLLECTIONSPETJOURNAL",
|
|
251
|
+
TOGGLECOLLECTIONSTOYBOX = "TOGGLECOLLECTIONSTOYBOX",
|
|
252
|
+
TOGGLECOLLECTIONSWARDROBE = "TOGGLECOLLECTIONSWARDROBE",
|
|
253
|
+
TOGGLECOLLISION = "TOGGLECOLLISION",
|
|
254
|
+
TOGGLECOLLISIONDISPLAY = "TOGGLECOLLISIONDISPLAY",
|
|
255
|
+
TOGGLECOMMENTATOR = "TOGGLECOMMENTATOR",
|
|
256
|
+
TOGGLECOOLDOWNVIEWERSETTINGS = "TOGGLECOOLDOWNVIEWERSETTINGS",
|
|
257
|
+
TOGGLECURRENCY = "TOGGLECURRENCY",
|
|
258
|
+
TOGGLECUSTOMIZATIONDEBUGINFO = "TOGGLECUSTOMIZATIONDEBUGINFO",
|
|
259
|
+
TOGGLEDEBUGAIDISPLAY = "TOGGLEDEBUGAIDISPLAY",
|
|
260
|
+
TOGGLEFPS = "TOGGLEFPS",
|
|
261
|
+
TOGGLEFRIENDSTAB = "TOGGLEFRIENDSTAB",
|
|
262
|
+
TOGGLEGAMEMENU = "TOGGLEGAMEMENU",
|
|
263
|
+
TOGGLEGRAPHICSSETTINGS = "TOGGLEGRAPHICSSETTINGS",
|
|
264
|
+
TOGGLEGUILDTAB = "TOGGLEGUILDTAB",
|
|
265
|
+
TOGGLELEGACYSYSTEM = "TOGGLELEGACYSYSTEM",
|
|
266
|
+
TOGGLEMINIMAP = "TOGGLEMINIMAP",
|
|
267
|
+
TOGGLEMUSIC = "TOGGLEMUSIC",
|
|
268
|
+
TOGGLEPERFORMANCEVALUES = "TOGGLEPERFORMANCEVALUES",
|
|
269
|
+
TOGGLEPERFORMANCEVALUES_OLD = "TOGGLEPERFORMANCEVALUES_OLD",
|
|
270
|
+
TOGGLEPETBOOK = "TOGGLEPETBOOK",
|
|
271
|
+
TOGGLEPLAYERBOUNDS = "TOGGLEPLAYERBOUNDS",
|
|
272
|
+
TOGGLEPORTALS = "TOGGLEPORTALS",
|
|
273
|
+
TOGGLEPROFESSIONBOOK = "TOGGLEPROFESSIONBOOK",
|
|
274
|
+
TOGGLEQUESTLOG = "TOGGLEQUESTLOG",
|
|
275
|
+
TOGGLERAIDTAB = "TOGGLERAIDTAB",
|
|
276
|
+
TOGGLEREAGENTBAG1 = "TOGGLEREAGENTBAG1",
|
|
277
|
+
TOGGLERUN = "TOGGLERUN",
|
|
278
|
+
TOGGLESELFHIGHLIGHT = "TOGGLESELFHIGHLIGHT",
|
|
279
|
+
TOGGLESHEATH = "TOGGLESHEATH",
|
|
280
|
+
TOGGLESOCIAL = "TOGGLESOCIAL",
|
|
281
|
+
TOGGLESOUND = "TOGGLESOUND",
|
|
282
|
+
TOGGLESPELLBOOK = "TOGGLESPELLBOOK",
|
|
283
|
+
TOGGLESTATS = "TOGGLESTATS",
|
|
284
|
+
TOGGLETALENTS = "TOGGLETALENTS",
|
|
285
|
+
TOGGLETEXTTOSPEECH = "TOGGLETEXTTOSPEECH",
|
|
286
|
+
TOGGLETRIS = "TOGGLETRIS",
|
|
287
|
+
TOGGLEUI = "TOGGLEUI",
|
|
288
|
+
TOGGLEWHOTAB = "TOGGLEWHOTAB",
|
|
289
|
+
TOGGLEWINDDEBUGMENU = "TOGGLEWINDDEBUGMENU",
|
|
290
|
+
TOGGLEWINDOWED = "TOGGLEWINDOWED",
|
|
291
|
+
TOGGLEWORLDMAP = "TOGGLEWORLDMAP",
|
|
292
|
+
TOGGLEWORLDMAPSIZE = "TOGGLEWORLDMAPSIZE",
|
|
293
|
+
TOGGLEWORLDSTATESCORES = "TOGGLEWORLDSTATESCORES",
|
|
294
|
+
TURNLEFT = "TURNLEFT",
|
|
295
|
+
TURNORACTION = "TURNORACTION",
|
|
296
|
+
TURNRIGHT = "TURNRIGHT",
|
|
297
|
+
VEHICLEEXIT = "VEHICLEEXIT"
|
|
298
|
+
}
|