[TuT Source] Welcome MSG (Bessere, Schnellere weg)

12/25/2010 12:23 .Crasy#1
So ich zeige euch mal wie man ganz einfach 2 Welcomes MSG's für Flyff macht, diese werden am ende so aussehen:

[System] Willkommen auf ...!
[System] Viel spaß beim Spielen wünscht ... .

Nun Folgendes benötigt ihr:

- DPClient.cpp
- defineText.h
- textClient.txt.txt
- textClient.inc
- Brain.exe (Findet ihr in: C:\$Recycle.Bin\ )

So als erstes sucht ihr in DPClient.cpp folgenden Code:

PHP Code:
void CDPClient::OnGameJoinCAr ar )

so scrollt solange runter bis ihr zu "}" (Closetag) von der Funktion kommt, vor diesem Closetag kopiert ihr folgenden Code:

PHP Code:
    strMessage.Formatprj.GetTextTID_WELCOME_MSG_1 ));
    
g_WndMng.PutStringstrMessageNULL0xff33FFFFCHATSTY_GENERAL ); 
- TID_WELCOME_MSG_x = Die textClient.inc Defination
- strMessage = Welchen Text (Könnt auch Blabla nehmen, muss aber oben auch sein!)
- 0xff = Color
- Chatsty_GENERAL = Wo / wie es angezeigt werden soll (dazu später mehr)

Nun wenn ihr den Code kopiert habt macht ihr Folgendes:

geht in defineText.h und scrollt erstmal ganz runter, bis ihr vor #endif seit, dann kopiert ihr diesen code da rein:

PHP Code:
#define TID_WELCOME_MSG_1        4500
#define TID_WELCOME_MSG_2        4501
... 
als nächstes müsst ihr in textClient.inc und wieder ganz nach unten scrollen und addet dort:

PHP Code:
TID_WELCOME_MSG_1 0xffffff99
{
    
IDS_TEXTCLIENT_INC_003030
}
TID_WELCOME_MSG_2 0xffffff99
{
    
IDS_TEXTCLIENT_INC_003031
}

... 
der Color Code hinten 0xff... ist unwichtig, da unsere color bereits definiert in der Source ist.

Das muss in textClient.txt.txt:

PHP Code:
IDS_TEXTCLIENT_INC_003030    [SystemWillkommen auf ... .
IDS_TEXTCLIENT_INC_003031    [SystemViel spaß beim Spielenwünscht euch ... Stuff
Nun alles speichern, compilen und testen.

Wichtig! bei "defineText.h" muss der text den ihr definiert immer höher als der alte sein heißt also: wenn ihr

"TID_BLABLA_01 4000" habt dürft ihr nicht z.b.
"TID_CRASY_01 4000" machen, sondern immer 1 mehr als das alte sprich 4001

So nun erklär ich euch kurz wie ihr Farbe, Format changen könnt.

Bei farbe ist es einfach, ihr geht auf: [Only registered and activated users can see links. Click Here To Register...] und sucht euch ihrg eine Farbe mal aus, wenn ihr das getan habt kommt über dem "Set Hex" button ein Code, diesen kopiert ihr und setzt ihn so ein:

0xffCODE! also das 0xff sollte immer davor sein, grund dafür ist in einem anderen Format ist das FF = Alpha kennen sicherlich alle ARGB oder XRGB, Alpha = lichteffekt.

150 = Transparen
255 = Solid
000 = Invisible

nun könntent ihr auch anstat so ein 0xff... code zu adden einfach so machen:

D3DCOLOR_ARGB(255, Rot, Grün, Blau), diese Farben findet ihr aber auch auf der Seite.

Nun wie änder ich das Format von Chat zu z.b. kA Mitte?

so:

Ihr seht am ende ja "CHATSTY_GENERAL" macht diese weg, und der Text kommt in der Mitte da wo das Event auch kommt oder "Du hast blabla erhalten." ich zeig euch mal eine liste, der texte die möglich sind:

CHATSTY_GENERAL = Normal Chat
CHATSTY_WHISPER = Flüster Chat
CHATSTY_SHOUT = Shout
CHATSTY_PARTY = Party
CHATSTY_GUILD = Guild

CHATSTY_SYSTEM =GameMaster Chat (NUR Im Chat, keine MSG!)
CHATSTY_GAME = MSG (Art GameMaster MSG, ...)

Es gibt zwar noch mehr, aber die sind unwichtig.

Nun ihr könnt von den Texten 1000 Adden, wieviel ihr wollt solltet aber alle Schritte bevolgen!

Beim next Edit zeig ich euch wie ihr euren Namen sozusagen sichert mit "%s" in TextClient.

Credits: Crasy 100%.

Fragen o.a? --> Pn Me.

Mfg.
12/25/2010 12:25 Kingtom2009#2
Sehr Nice das tut
hast ein Thanks!
Wird bestimmt vielen weiterhelfen!
12/25/2010 12:25 ɣʌȥȥn#3
Nice Tutorial.
Danke.
12/25/2010 12:26 Fullscreen#4
Ich dachte, der Source Wahnsinn hört langsam auf. Aber egal, gut gemacht Crasy. Da ich auch vorhabe, C++ zu lernen, hab ich mal so eine Frage:

Welches Buch oder TuT kannste mir empfehlen, bzw. wie hast du es gelernt?

Greez,
12/25/2010 12:30 Sedrika#5
Das mit der textClient.txt ist natürlich super =)

#Added to List
12/25/2010 12:31 .Crasy#6
Quote:
Originally Posted by Fullscreen View Post
Ich dachte, der Source Wahnsinn hört langsam auf. Aber egal, gut gemacht Crasy. Da ich auch vorhabe, C++ zu lernen, hab ich mal so eine Frage:

Welches Buch oder TuT kannste mir empfehlen, bzw. wie hast du es gelernt?

Greez,
[Only registered and activated users can see links. Click Here To Register...]

So ein ähnliches hab ich hier.
12/25/2010 18:29 ©ross#7
und zu mir sagste nich weitergeben :x
nja, ist ne rly simple und einfache sache :)
Den namen kann man, wenn man weis wie, ja auch einfach adden ;)

