diff --git a/img/headers/acolyte.png b/img/headers/acolyte.png
index 10aa2469..95fb4258 100644
Binary files a/img/headers/acolyte.png and b/img/headers/acolyte.png differ
diff --git a/img/headers/compass.png b/img/headers/compass.png
new file mode 100644
index 00000000..b12f09ef
Binary files /dev/null and b/img/headers/compass.png differ
diff --git a/img/headers/cover.png b/img/headers/cover.png
index b91fb0d9..52f56186 100644
Binary files a/img/headers/cover.png and b/img/headers/cover.png differ
diff --git a/img/headers/header_template.pdn b/img/headers/header_template.pdn
new file mode 100644
index 00000000..d5a07559
Binary files /dev/null and b/img/headers/header_template.pdn differ
diff --git a/img/headers/olive.png b/img/headers/olive.png
index e809e30f..d799216f 100644
Binary files a/img/headers/olive.png and b/img/headers/olive.png differ
diff --git a/img/headers/ruins.png b/img/headers/ruins.png
deleted file mode 100644
index df495d83..00000000
Binary files a/img/headers/ruins.png and /dev/null differ
diff --git a/img/scedheadertemplate.xcf b/img/scedheadertemplate.xcf
deleted file mode 100644
index c08ebf66..00000000
Binary files a/img/scedheadertemplate.xcf and /dev/null differ
diff --git a/modsettings/CustomUIAssets.json b/modsettings/CustomUIAssets.json
index 3a808204..aaaf125b 100644
--- a/modsettings/CustomUIAssets.json
+++ b/modsettings/CustomUIAssets.json
@@ -87,22 +87,22 @@
{
"Name": "header_cover",
"Type": 0,
- "URL": "http://cloud-3.steamusercontent.com/ugc/5118935530977312342/0D22712378B1F9A5A1FC7DA40C355943C878DDC0/"
+ "URL": "http://cloud-3.steamusercontent.com/ugc/2280574378889753624/53E7443E2A9957BC5CA4D73B67D5C1C30971C9F9/"
},
{
"Name": "header_acolyte",
"Type": 0,
- "URL": "http://cloud-3.steamusercontent.com/ugc/5118935530977311773/B8B2021D42CFB084AFDCCA42EE6B9A57F3E30AC6/"
+ "URL": "http://cloud-3.steamusercontent.com/ugc/2280574378889753484/961371448C1CB9F93D574E0F78CF51A88D0D34F6/"
},
{
- "Name": "header_ruins",
+ "Name": "header_compass",
"Type": 0,
- "URL": "http://cloud-3.steamusercontent.com/ugc/5118935530977312917/E24A34736C912186C7AC58270E3819B6A44B3EE8/"
+ "URL": "http://cloud-3.steamusercontent.com/ugc/2280574378889786684/52E2A801060A523AF5DD956C72A41889B5A1D2C9/"
},
{
"Name": "header_olive",
"Type": 0,
- "URL": "http://cloud-3.steamusercontent.com/ugc/5118935530977377198/4E88B41107A29D027D86E6B80D47B03617335990/"
+ "URL": "http://cloud-3.steamusercontent.com/ugc/2280574378889753733/F67B7B37FF7AA253B6D697E577DF54A3E76030C2/"
},
{
"Name": "option_on",
diff --git a/objects/LuaScriptState.luascriptstate b/objects/LuaScriptState.luascriptstate
index 739e0b8e..727ccd58 100644
--- a/objects/LuaScriptState.luascriptstate
+++ b/objects/LuaScriptState.luascriptstate
@@ -1 +1 @@
-{"acknowledgedUpgradeVersions":[],"optionPanel":{"cardLanguage":"en","changePlayAreaImage":false,"playAreaConnectionColor":{"a":1,"b":0.4,"g":0.4,"r":0.4},"playAreaSnapTags":true,"showAttachmentHelper":false,"showCleanUpHelper":false,"showCYOA":false,"showDisplacementTool":false,"showDrawButton":false,"showHandHelper":[],"showPlayermatHider":false,"showSearchAssistant":[],"showTitleSplash":true,"useClueClickers":false,"useResourceCounters":"disabled","useSnapTags":true}}
+{"acknowledgedUpgradeVersions":[],"optionPanel":{"cardLanguage":"en","changePlayAreaImage":false,"playAreaConnectionColor":{"a":1,"b":0.4,"g":0.4,"r":0.4},"playAreaConnections":true,"playAreaSnapTags":true,"showAttachmentHelper":false,"showCleanUpHelper":false,"showCYOA":false,"showDisplacementTool":false,"showDrawButton":false,"showHandHelper":[],"showPlayermatHider":false,"showSearchAssistant":[],"showTitleSplash":true,"useClueClickers":false,"useResourceCounters":"disabled","useSnapTags":true}}
diff --git a/objects/PlayArea.721ba2.luascriptstate b/objects/PlayArea.721ba2.luascriptstate
index 2ce9ee2f..b5fdd049 100644
--- a/objects/PlayArea.721ba2.luascriptstate
+++ b/objects/PlayArea.721ba2.luascriptstate
@@ -1 +1 @@
-{"connectionColor":{"a":1,"b":0.4,"g":0.4,"r":0.4},"trackedLocations":[]}
+{"connectionColor":{"a":1,"b":0.4,"g":0.4,"r":0.4},"connectionsEnabled":true,"trackedLocations":[]}
diff --git a/src/core/Global.ttslua b/src/core/Global.ttslua
index 175bbbce..7ef6007f 100644
--- a/src/core/Global.ttslua
+++ b/src/core/Global.ttslua
@@ -1240,6 +1240,11 @@ function applyOptionPanelChange(id, state)
local counter = guidReferenceApi.getObjectByOwnerAndType("Mythos", "MasterClueCounter")
counter.setVar("useClickableCounters", state)
+ -- option: Play area snap tags
+ elseif id == "playAreaConnections" then
+ playAreaApi.setConnectionDrawState(state)
+ optionPanel[id] = state
+
-- option: Play area connection color
elseif id == "playAreaConnectionColor" then
playAreaApi.setConnectionColor(state)
@@ -1399,6 +1404,7 @@ function onClick_defaultSettings()
optionPanel = {
cardLanguage = "en",
playAreaConnectionColor = { 0.4, 0.4, 0.4, 1 },
+ playAreaConnections = true,
playAreaSnapTags = true,
showAttachmentHelper = false,
showCleanUpHelper = false,
diff --git a/src/core/PlayArea.ttslua b/src/core/PlayArea.ttslua
index d488a784..58fd71cd 100644
--- a/src/core/PlayArea.ttslua
+++ b/src/core/PlayArea.ttslua
@@ -18,9 +18,6 @@ local ARROW_ANGLE = 25
-- Height to draw the connector lines, places them just above the table and always below cards
local CONNECTION_LINE_Y = 1.529
--- we use this to turn off collision handling until onLoad() is complete
-local collisionEnabled = false
-
-- used for recreating the link to a custom data helper after image change
customDataHelper = nil
@@ -51,7 +48,7 @@ local locations = {}
local locationConnections = {}
local draggingGuids = {}
local missingData = {}
-local locationData, currentScenario
+local locationData, currentScenario, connectionsEnabled
---------------------------------------------------------
-- general code
@@ -59,19 +56,19 @@ local locationData, currentScenario
function onSave()
return JSON.encode({
- trackedLocations = locations,
- currentScenario = currentScenario,
- connectionColor = connectionColor
+ trackedLocations = locations,
+ currentScenario = currentScenario,
+ connectionColor = connectionColor,
+ connectionsEnabled = connectionsEnabled
})
end
function onLoad(savedData)
- local loadedData = JSON.decode(savedData) or {}
- locations = loadedData.trackedLocations or {}
- currentScenario = loadedData.currentScenario
- connectionColor = loadedData.connectionColor or { 0.4, 0.4, 0.4, 1 }
-
- Wait.time(function() collisionEnabled = true end, 1)
+ local loadedData = JSON.decode(savedData) or {}
+ locations = loadedData.trackedLocations or {}
+ currentScenario = loadedData.currentScenario
+ connectionColor = loadedData.connectionColor or { 0.4, 0.4, 0.4, 1 }
+ connectionsEnabled = loadedData.connectionsEnabled or true
end
-- Called by Custom Data Helpers to push their location data into the Data Helper. This adds the
@@ -114,7 +111,7 @@ function onCollisionEnter(collisionInfo)
local objType = obj.name
-- only continue for cards
- if not collisionEnabled or (objType ~= "Card" and objType ~= "CardCustom") then
+ if objType ~= "Card" and objType ~= "CardCustom" then
if objType == "Deck" then
table.insert(missingData, obj)
end
@@ -353,6 +350,7 @@ end
function drawBaseConnections()
if not showLocationLinks() then
locationConnections = {}
+ self.setVectorLines({})
return
end
local cardConnectionLines = {}
@@ -557,7 +555,7 @@ function onScenarioChanged(scenarioName)
end
function showLocationLinks()
- return not LOC_LINK_EXCLUDE_SCENARIOS[currentScenario]
+ return not LOC_LINK_EXCLUDE_SCENARIOS[currentScenario] and connectionsEnabled
end
-- Sets this playmat's snap points to limit snapping to locations or not.
@@ -580,6 +578,20 @@ function setLimitSnapsByType(matchTypes)
self.setSnapPoints(snaps)
end
+-- called by the option panel to enabled / disable location connections
+function setConnectionDrawState(state)
+ connectionsEnabled = state
+ rebuildConnectionList()
+ drawBaseConnections()
+end
+
+-- called by the option panel to edit the location connection color
+function setConnectionColor(color)
+ connectionColor = color
+ rebuildConnectionList()
+ drawBaseConnections()
+end
+
-- count victory points on locations in play area
---@param highlightOff Boolean True if highlighting should be enabled
---@return. Returns the total amount of VP found in the play area
diff --git a/src/core/PlayAreaApi.ttslua b/src/core/PlayAreaApi.ttslua
index 9a4913bd..f9a1e40f 100644
--- a/src/core/PlayAreaApi.ttslua
+++ b/src/core/PlayAreaApi.ttslua
@@ -46,10 +46,14 @@ do
return getPlayArea().call("resetSpawnedCards")
end
+ -- Sets whether location connections should be drawn
+ PlayAreaApi.setConnectionDrawState = function(state)
+ getPlayArea().call("setConnectionDrawState", state)
+ end
+
-- Sets the connection color
PlayAreaApi.setConnectionColor = function(color)
- getPlayArea().setTable("connectionColor", color)
- getPlayArea().call("drawBaseConnections")
+ getPlayArea().call("setConnectionColor")
end
-- Event to be called when the current scenario has changed.
diff --git a/xml/Global/OptionPanel.xml b/xml/Global/OptionPanel.xml
index aba188b2..9400f31d 100644
--- a/xml/Global/OptionPanel.xml
+++ b/xml/Global/OptionPanel.xml
@@ -26,8 +26,9 @@
+ preferredHeight="44" />
|
|
|
|
+ useGlobalCellPadding="false">
-->
+
+
+
+
+
+
+ |
+
+
+ |
+
+
+
+
+
-
+
|
@@ -151,6 +180,20 @@
|
+
+
+
+
+
+
+ |
+
+
+ |
+
+
@@ -168,26 +211,12 @@
-
-
-
-
-
-
- |
-
-
- |
-
-
-
+
|
|