Recent Posts

Pages: 1 2 [3] 4 5 ... 10
21
Well, apparently a few days have gone by  ;) and I have added the code for a wheel, vertical wheel and list. It works very well but I leave it up to you to edit it and bring it to your preference (especially the list). I did not add code to make the wheel/list bigger or smaller at this stage because I am not sure it is needed and it may require a lot of work - not sure. I left you a link to AM's listbox online help in the list section of the code - search for "Takoni" or "asahendrix" in the script. AM's listbox has a lot of options and parameters so take a look.

Also, I added a lot of options in the layout menu so check them out as well.

asahendrix - I tried using the code you posted but it kept doing weird things and I thought it will be better to just add code that I know works and not try to debug. If I am not mistaken, the wheel code you posted is from Robospin, not Ol'Room. I prefer this code as well anyway.

A visual suggestion: Maybe it will be good to move the left dinosaur to the left side of the TV and then move the boxart to where that dino was (to the right of the TV). This way, the boxart has a free place to be presented, it will not block the console and you can even enlarge it.


Download link - add the included files to your lava layout folder:
https://mega.nz/#!FINiUQ5A!eKrhuDjuomd1d33spBujJhKIJpDSMiEeJH3r0ReGWzM

Here are 4 screenshots of how it looks at this moment:

WOW THIS IS AMAZING THANK YOU!!!!! Yeah you're right, Robospin - idk what I was thinking haha! I can't wait to tinker!

I think you're right about the dino. Honestly, I'd be okay with removing the dinosaur entirely. Either way, the upright NES games next to the TV will need to graphically edited...

@Takoni, you're good with graphics - do you think you could remove the dino or put the dino to the left of the TV and touch up the background image?

On a side note - and maybe this is a reach - but I think it would be cool, at some point, to have NES in the background changed to a SNES or an Atari 2600 or whatever the emulator is. Also, the upright games I was talking about could be games that correspond to the selected emulator. Just a thought!

Thank you again Yaron2019!!!!

You are welcome!
Wait, look at the box on the TV now that it is not so bright - I darkened it via the script.. It looks natural there! idk, I like it!

Yeah that does look good! Nice work!! Perhaps our problem is solved haha :)
22
Well, apparently a few days have gone by  ;) and I have added the code for a wheel, vertical wheel and list. It works very well but I leave it up to you to edit it and bring it to your preference (especially the list). I did not add code to make the wheel/list bigger or smaller at this stage because I am not sure it is needed and it may require a lot of work - not sure. I left you a link to AM's listbox online help in the list section of the code - search for "Takoni" or "asahendrix" in the script. AM's listbox has a lot of options and parameters so take a look.

Also, I added a lot of options in the layout menu so check them out as well.

asahendrix - I tried using the code you posted but it kept doing weird things and I thought it will be better to just add code that I know works and not try to debug. If I am not mistaken, the wheel code you posted is from Robospin, not Ol'Room. I prefer this code as well anyway.

A visual suggestion: Maybe it will be good to move the left dinosaur to the left side of the TV and then move the boxart to where that dino was (to the right of the TV). This way, the boxart has a free place to be presented, it will not block the console and you can even enlarge it.


Download link - add the included files to your lava layout folder:
https://mega.nz/#!FINiUQ5A!eKrhuDjuomd1d33spBujJhKIJpDSMiEeJH3r0ReGWzM

Here are 4 screenshots of how it looks at this moment:

WOW THIS IS AMAZING THANK YOU!!!!! Yeah you're right, Robospin - idk what I was thinking haha! I can't wait to tinker!

I think you're right about the dino. Honestly, I'd be okay with removing the dinosaur entirely. Either way, the upright NES games next to the TV will need to graphically edited...

@Takoni, you're good with graphics - do you think you could remove the dino or put the dino to the left of the TV and touch up the background image?

On a side note - and maybe this is a reach - but I think it would be cool, at some point, to have NES in the background changed to a SNES or an Atari 2600 or whatever the emulator is. Also, the upright games I was talking about could be games that correspond to the selected emulator. Just a thought!

Thank you again Yaron2019!!!!

You are welcome!
Wait, look at the box on the TV now that it is not so bright - I darkened it via the script.. It looks natural there! idk, I like it!

23
Well, apparently a few days have gone by  ;) and I have added the code for a wheel, vertical wheel and list. It works very well but I leave it up to you to edit it and bring it to your preference (especially the list). I did not add code to make the wheel/list bigger or smaller at this stage because I am not sure it is needed and it may require a lot of work - not sure. I left you a link to AM's listbox online help in the list section of the code - search for "Takoni" or "asahendrix" in the script. AM's listbox has a lot of options and parameters so take a look.

