Brauch mal ein wenig Hilfe (Icon 3rd Messi)

06/19/2011 10:59 Dreatmaster#16
er will das ab der 3rd job im messenger dieses rote H von dem Bild das goldene H im Messenger ersetzt
06/19/2011 12:57 Pixelfehler#17
Jop nur ich find s nicht wo man es im source macht :o
06/19/2011 13:49 .Crasy#18
Achso, lol..

Lass mich mal suchen^^
06/19/2011 14:27 Pixelfehler#19
Jop hier noch mal ein Pic wie es bei mir im Messi ist mit der 3rd Klasse :s

[Only registered and activated users can see links. Click Here To Register...]
06/19/2011 15:51 .Crasy#20
Leicht, im ordner "ICON" wurde nur das große Hero Icon geändert, das kleine aber nit.
06/19/2011 15:55 Dreatmaster#21
ja das is schon klar ^^ aber er will das wenn man den 3rd jobchange macht das goldene Herozeichen in das rote ändert und das ganze auch im messenger :D
06/19/2011 16:03 .Crasy#22
ACHSOO!!! sag das doch gleich, wie wäre es, wenn ihr den Namen des Kleinen sucht im Src und davor die Defination dann sucht, dann seht ihr wo es aufgerufen wird?
06/19/2011 16:12 Dreatmaster#23
ja ich hab schon danach gesucht und das hier gefunden in der wndfield.cpp..aber daraus werd ich nich schlau >.<

Quote:
#if __VER >= 10 // __CSC_VER9_1
point.x = xpos;
point.y = ypos - 2;
if(checkhero == LEGEND_CLASS_MASTER) //Àü½ÂÀ» ÇßÀ» °æ¿ì.
{
if(/*g_pPlayer->m_nLevel >= 60 && */g_pPlayer->m_nLevel < 70) //Level DownµÉ °æ¿ì¸¦ »ý°¢Çؼ* ÁÖ¼®Ã³¸®
strPath = MakePath( DIR_ICON, "Icon_MasterMark1.dds");
else if(g_pPlayer->m_nLevel >= 70 && g_pPlayer->m_nLevel < 80)
strPath = MakePath( DIR_ICON, "Icon_MasterMark2.dds");
else if(g_pPlayer->m_nLevel >= 80 && g_pPlayer->m_nLevel < 90)
strPath = MakePath( DIR_ICON, "Icon_MasterMark3.dds");
else if(g_pPlayer->m_nLevel >= 90 && g_pPlayer->m_nLevel < 100)
strPath = MakePath( DIR_ICON, "Icon_MasterMark4.dds");
else if(g_pPlayer->m_nLevel >= 100 && g_pPlayer->m_nLevel < 110)
strPath = MakePath( DIR_ICON, "Icon_MasterMark5.dds");
else if(g_pPlayer->m_nLevel >= 110 && g_pPlayer->m_nLevel <= 120)
strPath = MakePath( DIR_ICON, "Icon_MasterMark6.dds");

pTexture = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff );
if(pTexture != NULL)
pTexture->Render( p2DRender, point );
06/19/2011 16:56 Pixelfehler#24
Also wenn ich Blade 130 bin und mache die quest für die 3rd wird nach abschluss dr quest das Goldene H in das Rote..Das Geht schonmal..Nur ist Im messi halt noch das Goldene H und das Goldene M :s

