so far this is what I am working on, edited from a hyperspin style theme. currently it does not work right as the marquee art gets out of order above the selected game and it gets pretty confusing when selecting a game. any idea why? (this is a 800x600 layout)
// Create 9 artworks.
local title_p3 = fe.add_artwork( "marquee", 20, 80, 190, 75 );
local title_n1 = fe.add_artwork( "marquee", 20, 160, 190, 75 );
local title_n2 = fe.add_artwork( "marquee", 20, 240, 190, 75 );
local title_n3 = fe.add_artwork( "marquee", 20, 320, 190, 75 );
local title_n0 = fe.add_artwork( "marquee", 20, 400, 190, 75 );
local title_n5 = fe.add_artwork( "marquee", 20, 480, 190, 75 );
local title_n6 = fe.add_artwork( "marquee", 20, 560, 190, 75 );
local title_n7 = fe.add_artwork( "marquee", 20, 640, 190, 75 );
local title_n8 = fe.add_artwork( "marquee", 20, 720, 190, 75 );
// Set index_offset for these 5 artworks.
title_p3.index_offset = 1;
title_n1.index_offset = 2;
title_n2.index_offset = 3;
title_n3.index_offset = 4;
title_n0.index_offset = 0;
title_n5.index_offset = 1;
title_n6.index_offset = 2;
title_n7.index_offset = 3;
title_n8.index_offset = 4;
// Add transition callback function.
fe.add_transition_callback( "orbit_transition" );
// Fill in orbit_transition function, as below:
local SPIN_MS=160; // Duration of transition effect (in msec)
function orbit_transition( ttype, var, ttime ) {
switch ( ttype )
{
case Transition.ToNewSelection:
if ( ttime < SPIN_MS ) {
local direction = -1;
if (var < 0) direction = 1;
local increment = (ttime * direction * 80) / SPIN_MS;
title_p3.y = 80 + increment;
title_n1.y = 160 + increment;
title_n2.y = 240 + increment;
title_n3.y = 320 + increment;
title_n0.y = 400 + increment;
title_n5.y = 480 + increment;
title_n6.y = 560 + increment;
title_n7.y = 640 + increment;
title_n8.y = 720 + increment;
return true;
}
else {
title_p3.y = 80;
title_n1.y = 160;
title_n2.y = 240;
title_n3.y = 320;
title_n0.y = 400;
title_n5.y = 480;
title_n6.y = 560;
title_n7.y = 640;
title_n8.y = 720;
return false;
}
}
return false;
}