Update CompletionQuestVariablesFlags for skip checking
This commit is contained in:
parent
becfac28ad
commit
d64cd9d5fc
@ -213,7 +213,9 @@ public static class RoslynShortcuts
|
||||
{
|
||||
Argument(LiteralValue(qwv.High)),
|
||||
Token(SyntaxKind.CommaToken),
|
||||
Argument(LiteralValue(qwv.Low))
|
||||
Argument(LiteralValue(qwv.Low)),
|
||||
Token(SyntaxKind.CommaToken),
|
||||
Argument(LiteralValue(qwv.Mode))
|
||||
})));
|
||||
}
|
||||
else if (value is List<QuestWorkValue> list)
|
||||
@ -255,6 +257,9 @@ public static class RoslynShortcuts
|
||||
Assignment(nameof(SkipStepConditions.Never), skipStepConditions.Never,
|
||||
emptyStep.Never)
|
||||
.AsSyntaxNodeOrToken(),
|
||||
AssignmentList(nameof(SkipStepConditions.CompletionQuestVariablesFlags),
|
||||
skipStepConditions.CompletionQuestVariablesFlags)
|
||||
.AsSyntaxNodeOrToken(),
|
||||
Assignment(nameof(SkipStepConditions.Flying), skipStepConditions.Flying,
|
||||
emptyStep.Flying)
|
||||
.AsSyntaxNodeOrToken(),
|
||||
|
@ -1,7 +1,6 @@
|
||||
{
|
||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||
"Author": "liza",
|
||||
"Disabled": true,
|
||||
"QuestSequence": [
|
||||
{
|
||||
"Sequence": 0,
|
||||
@ -24,6 +23,183 @@
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 1,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1001739,
|
||||
"Position": {
|
||||
"X": -94.529724,
|
||||
"Y": 6.4999976,
|
||||
"Z": 39.81079
|
||||
},
|
||||
"TerritoryId": 131,
|
||||
"InteractionType": "Interact",
|
||||
"DialogueChoices": [
|
||||
{
|
||||
"Type": "YesNo",
|
||||
"Prompt": "TEXT_CLSGLA020_00253_Q2_000_1",
|
||||
"Yes": true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 2,
|
||||
"Steps": [
|
||||
{
|
||||
"Position": {
|
||||
"X": 45.13088,
|
||||
"Y": 3.889354,
|
||||
"Z": -166.51999
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "WalkTo",
|
||||
"AethernetShortcut": [
|
||||
"[Ul'dah] Gladiators' Guild",
|
||||
"[Ul'dah] Adventurers' Guild"
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"InTerritory": [
|
||||
141
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
"X": -116.10664,
|
||||
"Y": 10.801613,
|
||||
"Z": 276.979
|
||||
},
|
||||
"TerritoryId": 141,
|
||||
"InteractionType": "Combat",
|
||||
"EnemySpawnType": "OverworldEnemies",
|
||||
"ComplexCombatData": [
|
||||
{
|
||||
"DataId": 351,
|
||||
"MinimumKillCount": 3,
|
||||
"CompletionQuestVariablesFlags": [
|
||||
{
|
||||
"Low": 3,
|
||||
"Mode": "Exact"
|
||||
},
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
]
|
||||
},
|
||||
{
|
||||
"DataId": 141,
|
||||
"MinimumKillCount": 3,
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
{
|
||||
"High": 3,
|
||||
"Mode": "Exact"
|
||||
},
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
]
|
||||
}
|
||||
],
|
||||
"CompletionQuestVariablesFlags": [
|
||||
{
|
||||
"Low": 3,
|
||||
"Mode": "Exact"
|
||||
},
|
||||
{
|
||||
"High": 3,
|
||||
"Mode": "Exact"
|
||||
},
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
]
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
"X": 39.635372,
|
||||
"Y": 3.2401803,
|
||||
"Z": 273.41232
|
||||
},
|
||||
"TerritoryId": 141,
|
||||
"InteractionType": "Combat",
|
||||
"EnemySpawnType": "OverworldEnemies",
|
||||
"ComplexCombatData": [
|
||||
{
|
||||
"DataId": 205,
|
||||
"MinimumKillCount": 3,
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
{
|
||||
"Low": 3,
|
||||
"Mode": "Exact"
|
||||
},
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
]
|
||||
}
|
||||
],
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
{
|
||||
"Low": 3,
|
||||
"Mode": "Exact"
|
||||
},
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 255,
|
||||
"Steps": [
|
||||
{
|
||||
"Position": {
|
||||
"X": -118.17538,
|
||||
"Y": 18.35357,
|
||||
"Z": 341.3039
|
||||
},
|
||||
"TerritoryId": 141,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"NotInTerritory": [
|
||||
141
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1001739,
|
||||
"Position": {
|
||||
"X": -94.529724,
|
||||
"Y": 6.4999976,
|
||||
"Z": 39.81079
|
||||
},
|
||||
"TerritoryId": 131,
|
||||
"InteractionType": "CompleteQuest",
|
||||
"AethernetShortcut": [
|
||||
"[Ul'dah] Adventurers' Guild",
|
||||
"[Ul'dah] Gladiators' Guild"
|
||||
],
|
||||
"NextQuestId": 256
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -0,0 +1,286 @@
|
||||
{
|
||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||
"Author": "liza",
|
||||
"QuestSequence": [
|
||||
{
|
||||
"Sequence": 0,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1001739,
|
||||
"Position": {
|
||||
"X": -94.529724,
|
||||
"Y": 6.4999976,
|
||||
"Z": 39.81079
|
||||
},
|
||||
"TerritoryId": 131,
|
||||
"InteractionType": "AcceptQuest"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 1,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1003990,
|
||||
"Position": {
|
||||
"X": 77.25635,
|
||||
"Y": 4.0999947,
|
||||
"Z": -138.62823
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "Emote",
|
||||
"Emote": "me",
|
||||
"AethernetShortcut": [
|
||||
"[Ul'dah] Gladiators' Guild",
|
||||
"[Ul'dah] Adventurers' Guild"
|
||||
],
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
64
|
||||
]
|
||||
},
|
||||
{
|
||||
"DataId": 1003984,
|
||||
"Position": {
|
||||
"X": 45.029297,
|
||||
"Y": 3.9999998,
|
||||
"Z": -128.16058
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "Emote",
|
||||
"Emote": "me",
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
128
|
||||
]
|
||||
},
|
||||
{
|
||||
"DataId": 1003992,
|
||||
"Position": {
|
||||
"X": 12.191956,
|
||||
"Y": 4.0999947,
|
||||
"Z": -155.53528
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "Emote",
|
||||
"Emote": "me",
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
32
|
||||
]
|
||||
},
|
||||
{
|
||||
"DataId": 1003994,
|
||||
"Position": {
|
||||
"X": 15.976135,
|
||||
"Y": 7.9999995,
|
||||
"Z": -124.071106
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "Emote",
|
||||
"Emote": "me",
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
16
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 2,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1004222,
|
||||
"Position": {
|
||||
"X": 21.927185,
|
||||
"Y": 7.1999974,
|
||||
"Z": -97.39838
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "Emote",
|
||||
"Emote": "me"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 3,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1001353,
|
||||
"Position": {
|
||||
"X": 21.072632,
|
||||
"Y": 7.45,
|
||||
"Z": -78.78235
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "Interact"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 4,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1001739,
|
||||
"Position": {
|
||||
"X": -94.529724,
|
||||
"Y": 6.4999976,
|
||||
"Z": 39.81079
|
||||
},
|
||||
"TerritoryId": 131,
|
||||
"InteractionType": "Interact",
|
||||
"AethernetShortcut": [
|
||||
"[Ul'dah] Adventurers' Guild",
|
||||
"[Ul'dah] Gladiators' Guild"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 5,
|
||||
"Steps": [
|
||||
{
|
||||
"Position": {
|
||||
"X": -112.70276,
|
||||
"Y": 7.7544775,
|
||||
"Z": 9.123527
|
||||
},
|
||||
"TerritoryId": 131,
|
||||
"InteractionType": "WalkTo"
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
"X": -183.00035,
|
||||
"Y": 13.958975,
|
||||
"Z": -13.998203
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "WalkTo"
|
||||
},
|
||||
{
|
||||
"DataId": 1003985,
|
||||
"Position": {
|
||||
"X": 201.52588,
|
||||
"Y": 52.038116,
|
||||
"Z": 149.40112
|
||||
},
|
||||
"TerritoryId": 140,
|
||||
"InteractionType": "Interact"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 6,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 2001408,
|
||||
"Position": {
|
||||
"X": 154.37549,
|
||||
"Y": 52.536743,
|
||||
"Z": 200.91553
|
||||
},
|
||||
"TerritoryId": 140,
|
||||
"InteractionType": "Combat",
|
||||
"EnemySpawnType": "AfterInteraction",
|
||||
"KillEnemyDataIds": [
|
||||
1246
|
||||
],
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
128
|
||||
]
|
||||
},
|
||||
{
|
||||
"DataId": 2001409,
|
||||
"Position": {
|
||||
"X": 141.83252,
|
||||
"Y": 52.994507,
|
||||
"Z": 221.54565
|
||||
},
|
||||
"TerritoryId": 140,
|
||||
"InteractionType": "Combat",
|
||||
"EnemySpawnType": "AfterInteraction",
|
||||
"KillEnemyDataIds": [
|
||||
1390
|
||||
],
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
64
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 7,
|
||||
"Steps": [
|
||||
{
|
||||
"DataId": 1003985,
|
||||
"Position": {
|
||||
"X": 201.52588,
|
||||
"Y": 52.038116,
|
||||
"Z": 149.40112
|
||||
},
|
||||
"TerritoryId": 140,
|
||||
"InteractionType": "Interact"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Sequence": 255,
|
||||
"Steps": [
|
||||
{
|
||||
"Position": {
|
||||
"X": 473.74796,
|
||||
"Y": 96.62057,
|
||||
"Z": 159.993
|
||||
},
|
||||
"TerritoryId": 140,
|
||||
"InteractionType": "WalkTo"
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
"X": -117.06801,
|
||||
"Y": 9.195247,
|
||||
"Z": 9.181297
|
||||
},
|
||||
"TerritoryId": 130,
|
||||
"InteractionType": "WalkTo"
|
||||
},
|
||||
{
|
||||
"DataId": 1001739,
|
||||
"Position": {
|
||||
"X": -94.529724,
|
||||
"Y": 6.4999976,
|
||||
"Z": 39.81079
|
||||
},
|
||||
"TerritoryId": 131,
|
||||
"InteractionType": "CompleteQuest"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -37,16 +37,18 @@
|
||||
"SkipConditions": {
|
||||
"AetheryteShortcutIf": {
|
||||
"NotInSameTerritory": true
|
||||
}
|
||||
},
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002380,
|
||||
@ -76,14 +78,18 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002379,
|
||||
@ -112,14 +118,18 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002382,
|
||||
@ -148,14 +158,18 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002381,
|
||||
|
@ -65,14 +65,18 @@
|
||||
"TerritoryId": 139,
|
||||
"InteractionType": "WalkTo",
|
||||
"Mount": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1007844,
|
||||
@ -120,16 +124,16 @@
|
||||
},
|
||||
"TerritoryId": 139,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Unlocked"
|
||||
}
|
||||
}
|
||||
|
@ -28,18 +28,20 @@
|
||||
},
|
||||
"TerritoryId": 155,
|
||||
"InteractionType": "WalkTo",
|
||||
"AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead",
|
||||
"SkipConditions": {
|
||||
"AetheryteShortcutIf": {
|
||||
"NotInSameTerritory": true
|
||||
},
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
],
|
||||
"AetheryteShortcut": "Coerthas Central Highlands - Camp Dragonhead",
|
||||
"SkipConditions": {
|
||||
"AetheryteShortcutIf": {
|
||||
"NotInSameTerritory": true
|
||||
128
|
||||
]
|
||||
}
|
||||
},
|
||||
"Fly": true
|
||||
@ -56,14 +58,18 @@
|
||||
"KillEnemyDataIds": [
|
||||
1918
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002308,
|
||||
@ -127,14 +133,18 @@
|
||||
"InteractionType": "UseItem",
|
||||
"ItemId": 30362,
|
||||
"TargetTerritoryId": 140,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -148,14 +158,18 @@
|
||||
"KillEnemyDataIds": [
|
||||
1920
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002310,
|
||||
|
@ -65,14 +65,18 @@
|
||||
},
|
||||
"TerritoryId": 148,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -83,14 +87,18 @@
|
||||
"TerritoryId": 148,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2000748,
|
||||
@ -120,14 +128,18 @@
|
||||
"TerritoryId": 148,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -137,14 +149,18 @@
|
||||
},
|
||||
"TerritoryId": 148,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2000751,
|
||||
|
@ -36,14 +36,18 @@
|
||||
},
|
||||
"StopDistance": 3
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-8
|
||||
8
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1002639,
|
||||
|
@ -64,14 +64,18 @@
|
||||
},
|
||||
"StopDistance": 5
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1004506,
|
||||
|
@ -65,14 +65,18 @@
|
||||
"TerritoryId": 141,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": false,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1004599,
|
||||
|
@ -63,14 +63,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-8
|
||||
8
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2001953,
|
||||
@ -109,14 +113,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2001951,
|
||||
@ -146,14 +154,18 @@
|
||||
"TerritoryId": 153,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -163,14 +175,18 @@
|
||||
},
|
||||
"TerritoryId": 153,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2001952,
|
||||
|
@ -71,14 +71,18 @@
|
||||
725,
|
||||
726
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002261,
|
||||
|
@ -64,14 +64,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"$": "NW Skyfire Locks door (inside)",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1006396,
|
||||
|
@ -34,14 +34,18 @@
|
||||
},
|
||||
"TerritoryId": 138,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -52,14 +56,18 @@
|
||||
"TerritoryId": 138,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1006500,
|
||||
|
@ -94,14 +94,18 @@
|
||||
"TerritoryId": 156,
|
||||
"InteractionType": "WalkTo",
|
||||
"Comment": "Avoids pit",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -112,14 +116,18 @@
|
||||
"TerritoryId": 156,
|
||||
"InteractionType": "WalkTo",
|
||||
"Comment": "Move into LOS",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2002230,
|
||||
|
@ -68,14 +68,18 @@
|
||||
"TerritoryId": 351,
|
||||
"InteractionType": "Interact",
|
||||
"TargetTerritoryId": 156,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-2
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1009147,
|
||||
|
@ -76,14 +76,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"AetheryteShortcut": "Upper La Noscea - Camp Bronze Lake",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -94,14 +98,18 @@
|
||||
"TerritoryId": 139,
|
||||
"InteractionType": "WalkTo",
|
||||
"TargetTerritoryId": 180,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -112,27 +120,35 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "AttuneAetheryte",
|
||||
"Aetheryte": "Outer La Noscea - Camp Overlook",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -143,14 +159,18 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -161,14 +181,18 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -179,14 +203,18 @@
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2000075,
|
||||
@ -221,14 +249,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"AetheryteShortcut": "Western La Noscea - Aleport",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2000076,
|
||||
|
@ -28,14 +28,18 @@
|
||||
},
|
||||
"TerritoryId": 180,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2003715,
|
||||
|
@ -28,14 +28,18 @@
|
||||
},
|
||||
"TerritoryId": 400,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -46,14 +50,18 @@
|
||||
"TerritoryId": 400,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -63,14 +71,18 @@
|
||||
},
|
||||
"TerritoryId": 400,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1013424,
|
||||
@ -118,14 +130,18 @@
|
||||
},
|
||||
"TerritoryId": 400,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -144,14 +160,18 @@
|
||||
"Z": 380.9018
|
||||
}
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1013421,
|
||||
|
@ -28,14 +28,18 @@
|
||||
},
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -46,14 +50,18 @@
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -64,14 +72,18 @@
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1011932,
|
||||
@ -99,14 +111,18 @@
|
||||
},
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -117,14 +133,18 @@
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1011924,
|
||||
|
@ -34,14 +34,18 @@
|
||||
},
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -52,14 +56,18 @@
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -70,14 +78,18 @@
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1011932,
|
||||
@ -106,14 +118,18 @@
|
||||
},
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -124,14 +140,18 @@
|
||||
"TerritoryId": 398,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1011924,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 401,
|
||||
"InteractionType": "WalkTo",
|
||||
"Mount": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -47,14 +51,18 @@
|
||||
"TerritoryId": 401,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1013498,
|
||||
|
@ -86,14 +86,18 @@
|
||||
},
|
||||
"TerritoryId": 418,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -104,14 +108,18 @@
|
||||
"TerritoryId": 418,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1012251,
|
||||
|
@ -64,14 +64,18 @@
|
||||
null,
|
||||
null
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009361,
|
||||
@ -160,14 +164,18 @@
|
||||
null,
|
||||
null
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009360,
|
||||
@ -253,14 +261,18 @@
|
||||
null,
|
||||
null
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009359,
|
||||
@ -346,14 +358,18 @@
|
||||
null,
|
||||
null
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-4
|
||||
4
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009364,
|
||||
@ -436,14 +452,18 @@
|
||||
null,
|
||||
null
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-8
|
||||
8
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009363,
|
||||
@ -529,14 +549,18 @@
|
||||
null,
|
||||
null
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009362,
|
||||
|
@ -63,14 +63,18 @@
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"Mount": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -81,14 +85,18 @@
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1027339,
|
||||
@ -116,14 +124,18 @@
|
||||
},
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -133,14 +145,18 @@
|
||||
},
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -150,14 +166,18 @@
|
||||
},
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1027420,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"Comment": "Tower Bottom",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -48,14 +52,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"Comment": "Tower Bottom Platform 1",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2010618,
|
||||
|
@ -74,14 +74,18 @@
|
||||
},
|
||||
"TerritoryId": 813,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1028952,
|
||||
|
@ -28,14 +28,18 @@
|
||||
},
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009820,
|
||||
@ -66,14 +70,18 @@
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009819,
|
||||
|
@ -46,14 +46,18 @@
|
||||
},
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -64,14 +68,18 @@
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009831,
|
||||
|
@ -150,14 +150,18 @@
|
||||
},
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -168,14 +172,18 @@
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009836,
|
||||
@ -214,14 +222,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.2
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -241,14 +253,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.1
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -268,14 +284,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.1
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -295,14 +315,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.2
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009835,
|
||||
|
@ -79,14 +79,18 @@
|
||||
"StopDistance": 2,
|
||||
"Type": "RepeatedJumps"
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009890,
|
||||
@ -128,14 +132,18 @@
|
||||
"StopDistance": 2,
|
||||
"Type": "RepeatedJumps"
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009887,
|
||||
@ -166,14 +174,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"Mount": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -196,14 +208,18 @@
|
||||
"StopDistance": 2,
|
||||
"Type": "RepeatedJumps"
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009888,
|
||||
@ -245,14 +261,18 @@
|
||||
"StopDistance": 2,
|
||||
"Type": "RepeatedJumps"
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2009889,
|
||||
|
@ -60,14 +60,18 @@
|
||||
},
|
||||
"TerritoryId": 814,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2010088,
|
||||
@ -114,14 +118,18 @@
|
||||
},
|
||||
"TerritoryId": 814,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2010089,
|
||||
|
@ -48,14 +48,18 @@
|
||||
"TerritoryId": 819,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1027246,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2010856,
|
||||
@ -83,14 +87,18 @@
|
||||
},
|
||||
"TerritoryId": 816,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2010857,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"StopDistance": 1,
|
||||
"TerritoryId": 959,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -56,14 +60,18 @@
|
||||
},
|
||||
"Mount": false,
|
||||
"Comment": "Platform 1",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -82,14 +90,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 2",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -108,14 +120,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 3",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -134,14 +150,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 4",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -160,14 +180,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 5",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -186,14 +210,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 6",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -204,14 +232,18 @@
|
||||
"TerritoryId": 959,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1041789,
|
||||
@ -287,14 +319,18 @@
|
||||
},
|
||||
"Mount": false,
|
||||
"Comment": "Platform 1",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -314,14 +350,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 2",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -341,14 +381,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 3",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -368,14 +412,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 4",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -395,14 +443,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 5",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -422,14 +474,18 @@
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"Comment": "Platform 6",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1041791,
|
||||
|
@ -61,14 +61,18 @@
|
||||
},
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2011914,
|
||||
|
@ -74,7 +74,7 @@
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
],
|
||||
"$": "QuestVariables after killing enemy: 17 1 0 0 0 64"
|
||||
},
|
||||
|
@ -66,14 +66,18 @@
|
||||
},
|
||||
"TerritoryId": 958,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1037715,
|
||||
|
@ -112,14 +112,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Mount": true,
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012111,
|
||||
@ -180,14 +184,18 @@
|
||||
},
|
||||
"TerritoryId": 958,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
],
|
||||
128
|
||||
]
|
||||
}
|
||||
},
|
||||
"Comment": "Avoids combat"
|
||||
},
|
||||
{
|
||||
@ -219,14 +227,18 @@
|
||||
"TerritoryId": 958,
|
||||
"InteractionType": "WalkTo",
|
||||
"Comment": "Avoids combat",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012110,
|
||||
|
@ -60,14 +60,18 @@
|
||||
"TerritoryId": 963,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
],
|
||||
128
|
||||
]
|
||||
}
|
||||
},
|
||||
"Sprint": true
|
||||
},
|
||||
{
|
||||
|
@ -71,14 +71,18 @@
|
||||
"Z": -1.1141448
|
||||
}
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012128,
|
||||
|
@ -109,14 +109,18 @@
|
||||
},
|
||||
"TerritoryId": 960,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012354,
|
||||
|
@ -51,14 +51,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"AetheryteShortcut": "Thavnair - Yedlihmad",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1037631,
|
||||
|
@ -97,14 +97,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1037655,
|
||||
@ -151,14 +155,18 @@
|
||||
},
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1037708,
|
||||
@ -169,15 +177,19 @@
|
||||
},
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "Interact",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -68,14 +68,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012455,
|
||||
@ -105,14 +109,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012457,
|
||||
@ -141,14 +149,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012456,
|
||||
|
@ -45,14 +45,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"Land": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1042372,
|
||||
@ -84,14 +88,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"Land": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1042371,
|
||||
@ -123,14 +131,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"Land": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1042373,
|
||||
|
@ -45,14 +45,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"Land": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012887,
|
||||
@ -84,14 +88,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"Land": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012888,
|
||||
@ -123,14 +131,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"Land": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012889,
|
||||
@ -149,7 +161,7 @@
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
]
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012902,
|
||||
@ -66,14 +70,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012901,
|
||||
@ -103,14 +111,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012900,
|
||||
|
@ -30,14 +30,18 @@
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2012907,
|
||||
|
@ -34,14 +34,18 @@
|
||||
"[Radz-at-Han] The Gate of First Sight (Thavnair)"
|
||||
],
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1042462,
|
||||
|
@ -111,14 +111,18 @@
|
||||
},
|
||||
"DelaySeconds": 0.25
|
||||
},
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014134,
|
||||
|
@ -47,14 +47,18 @@
|
||||
},
|
||||
"TerritoryId": 1187,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1046874,
|
||||
|
@ -142,14 +142,18 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true,
|
||||
"Mount": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2013653,
|
||||
@ -177,14 +181,18 @@
|
||||
},
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2013655,
|
||||
|
@ -113,14 +113,18 @@
|
||||
},
|
||||
"TerritoryId": 1191,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2013819,
|
||||
|
@ -131,14 +131,18 @@
|
||||
},
|
||||
"TerritoryId": 1192,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-16
|
||||
16
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1047904,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 1191,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014091,
|
||||
@ -85,14 +89,18 @@
|
||||
"TerritoryId": 1191,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014093,
|
||||
|
@ -31,17 +31,17 @@
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
},
|
||||
"Flying": "Locked",
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014184,
|
||||
|
@ -31,17 +31,17 @@
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
},
|
||||
"Flying": "Locked",
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2013901,
|
||||
|
@ -49,14 +49,18 @@
|
||||
"TerritoryId": 1192,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2013916,
|
||||
@ -86,14 +90,18 @@
|
||||
"TerritoryId": 1192,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2013917,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 1190,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1049284,
|
||||
@ -64,14 +68,18 @@
|
||||
},
|
||||
"TerritoryId": 1190,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1049275,
|
||||
|
@ -31,17 +31,17 @@
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
},
|
||||
"Flying": "Locked",
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014051,
|
||||
|
@ -46,16 +46,16 @@
|
||||
"TerritoryId": 1190,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
}
|
||||
@ -89,16 +89,16 @@
|
||||
"TerritoryId": 1190,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
},
|
||||
@ -131,16 +131,16 @@
|
||||
},
|
||||
"TerritoryId": 1190,
|
||||
"InteractionType": "WalkTo",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
},
|
||||
|
@ -126,16 +126,16 @@
|
||||
"InteractionType": "WalkTo",
|
||||
"AetheryteShortcut": "Shaaloani - Hhusatahwi",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
],
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"Flying": "Locked"
|
||||
}
|
||||
},
|
||||
|
@ -49,14 +49,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1048995,
|
||||
|
@ -45,14 +45,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014313,
|
||||
@ -82,14 +86,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014314,
|
||||
@ -119,14 +127,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 2014315,
|
||||
|
@ -29,14 +29,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1051049,
|
||||
@ -48,14 +52,18 @@
|
||||
"StopDistance": 4,
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "Interact",
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-128
|
||||
128
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
@ -66,14 +74,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-32
|
||||
32
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1051051,
|
||||
@ -102,14 +114,18 @@
|
||||
"TerritoryId": 1189,
|
||||
"InteractionType": "WalkTo",
|
||||
"Fly": true,
|
||||
"SkipConditions": {
|
||||
"StepIf": {
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
-64
|
||||
64
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"DataId": 1051050,
|
||||
|
@ -28,5 +28,6 @@ public static partial class AssemblyQuestLoader
|
||||
public static Stream QuestSchema =>
|
||||
typeof(AssemblyQuestLoader).Assembly.GetManifestResourceStream("Questionable.QuestPaths.QuestSchema")!;
|
||||
|
||||
[SuppressMessage("ReSharper", "UnusedMember.Local")]
|
||||
private static void AddQuest(ushort questId, QuestRoot root) => _quests![questId] = root;
|
||||
}
|
||||
|
@ -182,6 +182,9 @@
|
||||
"Never": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"CompletionQuestVariablesFlags": {
|
||||
"$ref": "#/$defs/CompletionFlags"
|
||||
},
|
||||
"Flying": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
@ -237,7 +240,8 @@
|
||||
"WakingSandsMainArea"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
},
|
||||
"AetheryteShortcutIf": {
|
||||
"type": "object",
|
||||
@ -248,7 +252,8 @@
|
||||
"InSameTerritory": {
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
},
|
||||
"AethernetShortcutIf": {
|
||||
"type": "object",
|
||||
@ -259,7 +264,8 @@
|
||||
"InSameTerritory": {
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
@ -1309,12 +1315,41 @@
|
||||
"type": "array",
|
||||
"description": "Quest Variables that dictate whether or not this step is skipped: null is don't check, positive values need to be set, negative values need to be unset",
|
||||
"items": {
|
||||
"oneOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"High": {
|
||||
"type": [
|
||||
"integer",
|
||||
"number",
|
||||
"null"
|
||||
],
|
||||
"minimum": 0,
|
||||
"maximum": 15
|
||||
},
|
||||
"Low": {
|
||||
"type": [
|
||||
"number",
|
||||
"null"
|
||||
],
|
||||
"minimum": 0,
|
||||
"maximum": 15
|
||||
},
|
||||
"Negative": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"Mode": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Bitwise",
|
||||
"Exact"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "number",
|
||||
"enum": [
|
||||
null,
|
||||
1,
|
||||
2,
|
||||
4,
|
||||
@ -1322,15 +1357,12 @@
|
||||
16,
|
||||
32,
|
||||
64,
|
||||
128,
|
||||
-1,
|
||||
-2,
|
||||
-4,
|
||||
-8,
|
||||
-16,
|
||||
-32,
|
||||
-64,
|
||||
-128
|
||||
128
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
]
|
||||
},
|
||||
"minItems": 6,
|
||||
|
@ -14,6 +14,6 @@ public sealed class ComplexCombatData
|
||||
/// </summary>
|
||||
public uint? RewardItemId { get; set; }
|
||||
public int? RewardItemCount { get; set; }
|
||||
public IList<short?> CompletionQuestVariablesFlags { get; set; } = new List<short?>();
|
||||
public IList<QuestWorkValue?> CompletionQuestVariablesFlags { get; set; } = new List<QuestWorkValue?>();
|
||||
public bool IgnoreQuestMarker { get; set; }
|
||||
}
|
||||
|
@ -15,6 +15,7 @@ public sealed class QuestWorkConfigConverter : JsonConverter<QuestWorkValue>
|
||||
throw new JsonException();
|
||||
|
||||
byte? high = null, low = null;
|
||||
EQuestWorkMode mode = EQuestWorkMode.Bitwise;
|
||||
while (reader.Read())
|
||||
{
|
||||
switch (reader.TokenType)
|
||||
@ -34,6 +35,10 @@ public sealed class QuestWorkConfigConverter : JsonConverter<QuestWorkValue>
|
||||
low = reader.GetByte();
|
||||
break;
|
||||
|
||||
case nameof(QuestWorkValue.Mode):
|
||||
mode = new QuestWorkModeConverter().Read(ref reader, typeof(EQuestWorkMode), options);
|
||||
break;
|
||||
|
||||
default:
|
||||
throw new JsonException();
|
||||
}
|
||||
@ -41,7 +46,7 @@ public sealed class QuestWorkConfigConverter : JsonConverter<QuestWorkValue>
|
||||
break;
|
||||
|
||||
case JsonTokenType.EndObject:
|
||||
return new QuestWorkValue(high, low);
|
||||
return new QuestWorkValue(high, low, mode);
|
||||
|
||||
default:
|
||||
throw new JsonException();
|
||||
|
12
Questionable.Model/V1/Converter/QuestWorkModeConverter.cs
Normal file
12
Questionable.Model/V1/Converter/QuestWorkModeConverter.cs
Normal file
@ -0,0 +1,12 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Questionable.Model.V1.Converter;
|
||||
|
||||
public sealed class QuestWorkModeConverter() : EnumConverter<EQuestWorkMode>(Values)
|
||||
{
|
||||
private static readonly Dictionary<EQuestWorkMode, string> Values = new()
|
||||
{
|
||||
{ EQuestWorkMode.Bitwise, "Bitwise" },
|
||||
{ EQuestWorkMode.Exact, "Exact" },
|
||||
};
|
||||
}
|
@ -7,7 +7,7 @@ namespace Questionable.Model.V1.Converter;
|
||||
|
||||
public sealed class StringListOrValueConverter : JsonConverter<List<string>>
|
||||
{
|
||||
public override List<string>? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
||||
public override List<string> Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
|
||||
{
|
||||
if (reader.TokenType == JsonTokenType.String)
|
||||
return [reader.GetString()!];
|
||||
|
11
Questionable.Model/V1/EQuestWorkMode.cs
Normal file
11
Questionable.Model/V1/EQuestWorkMode.cs
Normal file
@ -0,0 +1,11 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Questionable.Model.V1.Converter;
|
||||
|
||||
namespace Questionable.Model.V1;
|
||||
|
||||
[JsonConverter(typeof(QuestWorkModeConverter))]
|
||||
public enum EQuestWorkMode
|
||||
{
|
||||
Bitwise,
|
||||
Exact,
|
||||
}
|
@ -64,7 +64,7 @@ public sealed class QuestStep
|
||||
public SkipConditions? SkipConditions { get; set; }
|
||||
|
||||
public List<List<QuestWorkValue>?> RequiredQuestVariables { get; set; } = new();
|
||||
public IList<short?> CompletionQuestVariablesFlags { get; set; } = new List<short?>();
|
||||
public IList<QuestWorkValue?> CompletionQuestVariablesFlags { get; set; } = new List<QuestWorkValue?>();
|
||||
public IList<DialogueChoice> DialogueChoices { get; set; } = new List<DialogueChoice>();
|
||||
public IList<uint> PointMenuChoices { get; set; } = new List<uint>();
|
||||
|
||||
|
@ -1,16 +1,30 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using System;
|
||||
using System.Text.Json.Serialization;
|
||||
using Questionable.Model.V1.Converter;
|
||||
|
||||
namespace Questionable.Model.V1;
|
||||
|
||||
[JsonConverter(typeof(QuestWorkConfigConverter))]
|
||||
public sealed class QuestWorkValue(byte? high, byte? low)
|
||||
public sealed class QuestWorkValue(byte? high, byte? low, EQuestWorkMode mode)
|
||||
{
|
||||
public QuestWorkValue(byte value)
|
||||
: this((byte)(value >> 4), (byte)(value & 0xF))
|
||||
: this((byte)(value >> 4), (byte)(value & 0xF), EQuestWorkMode.Bitwise)
|
||||
{
|
||||
}
|
||||
|
||||
public byte? High { get; set; } = high;
|
||||
public byte? Low { get; set; } = low;
|
||||
public EQuestWorkMode Mode { get; set; } = mode;
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
if (High != null && Low != null)
|
||||
return ((byte)(High << 4) + Low).ToString();
|
||||
else if (High != null)
|
||||
return High + "H";
|
||||
else if (Low != null)
|
||||
return Low + "L";
|
||||
else
|
||||
return "-";
|
||||
}
|
||||
}
|
||||
|
@ -1,10 +1,12 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace Questionable.Model.V1;
|
||||
|
||||
public sealed class SkipStepConditions
|
||||
{
|
||||
public bool Never { get; set; }
|
||||
public IList<QuestWorkValue?> CompletionQuestVariablesFlags { get; set; } = new List<QuestWorkValue?>();
|
||||
public ELockedSkipCondition? Flying { get; set; }
|
||||
public ELockedSkipCondition? Chocobo { get; set; }
|
||||
public bool NotTargetable { get; set; }
|
||||
@ -19,7 +21,8 @@ public sealed class SkipStepConditions
|
||||
{
|
||||
if (Never)
|
||||
return false;
|
||||
return Flying != null ||
|
||||
return (CompletionQuestVariablesFlags.Count > 6 && CompletionQuestVariablesFlags.Any(x => x != null)) ||
|
||||
Flying != null ||
|
||||
Chocobo != null ||
|
||||
InTerritory.Count > 0 ||
|
||||
NotInTerritory.Count > 0 ||
|
||||
@ -27,4 +30,10 @@ public sealed class SkipStepConditions
|
||||
QuestsAccepted.Count > 0 ||
|
||||
QuestsCompleted.Count > 0;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return
|
||||
$"{nameof(Never)}: {Never}, {nameof(CompletionQuestVariablesFlags)}: {CompletionQuestVariablesFlags}, {nameof(Flying)}: {Flying}, {nameof(Chocobo)}: {Chocobo}, {nameof(NotTargetable)}: {NotTargetable}, {nameof(InTerritory)}: {string.Join(" ", InTerritory)}, {nameof(NotInTerritory)}: {string.Join(" ", NotInTerritory)}, {nameof(Item)}: {Item}, {nameof(QuestsAccepted)}: {string.Join(" ", QuestsAccepted)}, {nameof(QuestsCompleted)}: {string.Join(" ", QuestsCompleted)}, {nameof(ExtraCondition)}: {ExtraCondition}";
|
||||
}
|
||||
}
|
||||
|
@ -172,7 +172,7 @@ internal sealed class CombatController : IDisposable
|
||||
{
|
||||
var questWork = _gameFunctions.GetQuestEx(_currentFight.Data.QuestId);
|
||||
if (questWork != null && QuestWorkUtils.MatchesQuestWork(condition.CompletionQuestVariablesFlags,
|
||||
questWork.Value, false))
|
||||
questWork.Value))
|
||||
{
|
||||
_logger.LogInformation("Complex combat condition fulfilled: QuestWork matches");
|
||||
_currentFight.Data.CompletedComplexDatas.Add(i);
|
||||
|
@ -82,10 +82,10 @@ internal static class Combat
|
||||
{
|
||||
private bool _isLastStep;
|
||||
private CombatController.CombatData _combatData = null!;
|
||||
private IList<short?> _completionQuestVariableFlags = null!;
|
||||
private IList<QuestWorkValue?> _completionQuestVariableFlags = null!;
|
||||
|
||||
public ITask With(ushort questId, bool isLastStep, EEnemySpawnType enemySpawnType, IList<uint> killEnemyDataIds,
|
||||
IList<short?> completionQuestVariablesFlags, IList<ComplexCombatData> complexCombatData)
|
||||
IList<QuestWorkValue?> completionQuestVariablesFlags, IList<ComplexCombatData> complexCombatData)
|
||||
{
|
||||
_isLastStep = isLastStep;
|
||||
_combatData = new CombatController.CombatData
|
||||
@ -113,7 +113,7 @@ internal static class Combat
|
||||
if (questWork == null)
|
||||
return ETaskResult.StillRunning;
|
||||
|
||||
if (QuestWorkUtils.MatchesQuestWork(_completionQuestVariableFlags, questWork.Value, false))
|
||||
if (QuestWorkUtils.MatchesQuestWork(_completionQuestVariableFlags, questWork.Value))
|
||||
return ETaskResult.TaskComplete;
|
||||
else
|
||||
return ETaskResult.StillRunning;
|
||||
|
@ -119,7 +119,7 @@ internal static class UseItem
|
||||
|
||||
public ushort? QuestId { get; set; }
|
||||
public uint ItemId { get; set; }
|
||||
public IList<short?> CompletionQuestVariablesFlags { get; set; } = new List<short?>();
|
||||
public IList<QuestWorkValue?> CompletionQuestVariablesFlags { get; set; } = new List<QuestWorkValue?>();
|
||||
public bool StartingCombat { get; set; }
|
||||
|
||||
protected abstract bool UseItem();
|
||||
@ -145,7 +145,7 @@ internal static class UseItem
|
||||
{
|
||||
QuestWork? questWork = gameFunctions.GetQuestEx(QuestId.Value);
|
||||
if (questWork != null &&
|
||||
QuestWorkUtils.MatchesQuestWork(CompletionQuestVariablesFlags, questWork.Value, false))
|
||||
QuestWorkUtils.MatchesQuestWork(CompletionQuestVariablesFlags, questWork.Value))
|
||||
return ETaskResult.TaskComplete;
|
||||
}
|
||||
|
||||
@ -202,7 +202,7 @@ internal static class UseItem
|
||||
|
||||
public uint DataId { get; set; }
|
||||
|
||||
public ITask With(ushort? questId, uint dataId, uint itemId, IList<short?> completionQuestVariablesFlags)
|
||||
public ITask With(ushort? questId, uint dataId, uint itemId, IList<QuestWorkValue?> completionQuestVariablesFlags)
|
||||
{
|
||||
QuestId = questId;
|
||||
DataId = dataId;
|
||||
@ -226,7 +226,7 @@ internal static class UseItem
|
||||
|
||||
public Vector3 Position { get; set; }
|
||||
|
||||
public ITask With(ushort? questId, Vector3 position, uint itemId, IList<short?> completionQuestVariablesFlags)
|
||||
public ITask With(ushort? questId, Vector3 position, uint itemId, IList<QuestWorkValue?> completionQuestVariablesFlags)
|
||||
{
|
||||
QuestId = questId;
|
||||
Position = position;
|
||||
@ -248,7 +248,7 @@ internal static class UseItem
|
||||
|
||||
public uint DataId { get; set; }
|
||||
|
||||
public ITask With(ushort? questId, uint dataId, uint itemId, IList<short?> completionQuestVariablesFlags,
|
||||
public ITask With(ushort? questId, uint dataId, uint itemId, IList<QuestWorkValue?> completionQuestVariablesFlags,
|
||||
bool startingCombat = false)
|
||||
{
|
||||
QuestId = questId;
|
||||
@ -269,7 +269,7 @@ internal static class UseItem
|
||||
{
|
||||
private readonly GameFunctions _gameFunctions = gameFunctions;
|
||||
|
||||
public ITask With(ushort? questId, uint itemId, IList<short?> completionQuestVariablesFlags)
|
||||
public ITask With(ushort? questId, uint itemId, IList<QuestWorkValue?> completionQuestVariablesFlags)
|
||||
{
|
||||
QuestId = questId;
|
||||
ItemId = itemId;
|
||||
|
@ -156,15 +156,27 @@ internal static class SkipCondition
|
||||
}
|
||||
|
||||
QuestWork? questWork = gameFunctions.GetQuestEx(QuestId);
|
||||
if (questWork != null)
|
||||
if (QuestWorkUtils.HasCompletionFlags(Step.CompletionQuestVariablesFlags) && questWork != null)
|
||||
{
|
||||
if (QuestWorkUtils.MatchesQuestWork(Step.CompletionQuestVariablesFlags, questWork.Value, true))
|
||||
if (QuestWorkUtils.MatchesQuestWork(Step.CompletionQuestVariablesFlags, questWork.Value))
|
||||
{
|
||||
logger.LogInformation("Skipping step, as quest variables match");
|
||||
logger.LogInformation("Skipping step, as quest variables match (step is complete)");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (!QuestWorkUtils.MatchesRequiredQuestWorkConfig(Step.RequiredQuestVariables, questWork.Value,
|
||||
if (Step is { SkipConditions.StepIf: { } conditions } && questWork != null)
|
||||
{
|
||||
if (QuestWorkUtils.MatchesQuestWork(conditions.CompletionQuestVariablesFlags, questWork.Value))
|
||||
{
|
||||
logger.LogInformation("Skipping step, as quest variables match (step can be skipped)");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (Step is { RequiredQuestVariables: { } requiredQuestVariables } && questWork != null)
|
||||
{
|
||||
if (!QuestWorkUtils.MatchesRequiredQuestWorkConfig(requiredQuestVariables, questWork.Value,
|
||||
logger))
|
||||
{
|
||||
logger.LogInformation("Skipping step, as required variables do not match");
|
||||
|
@ -27,7 +27,7 @@ internal static class WaitAtEnd
|
||||
{
|
||||
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
||||
{
|
||||
if (step.CompletionQuestVariablesFlags.Count == 6 && step.CompletionQuestVariablesFlags.Any(x => x is > 0))
|
||||
if (step.CompletionQuestVariablesFlags.Count == 6 && QuestWorkUtils.HasCompletionFlags(step.CompletionQuestVariablesFlags))
|
||||
{
|
||||
var task = serviceProvider.GetRequiredService<WaitForCompletionFlags>()
|
||||
.With(quest, step);
|
||||
@ -164,7 +164,7 @@ internal static class WaitAtEnd
|
||||
{
|
||||
public Quest Quest { get; set; } = null!;
|
||||
public QuestStep Step { get; set; } = null!;
|
||||
public IList<short?> Flags { get; set; } = null!;
|
||||
public IList<QuestWorkValue?> Flags { get; set; } = null!;
|
||||
|
||||
public ITask With(Quest quest, QuestStep step)
|
||||
{
|
||||
@ -180,13 +180,13 @@ internal static class WaitAtEnd
|
||||
{
|
||||
QuestWork? questWork = gameFunctions.GetQuestEx(Quest.QuestId);
|
||||
return questWork != null &&
|
||||
QuestWorkUtils.MatchesQuestWork(Step.CompletionQuestVariablesFlags, questWork.Value, false)
|
||||
QuestWorkUtils.MatchesQuestWork(Step.CompletionQuestVariablesFlags, questWork.Value)
|
||||
? ETaskResult.TaskComplete
|
||||
: ETaskResult.StillRunning;
|
||||
}
|
||||
|
||||
public override string ToString() =>
|
||||
$"Wait(QW: {string.Join(", ", Flags.Select(x => x?.ToString(CultureInfo.InvariantCulture) ?? "-"))})";
|
||||
$"Wait(QW: {string.Join(", ", Flags.Select(x => x?.ToString() ?? "-"))})";
|
||||
}
|
||||
|
||||
internal sealed class WaitObjectAtPosition(GameFunctions gameFunctions) : ITask
|
||||
|
@ -10,40 +10,50 @@ namespace Questionable.Controller.Utils;
|
||||
|
||||
internal static class QuestWorkUtils
|
||||
{
|
||||
public static bool HasCompletionFlags(IList<short?> completionQuestVariablesFlags)
|
||||
public static bool HasCompletionFlags(IList<QuestWorkValue?> completionQuestVariablesFlags)
|
||||
{
|
||||
return completionQuestVariablesFlags.Count == 6 && completionQuestVariablesFlags.Any(x => x != null);
|
||||
return completionQuestVariablesFlags.Count == 6 && completionQuestVariablesFlags.Any(x => x != null && (x.High != 0 || x.Low != 0));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positive values: Must be set to this value; will wait for the step to have these set.
|
||||
/// Negative values: Will skip if set to this value, won't wait for this to be set.
|
||||
/// </summary>
|
||||
public static bool MatchesQuestWork(IList<short?> completionQuestVariablesFlags, QuestWork questWork, bool forSkip)
|
||||
public static bool MatchesQuestWork(IList<QuestWorkValue?> completionQuestVariablesFlags, QuestWork questWork)
|
||||
{
|
||||
if (!HasCompletionFlags(completionQuestVariablesFlags))
|
||||
return false;
|
||||
|
||||
for (int i = 0; i < 6; ++i)
|
||||
{
|
||||
short? check = completionQuestVariablesFlags[i];
|
||||
QuestWorkValue? check = completionQuestVariablesFlags[i];
|
||||
if (check == null)
|
||||
continue;
|
||||
|
||||
byte actualValue = questWork.Variables[i];
|
||||
byte checkByte = check > 0 ? (byte)check : (byte)-check;
|
||||
if (forSkip)
|
||||
EQuestWorkMode mode = check.Mode;
|
||||
|
||||
byte actualHigh = (byte)(questWork.Variables[i] >> 4);
|
||||
byte actualLow = (byte)(questWork.Variables[i] & 0xF);
|
||||
|
||||
byte? checkHigh = check.High;
|
||||
byte? checkLow = check.Low;
|
||||
|
||||
byte expectedHigh = checkHigh.GetValueOrDefault();
|
||||
byte expectedLow = checkLow.GetValueOrDefault();
|
||||
if (mode == EQuestWorkMode.Exact)
|
||||
{
|
||||
byte expectedValue = (byte)Math.Abs(check.Value);
|
||||
if ((actualValue & checkByte) != expectedValue)
|
||||
if (checkHigh != null && actualHigh != expectedHigh)
|
||||
return false;
|
||||
|
||||
if (checkLow != null && actualLow != expectedLow)
|
||||
return false;
|
||||
}
|
||||
else if (!forSkip && check > 0)
|
||||
else if (mode == EQuestWorkMode.Bitwise)
|
||||
{
|
||||
byte expectedValue = check > 0 ? (byte)check : (byte)0;
|
||||
if ((actualValue & checkByte) != expectedValue)
|
||||
if (checkHigh != null && (actualHigh & checkHigh) != expectedHigh)
|
||||
return false;
|
||||
|
||||
if (checkLow != null && (actualLow & checkLow) != expectedLow)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
throw new InvalidOperationException($"Unknown qw mode {mode}");
|
||||
}
|
||||
|
||||
return true;
|
||||
@ -54,7 +64,7 @@ internal static class QuestWorkUtils
|
||||
{
|
||||
if (requiredQuestVariables.Count != 6 || requiredQuestVariables.All(x => x == null || x.Count == 0))
|
||||
{
|
||||
logger.LogInformation("No RQW defined");
|
||||
logger.LogDebug("No RQW defined");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -71,7 +81,7 @@ internal static class QuestWorkUtils
|
||||
|
||||
foreach (QuestWorkValue expectedValue in requiredQuestVariables[i]!)
|
||||
{
|
||||
logger.LogInformation("H: {ExpectedHigh} - {ActualHigh}, L: {ExpectedLow} - {ActualLow}",
|
||||
logger.LogDebug("H: {ExpectedHigh} - {ActualHigh}, L: {ExpectedLow} - {ActualLow}",
|
||||
expectedValue.High, high, expectedValue.Low, low);
|
||||
if (expectedValue.High != null && expectedValue.High != high)
|
||||
continue;
|
||||
|
@ -3,6 +3,7 @@ using System.Linq;
|
||||
using System.Numerics;
|
||||
using Questionable.Controller.Utils;
|
||||
using Questionable.Model;
|
||||
using Questionable.Model.V1;
|
||||
|
||||
namespace Questionable.Validation.Validators;
|
||||
|
||||
@ -19,10 +20,13 @@ internal sealed class CompletionFlagsValidator : IQuestValidator
|
||||
{
|
||||
return Enumerable.Range(0, 6).Select(y =>
|
||||
{
|
||||
short? value = x.CompletionQuestVariablesFlags[y];
|
||||
if (value == null || value.Value < 0)
|
||||
QuestWorkValue? value = x.CompletionQuestVariablesFlags[y];
|
||||
if (value == null)
|
||||
return 0;
|
||||
return (long)BitOperations.RotateLeft((ulong)value.Value, 8 * y);
|
||||
|
||||
// this isn't perfect, as it assumes {High: 1, Low: null} == {High: 1, Low: 0}
|
||||
return (long)BitOperations.RotateLeft(
|
||||
(ulong)(value.High.GetValueOrDefault() * 16 + value.Low.GetValueOrDefault()), 8 * y);
|
||||
})
|
||||
.Sum();
|
||||
}
|
||||
@ -46,7 +50,8 @@ internal sealed class CompletionFlagsValidator : IQuestValidator
|
||||
Step = i,
|
||||
Type = EIssueType.DuplicateCompletionFlags,
|
||||
Severity = EIssueSeverity.Error,
|
||||
Description = $"Duplicate completion flags: {string.Join(", ", sequence.Steps[i].CompletionQuestVariablesFlags)}",
|
||||
Description =
|
||||
$"Duplicate completion flags: {string.Join(", ", sequence.Steps[i].CompletionQuestVariablesFlags)}",
|
||||
};
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user