Weiss einfach nicht weiter :(
Und aus wndfield.cpp der eintrag was Dreatmaster schrieb werd ich auch nicht schlau :s
06/20/2011 15:36 Pixelfehler#25
Push :D
06/20/2011 17:38 Krustenkäse#26
also erstmal: der eintrag in der WndField ist unnötig, weil er nichts mit dem Thema zu tun hat. Dieser bezieht sich nämlich auf das Characterinfo Fenster
Außerdem ist das mit dem Messenger nicht so einfach:
die Icons für den Messenger werden aus der icon_PlayerData.dds gezogen mit Hilfe dieses Abschnitts in der WndWorld.cpp
Code:
m_texPlayerDataIcon.LoadScript( m_pApp->m_pd3dDevice, "icon\\icon_PlayerData.inc" );
Desweiteren ist die CWndFriendCtrlEx Klasse ( WndMessengerCtrl.cpp ) für das Freundemenü zuständig, um genauer zu sein ist der wichtige Code in der OnDraw Funktion:
Code:
// Draw Job Icon
#if __VER >= 15 // __CAMPUS
        static const int JOB_TYPE_ICON_X = 174;
        static const int JOB_ICON_X = JOB_TYPE_ICON_X + 20;
        if( prj.m_aJob[ stPlayer.m_nJob ].dwJobType == JTYPE_PRO )
            [COLOR=Red]pWndWorld->m_texPlayerDataIcon.MakeVertex( p2DRender, CPoint( JOB_ICON_X, pt.y ),  ( 19 + stPlayer.m_nJob - 6 ), &pVertices, 0xffffffff );[/COLOR]
        else if( prj.m_aJob[ stPlayer.m_nJob ].dwJobType == JTYPE_MASTER )
        {
            [COLOR=Red]int nMasterIndex = 27;[/COLOR]
            if( stPlayer.m_nLevel < 70 )
                [COLOR=Red]nMasterIndex = 27;[/COLOR]
            else if( stPlayer.m_nLevel >= 70 && stPlayer.m_nLevel < 80 )
                [COLOR=Red]nMasterIndex = 28;[/COLOR]
            else if( stPlayer.m_nLevel >= 80 && stPlayer.m_nLevel < 90 )
                [COLOR=Red]nMasterIndex = 29;[/COLOR]
            else if( stPlayer.m_nLevel >= 90 && stPlayer.m_nLevel < 100 )
                [COLOR=Red]nMasterIndex = 30;[/COLOR]
            else if( stPlayer.m_nLevel >= 100 && stPlayer.m_nLevel < 110 )
                [COLOR=Red]nMasterIndex = 31;[/COLOR]
            else if( stPlayer.m_nLevel >= 110 && stPlayer.m_nLevel <= 120 )
                [COLOR=Red]nMasterIndex = 32;[/COLOR]

            [COLOR=Red]pWndWorld->m_texPlayerDataIcon.MakeVertex( p2DRender, CPoint( JOB_TYPE_ICON_X, pt.y ),  nMasterIndex, &pVertices, 0xffffffff );
            pWndWorld->m_texPlayerDataIcon.MakeVertex( p2DRender, CPoint( JOB_ICON_X, pt.y ),  ( 19 + stPlayer.m_nJob - 16 ), &pVertices, 0xffffffff );[/COLOR]
        }
        else if( prj.m_aJob[ stPlayer.m_nJob ].dwJobType == JTYPE_HERO )
        {
            [COLOR=Red]pWndWorld->m_texPlayerDataIcon.MakeVertex( p2DRender, CPoint( JOB_TYPE_ICON_X, pt.y ),  33, &pVertices, 0xffffffff );
            pWndWorld->m_texPlayerDataIcon.MakeVertex( p2DRender, CPoint( JOB_ICON_X, pt.y ),  ( 19 + stPlayer.m_nJob - 24 ), &pVertices, 0xffffffff );[/COLOR]
        }
        else
           [COLOR=Red] pWndWorld->m_texPlayerDataIcon.MakeVertex( p2DRender, CPoint( JOB_ICON_X, pt.y ),  14 + stPlayer.m_nJob, &pVertices, 0xffffffff );[/COLOR]
#else // __CAMPUS
      [COLOR=Red] //unnötig :p[/COLOR]
#endif // __CAMPUS
Um das aber umprogrammierungen zu können, muss man sich erstmal in den Code reindenken, um die Indezes zu verstehen, oder ein bischen Erfahrung mit DirectX Programmierung haben.