diff --git a/data/images/dvdskin_greenone.png b/data/images/dvdskin_greenone.png new file mode 100644 index 00000000..6908191c Binary files /dev/null and b/data/images/dvdskin_greenone.png differ diff --git a/data/images/dvdskin_greentwo.png b/data/images/dvdskin_greentwo.png new file mode 100644 index 00000000..f7f07974 Binary files /dev/null and b/data/images/dvdskin_greentwo.png differ diff --git a/source/gui/coverflow.cpp b/source/gui/coverflow.cpp index e8c58da4..c5672a38 100644 --- a/source/gui/coverflow.cpp +++ b/source/gui/coverflow.cpp @@ -24,6 +24,8 @@ extern const u8 dvdskin_png[]; extern const u8 dvdskin_red_png[]; extern const u8 dvdskin_black_png[]; extern const u8 dvdskin_yellow_png[]; +extern const u8 dvdskin_greenone_png[]; +extern const u8 dvdskin_greentwo_png[]; extern const u8 nopic_png[]; extern const u8 loading_png[]; extern const u8 flatnopic_png[]; @@ -1309,6 +1311,7 @@ void CCoverFlow::_drawCoverBox(int i, bool mirror, CCoverFlow::DrawMode dm) GX_InitTexObj(&texObj, m_dvdSkin_Red.data.get(), m_dvdSkin_Red.width, m_dvdSkin_Red.height, m_dvdSkin_Red.format, GX_CLAMP, GX_CLAMP, GX_FALSE); } else if (m_items[m_covers[i].index].hdr->hdr.casecolor == 0x000000 || + m_items[m_covers[i].index].hdr->hdr.casecolor == 0x181919 || strncmp((char *) m_items[m_covers[i].index].hdr->hdr.id, "RZZJEL", 6) == 0 || strncmp((char *) m_items[m_covers[i].index].hdr->hdr.id, "RZNJ01", 6) == 0 || strncmp((char *) m_items[m_covers[i].index].hdr->hdr.id, "SEKJ99", 6) == 0 || @@ -1322,6 +1325,16 @@ void CCoverFlow::_drawCoverBox(int i, bool mirror, CCoverFlow::DrawMode dm) { GX_InitTexObj(&texObj, m_dvdSkin_Yellow.data.get(), m_dvdSkin_Yellow.width, m_dvdSkin_Yellow.height, m_dvdSkin_Yellow.format, GX_CLAMP, GX_CLAMP, GX_FALSE); } + else if (m_items[m_covers[i].index].hdr->hdr.casecolor == 0x01A300 || + strncmp((char *) m_items[m_covers[i].index].hdr->hdr.id, "SF8J01", 3) == 0 ) + { + GX_InitTexObj(&texObj, m_dvdSkin_GreenOne.data.get(), m_dvdSkin_GreenOne.width, m_dvdSkin_GreenOne.height, m_dvdSkin_GreenOne.format, GX_CLAMP, GX_CLAMP, GX_FALSE); + } + else if (m_items[m_covers[i].index].hdr->hdr.casecolor == 0x00E360 || + strncmp((char *) m_items[m_covers[i].index].hdr->hdr.id, "PDUE01", 3) == 0 ) + { + GX_InitTexObj(&texObj, m_dvdSkin_GreenTwo.data.get(), m_dvdSkin_GreenTwo.width, m_dvdSkin_GreenTwo.height, m_dvdSkin_GreenTwo.format, GX_CLAMP, GX_CLAMP, GX_FALSE); + } else GX_InitTexObj(&texObj, m_dvdSkin.data.get(), m_dvdSkin.width, m_dvdSkin.height, m_dvdSkin.format, GX_CLAMP, GX_CLAMP, GX_FALSE); GX_LoadTexObj(&texObj, GX_TEXMAP0); } @@ -1732,6 +1745,8 @@ bool CCoverFlow::start(const char *id) if (STexture::TE_OK != m_dvdSkin_Red.fromPNG(dvdskin_red_png)) return false; if (STexture::TE_OK != m_dvdSkin_Black.fromPNG(dvdskin_black_png)) return false; if (STexture::TE_OK != m_dvdSkin_Yellow.fromPNG(dvdskin_yellow_png)) return false; + if (STexture::TE_OK != m_dvdSkin_GreenOne.fromPNG(dvdskin_greenone_png)) return false; + if (STexture::TE_OK != m_dvdSkin_GreenTwo.fromPNG(dvdskin_greentwo_png)) return false; if (m_box) { diff --git a/source/gui/coverflow.hpp b/source/gui/coverflow.hpp index 2927eaee..8928ca12 100644 --- a/source/gui/coverflow.hpp +++ b/source/gui/coverflow.hpp @@ -243,6 +243,8 @@ private: STexture m_dvdSkin_Red; STexture m_dvdSkin_Black; STexture m_dvdSkin_Yellow; + STexture m_dvdSkin_GreenOne; + STexture m_dvdSkin_GreenTwo; // Settings std::string m_pngLoadCover; std::string m_pngLoadCoverFlat;