Skip to content

Commit

Permalink
Fall 2017 update (1.0.0.194)
Browse files Browse the repository at this point in the history
  • Loading branch information
Azurency committed Oct 20, 2017
1 parent 1dfd788 commit ab06504
Show file tree
Hide file tree
Showing 221 changed files with 6,822 additions and 5,945 deletions.
38 changes: 20 additions & 18 deletions ARXManager.lua
Original file line number Diff line number Diff line change
Expand Up @@ -309,24 +309,26 @@ function DrawGossipLog()

--Only show the gossip generated in the last 100 turns. Otherwise we can end up with a TON of gossip, and everything bogs down.
for iPlayer = 0, PlayerManager.GetWasEverAliveCount() - 1 do
local gossipManager = Game.GetGossipManager();
local iCurrentTurn = Game.GetCurrentGameTurn();
local earliestTurn = iCurrentTurn - 100;
local gossipStringTable = gossipManager:GetRecentVisibleGossipStrings(earliestTurn, m_LocalPlayerID, iPlayer);
for i, currTable:table in pairs(gossipStringTable) do

local gossipString = currTable[1];
local gossipTurn = currTable[2];

if (gossipString ~= nil) then
if iNumAdded < iMaxAdded then
fullStr = fullStr..gossipString.."</br>";
iNumAdded = iNumAdded + 1;
end
else
break;
end
end
if PlayerManager.IsAlive(iPlayer) then
local gossipManager = Game.GetGossipManager();
local iCurrentTurn = Game.GetCurrentGameTurn();
local earliestTurn = iCurrentTurn - 100;
local gossipStringTable = gossipManager:GetRecentVisibleGossipStrings(earliestTurn, m_LocalPlayerID, iPlayer);
for i, currTable:table in pairs(gossipStringTable) do

local gossipString = currTable[1];
local gossipTurn = currTable[2];

if (gossipString ~= nil) then
if iNumAdded < iMaxAdded then
fullStr = fullStr..gossipString.."</br>";
iNumAdded = iNumAdded + 1;
end
else
break;
end
end
end
end