Also, I added a lot of options in the layout menu so check them out as well.

asahendrix - I tried using the code you posted but it kept doing weird things and I thought it will be better to just add code that I know works and not try to debug. If I am not mistaken, the wheel code you posted is from Robospin, not Ol'Room. I prefer this code as well anyway.

A visual suggestion: Maybe it will be good to move the left dinosaur to the left side of the TV and then move the boxart to where that dino was (to the right of the TV). This way, the boxart has a free place to be presented, it will not block the console and you can even enlarge it.


Download link - add the included files to your lava layout folder:
https://mega.nz/#!FINiUQ5A!eKrhuDjuomd1d33spBujJhKIJpDSMiEeJH3r0ReGWzM

Here are 4 screenshots of how it looks at this moment:

WOW THIS IS AMAZING THANK YOU!!!!! Yeah you're right, Robospin - idk what I was thinking haha! I can't wait to tinker!

I think you're right about the dino. Honestly, I'd be okay with removing the dinosaur entirely. Either way, the upright NES games next to the TV will need to graphically edited...

@Takoni, you're good with graphics - do you think you could remove the dino or put the dino to the left of the TV and touch up the background image?

On a side note - and maybe this is a reach - but I think it would be cool, at some point, to have NES in the background changed to a SNES or an Atari 2600 or whatever the emulator is. Also, the upright games I was talking about could be games that correspond to the selected emulator. Just a thought!

Thank you again Yaron2019!!!!
24
The Boxart on the top of the TV... maybe something like this?
25
Well, apparently a few days have gone by  ;) and I have added the code for a wheel, vertical wheel and list. It works very well but I leave it up to you to edit it and bring it to your preference (especially the list). I did not add code to make the wheel/list bigger or smaller at this stage because I am not sure it is needed and it may require a lot of work - not sure. I left you a link to AM's listbox online help in the list section of the code - search for "Takoni" or "asahendrix" in the script. AM's listbox has a lot of options and parameters so take a look.

Also, I added a lot of options in the layout menu so check them out as well.

asahendrix - I tried using the code you posted but it kept doing weird things and I thought it will be better to just add code that I know works and not try to debug. If I am not mistaken, the wheel code you posted is from Robospin, not Ol'Room. I prefer this code as well anyway.

A visual suggestion: Maybe it will be good to move the boxart to the top left of the TV - there is free space there and it will not block the console.


Download link - add the included files to your lava layout folder:
https://mega.nz/#!FINiUQ5A!eKrhuDjuomd1d33spBujJhKIJpDSMiEeJH3r0ReGWzM

Here are 4 screenshots of how it looks at this moment:
26

Woohoo! Haha - Thank you so much! And I'd like to take credit, but this project is all Takoni. :)

