[Source] How to Add new Load Pics.

05/16/2011 15:35 .Crasy#1
So, heute zeige ich euch wie man neue Lade Pictures Addet, wenn man die World ändert.

Ihr kennt die Pics alles, mann geht in sein Guild House dann kommt das so ein schöner Lade Bildschirm mit einem Guild House drauf ._.

Nun zeige ich euch, wie ihr diese ändert / neue eigene addet.

Als erstes öffnet ihr in der Neuz die datei DPClient.cpp is in der Solution "Neuz" und da im ordner "Source Files" Relativ weit oben.

Dort geht ihr in zeile 2279 dort müsstet ihr das finden:

PHP Code:
CString strPath = MakePath( "Theme\\", ::GetLanguage(), szMapFile[xRandom( 0, 3 )] );
    
// ¸Ê(´øÀü) ·Îµù½Ã À̹ÌÁö Ãâ·Â
    
CWorld::m_nZoomLevel = 0;
    
CWndWorld* pWndWorld = (CWndWorld*)g_WndMng.GetWndBase( APP_WORLD );

#if __VER >= 11 // __GUILD_COMBAT_1TO1
    
if( dwWorldID == WI_WORLD_GUILDWAR || (dwWorldID >= WI_WORLD_GUILDWAR1TO1_0 && dwWorldID <= WI_WORLD_GUILDWAR1TO1_L) )
#else // __GUILD_COMBAT_1TO1
     
if( dwWorldID == WI_WORLD_GUILDWAR )
#endif // __GUILD_COMBAT_1TO1
    
{
        
strPath = MakePath( "Theme\\Default\\", "MapLoading_GuildWar.tga" );
    }

.. 
usw 
Diese zeile passt bei mir, wenn die bei euch etwas anders ist, ist net schlimm einfach bissl scrollen :)

Nun löscht ihr den code von hier:

PHP Code:
#if __VER >= 11 // __GUILD_COMBAT_1TO1
    
if( dwWorldID == WI_WORLD_GUILDWAR || (dwWorldID >= WI_WORLD_GUILDWAR1TO1_0 && dwWorldID <= WI_WORLD_GUILDWAR1TO1_L) )
#else // __GUILD_COMBAT_1TO1 
Bis hier:

PHP Code:
        if( pWndWorld )
#endif //__GUILD_COMBAT_1TO1
            
pWndWorld->m_dwGuildCombatTime = 0xffffffff;
    } 
Darunter sollte sich das befinden:

PHP Code:
    if( pWndWorld )
        
pWndWorld->m_pSelectRenderObj = NULL;

    
g_Neuz.m_TexLoading.LoadTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff, FALSE ); 
Diese nicht Löschen!

nun Kopiert ihr das:

PHP Code:
    switch(dwWorldID)
    {
        case 
WI_WORLD_GUILDWAR: strPath = MakePath( "Theme\\Default\\", "MapLoading_GuildWar.tga" ); break;
        case 
WI_WORLD_GUILDWAR1TO1_0: strPath = MakePath( "Theme\\Default\\", "MapLoading_GuildWar.tga" ); break;
        case 
WI_WORLD_GUILDWAR1TO1_L: strPath = MakePath( "Theme\\Default\\", "MapLoading_GuildWar.tga" ); break;

        case 
WI_INSTANCE_OMINOUS: strPath = MakePath( "Theme\\Default\\", "MapLoading_Ominous.tga" ); break;
        case 
WI_INSTANCE_OMINOUS_1: strPath = MakePath( "Theme\\Default\\", "MapLoading_Ominous_1.tga" ); break;
        case 
WI_INSTANCE_DREADFULCAVE: strPath = MakePath( "Theme\\Default\\", "MapLoading_DreadfulCave.tga" ); break;
        case 
WI_INSTANCE_BEHAMAH: strPath = MakePath( "Theme\\Default\\", "MapLoading_Behemoth.tga" ); break;

        case 
WI_GUILDHOUSE_SMALL: strPath = MakePath( "Theme\\", ::GetLanguage(), "MapLoading_Guildhouse.tga" ); break;
        case 
WI_GUILDHOUSE_MIDDLE: strPath = MakePath( "Theme\\", ::GetLanguage(), "MapLoading_Guildhouse.tga" ); break;        
        case 
WI_GUILDHOUSE_LARGE: strPath = MakePath( "Theme\\", ::GetLanguage(), "MapLoading_Guildhouse.tga" ); break;
    } 
Zwischen:

PHP Code:
    CString strPath = MakePath( "Theme\\", ::GetLanguage(), szMapFile[xRandom( 0, 3 )] );
    
// ¸Ê(´øÀü) ·Îµù½Ã À̹ÌÁö Ãâ·Â
    
CWorld::m_nZoomLevel = 0;
    
CWndWorld* pWndWorld = (CWndWorld*)g_WndMng.GetWndBase( APP_WORLD );

HIER DER CODE!

    if( 
pWndWorld )
        
pWndWorld->m_pSelectRenderObj = NULL;

    
g_Neuz.m_TexLoading.LoadTexture( g_Neuz.m_pd3dDevice, strPath, 0xffff00ff, FALSE );
    
    
g_Neuz.m_bTexLoad = TRUE;
    
g_Neuz.m_nTexAlpha = 255;
    if(
SUCCEEDED(g_Neuz.m_pd3dDevice->BeginScene())) 
So nun werden die Load Pics so geladen, ich hab das einfach alles in einen Switch Case gepackt, weil der code dann etwas kleiner ist.

Wer meint ich hab einen Fehler gemacht, weil ich das:

PHP Code:
    else if( GuildHouse->IsMyGuildHouse( dwWorldID ) )
        
strPath = MakePath( "Theme\\", ::GetLanguage(), "MapLoading_Guildhouse.tga" ); 
Rauß hab, meint das Falsche, IsMyGuildHouse wählt zwischen:

- WI_GUILDHOUSE_SMALL
- WI_GUILDHOUSE_MIDDLE
- WI_GUILDHOUSE_LARGE

Aus, aber das steht oben in meinem Code auch, bei den 3 Guild Häusern ändert sich das Bild nie.

Nun Folgendes, wer neue adden will macht einen weiteren Case unter meinen.

Beispiel:

PHP Code:
case CRASY_WORLD: strPath = MakePath( "Theme\\", ::GetLanguage(), "CrasyWorld.tga" ); break;

Aufbau

case WOLRD_ID: strPath = MakePath( "Theme\\", ::GetLanguage(), "PIC.tga" ); break;

WORLD_ID zu finden in der defineWorld.h 
So nun, ich habe bereits den V16 Dungeon Screen (BEHEMAH) bereits geaddet wie ihr oben seht, das müsst ihr nun mit v17 machen, wer diesen Dungeon in seinem Server hat :)

So, viel spaß :)

Wer hilfe braucht kann mir gerne ein PN senden.

Mfg.
05/16/2011 15:36 Sedrika#2
#Added to Index
05/16/2011 15:37 Chriѕ#3
ty Crasy hat mir geholfen ! Nice TuT !
05/16/2011 17:39 Velmore#4
coole idee aber wenn man ein kleines bissel sucht hat man das schnell gefunden,

aber für die leute die keine lust haben auf jeden fall gut

hast ein thanks