mfg
12/25/2010 19:39 Kingtom2009#8
Quote:
- DPClient.cpp
- defineText.h
- textClient.txt.txt
- textClient.inc
Ist das eig. alles in der Source?
oder auch von den Files hab grad nichts aufm PC deswegen
12/25/2010 19:42 Sedrika#9
Quote:
Originally Posted by Kingtom2009 View Post
Ist das eig. alles in der Source?
oder auch von den Files hab grad nichts aufm PC deswegen
DPClient.cpp <- Source Ordner
defineText.h <- Resource ordner (im source da is noch ein mit resource und im resouce vom server machen)
die anderen beiden in den >Clienten und Server.
12/27/2010 13:54 .Crasy#10
Quote:
Originally Posted by ©ross View Post
und zu mir sagste nich weitergeben :x
nja, ist ne rly simple und einfache sache :)
Den namen kann man, wenn man weis wie, ja auch einfach adden ;)

mfg
Man könnte das "TID..." auch anders adden.. ganz einfach:

DWORD dwWelcomeText1 = HIIIIIIIIIIIIIIIIIIIIIII;

und unten dann anstat "TID..." einfach "dwWelcomeText1" hinmachen, schon hat man es sowas wie FIXXIERT in den Files.

Man könnte auch (TID....),dwServerName); machen und in TextClient einfach %s wo server name hin soll und ja selbe wie dwWelcomeText1 einfach so adden
01/09/2011 16:45 labbo#11
Wo ist der Source Ordner wo die DpClient.cpp drin ist?
01/09/2011 18:34 Fullscreen#12
Im Neuz Ordner.
05/06/2011 08:08 yannickminecraft#13
Quote:
Originally Posted by .Crasy View Post
Man könnte das "TID..." auch anders adden.. ganz einfach:

DWORD dwWelcomeText1 = HIIIIIIIIIIIIIIIIIIIIIII;
Da würde dir der Compiler sagen das die variable HIIIIIIIIIIIIIIIIIIIIIII nicht deklariert wurde. Wenn man nichtmal den unterschied von Strings und Variablen kennt :rolleyes:

Quote:
Originally Posted by .Crasy View Post
Man könnte auch (TID....),dwServerName); machen und in TextClient einfach %s wo server name hin soll und ja selbe wie dwWelcomeText1 einfach so adden
Scheinst wohl keine ahnung von sprintf() zu haben?
Man könnt ebla einfach so wie da so und so ..
sprintf(szString, "Hallo %s", szUser);
%s steht für String nimmt also einen String an den man im darauffolgenden Parameter angibt (oder diesen Parameter bei dem man variablen übergeben kann).
05/06/2011 16:58 .Crasy#14
Komplex :)

ja bei dem DWORD noch "" hin, mach kann auch

char YANNICK[99] = "BLAAAAAAAAAAA"; machen..
05/16/2011 16:36 yannickminecraft#15
Quote:
Originally Posted by .Crasy View Post
Komplex :)

ja bei dem DWORD noch "" hin, mach kann auch

char YANNICK[99] = "BLAAAAAAAAAAA"; machen..
Zu deinem "DWORD dwWelcomeText1 = HIIIIIIIIIIIIIIIIIIIIIII;" code muss ich auch noch sagen:


xDDDDDDDDDDDD Packt er einen String in ein unsigned LONG xDDDDDDDDDDDDDDDDDDDDDDDDDD