forked from 0ad/0ad
Persian menu-background, updated structure for background functions.
This was SVN commit r10792.
This commit is contained in:
parent
3c1dc9ec32
commit
3bd371ae64
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-1.png
(Stored with Git LFS)
Normal file
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-2.png
(Stored with Git LFS)
Normal file
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-3.png
(Stored with Git LFS)
Normal file
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-3.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-4.png
(Stored with Git LFS)
Normal file
BIN
binaries/data/mods/public/art/textures/ui/pregame/backgrounds/persians1-4.png
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -1,6 +1,7 @@
|
||||
var userReportEnabledText; // contains the original version with "$status" placeholder
|
||||
var currentSubmenuType; // contains submenu type
|
||||
const MARGIN = 4; // menu border size
|
||||
const background = "persians1"; // Background type. Currently: 'hellenes1', 'persians1'.
|
||||
|
||||
function init()
|
||||
{
|
||||
@ -16,27 +17,65 @@ function init()
|
||||
}
|
||||
|
||||
var t0 = new Date;
|
||||
function scrollBackgrounds()
|
||||
function scrollBackgrounds(background)
|
||||
{
|
||||
var layer1 = getGUIObjectByName("backgroundLayer1");
|
||||
var layer2 = getGUIObjectByName("backgroundLayer2");
|
||||
var layer3 = getGUIObjectByName("backgroundLayer3");
|
||||
|
||||
var screen = layer1.parent.getComputedSize();
|
||||
var h = screen.bottom - screen.top; // height of screen
|
||||
var w = h*16/9; // width of background image
|
||||
|
||||
// Offset the layers by oscillating amounts
|
||||
var t = (t0 - new Date) / 1000;
|
||||
var speed = 1/20;
|
||||
var off1 = 0.02 * w * (1+Math.cos(t*speed));
|
||||
var off2 = 0.12 * w * (1+Math.cos(t*speed)) - h*6/9;
|
||||
var off3 = 0.16 * w * (1+Math.cos(t*speed));
|
||||
|
||||
var left = screen.right - w * (1 + Math.ceil(screen.right / w));
|
||||
layer1.size = new GUISize(left + off1, screen.top, screen.right + off1, screen.bottom);
|
||||
layer2.size = new GUISize(screen.right/2 - h + off2, screen.top, screen.right/2 + h + off2, screen.bottom);
|
||||
layer3.size = new GUISize(screen.right - h + off3, screen.top, screen.right + off3, screen.bottom);
|
||||
if (background == "hellenes1")
|
||||
{
|
||||
var layer1 = getGUIObjectByName("backgroundHele1-1");
|
||||
var layer2 = getGUIObjectByName("backgroundHele1-2");
|
||||
var layer3 = getGUIObjectByName("backgroundHele1-3");
|
||||
|
||||
layer1.hidden = false;
|
||||
layer2.hidden = false;
|
||||
layer3.hidden = false;
|
||||
|
||||
var screen = layer1.parent.getComputedSize();
|
||||
var h = screen.bottom - screen.top; // height of screen
|
||||
var w = h*16/9; // width of background image
|
||||
|
||||
// Offset the layers by oscillating amounts
|
||||
var t = (t0 - new Date) / 1000;
|
||||
var speed = 1/20;
|
||||
var off1 = 0.02 * w * (1+Math.cos(t*speed));
|
||||
var off2 = 0.12 * w * (1+Math.cos(t*speed)) - h*6/9;
|
||||
var off3 = 0.16 * w * (1+Math.cos(t*speed));
|
||||
|
||||
var left = screen.right - w * (1 + Math.ceil(screen.right / w));
|
||||
layer1.size = new GUISize(left + off1, screen.top, screen.right + off1, screen.bottom);
|
||||
layer2.size = new GUISize(screen.right/2 - h + off2, screen.top, screen.right/2 + h + off2, screen.bottom);
|
||||
layer3.size = new GUISize(screen.right - h + off3, screen.top, screen.right + off3, screen.bottom);
|
||||
}
|
||||
|
||||
if (background == "persians1")
|
||||
{
|
||||
var layer1 = getGUIObjectByName("backgroundPers1-1");
|
||||
var layer2 = getGUIObjectByName("backgroundPers1-2");
|
||||
var layer3 = getGUIObjectByName("backgroundPers1-3");
|
||||
var layer4 = getGUIObjectByName("backgroundPers1-4");
|
||||
|
||||
layer1.hidden = false;
|
||||
layer2.hidden = false;
|
||||
layer3.hidden = false;
|
||||
layer4.hidden = false;
|
||||
|
||||
var screen = layer1.parent.getComputedSize();
|
||||
var h = screen.bottom - screen.top; // height of screen
|
||||
var screenWidth = screen.right - screen.left;
|
||||
var w = h*16/9;
|
||||
|
||||
var t = (t0 - new Date) / 1000;
|
||||
var speed = 1/20;
|
||||
var off1 = 0.01 * w * (Math.cos(t*speed));
|
||||
var off2 = 0.03 * w * (Math.cos(t*speed));
|
||||
var off3 = 0.07 * w * (1+Math.cos(t*speed)) + 0.5 * screenWidth - h*1.1;
|
||||
var off4 = 0.16 * w * (1+Math.cos(t*speed)) - h*6/9;
|
||||
|
||||
var left = screen.right - w * (1 + Math.ceil(screen.right / w)) - 0.5 * screenWidth + h;
|
||||
layer1.size = new GUISize(left + off1, screen.top, screen.right + off1 + h, screen.bottom);
|
||||
layer2.size = new GUISize(left + off2, screen.top, screen.right + off2 + h, screen.bottom);
|
||||
layer3.size = new GUISize(screen.left + off3, screen.top, screen.left + 2 * h + off3, screen.bottom);
|
||||
layer4.size = new GUISize(screen.left + off4, screen.top, screen.left + 2 * h + off4, screen.bottom);
|
||||
}
|
||||
}
|
||||
|
||||
function submitUserReportMessage()
|
||||
@ -91,7 +130,7 @@ function onTick()
|
||||
lastTickTime = now;
|
||||
|
||||
// Animate backgrounds
|
||||
scrollBackgrounds();
|
||||
scrollBackgrounds(background);
|
||||
|
||||
// Animate submenu
|
||||
updateMenuPosition(tickLength);
|
||||
|
@ -17,19 +17,47 @@
|
||||
onTick();
|
||||
</action>
|
||||
|
||||
<object name="backgroundLayer1"
|
||||
<object name="backgroundHele1-1"
|
||||
type="image"
|
||||
sprite="background-hellenes1-1"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
<object name="backgroundLayer2"
|
||||
<object name="backgroundHele1-2"
|
||||
type="image"
|
||||
sprite="background-hellenes1-2"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
<object name="backgroundLayer3"
|
||||
<object name="backgroundHele1-3"
|
||||
type="image"
|
||||
sprite="background-hellenes1-3"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
|
||||
<object name="backgroundPers1-1"
|
||||
type="image"
|
||||
sprite="background-persians1-1"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
<object name="backgroundPers1-2"
|
||||
type="image"
|
||||
sprite="background-persians1-2"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
<object name="backgroundPers1-3"
|
||||
type="image"
|
||||
sprite="background-persians1-3"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
<object name="backgroundPers1-4"
|
||||
type="image"
|
||||
sprite="background-persians1-4"
|
||||
hidden="true"
|
||||
ghost="true"
|
||||
/>
|
||||
|
||||
|
@ -30,6 +30,38 @@
|
||||
wrap_mode="clamp_to_edge"
|
||||
/>
|
||||
</sprite>
|
||||
|
||||
<sprite name="background-persians1-1">
|
||||
<image
|
||||
texture="pregame/backgrounds/persians1-1.png"
|
||||
fixed_h_aspect_ratio="1.777777"
|
||||
round_coordinates="false"
|
||||
/>
|
||||
</sprite>
|
||||
|
||||
<sprite name="background-persians1-2">
|
||||
<image
|
||||
texture="pregame/backgrounds/persians1-2.png"
|
||||
fixed_h_aspect_ratio="1.777777"
|
||||
round_coordinates="false"
|
||||
/>
|
||||
</sprite>
|
||||
|
||||
<sprite name="background-persians1-3">
|
||||
<image
|
||||
texture="pregame/backgrounds/persians1-3.png"
|
||||
round_coordinates="false"
|
||||
wrap_mode="clamp_to_edge"
|
||||
/>
|
||||
</sprite>
|
||||
|
||||
<sprite name="background-persians1-4">
|
||||
<image
|
||||
texture="pregame/backgrounds/persians1-4.png"
|
||||
round_coordinates="false"
|
||||
wrap_mode="clamp_to_edge"
|
||||
/>
|
||||
</sprite>
|
||||
|
||||
<!--
|
||||
==========================================
|
||||
|
Loading…
Reference in New Issue
Block a user