if iNumAdded == 0 then
Expand Down
48 changes: 24 additions & 24 deletions ActionPanel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -82,24 +82,24 @@ local estTimeElapsedToolStr :string = Locale.Lookup("LOC_KEY_ESTIMATED_TIME_EL
local canUnreadyTurnTip :string = Locale.Lookup("LOC_ACTION_PANEL_CAN_UNREADY_TOOLTIP");

-- ===========================================================================
local m_kMessageInfo :table = {};
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_UNITS] = {Message = unitNeedsOrdersString, ToolTip = unitNeedsOrdersTip , Icon="ICON_NOTIFICATION_COMMAND_UNITS" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_STACKED_UNITS] = {Message = moveStackedUnitString, ToolTip = moveStackedUnitTip , Icon="ICON_NOTIFICATION_COMMAND_UNITS" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_UNIT_NEEDS_ORDERS] = {Message = unitNeedsOrdersString, ToolTip = unitNeedsOrdersTip , Icon="ICON_NOTIFICATION_COMMAND_UNITS" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_RESEARCH] = {Message = needResearchString, ToolTip = needResearchTip , Icon="ICON_NOTIFICATION_CHOOSE_TECH" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CIVIC] = {Message = needCivicString, ToolTip = needCivicTip , Icon="ICON_NOTIFICATION_CHOOSE_CIVIC", Sound="Notification_New_Civic" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_FILL_CIVIC_SLOT] = {Message = fillCivicString , ToolTip = fillCivicTip , Icon="ICON_NOTIFICATION_CHOOSE_CIVIC" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CONSIDER_GOVERNMENT_CHANGE]= {Message = considerGovernmentString, ToolTip = considerGovernmentTip , Icon="ICON_NOTIFICATION_CONSIDER_GOVERNMENT_CHANGE" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CONSIDER_RAZE_CITY] = {Message = considerRazeCityString, ToolTip = considerRazeCityTip , Icon="ICON_NOTIFICATION_CONSIDER_RAZE_CITY" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_PRODUCTION] = {Message = needProductionString, ToolTip = needProductionTip , Icon="ICON_NOTIFICATION_CHOOSE_CITY_PRODUCTION" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_PANTHEON] = {Message = needPantheonString, ToolTip = needPantheonTip , Icon="ICON_NOTIFICATION_CHOOSE_PANTHEON", Sound="Notification_New_Religion" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_RELIGION] = {Message = needReligionString, ToolTip = needReligionTip , Icon="ICON_NOTIFICATION_CHOOSE_RELIGION", Sound="Notification_New_Religion" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_BELIEF] = {Message = needBeliefString, ToolTip = needBeliefTip , Icon="ICON_NOTIFICATION_CHOOSE_RELIGION", Sound="Notification_New_Religion" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_GIVE_INFLUENCE_TOKEN] = {Message = giveInfluenceTokenString, ToolTip = giveInfluenceTokenTip , Icon="ICON_NOTIFICATION_GIVE_INFLUENCE_TOKEN" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CLAIM_GREAT_PERSON] = {Message = claimGreatPersonString, ToolTip = claimGreatPersonTip , Icon="ICON_NOTIFICATION_CLAIM_GREAT_PERSON", Sound="Notification_Great_Person_Available" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_SPY_CHOOSE_ESCAPE_ROUTE] = {Message = chooseEscapeRouteString, ToolTip = chooseEscapeRouteTip , Icon="ICON_NOTIFICATION_SPY_CHOOSE_ESCAPE_ROUTE" }
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_SPY_CHOOSE_DRAGNET_PRIORITY]={Message = chooseDragnetPriorityString, ToolTip = chooseDragnetPriorityTip , Icon="ICON_NOTIFICATION_SPY_CHOOSE_DRAGNET_PRIORITY"}
m_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_ARTIFACT] ={Message = needArtifactPlayerString, ToolTip = needArtifactPlayerTip , Icon="ICON_NOTIFICATION_DISCOVER_ARTIFACT"}
g_kMessageInfo = {};
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_UNITS] = {Message = unitNeedsOrdersString, ToolTip = unitNeedsOrdersTip , Icon="ICON_NOTIFICATION_COMMAND_UNITS" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_STACKED_UNITS] = {Message = moveStackedUnitString, ToolTip = moveStackedUnitTip , Icon="ICON_NOTIFICATION_COMMAND_UNITS" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_UNIT_NEEDS_ORDERS] = {Message = unitNeedsOrdersString, ToolTip = unitNeedsOrdersTip , Icon="ICON_NOTIFICATION_COMMAND_UNITS" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_RESEARCH] = {Message = needResearchString, ToolTip = needResearchTip , Icon="ICON_NOTIFICATION_CHOOSE_TECH" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CIVIC] = {Message = needCivicString, ToolTip = needCivicTip , Icon="ICON_NOTIFICATION_CHOOSE_CIVIC", Sound="Notification_New_Civic" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_FILL_CIVIC_SLOT] = {Message = fillCivicString , ToolTip = fillCivicTip , Icon="ICON_NOTIFICATION_CHOOSE_CIVIC" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CONSIDER_GOVERNMENT_CHANGE]= {Message = considerGovernmentString, ToolTip = considerGovernmentTip , Icon="ICON_NOTIFICATION_CONSIDER_GOVERNMENT_CHANGE" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CONSIDER_RAZE_CITY] = {Message = considerRazeCityString, ToolTip = considerRazeCityTip , Icon="ICON_NOTIFICATION_CONSIDER_RAZE_CITY" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_PRODUCTION] = {Message = needProductionString, ToolTip = needProductionTip , Icon="ICON_NOTIFICATION_CHOOSE_CITY_PRODUCTION" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_PANTHEON] = {Message = needPantheonString, ToolTip = needPantheonTip , Icon="ICON_NOTIFICATION_CHOOSE_PANTHEON", Sound="Notification_New_Religion" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_RELIGION] = {Message = needReligionString, ToolTip = needReligionTip , Icon="ICON_NOTIFICATION_CHOOSE_RELIGION", Sound="Notification_New_Religion" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_BELIEF] = {Message = needBeliefString, ToolTip = needBeliefTip , Icon="ICON_NOTIFICATION_CHOOSE_RELIGION", Sound="Notification_New_Religion" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_GIVE_INFLUENCE_TOKEN] = {Message = giveInfluenceTokenString, ToolTip = giveInfluenceTokenTip , Icon="ICON_NOTIFICATION_GIVE_INFLUENCE_TOKEN" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_CLAIM_GREAT_PERSON] = {Message = claimGreatPersonString, ToolTip = claimGreatPersonTip , Icon="ICON_NOTIFICATION_CLAIM_GREAT_PERSON", Sound="Notification_Great_Person_Available" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_SPY_CHOOSE_ESCAPE_ROUTE] = {Message = chooseEscapeRouteString, ToolTip = chooseEscapeRouteTip , Icon="ICON_NOTIFICATION_SPY_CHOOSE_ESCAPE_ROUTE" }
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_SPY_CHOOSE_DRAGNET_PRIORITY]={Message = chooseDragnetPriorityString, ToolTip = chooseDragnetPriorityTip , Icon="ICON_NOTIFICATION_SPY_CHOOSE_DRAGNET_PRIORITY"}
g_kMessageInfo[EndTurnBlockingTypes.ENDTURN_BLOCKING_ARTIFACT] ={Message = needArtifactPlayerString, ToolTip = needArtifactPlayerTip , Icon="ICON_NOTIFICATION_DISCOVER_ARTIFACT"}


