--apps menu
findfiles(0) Rotation = 0 MenuTop = 0 mRot = 0 TargetRotation = 0 BackRotation = 0 TargetItem = 0
menuitems=getmenu(0)
loadmesh("xsphere", "SKINS:\\xdash\\mainmenu\\xsphere.xbg") loadmesh("outersphere", "SKINS:\\xdash\\outersphere.xbg") loadmesh("crosshair", "SKINS:\\xdash\\mainmenu\\crosshair.xbg") loadmesh("menuitem", "SKINS:\\xdash\\mainmenu\\menuitem.xbg") loadmesh("selectedmenuitem", "SKINS:\\xdash\\mainmenu\\selectedmenuitem.xbg")
loadtexture("XRayMap", "SKINS:\\xdash\\xray.bmp")
framecnt=10 function framemove () framecnt=framecnt-1 if TargetRotation<Rotation then Rotation=Rotation-2.5 elseif TargetRotation>Rotation then Rotation=Rotation+2.5 elseif framecnt<5 then if (contAy>0.5 or contApushup>0) and TargetItem>0 then TargetItem=TargetItem-1 TargetRotation=25*TargetItem PlaySound("menuup") framecnt=20 elseif (contAy<-0.5 or contApushdown>0) and TargetItem<menuitems-1 then TargetItem=TargetItem+1 TargetRotation=25*TargetItem PlaySound("menudown") framecnt=20 end if contApusha>0.75 then launchxbe(getitemfilename(0, TargetItem)) framecnt=10 end if contApushy>0.5 then newscene("SKINS:\\xdash\\apps.lua") framecnt=30 end if contApushb>0.5 then newscene("SKINS:\\xdash\\mainmenu.lua") framecnt=10 end end end
function render () BackRotation=BackRotation-0.0003
setfont("mainfont")
setrenderstate(102, 0) setrenderstate(92, 0) setrenderstate(59, 0) setrenderstate(147, 0) renderobject("outersphere", 3, 0, 0, 31, PI/2, BackRotation, 0, 1.3, 1.3, 1.3)
setrenderstateargb(75, 0, 0, 0, 0) setupxray(1, 255, 0, 93, 199) settexture("XRayMap", 0) renderobject("crosshair", 0, -16, 0.95, 3, 0, 0, rad(Rotation), 0.5, 0.5, 0.5) setupxray(0, 175, 0, 93, 199) setrenderstate(102, 0) setrenderstate(59, 0) renderobject("xsphere", 1, -15, 0.95, 3, 0, -PI/18, 0, 0.5, 0.5, 0.5)
for i=0, menuitems-1 do mRot=Rotation-(25*i) alpha=255-abs(mRot)*4 --if i>=TargetItem then if alpha>0 then itemx=(cos(mRot)*20)-16 itemy=(sin(mRot)*20)+0.95 setrenderstate(59, 1) setrenderstate(62, 32771) setrenderstate(63, 774) setrenderstateargb(75, alpha, 0, 0, 0) renderobject("storageitem", 1, itemx, itemy, 3, 0, 0, 0, 0.25, 0.25, 0.25) if abs(mRot)<=32 then setrenderstateargb(75, alpha*alpha/256, 0, 0, 0) renderobject("selectedmenuitem", 1, itemx, itemy, 3, 0, 0, 0, 0.25, 0.25, 0.25) end settextargb(alpha,255,255,255) textx=(cos(mRot)*147)+255 texty=237-(sin(mRot)*147) rendertext(getitemstring(0,i), textx, texty) end end end
|