[RESOURCE FRAGE] ResData.inc

07/16/2011 21:47 Krustenkäse#1
Hi Leute,
ich bin gerade dabei einen Konverter zu schreiben, der die ResData.inc von v16/17 in das Format der v15 ResData.inc bringt.

Die Unterschiede die ich herausgefunden habe sind, dass die v16/17 ResData.inc in der Deklaration des APPs das rote zu viel hat
Code:
APP_NEWCOLOENTER "APP_NEWCOLOENTER.tga" [COLOR=Red]""[/COLOR] 0 469 395 0x410000 26
und beim Einfügen der Containerelementen:
Code:
WTYPE_BUTTON WIDC_OK "ButtOk.tga" 0 44 92 116 112 0x220000 0 0 0 0 [COLOR=Red]46 112 169[/COLOR]
Mit Hilfe des Konverters konnte ich diese Teile in der ganzen Datei richtig entfernen, allerdings scheinen das nicht alle Änderungen gewesen zu sein, da ich Daisy immer noch nicht starten kann.
Wisst ihr vielleicht welcher Änderungen es noch bedarf?
07/16/2011 21:54 Karamelleis#2
die Daisy.exe befindet sich aber schon in deinem Resource Ordner oder? Ansonsten wirst du die nie öffnen können :)
07/16/2011 22:00 Krustenkäse#3
:p alles ist richtig eingestellt... also daran kanns nicht liegen^^
Was die Fehler der Daisy.exe angehen, so erscheinen Fenster, die WTYPE_BUTTON zB ausspucken und nen unleserlichen Text ( falscher Zeichensatz :p )... die resdata.h , resdata.txt.txt und wndstyle.h sind auch drin, von daher kann es nicht daran liegen, dass WTYPE_BUTTON undefiert wäre^^
07/17/2011 09:08 In_Your_Face#4
lad dir DirectX SDK June 2010 runter, dann sollte Daisy problemlos starten... Aber sei darauf gefasst das Daisy mittendrin ab und zu mal abkackt xD
07/17/2011 09:59 Krustenkäse#5
Quote:
Originally Posted by In_Your_Face View Post
lad dir DirectX SDK June 2010 runter, dann sollte Daisy problemlos starten... Aber sei darauf gefasst das Daisy mittendrin ab und zu mal abkackt xD
Hat leider nichts gebracht :(
habe mal die konvertierte ResData in den Anhang gestellt...
07/17/2011 10:02 In_Your_Face#6
Theme Ordner ist auch drin?
07/17/2011 10:10 Krustenkäse#7
jop alles richtig und aktuell... es kann eig nur an der resdata liegen, denn mit einer v15 resdata funktioniert alles perfekt :D
07/17/2011 10:23 BlackGiant#8
Ich habe mir auch so ein Converter gemacht, kann ihn aber atm nicht uploaden, da ich nicht zuhause bin, weshalb ich auch nicht deine veränderte resdata anschauen kann.

Es gab - soweit ich mich erinnern kann - nur diese zwei Änderungen, die du bereits aufgelistet hast.

Achte darauf, dass zwischen den Anführungszeichen in der "App_.tga" auch Leerzeichen vorkommen können, falls du die Methode via split durch leerzeichen nimmst.

Dann sollte dein Programm richtig arbeiten. Andernfalls gibts ein Fehler im Programm.
07/17/2011 10:37 Krustenkäse#9
was die methoden meines Programms angeht, so verwende ich string::erase zum entfernen von bestimmten Stringteilen:
Bei der Appdeklaration suche ich die "" mit
Code:
found = int(temp.find("\"\""));
--> temp ist mein string^^
und erase dann mit
Code:
if( found != 0 && found != string::npos )
                temp.erase( found-1, 3 );
Was die Containerelemente angeht, so entferne ich einfach die letzten 11 zeichen, da ja immer nur das " 46 112 169" hinzugefügt wurde.

Was allerdings sein könnte, ist dass Formatierungen verlorengegangen sein könnten, da ich die Datei zum auslesen in ANSI umgewandelt habe und dann nach dem Bearbeiten wieder zurück konvertiert habe.
Wenn ihr mir sagen könntet, wie man mit C++ Unicode Dateien zeilenweise auslesen kann, dann könnte ich versuchen obs dann funzt^^
07/17/2011 17:45 yannickminecraft#10
Du machst das komplett falsch.

Bei der App Deklaration kann es auch vorkommen wie in der APP_CONFIRM_SELL das dort etwas drin steht

APP_CONFIRM_SELL "WndTile02.tga" "WndRainbowRaceLadderGoal.bmp" 1 272 176 0x2410000 26

Bei den Containerelementen ist nicht immer "46 112 169" es gibt da auch zahlen wie "473567 423567543267 4532675467" sind halt farbcodes ;)