Right now, all I have is all the x, y, h, w coordinates for the vertical wheel (with a wheel total of 6, that is - I'd have to map out more if someone wanted more than 6 wheel entries). I was wanting to substitute the listbox for the list that Takoni created:


Ok. I will try to make your code work.
It will take a few days maybe.

Thank you!!!
27

Woohoo! Haha - Thank you so much! And I'd like to take credit, but this project is all Takoni. :)

Right now, all I have is all the x, y, h, w coordinates for the vertical wheel (with a wheel total of 6, that is - I'd have to map out more if someone wanted more than 6 wheel entries). I was wanting to substitute the listbox for the list that Takoni created:


Ok. I will try to make your code work.
It will take a few days maybe.
28
Yaron2019: T H A N K S S S S S S S S A LOT!!!!

My Pleasure. My coding skills are so rusty I could camouflage myself on mars but I will give you my best shot.
29
Wow - so much to unpack here. For awhile it was just me and Takoni - and neither of us are coders haha although he is much better than I am.

Thank you so much for helping with the music "shuffle". And thank you for the extra lava lamp colors - I always love extra options! :)

Although it may be copious, I'm working on adding an option for a wheel, vertical wheel, list (the list Takoni has here) as well as a size option for these lists. For instance, it would be an option to select vert_wheel, and the the option to change the size from small, medium or large. This is because I like a small vertical wheel, but I'm using a 60" TV with my Pi - if I moved the Pi to a 32" TV, the small list is going to be tiny. This would also info some "if" statements - if the list size was set at medium or small, then the box art would be centered under the list in front of the NES. If the list was large (normal size) then the box art would cover part of the TV and part of a dinosaur to make room for the list. This would all involve adding an extra user config and even though "if" statements aren't completely foreign to me, I have almost no experience writing them myself. So I might be in over my head haha.

I keep hitting a snag - if I try to just copy over the wheels from OlRoom along with the user config line at the top, then the layout won't work. There must be a call back somewhere that I'm missing - thus making it a broken connection and thus voiding the layout. It's frustrating because I have all of the dimensions for the vertical wheel mapped out already. If anyone can help me out, that'd be great.

Thank you guys SO MUCH for all of the help and ideas!

Uncle Yaron2019 is here for the rescue!
I actually added a working wheel to lava and then removed it because I didn't want to barge into your project.
But now... YOU ASKED FOR IT!!!!!!!!!  ;D

Where are you with this coding effort?

Woohoo! Haha - Thank you so much! And I'd like to take credit, but this project is all Takoni. :)

Right now, all I have is all the x, y, h, w coordinates for the vertical wheel (with a wheel total of 6, that is - I'd have to map out more if someone wanted more than 6 wheel entries). I was wanting to substitute the listbox for the list that Takoni created:




Small Vertical List in far left corner:

//This enables vertical art instead of default wheel
if ( my_config["enable_list_type"] == "vert_wheel" )
{
fe.load_module( "conveyor" );
local wheel_x = [ flx*0.85, flx*0.85, -flx*1.465, flx*0.85, -flx*0.31, flx*0.85, flx*0.05, -flx*1.475, flx*0.85, flx*0.85, -flx*1.48, flx*0.85, ];
local wheel_y = [ -fly*0.22, -fly*0.105, -fly*0.2, fly*0.105, fly*0.215, -fly*0.17, fly*0.16, -fly*0.65, fly*0.72, fly*0.05, fly*0.935, fly*0.99, ];
local wheel_w = [ flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.14, flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.09, ];
local wheel_a = [  80,  80,  80,  80,  80,  80, 255,  80,  80,  80,  80,  80, ]; //This is opacity
local wheel_h = [  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05, flh*0.084,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05, ]; //This is height, depending on the amont of wheels you select, each entry represents one wheel.
local wheel_r = [  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
local num_arts = 6;

class WheelEntry extends ConveyorSlot
{
   constructor()
   {
      base.constructor( ::fe.add_artwork( my_config["orbit_art"] ) );
   }

   function on_progress( progress, var )
   {
      local p = progress / 0.1;
      local slot = p.tointeger();
      p -= slot;
      
      slot++;

      if ( slot < 0 ) slot=0;
      if ( slot >=10 ) slot=10;

      m_obj.x = wheel_x[slot] + p * ( wheel_x[slot+1] - wheel_x[slot] );
      m_obj.y = wheel_y[slot] + p * ( wheel_y[slot+1] - wheel_y[slot] );
      m_obj.width = wheel_w[slot] + p * ( wheel_w[slot+1] - wheel_w[slot] );
      m_obj.height = wheel_h[slot] + p * ( wheel_h[slot+1] - wheel_h[slot] );
      m_obj.rotation = wheel_r[slot] + p * ( wheel_r[slot+1] - wheel_r[slot] );
      m_obj.alpha = wheel_a[slot] + p * ( wheel_a[slot+1] - wheel_a[slot] );
   }
};

local wheel_entries = [];
for ( local i=0; i<num_arts/2; i++ )
   wheel_entries.push( WheelEntry() );

local remaining = num_arts - wheel_entries.len();

// we do it this way so that the last wheelentry created is the middle one showing the current
// selection (putting it at the top of the draw order)
for ( local i=0; i<remaining; i++ )
   wheel_entries.insert( num_arts/2, WheelEntry() );

local conveyor = Conveyor();
conveyor.set_slots( wheel_entries );
conveyor.transition_ms = 0;
try { conveyor.transition_ms = my_config["transition_ms"].tointeger(); } catch ( e ) { }
}
 
***************************************************************************
//Small vertical list in top right corner
if ( my_config["enable_list_type"] == "vert_wheel" )
{
fe.load_module( "conveyor" );
local wheel_x = [ flx*0.85, flx*0.85, flx*0.85, flx*0.85, flx*0.85, flx*0.85, flx*0.83, flx*0.85, flx*0.85, flx*0.85, flx*0.85, flx*0.85, ];
local wheel_y = [ -fly*0.22, -fly*0.105, -fly*0.2, fly*0.105, fly*0.215, -fly*0.17, fly*0.16, -fly*0.65, fly*0.72, fly*0.05, fly*0.935, fly*0.99, ];
local wheel_w = [ flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.14, flw*0.09, flw*0.09, flw*0.09, flw*0.09, flw*0.09, ];
local wheel_a = [  80,  80,  80,  80,  80,  80, 255,  80,  80,  80,  80,  80, ]; //This is opacity
local wheel_h = [  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05, flh*0.084,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05,  flh*0.05, ]; //This is height, depending on the amont of wheels you select, each entry represents one wheel.
local wheel_r = [  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
local num_arts = 6;


*****************************************************************************
Full Size Vertical List on the Left:

local wheel_x = [ flx*0.78, flx*0.05, flx*0.78, -flx*0.32, flx*0.78, -flx*1.4255, flx*0.03, -flx*1.4255, flx*0.78, -flx*0.325, flx*0.78, flx*0.78, ];
  local wheel_y = [ -fly*0.22, -fly*0.105, fly*0.0, fly*0.105, fly*0.215, fly*0.325, fly*0.436, fly*0.61, fly*0.72 fly*0.83, fly*0.935, fly*0.99, ];
  local wheel_w = [ flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.22, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, ];
  local wheel_a = [  80,  80,  80,  80,  150,  150, 255,  150,  150,  80,  80,  80, ];
  local wheel_h = [  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11, flh*0.15,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11, ];
  local wheel_r = [  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
local num_arts = 6;



*****************************************************************************
Full Size Vertical List on the Right:

local wheel_x = [ flx*0.78, flx*0.78, flx*0.78, flx*0.78, flx*0.78, flx*0.78, flx*0.76, flx*0.78, flx*0.78, flx*0.78, flx*0.78, flx*0.78, ];
  local wheel_y = [ -fly*0.22, -fly*0.105, fly*0.0, fly*0.105, fly*0.215, fly*0.325, fly*0.436, fly*0.61, fly*0.72 fly*0.83, fly*0.935, fly*0.99, ];
  local wheel_w = [ flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.22, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, ];
  local wheel_a = [  80,  80,  80,  80,  150,  150, 255,  150,  150,  80,  80,  80, ];
  local wheel_h = [  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11, flh*0.15,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11, ];
  local wheel_r = [  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
local num_arts = 8;


*******************************************************************************************************
*******************************************************************************************************
*******************************************************************************************************

This is based off the coding from the OlRoom themes by omegaman - so all credit to him. This doesn't include my x, y, h, w coordinates for the vertical wheel:

*******************************************************************************************************
*******************************************************************************************************
*******************************************************************************************************

   </ label="Select listbox, wheel, vert_wheel", help="Select wheel art type", options="listbox, wheel, vert_wheel", order=4 /> enable_list_type="vert_wheel";

.
.
.

//listbox
if ( my_config["enable_list_type"] == "listbox" )
{
local sort_listbox = fe.add_listbox( 176, 96, 45, 202 );
sort_listbox.rows = 13;
sort_listbox.charsize = 10;
sort_listbox.set_rgb( 0, 0, 0 );
sort_listbox.format_string = "[SortValue]";
sort_listbox.bg_alpha=255;
sort_listbox.visible = false;

local listbox = fe.add_listbox(flx*0.56, fly*0.12, flw*0.41, flh*0.8 );
listbox.rows = 13;
listbox.charsize = 18;
listbox.set_rgb( 255, 255, 255 );
listbox.bg_alpha = 90;
listbox.align = Align.Left;
listbox.selbg_alpha = 90;
listbox.sel_red = 255;
listbox.sel_green = 255;
listbox.sel_blue = 0;
}

//This enables vertical art instead of default wheel
if ( my_config["enable_list_type"] == "vert_wheel" )
{
fe.load_module( "conveyor" );
local wheel_x = [ flx*0.76, flx*0.76, flx*0.76, flx*0.76, flx*0.76, flx*0.76, flx*0.71, flx*0.76, flx*0.76, flx*0.76, flx*0.76, flx*0.76, ];
local wheel_y = [ -fly*0.22, -fly*0.105, fly*0.0, fly*0.105, fly*0.215, fly*0.325, fly*0.436, fly*0.61, fly*0.72 fly*0.83, fly*0.935, fly*0.99, ];
local wheel_w = [ flw*0.14, flw*0.14, flw*0.14, flw*0.14, flw*0.14, flw*0.14, flw*0.24, flw*0.14, flw*0.14, flw*0.14, flw*0.14, flw*0.14, ];
local wheel_a = [  80,  80,  80,  80,  80,  80, 255,  80,  80,  80,  80,  80, ];
local wheel_h = [  flh*0.08,  flh*0.08,  flh*0.08,  flh*0.08,  flh*0.08,  flh*0.08, flh*0.128,  flh*0.08,  flh*0.08,  flh*0.08,  flh*0.08,  flh*0.08, ];
local wheel_r = [  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
local num_arts = 6;

class WheelEntry extends ConveyorSlot
{
   constructor()
   {
      base.constructor( ::fe.add_artwork( my_config["orbit_art"] ) );
   }

   function on_progress( progress, var )
   {
      local p = progress / 0.1;
      local slot = p.tointeger();
      p -= slot;
      
      slot++;

      if ( slot < 0 ) slot=0;
      if ( slot >=10 ) slot=10;

      m_obj.x = wheel_x[slot] + p * ( wheel_x[slot+1] - wheel_x[slot] );
      m_obj.y = wheel_y[slot] + p * ( wheel_y[slot+1] - wheel_y[slot] );
      m_obj.width = wheel_w[slot] + p * ( wheel_w[slot+1] - wheel_w[slot] );
      m_obj.height = wheel_h[slot] + p * ( wheel_h[slot+1] - wheel_h[slot] );
      m_obj.rotation = wheel_r[slot] + p * ( wheel_r[slot+1] - wheel_r[slot] );
      m_obj.alpha = wheel_a[slot] + p * ( wheel_a[slot+1] - wheel_a[slot] );
   }
};

local wheel_entries = [];
for ( local i=0; i<num_arts/2; i++ )
   wheel_entries.push( WheelEntry() );

local remaining = num_arts - wheel_entries.len();

// we do it this way so that the last wheelentry created is the middle one showing the current
// selection (putting it at the top of the draw order)
for ( local i=0; i<remaining; i++ )
   wheel_entries.insert( num_arts/2, WheelEntry() );

local conveyor = Conveyor();
conveyor.set_slots( wheel_entries );
conveyor.transition_ms = 50;
try { conveyor.transition_ms = my_config["transition_ms"].tointeger(); } catch ( e ) { }
}
 
if ( my_config["enable_list_type"] == "wheel" )
{
fe.load_module( "conveyor" );
local wheel_x = [ flx*0.80, flx*0.795, flx*0.756, flx*0.725, flx*0.70, flx*0.68, flx*0.63, flx*0.68, flx*0.70, flx*0.725, flx*0.756, flx*0.76, ];
local wheel_y = [ -fly*0.22, -fly*0.105, fly*0.0, fly*0.105, fly*0.215, fly*0.325, fly*0.436, fly*0.61, fly*0.72 fly*0.83, fly*0.935, fly*0.99, ];
local wheel_w = [ flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.28, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, ];
local wheel_a = [  80,  80,  80,  80,  80,  80, 255,  80,  80,  80,  80,  80, ];
local wheel_h = [  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11, flh*0.168,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11,  flh*0.11, ];
local wheel_r = [  30,  25,  20,  15,  10,   5,   0, -10, -15, -20, -25, -30, ];
local num_arts = 10;

class WheelEntry extends ConveyorSlot
{
   constructor()
   {
      base.constructor( ::fe.add_artwork( my_config["orbit_art"] ) );
   }

   function on_progress( progress, var )
   {
      local p = progress / 0.1;
      local slot = p.tointeger();
      p -= slot;
      
      slot++;

      if ( slot < 0 ) slot=0;
      if ( slot >=10 ) slot=10;

      m_obj.x = wheel_x[slot] + p * ( wheel_x[slot+1] - wheel_x[slot] );
      m_obj.y = wheel_y[slot] + p * ( wheel_y[slot+1] - wheel_y[slot] );
      m_obj.width = wheel_w[slot] + p * ( wheel_w[slot+1] - wheel_w[slot] );
      m_obj.height = wheel_h[slot] + p * ( wheel_h[slot+1] - wheel_h[slot] );
      m_obj.rotation = wheel_r[slot] + p * ( wheel_r[slot+1] - wheel_r[slot] );
      m_obj.alpha = wheel_a[slot] + p * ( wheel_a[slot+1] - wheel_a[slot] );
   }
};

local wheel_entries = [];
for ( local i=0; i<num_arts/2; i++ )
   wheel_entries.push( WheelEntry() );

local remaining = num_arts - wheel_entries.len();

// we do it this way so that the last wheelentry created is the middle one showing the current
// selection (putting it at the top of the draw order)
for ( local i=0; i<remaining; i++ )
wheel_entries.insert( num_arts/2, WheelEntry() );

local conveyor = Conveyor();
conveyor.set_slots( wheel_entries );
conveyor.transition_ms = 50;
try { conveyor.transition_ms = my_config["transition_ms"].tointeger(); } catch ( e ) { }
}


30
Yaron2019: T H A N K S S S S S S S S A LOT!!!!
Pages: 1 2 [3] 4 5 ... 10