-- ===========================================================================
Expand Down Expand Up @@ -173,7 +173,7 @@ function OnRefresh()
Controls.TickerAnim:Play();

-- Populate current blocker
local kInfo :table = m_kMessageInfo[m_activeBlockerId];
local kInfo :table = g_kMessageInfo[m_activeBlockerId];
if kInfo ~= nil then
message = kInfo.Message;
icon = kInfo.Icon;
Expand Down Expand Up @@ -221,8 +221,8 @@ function OnRefresh()
kAlphaControl:Play();
kSlideControl:Play();
end
local tooltip:string = m_kMessageInfo[endTurnBlockingId].ToolTip;
local icon:string = m_kMessageInfo[endTurnBlockingId].Icon;
local tooltip:string = g_kMessageInfo[endTurnBlockingId].ToolTip;
local icon:string = g_kMessageInfo[endTurnBlockingId].Icon;
if(icon ~= nil) then
local textureOffsetX, textureOffsetY, textureSheet = IconManager:FindIconAtlas(icon,40);
kButtonControl:SetTexture( textureOffsetX, textureOffsetY, textureSheet );
Expand Down Expand Up @@ -260,10 +260,10 @@ function OnRefresh()
-- We only want to add blocker buttons for blockers that aren't represented already
local endTurnBlockingId :number = kAllBlockingTypes[iBlocker];
if not BlockerIsVisible(endTurnBlockingId) then
local title :string = m_kMessageInfo[endTurnBlockingId].Message;
local title :string = g_kMessageInfo[endTurnBlockingId].Message;
local kInst :table = m_overflowIM:GetInstance();
local tooltip :string = m_kMessageInfo[endTurnBlockingId].ToolTip;
local icon :string = m_kMessageInfo[endTurnBlockingId].Icon;
local tooltip :string = g_kMessageInfo[endTurnBlockingId].ToolTip;
local icon :string = g_kMessageInfo[endTurnBlockingId].Icon;

