1
0
forked from 0ad/0ad

Use an overlay image to mark selected icons instead of using a separate image.

Remove some useless sheets.

This was SVN commit r11464.
This commit is contained in:
leper 2012-04-09 18:58:03 +00:00
parent a21fc77212
commit 67bca5a6ed
36 changed files with 47 additions and 502 deletions

View File

@ -1,12 +0,0 @@
loose,Loose,
box,Box,
column_c,Column Closed,
line_c,Line Closed,
column_o,Column Open,
line_o,Line Open,
flank,Flank,
skirmish,Skirmish,
wedge,Wedge,
testudo,Testudo,
phalanx,Phalanx,
syntagma,Syntagma,

View File

@ -1,5 +0,0 @@
food,Food,
wood,Wood,
stone,Stone,
metal,Metal,
population,Population,

View File

@ -447,233 +447,6 @@
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - FORMATION
==========================================
-->
<sprite name="snIconSheetFormation">
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationDisabled">
<effect grayscale=""/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationButton">
<image texture="session/icons/bkg/portrait.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationButtonOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/bkg/portrait.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationButtonDisabled">
<effect grayscale=""/>
<image texture="session/icons/bkg/portrait.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationTabButton">
<image texture="session/icons/bkg/tab.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetFormationTabButtonOver">
<image texture="session/icons/bkg/tab.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
>
<effect add_color="42 42 42 0"/>
</image>
</sprite>
<sprite name="snIconSheetFormationTabButtonDisabled">
<effect grayscale=""/>
<image texture="session/icons/bkg/tab.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/formation.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - GARRISON
==========================================
-->
<sprite name="snIconSheetGarrison">
<image texture="session/icons/sheets/garrison.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGarrisonOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/sheets/garrison.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGarrisonDisabled">
<image texture="session/icons/sheets/garrison.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGarrisonButton">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/garrison.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGarrisonButtonOver">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
>
<effect add_color="42 42 42 0"/>
</image>
<image texture="session/icons/sheets/garrison.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGarrisonButtonDisabled">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/garrison.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - GATHER
==========================================
-->
<sprite name="snIconSheetGather">
<image texture="session/icons/sheets/gather.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGatherOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/sheets/gather.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGatherDisabled">
<effect grayscale=""/>
<image texture="session/icons/sheets/gather.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGatherButton">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/gather.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGatherButtonOver">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
>
<effect add_color="42 42 42 0"/>
</image>
<image texture="session/icons/sheets/gather.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetGatherButtonDisabled">
<effect grayscale=""/>
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/gather.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - MENU
@ -788,76 +561,6 @@
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - RANK
==========================================
-->
<sprite name="snIconSheetRank">
<image texture="session/icons/sheets/rank.dds"
cell_size="32 32"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetRankOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/sheets/rank.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetRankDisabled">
<effect grayscale=""/>
<image texture="session/icons/sheets/rank.dds"
cell_size="32 32"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetRankButton">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/rank.dds"
cell_size="32 32"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetRankButtonOver">
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
>
<effect add_color="42 42 42 0"/>
</image>
<image texture="session/icons/sheets/rank.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetRankButtonDisabled">
<effect grayscale=""/>
<image texture="session/icons/bkg/command_outer.dds"
size="0 0 100% 100%"
/>
<image
texture="session/icons/bkg/command_inner.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/rank.dds"
cell_size="32 32"
size="0 0 100% 100%"
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - REPLAY
@ -915,63 +618,6 @@
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - RESOURCE
==========================================
-->
<sprite name="snIconSheetResource">
<image texture="session/icons/sheets/resource.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetResourceOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/sheets/resource.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetResourceDisabled">
<effect grayscale=""/>
<image texture="session/icons/sheets/resource.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetResourceButton">
<image texture="session/icons/bkg/portrait.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/resource.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetResourceButtonOver">
<effect add_color="42 42 42 0"/>
<image texture="session/icons/bkg/portrait.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/resource.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<sprite name="snIconSheetResourceButtonDisabled">
<effect grayscale=""/>
<image texture="session/icons/bkg/portrait.dds"
size="0 0 100% 100%"
/>
<image texture="session/icons/sheets/resource.dds"
cell_size="64 64"
size="0 0 100% 100%"
/>
</sprite>
<!--
==========================================
SESSION GUI - ICON SHEETS - STATISTIC

