1
Announcements / Re: Version 2.3 Released
« on: December 23, 2017, 03:54:28 AM »
Works perfectly! Thank you very much!
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
cd ~
mkdir develop
sudo apt-get install cmake libflac-dev libogg-dev libvorbis-dev libopenal-dev libjpeg62-turbo-dev libfreetype6-dev libudev-dev libfontconfig1-dev
cd ~/develop
git clone --depth 1 https://github.com/mickelson/sfml-pi sfml-pi
mkdir sfml-pi/build;cd sfml-pi/build
cmake .. -DSFML_RPI=1 -DEGL_INCLUDE_DIR=/opt/vc/include -DEGL_LIBRARY=/opt/vc/lib/libEGL.so -DGLES_INCLUDE_DIR=/opt/vc/include -DGLES_LIBRARY=/opt/vc/lib/libGLESv1_CM.so
sudo make install
sudo ldconfig
cd ~/develop
git clone --depth 1 git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
./configure --enable-mmal --disable-debug --enable-shared
make
sudo make install
sudo ldconfig
cd ~/develop
git clone --depth 1 https://github.com/mickelson/attract attract
cd attract
make USE_GLES=1
sudo make install
fe.load_module("objects/scrollingtext");
local scroller = ScrollingText.add("[Overview]",flx*0.355, fly*0.9, flw*0.3, flh*0.9);
AN ERROR HAS OCCURED [cannot convert the string]
CALLSTACK
*FUNCTION [unknown()] E:\Attract\modules\objects\scrollingtext.nut line [255]
*FUNCTION [unknown()] E:\Attract\modules\objects\scrollingtext.nut line [97]
LOCALS
[playTime] ""
[actual] "[Overview]"
[var] 1
[obj] TABLE
[this] TABLE
[obj] TABLE
[i] 0
[ttime] 0
[var] 1
[ttype] 2
[this] TABLE
Script Error in transition function: transition_callback - cannot convert the string
Thank you very much cosmo. I have finished my arcade machine this week and your main menu layout is awsome. I prefer the more customised layouts you posted on this topic http://forum.attractmode.org/index.php?topic=1300.0 but this is fine too.
It's possible change the speed animation from console and fant art that appears from de sides?
Thanks
if ( my_config["enable_ganimate"] == "Yes" )
{
local move_transition1 = {
when = Transition.ToNewSelection,
property = "x",
start = flx*-2,
end = flx*0.0,
time = 1500
}
animation.add( PropertyAnimation( cartart, move_transition1 ) );
}
There's a splash of white paint across the transparency for the video snap in your Odyssey 2 system image.
// ANIMATION CURVES
local easeOut350=[0,0.088,0.361,0.836,1.533,2.474,3.686,5.2,7.052,9.287,11.958,15.13,18.885,23.323,28.572,34.789,42.173,50.946,61.319,73.339,86.601,100]
local easeOut500=[0,0.046,0.188,0.434,0.79,1.265,1.869,2.613,3.508,4.568,5.808,7.246,8.9,10.794,12.953,15.406,18.188,21.335,24.891,28.904,33.426,38.51,44.208,50.559,57.58,65.25,73.491,82.162,91.071,100]
//local easeIn350=[100,86.601,73.339,61.319,50.946,42.173,34.789,28.572,23.323,18.885,15.13,11.958,9.287,7.052,5.2,3.686,2.474,1.533,0.836,0.361,0.088,0]
local easeIn500=[100,91.071,82.162,73.491,65.25,57.58,50.559,44.208,38.51,33.426,28.904,24.891,21.335,18.188,15.406,12.953,10.794,8.9,7.246,5.808,4.568,3.508,2.613,1.869,1.265,0.79,0.434,0.188,0.046,0]
// VARIABLES
local locked = 0;
local hide_mask = 0;
local wheelOffStep = 21;
local wheelOff = 0;
local wheelOnStep = 0;
local wheelOn = 0;
l
// CALLBACK FUNCTIONS
fe.add_transition_callback( "update_lb" );
function update_lb( ttype, var, ttime )
{
switch ( ttype )
{
case Transition.StartLayout:
romname_delay = 0; romname_set = 0;
animTextPos = 21;
animFlyerPos = 21;
flyer_sweep = 0;
flyer_lock = 0;
animLogoPos = 21;
currentEmu = fe.list.name;
currentFilter = fe.list.filter_index;
flyer_art.alpha = 0; flyerDisplayed = 0;
break;
case Transition.ToNewSelection:
romname_delay = 0; romname_set = 0;
animTextPos = 21;
animFlyerPos = 21;
flyer_sweep = 0;
flyer_lock = 0;
animText = 1;
hide_timer_value = timer_backup;
wheelOff = 0; wheelOffStep = 21; hide_mask = 0; locked = 0;
flyer_art.alpha = 0; flyerDisplayed = 0;
break;
case Transition.ToNewList:
romname_delay = 0; romname_set = 0;
animTextPos = 21;
animFlyerPos = 21;
flyer_sweep = 0;
flyer_lock = 0;
animText = 1;
hide_timer_value = timer_backup;
wheelOff = 0; wheelOffStep = 21; hide_mask = 0; locked = 0;
flyer_art.alpha = 0; flyerDisplayed = 0;
break;
case Transition.ToGame:
gotogame = 1;
break;
}
}
fe.add_ticks_callback( "tick_fn" );
function tick_fn( ttime )
{
romname_delay++;
if ( romname_delay > 20 && romname_set == 0 ) // - arduino ARDUINO - Sends rom name info to am_arduino.sh
{
local romname = fe.game_info( Info.Name );
local system = fe.game_info( Info.Emulator );
local sys_rom = ( system + "+" + romname );
//fe.plugin_command_bg( "/home/odroid/.attract/emulators/RGB_leds/am_arduino.sh", romname );
fe.plugin_command_bg( "/home/odroid/.attract/emulators/scripts/tools/text_to_speech/am_tts_titles.sh", sys_rom );
romname_delay = 0; romname_set = 1;
}
if ( gotogame == 1 )
{
bgart.alpha = 0; bgart.y = 1080;
flyer_art.alpha = 0; flyer_art.y = 1080;
for(local a=-1;a<11;a+=1)
{
if ( a != 6 )
{
try { wheelObj[a].alpha = 0; } catch ( e ) { }
try { wheelObj[a].x = 2200; } catch ( e ) { }
}
else
{
wheelObj[a].alpha = 0;
wheelObj[a].x = 2200;
}
}
}
if ( fe.get_input_state( button_KEYBOARD_L ) || fe.get_input_state( button_XBOX360 ) ) // To display the wheel and the cabinet immediately
{
if ( flyer_art.alpha == 0 && flyer_lock == 0 && animFlyerPos == 21 && gotogame == 0 )
{
flyer_lock = 1; flyer_sweep = 1; flyer_art.alpha = 255; flyerDisplayed = 1;
hide_timer_value = 300; wheelOffStep = 21; hide_mask = 0; locked = 0; f1 = 1; wheelOff = 0;
for(local a=-1;a<11;a+=1)
{
if ( a != 6 )
{
try { wheelObj[a].alpha = 80; } catch ( e ) { }
}
else
{
wheelObj[a].alpha = 255;
}
}
}
if ( wheelOffStep == 21 && hide_mask > timer_backup || locked == 1 )
{
if ( hide_timer_value == timer_backup )
{
hide_timer_value = 300; wheelOff = 0; wheelOffStep = 21; hide_mask = 0; locked =0;
}
else
{
hide_timer_value = timer_backup; hide_mask = ( timer_backup + 1 ); wheelOff = 1; f1 = 3; locked =0;
}
flyer_art.alpha = 255; flyerDisplayed = 1;
for(local a=-1;a<11;a+=1)
{
if ( a != 6 )
{
try { wheelObj[a].alpha = 80; } catch ( e ) { }
}
else
{
wheelObj[a].alpha = 255;
}
}
}
}
if ( locked == 0 ) hide_mask++;
if ( hide_mask >= hide_timer_value ) wheelOff = 1; // Wheel and mask visibility duration
if ( wheelOff == 1 )
{
if ( f1 == 3 ) {
if ( flyerDisplayed == 1 ) flyer_art.alpha = 255-(-((easeOut350[wheelOffStep]-100)*2.55));
for(local a=-1;a<11;a+=1)
{
if ( a != 6 )
{
try { wheelObj[a].alpha = 80-(-((easeOut350[wheelOffStep]-100)*0.8)); } catch ( e ) { }
}
else
{
wheelObj[a].alpha = 255-(-((easeOut350[wheelOffStep]-100)*2.55));
}
}
wheelOffStep--; f1 = 1;
}
else f1++;
if ( wheelOffStep < 0 )
{
wheelOffStep = 21; hide_mask = 0; hide_timer_value = timer_backup; locked = 1; f1 = 1; wheelOff = 0; flyerDisplayed = 0; flyer_lock = 0;
}
}
}