if(icon ~= nil) then
local textureOffsetX, textureOffsetY, textureSheet = IconManager:FindIconAtlas(icon,40);
Expand Down
4 changes: 3 additions & 1 deletion AdjacencyBonusSupport.lua
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,9 @@ function GetAdjacentIconArtdefName( targetDistrictType:string, plot:table, pkCit
return "Terrain_Tundra";
elseif iSubType == g_TERRAIN_TYPE_DESERT or iSubType == g_TERRAIN_TYPE_DESERT_HILLS then
return "Terrain_Desert";
else
elseif iSubType == g_TERRAIN_TYPE_COAST then -- TODO or TERRAIN_TYPE_OCEAN?
return "Terrain_Coast";
else -- TODO specify mountain and have an error asset if no match?
return "Terrain_Mountain";
end
elseif eType == AdjacencyBonusTypes.ADJACENCY_WONDER then
Expand Down
18 changes: 9 additions & 9 deletions Automation/Automation_NarrationPopup.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Context>
<!-- Force to always render on "tutorial" graphics stream 'layer' so it's on top even when no tutorial controls are active. -->

<Container ID="AdvisorBase" Size="full,full" >
<AlphaAnim ID="AdvisorAlpha" Anchor="C,T" Size="full,full" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Function="Root" Pause="0.5">
<SlideAnim ID="AdvisorAnim" Anchor="C,T" Size="full,full" Speed="6" Cycle="Once" Start="0,-20" End="0,0" Function="Root" Pause="0.5">
<Container ID="AdvisorBase" Size="parent,parent" >
<AlphaAnim ID="AdvisorAlpha" Anchor="C,T" Size="parent,parent" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Function="Root" Pause="0.5">
<SlideAnim ID="AdvisorAnim" Anchor="C,T" Size="parent,parent" Speed="6" Cycle="Once" Start="0,-20" End="0,0" Function="Root" Pause="0.5">
<Grid ID="Window" Anchor="C,T" Offset="0,50" Texture="Advisor_WordBubble" SliceCorner="28,44" SliceTextureSize="72,64" Size="529,208" Color="255,255,255,200">
<Container Size="parent-35, parent-15" Anchor="C,T" Offset="-10,10">
<Grid Style="DecoGrid" Size="parent-5,parent-8" Anchor="C,T" Offset="0,2" Color="120,126,134">
Expand All @@ -26,12 +26,12 @@
</Grid>
</SlideAnim>
</AlphaAnim>
<AlphaAnim ID="AdvisorTimer" Anchor="C,T" Size="full,full" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Function="Root"/>
<AlphaAnim ID="AdvisorTimer" Anchor="C,T" Size="parent,parent" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Function="Root"/>
</Container>

<Container ID="MetaBase" Anchor="C,T" Size="full,full">
<AlphaAnim ID="MetaAlpha" Anchor="C,T" Size="full,full" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Pause="0.5">
<SlideAnim ID="MetaAnim" Anchor="C,T" Size="full,full" Speed="6" Start="0,-20" End="0,0" Cycle="Once" Pause="0.5" >
<Container ID="MetaBase" Anchor="C,T" Size="parent,parent">
<AlphaAnim ID="MetaAlpha" Anchor="C,T" Size="parent,parent" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Pause="0.5">
<SlideAnim ID="MetaAnim" Anchor="C,T" Size="parent,parent" Speed="6" Start="0,-20" End="0,0" Cycle="Once" Pause="0.5" >
<Container ID="MetaWindow" Anchor="C,T" Size="500,208" Offset="0,50">
<Grid ID="MetaShadowGrid" Anchor="C,T" Size="parent,parent" Style="DropShadow3" Color="255,255,255,200" />
<Grid Anchor="C,C" Size="parent-35,parent-35" Offset="0,0" Color="0,0,0,170" Style="SubContainer4" >
Expand All @@ -46,7 +46,7 @@
</Container>
</SlideAnim>
</AlphaAnim>
<AlphaAnim ID="MetaTimer" Anchor="C,T" Size="full,full" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Function="Root"/>
<AlphaAnim ID="MetaTimer" Anchor="C,T" Size="parent,parent" Speed="6" Cycle="Once" AlphaStart="0" AlphaEnd="1" Function="Root"/>
</Container>


Expand Down
79 changes: 70 additions & 9 deletions Choosers/CivicsChooser.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,19 @@
-- Slideout panel containing available civic options.
--
-- ===========================================================================
-- Include self contained additional tabs
g_ExtraIconData = {};
include("CivicsTreeIconLoader_", true);

include("ToolTipHelper")
include("TechAndCivicSupport"); -- Already includes Civ6Common and InstanceManager
include("AnimSidePanelSupport");
include("SupportFunctions");
include("Civ6Common");


-- ===========================================================================
-- CONSTANTS
-- ===========================================================================
local DATA_FIELD_UNLOCK_IM :string = "_UnlockIM";
local RELOAD_CACHE_ID :string = "CivicChooser"; -- Must be unique (usually the same as the file name)
local MAX_BEFORE_TRUNC_BOOST_MSG:number = 210; -- Size in which boost messages will be truncated and tooltipified
local SIZE_ICON_LARGE :number = 38;
Expand All @@ -30,6 +32,7 @@ local m_currentID :number = -1;
local m_isExpanded :boolean= false;
local m_lastCompletedID :number = -1;
local m_needsRefresh :boolean = false; --used to track whether a given series of events (terminated by GameCoreEventPublishComplete)
local m_CachedModifiers :table = {};

-- ===========================================================================
-- METHODS
Expand Down Expand Up @@ -100,23 +103,28 @@ function View( playerID:number, kData:table )

m_civicsIM:ResetInstances();

local kActive : table = GetActiveData(kData);
for _,iconData in pairs(g_ExtraIconData) do
iconData:Reset();
end

local kActive : table = GetActiveData(kData);
if kActive == nil then
RealizeCurrentCivic( nil ); -- No research done yet
end

table.sort(kData, function(a, b) return Locale.Compare(a.Name, b.Name) == -1; end);
for i, data in ipairs(kData) do
if data.IsCurrent or data.IsLastCompleted then
RealizeCurrentCivic( playerID, data );
RealizeCurrentCivic( playerID, data, nil, m_CachedModifiers, extraIconDataCache );
if (data.Repeatable) then
AddAvailableCivic( playerID, data );
AddAvailableCivic( playerID, data, extraIconDataCache );
end
else
AddAvailableCivic( playerID, data );
AddAvailableCivic( playerID, data, extraIconDataCache );
end
end
RealizeSize();
end

RealizeSize();
end


Expand Down Expand Up @@ -157,8 +165,26 @@ function AddAvailableCivic( playerID:number, kData:table )
callback = function() ResetOverflowArrow( kItemInstance ); OnChooseCivic(kData.Hash); end;
end

-- Include extra icons in total unlocks
local extraUnlocks:table = {};
local hideDescriptionIcon:boolean = false;
local cachedModifier:table = m_CachedModifiers[kData.CivicType];
for _,iconData in pairs(g_ExtraIconData) do
if iconData.ModifierType == cachedModifier.ModifierType then
hideDescriptionIcon = hideDescriptionIcon or iconData.HideDescriptionIcon;
table.insert(extraUnlocks, iconData);
end
end

-- Handle overflow for unlock icons
numUnlockables = PopulateUnlockablesForCivic( playerID, kData.ID, unlockIM, nil, callback );
numUnlockables = PopulateUnlockablesForCivic( playerID, kData.ID, unlockIM, nil, callback, hideDescriptionIcon );

-- Initialize extra icons
for _,iconData in pairs(extraUnlocks) do
iconData:Initialize(kItemInstance.UnlockStack, cachedModifier);
numUnlockables = numUnlockables + 1;
end

if numUnlockables ~= nil then
HandleOverflow(numUnlockables, kItemInstance);
end
Expand Down Expand Up @@ -384,11 +410,46 @@ function OnGameDebugReturn(context:string, contextTable:table)
end
end


-- ===========================================================================
-- Obtain the data from the DB that doesn't change
-- Base costs and relationships (prerequisites)
-- RETURN: A table of node data (techs/civics/etc...) with a prereq for each entry.
-- ===========================================================================
function PopulateCachedModifiers()
-- Build main item table.
for row:table in GameInfo.Civics() do
local entry:table = {};
-- Look up and cache any civic modifiers we reward like envoys awarded
for civicModifier in GameInfo.CivicModifiers() do
if (row.CivicType == civicModifier.CivicType) then
for modifierType in GameInfo.Modifiers() do
if civicModifier.ModifierId == modifierType.ModifierId then
entry.ModifierId = modifierType.ModifierId;
entry.ModifierType = modifierType.ModifierType;
end
end
for modifierArguments in GameInfo.ModifierArguments() do
if civicModifier.ModifierId == modifierArguments.ModifierId then
entry.ModifierValue = modifierArguments.Value;
end
end
end
end


m_CachedModifiers[row.CivicType] = entry;
end
end

-- ===========================================================================
-- INIT
-- ===========================================================================
function Initialize()

-- Cache frequently used / expensive data
PopulateCachedModifiers();

-- Hot-reload events
ContextPtr:SetInitHandler(OnInit);
ContextPtr:SetShutdown(OnShutdown);
Expand Down
9 changes: 3 additions & 6 deletions Choosers/CivicsChooser.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<Context xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="..\..\..\..\..\CivTech\Libs\ForgeUI\ForgeUI_Assets\Controls.xsd">

<Include File="CivicUnlockIcon"/>

<SlideAnim Style="ChooserAnimCivics">

<Button ID="CloseButton" Anchor="L,T" Offset="265,2" Style="CloseButtonSmall" />
Expand Down Expand Up @@ -70,10 +73,4 @@
</Container>
</Instance>

<Instance Name="UnlockIconInstance">
<Button ID="UnlockIcon" Style="UnlockFrames" NoStateChange="1">
<Image ID="Icon" Anchor="C,C" Size="38,38" Texture="Controls_Blank" />
</Button>
</Instance>

</Context>
Loading

0 comments on commit ab06504

Please sign in to comment.