View File

@ -1,5 +1,3 @@
const RESOURCE_ICON_CELL_IDS = {food : 0, wood : 1, stone : 2, metal : 3};
function layoutSelectionSingle()
{
getGUIObjectByName("detailsAreaSingle").hidden = false;
@ -126,7 +124,7 @@ function displaySingle(entState, template)
// {
getGUIObjectByName("resourceCarryingIcon").hidden = false;
getGUIObjectByName("resourceCarryingText").hidden = false;
getGUIObjectByName("resourceCarryingIcon").cell_id = RESOURCE_ICON_CELL_IDS[carried.type];
getGUIObjectByName("resourceCarryingIcon").sprite = "stretched:session/icons/resources/"+carried.type+".png";
getGUIObjectByName("resourceCarryingText").caption = carried.amount + "/" + carried.max;
// }
// else
@ -140,7 +138,7 @@ function displaySingle(entState, template)
{
getGUIObjectByName("resourceCarryingIcon").hidden = false;
getGUIObjectByName("resourceCarryingText").hidden = false;
getGUIObjectByName("resourceCarryingIcon").cell_id = RESOURCE_ICON_CELL_IDS[entState.trader.goods.type];
getGUIObjectByName("resourceCarryingIcon").sprite = "stretched:session/icons/resources/"+entState.trader.goods.type+".png";
getGUIObjectByName("resourceCarryingText").caption = entState.trader.goods.amount;
}
else

View File

@ -294,31 +294,31 @@
>
<!-- Food -->
<object size="0 0 90 100%" type="image" style="resourceCounter" tooltip="Food" tooltip_style="sessionToolTipBold">
<object size="0 -4 40 36" type="image" style="resourceIcon" cell_id="0"/>
<object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/food.png"/>
<object size="32 0 100% 100%-2" type="text" style="resourceText" name="resourceFood"/>
</object>
<!-- Wood -->
<object size="90 0 180 100%" type="image" style="resourceCounter" tooltip="Wood" tooltip_style="sessionToolTipBold">
<object size="0 -4 40 36" type="image" style="resourceIcon" cell_id="1"/>
<object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/wood.png"/>
<object size="32 0 100% 100%-2" type="text" style="resourceText" name="resourceWood"/>
</object>
<!-- Stone -->
<object size="180 0 270 100%" type="image" style="resourceCounter" tooltip="Stone" tooltip_style="sessionToolTipBold">
<object size="0 -4 40 36" type="image" style="resourceIcon" cell_id="2"/>
<object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/stone.png"/>
<object size="32 0 100% 100%-2" type="text" style="resourceText" name="resourceStone"/>
</object>
<!-- Metal -->
<object size="270 0 360 100%" type="image" style="resourceCounter" tooltip="Metal" tooltip_style="sessionToolTipBold">
<object size="0 -4 40 36" type="image" style="resourceIcon" cell_id="3"/>
<object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/metal.png"/>
<object size="32 0 100% 100%-2" type="text" style="resourceText" name="resourceMetal"/>
</object>
<!-- Population -->
<object size="360 0 450 100%" type="image" style="resourceCounter" tooltip="Population (current / limit)" tooltip_style="sessionToolTipBold">
<object size="0 -4 40 34" type="image" style="resourceIcon" cell_id="4"/>
<object size="0 -4 40 34" type="image" sprite="stretched:session/icons/resources/population.png"/>
<object size="32 0 100% 100%-2" type="text" style="resourceText" name="resourcePop"/>
</object>
</object>
@ -515,7 +515,8 @@
<object size="0 0 100% 100%">
<repeat count="16">
<object name="unitFormationButton[n]" hidden="true" style="iconButton" type="button" size="0 0 36 36" tooltip_style="sessionToolTipBottomBold" z="100">
<object name="unitFormationIcon[n]" type="image" style="formationIcon" ghost="true" size="3 3 33 33"/>
<object name="unitFormationIcon[n]" type="image" ghost="true" size="3 3 33 33"/>
<object name="unitFormationSelection[n]" hidden="true" type="image" ghost="true" size="3 3 33 33" sprite="stretched:session/icons/corners.png"/>
</object>
</repeat>
</object>
@ -543,6 +544,7 @@
<object name="unitBarterSellButton[n]" style="iconButton" type="button" size="0 0 46 46" tooltip_style="sessionToolTipBottomBold">
<object name="unitBarterSellIcon[n]" type="image" ghost="true" size="3 3 43 43"/>
<object name="unitBarterSellAmount[n]" ghost="true" style="resourceText" type="text" size="0 0 100% 50%"/>
<object name="unitBarterSellSelection[n]" hidden="true" type="image" ghost="true" size="3 3 43 43" sprite="stretched:session/icons/corners.png"/>
</object>
</repeat>
</object>
@ -566,6 +568,7 @@
<repeat count="5">
<object name="unitStanceButton[n]" hidden="true" style="iconButton" type="button" size="0 0 36 36" tooltip_style="sessionToolTipBottomBold" z="100">
<object name="unitStanceIcon[n]" type="image" ghost="true" size="3 3 33 33"/>
<object name="unitStanceSelection[n]" hidden="true" type="image" ghost="true" size="3 3 33 33" sprite="stretched:session/icons/corners.png"/>
</object>
</repeat>
</object>
@ -596,7 +599,7 @@
<object size="0 0 48 48" type="image" name="armourIcon" sprite="stretched:session/icons/stances/defensive.png" tooltip_style="sessionToolTip"/>
<!-- Resource carrying icon/counter -->
<object size="0 40 48 88" type="image" name="resourceCarryingIcon" style="resourceIcon"/>
<object size="0 40 48 88" type="image" name="resourceCarryingIcon"/>
<object size="0 80 48 100" type="text" name="resourceCarryingText" style="statsText"/>
</object>
@ -759,6 +762,7 @@
<repeat count="4">
<object name="unitTradingButton[n]" style="iconButton" type="button" size="0 0 46 46" tooltip_style="sessionToolTipBottom">
<object name="unitTradingIcon[n]" type="image" ghost="true" size="3 3 43 43"/>
<object name="unitTradingSelection[n]" hidden="true" type="image" ghost="true" size="3 3 43 43" sprite="stretched:session/icons/corners.png"/>
</object>
</repeat>
</object>

View File

@ -127,19 +127,8 @@
<!-- ================================ ================================ -->
<!-- Icon Styles -->
<!-- ================================ ================================ -->
<style name="resourceIcon"
sprite="snIconSheetResource"
ghost="true"
/>
<style name="formationIcon"
sprite="formation"
sprite_disabled="formation_disabled"
ghost="true"
/>
<style name="commandIcon"
sprite="commands"
sprite="command"
ghost="true"
/>

View File

@ -284,6 +284,7 @@ function setupUnitPanel(guiName, usedPanels, unitEntState, items, callback)
// Button
var button = getGUIObjectByName("unit"+guiName+"Button["+i+"]");
var icon = getGUIObjectByName("unit"+guiName+"Icon["+i+"]");
var selection = getGUIObjectByName("unit"+guiName+"Selection["+i+"]");
button.hidden = false;
button.tooltip = tooltip;
@ -298,10 +299,11 @@ function setupUnitPanel(guiName, usedPanels, unitEntState, items, callback)
"formationName": item
});
var grayscale = "";
button.enabled = formationOk;
if (!formationOk)
{
icon.sprite = "stretched:grayscale:session/icons/formations/"+item.replace(/\s+/,'').toLowerCase()+".png";
grayscale = "grayscale:";
// Display a meaningful tooltip why the formation is disabled
var requirements = Engine.GuiInterfaceCall("GetFormationRequirements", {
@ -321,20 +323,15 @@ function setupUnitPanel(guiName, usedPanels, unitEntState, items, callback)
button.tooltip += " allowed.";
}
}
else
{
var formationSelected = Engine.GuiInterfaceCall("IsFormationSelected", {
"ents": g_Selection.toList(),
"formationName": item
});
if (formationSelected)
// TODO: add another layer on top displaying icons/corners.png
// If doing this move the icon.sprite code out of the if (!formationOk) else block
icon.sprite = "stretched:session/icons/formations/"+item.replace(/\s+/,'').toLowerCase()+"-selected.png";
else
icon.sprite = "stretched:session/icons/formations/"+item.replace(/\s+/,'').toLowerCase()+".png";
}
var formationSelected = Engine.GuiInterfaceCall("IsFormationSelected", {
"ents": g_Selection.toList(),
"formationName": item
});
selection.hidden = !formationSelected;
icon.sprite = "stretched:"+grayscale+"session/icons/formations/"+item.replace(/\s+/,'').toLowerCase()+".png";
}
else if (guiName == "Stance")
{
@ -343,11 +340,8 @@ function setupUnitPanel(guiName, usedPanels, unitEntState, items, callback)
"stance": item
});
if (stanceSelected)
// TODO: add another layer on top displaying icons/corners.png
icon.sprite = "stretched:session/icons/stances/"+item+"-selected.png";
else
icon.sprite = "stretched:session/icons/stances/"+item+".png";
selection.hidden = !stanceSelected;
icon.sprite = "stretched:session/icons/stances/"+item+".png";
}
else if (guiName == "Command")
{
@ -419,11 +413,10 @@ function setupUnitTradingPanel(unitEntState, selection)
button.tooltip = "Set " + resource + " as trading goods";
var icon = getGUIObjectByName("unitTradingIcon["+i+"]");
var preferredGoods = unitEntState.trader.preferredGoods;
// TODO: We should remove this and add another layer on top of the button that displays
// icons/corners.png to mark the selected button.
var imageNameSuffix = (resource == preferredGoods) ? "_selected" : "";
var selected = getGUIObjectByName("unitTradingSelection["+i+"]");
selected.hidden = !(resource == preferredGoods);
var grayscale = (resource != preferredGoods) ? "grayscale:" : "";
icon.sprite = "stretched:"+grayscale+"session/icons/resources/" + resource + imageNameSuffix + ".png";
icon.sprite = "stretched:"+grayscale+"session/icons/resources/" + resource + ".png";
}
}
@ -443,9 +436,13 @@ function setupUnitBarterPanel(unitEntState)
{
var action = BARTER_ACTIONS[j];
// TODO: We should remove this and add another layer on top of the button that displays
// icons/corners.png to mark the selected button.
var imageNameSuffix = (j == 0 && i == g_barterSell) ? "_selected" : "";
if (j == 0)
{
// Display the selection overlay
var selection = getGUIObjectByName("unitBarter" + action + "Selection["+i+"]");
selection.hidden = !(i == g_barterSell);
}
// We gray out the not selected icons in 'sell' row
var grayscale = (j == 0 && i != g_barterSell) ? "grayscale:" : "";
var icon = getGUIObjectByName("unitBarter" + action + "Icon["+i+"]");
@ -465,7 +462,7 @@ function setupUnitBarterPanel(unitEntState)
{
button.enabled = true;
button.tooltip = action + " " + resource;
icon.sprite = "stretched:"+grayscale+"session/icons/resources/" + resource + imageNameSuffix + ".png";
icon.sprite = "stretched:"+grayscale+"session/icons/resources/" + resource + ".png";
var sellPrice = unitEntState.barterMarket.prices["sell"][BARTER_RESOURCES[g_barterSell]];
var buyPrice = unitEntState.barterMarket.prices["buy"][resource];
amountToBuy = "+" + Math.round(sellPrice / buyPrice * amountToSell);