It is currently Sat 25. May 2013, 12:51

All times are UTC + 1 hour




Post new topic Reply to topic  [ 11 posts ] 
Author Message
PostPosted: Sun 15. Aug 2010, 11:30 
Offline
PadBaby
PadBaby

Joined: Wed 30. Jun 2010, 17:49
Posts: 99
Hallo!

Ich habe ein Problem: ich würde gerne mit C++ eine bestimmte Zeile verändern, und zwar in einer .cfg Datei.

z.B. das man mit einem bestimmten Befehl in meinem Programm die Zeile der wop-cfg

Code:
headmodel "padman/default"


in

Code:
headmodel "padman/superpad"


ändert.
Ist das möglich?

Danke schon mal im Vorraus!


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 12:34 
Offline
ASK-Clan
ASK-Clan
User avatar

Joined: Sun 17. Jan 2010, 17:30
Posts: 598
Images: 0
also obs möglich ist weis ich nicht, aber wie wärs mit WoP Back-up Kopie machen, und ausprobieren^^ :D

LG GLL

_________________
Alcohol, the cause of - an solution to - all of life's problems

[Homer Simpson]



http://www.askclan.de.tf/


Top
 Profile Personal album  
 
PostPosted: Sun 15. Aug 2010, 13:42 
Offline
PadStar
PadStar
User avatar

Joined: Mon 19. May 2008, 13:58
Posts: 1079
Wie soll er das denn einfach ausprobieren? Und ein Backup von der Config braucht man auch nicht oder?
Gehts dir dadrum C++ zu lernen oder willst du einfach die Zeile ändern? Das kannst du nämlich auch ingame mit zwei /writeconfig binds (wenn ich nicht wieder mit den Befehlen flasch liege :ugly: )


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 13:51 
Offline
PadBaby
PadBaby

Joined: Wed 30. Jun 2010, 17:49
Posts: 99
Hi.

Also ich bin grad dabei C++ mit hilfe des Buches "C++ von A bis Z" zu lernen. Aber weder da, noch im Internet finde ich eine Möglichkeit eine bestimmte Zeile in einer textdatei zu ändern, sonder nur indem ich die Textdatei komplett einlese und dann manuell ändere.

Aber ich würde gerne wissen ob es geht, z.B. in mein Programm "1" einzugeben, und damit wird dann die Zeile X (x für die Zahl der Zeile) geändert.

Ich wollte das ganze Probieren mit z.B.

Code:
switch case(Eingabe)
//und dann halt z.B. Case 1, dann wird headmodel blabla zu headmodel Superpad,
                               Case 2 Monsterpad ... usw.


wie man das Headmodel über die Konsole ändert ist mir bekannt, trotzdem Danke :)


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 14:07 
Offline
PadStar
PadStar
User avatar

Joined: Mon 19. May 2008, 13:58
Posts: 1079
Double D wrote:
wie man das Headmodel über die Konsole ändert ist mir bekannt, trotzdem Danke :)

Hätte ja sein können das e dir darum geht es auch in der config zu ändern ;)
Mit C++ kann ich dir nicht helfen ;Y)


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 14:09 
Offline
PadBaby
PadBaby

Joined: Wed 30. Jun 2010, 17:49
Posts: 99
kein Problem, trotzdem Danke!

Ich warte einfach mal weiter :)

Irgendwo im Enginecode oder Gamecode müsste doch die Lösung in "C" vorliegen? Wie sonst könnte man mit

Code:
/headmodel Blablablubb


in ausgerechnet die Zeile der .cfg schreiben, wo


Code:
headmodel ""


steht?

wäre cool wenn jemand weis in welcher Datei des Codes dieser Code liegt, falls es ihn denn gibt. Im Gamecode habe ich schon gesucht, bin aber nicht fündig geworden. Liegt vielleicht auch dran das ich noch nicht fortgeschritten genug bin, um es zu finden :ugly:


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 15:51 
Offline
PadKid
PadKid
User avatar

Joined: Fri 3. Oct 2008, 15:22
Posts: 469
Images: 1
Ich kann zwar kein C, aber dir ist schon klar, dass die Zeile mit dem headmodel nicht immer an der selben Stelle steht? Oder kurz: Du weißt vorher nicht was z. B. in Zeile 11 steht! Es sei denn natürlich du bastelst dir eine eigene Datei, auf die WoP keinen Zugriff hat.

Ich denke mal WoP wird die Config als ganzes einlesen und dann wie eine Art Hash handhaben. Bei Bedarf wird ein Element geändert und am Ende alles (inkl. dem geänderten Wert) wieder in die Datei geschrieben. Darum sieht die auch öfter anders aus ;)

Ich bin allerdings kein Coder! Möge mich ein solcher korrigieren wenn ich falsch liege ;Y)

Liebe Grüße,
Hectic


Top
 Profile Personal album  
 
PostPosted: Sun 15. Aug 2010, 16:24 
Offline
PadBaby
PadBaby

Joined: Wed 30. Jun 2010, 17:49
Posts: 99
Danke Hectic!

Ich glaube dann mache ich das ganze so: das programm sucht in der .cfg nach

Code:
seta headmodel


und ersetzt dann die zeichen / den string zwischen den "".

Damit dürfte auch d Zufalls-Generierten Positionen nix ausmachen!

Danke :)


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 16:38 
Offline
PadStar
PadStar
User avatar

Joined: Mon 24. Sep 2007, 14:37
Posts: 1791
Nach sowas hab ich auch schon gesucht, allerdings haben mich die Problemlösungen immer verwirrt.
Ich weiß nicht, wie weit du schon bist, aber hier mal der grundlegende Code:
Code:
#include <fstream.h> //Die Bibliothek die du brauchst, hiermit solltest du auch Zeilen in Dateien finden können
            //frag mich aber nicht wie
int main()
{
ofstream fout( "Text.txt" ); //In welche Datei schreibst du?
fout << "Hello World"; //Der Text, der reingeschrieben werden soll.

return 0;
}

Nun kannst du das ganze natürlich so machen:
Du nimmst den kompletten Text (also die cfg) und lässt ihn in die Datei schreiben. An den Stellen, an denen headmodel "" steht, schreibst du einfach
Code:
fout << "(Erstmal des ganze andere zeug) seta headmodel << String << "(hier geht der Text weiter)";


Für String natürlich die Variable, den String oder das Array, was auch immer du benutzt.
Das ganze funktioniert dann wie die benutzung von cout.
Viel Spaß :)


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 17:01 
Offline
PadBaby
PadBaby

Joined: Wed 30. Jun 2010, 17:49
Posts: 99
ok, vielen dank!

hab gerade doch noch in der Mitte meines Buches ein Kapitel über das Thema entdeckt, werde ich mir heute abend mal durchlesen :)


Deinen Code probiere ich gleich mal aus!


Top
 Profile  
 
PostPosted: Sun 15. Aug 2010, 17:41 
Offline
PadMember
PadMember
User avatar

Joined: Thu 10. May 2007, 17:00
Posts: 3078
Images: 30
Location: /dev/sda1
Du kannst die Datei doch einfach zeilenweise einlesen, die Zeile vergleichen und eventuell bearbeiten und wieder in die Datei schreiben?

_________________
Image


Top
 Profile Personal album  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 11 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group