Jo, hier nur kurz und knackig, für die pServer die gerne mal mehr Patcher Designs haben, auch wenn es mehr so nebensache ist das Design, finds trz. toll :D
Naja, was ihr braucht:
- Patcher Source
- 3 bis 5 Bilder oder auch mehr / weniger
- Hirn zum Lesen / Kopieren :)
Soo dann fangen wir mal an!
Öffnet die datei "BetaPatchClient.sln" diese müsstet ihr im Patcher Src vorfinden.
Nun, öffnet an der Linken ( Bei euch evtl. Rechten ) seite "BetaPatchClient.cpp" wenn ihr das habt, sehen die ersten zeilen so aus:
PHP-Code:
// BetaPatchClientDlg.cpp : implementation file
//
#include "stdafx.h"
#include "BetaPatchClient.h"
#include "HttpDownload.h"
#include "Picture.h"
#include "BetaPatchClientDlg.h"
#include "PatchManager.h"
#include "..\_Common\HwOption.h"
#include "DlgOption.h"
extern CPatchManager g_PatchManager;
CBetaPatchClientDlg *g_pDlg;
/////////////////////////////////////////////////////////////////////////////
// CBetaPatchClientDlg dialog
Blaa und so weiter.
Jetzt sucht ihr nach "CBetaPatchClientDlg::InitControls()" dann findet ihr dies:
PHP-Code:
#ifdef __LANG_RUS
enum PublisherVersion { PUBLISHER_VERSION_1 = 0, PUBLISHER_VERSION_2 = 1 };
PublisherVersion ePublisherVersion = PUBLISHER_VERSION_1;
CScanner scanner;
if( scanner.Load( "a.txt" ) == TRUE )
{
int nKeyNumber = scanner.GetNumber();
if( nKeyNumber == 1 )
ePublisherVersion = PUBLISHER_VERSION_2;
else
ePublisherVersion = PUBLISHER_VERSION_1;
}
else
ePublisherVersion = PUBLISHER_VERSION_1;
#endif // __LANG_RUS
und darunter, findet ihr:
PHP-Code:
if( m_pic.Load( IDC_BITMAP_MAIN ) )
{
CSize size = m_pic.GetImageSize();
SetWindowPos( NULL, 0, 0, size.cx, size.cy, SWP_NOZORDER | SWP_NOMOVE | PBS_SMOOTH );
HRGN hRgn = CreateRoundRectRgn( 0, 0, size.cx, size.cy, 20, 20 );
if( hRgn )
::SetWindowRgn( m_hWnd, hRgn, FALSE );
}
Das ist alles was wir brauchen in der Datei.
Jetzt änder ihr das:
PHP-Code:
if( m_pic.Load( IDC_BITMAP_MAIN ) )
zu:
PHP-Code:
if( m_pic.Load( dwRandom ) )
jetzt macht ihr eine zeile über dem "m_pic.load.." folgendes:
PHP-Code:
DWORD dwRandom;
int nRandom;
unter dem "DWORD dwRand.." addet ihr dies:
PHP-Code:
srand( time(NULL) );
nRandom = rand() % 3;
switch( nRandom )
{
case 1: dwRandom = IDC_BITMAP_MAIN; break;
case 2: dwRandom = IDC_BITMAP_MAIN_2; break;
case 3: dwRandom = IDC_BITMAP_MAIN_3; break;
}
Jetzt könnt ihr 10 weitere Bilder nach dem verfahren machen, aber achtet darauf das ihr nach dem % bei rand() auch die zahl erhöhert, was die MAXIMAL Random Ziffer sein soll.
Jetzt Speichert ihr die Datei ab.
Geht jetzt in die "Resource.h" datei diese ihr auch im Src Ordner / in der Solution findet.
Sucht dort nach:
PHP-Code:
IDC_BITMAP_MAIN_2
Addet darunter:
PHP-Code:
#define IDC_BITMAP_MAIN_3 108
Wichtig ist, das ihr ID's ( 108 ) verwendet, die in der Datei noch nicht stehen!
Abspeichern.
Jetzt kommt der Schritt, den ihr ohne Vs2003 machen könnt und sogar eigtl. müsst und zwar sucht ihr den ordner "res" der müsste in dem selben ordner seit wo auch "Images" und "Release" sind heißt Patcher Source ordner, darin findet ihr "BetaPatchClient.rc2" darin sind alle Images des Main Bildes aufgelistet, jetzt sucht ihr die LANG wo ihr den Patcher Compiled ( LANG_GER / ENG default ) dann findet ihr das ( In meinem Fall ):
PHP-Code:
#elif __CURRENT_LANG == LANG_GER
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
#pragma code_page(1252)
#include "string_deu.rc2"
IDC_BITMAP_MAIN IMAGE MOVEABLE PURE "Image\\1.jpg"
IDC_BITMAP_OPTION IMAGE MOVEABLE PURE "Image\\option_fr.jpg"
unter das IDC_BITMAP_MAIN addet ihr folgendes:
PHP-Code:
IDC_BITMAP_MAIN_2 IMAGE MOVEABLE PURE "Image\\2.jpg"
IDC_BITMAP_MAIN_3 IMAGE MOVEABLE PURE "Image\\3.jpg"
Achtet darauf, das 2 & 3.jpg order auch andere Namen, ich nenn sie derzeit so in dem Image Ordner befinden, diese findet ihr auch im Source Ordner, wenn ihr das eingetragen habt Speichern und Schließen.
Jetzt erst könnt ihr den Patcher Rebuilden ( Rechtsklick --> Rebuild ) auf dem Release Mode und wenn ihr den Patcher Startet habt ihr eins von den 3 Bildern als Hintergrund btw Patcher Design, es kann ab und zu mal vorkommen das man 2x das selbe Bild hat, aber naja heißt net umsonst RANDOM :>
Wie immer:
DON'T COPY & PASTE :)
Ich hoffe ich konnte damit ein paar Lustigen Leuten helfen :)
Bei eventuellen Problemen könnt ihr euch gerne bei mir Melden, ich werde dann so gut es geht euch Helfen.
Credits:
- Aeonsoft ( Gala Lab ) für Source
- Crasy für Random Bildchen :)
Mfg Crasy.
Lesezeichen