CCEngine
-
Hallo Leute,
Da Ferien sind und ich mal wieder nichts zu tun hatte , hab ich einfach ein paar Klassen und Fuktionen zusammengeraft die ich mal so neben bei geschrieben hab und zu einem Paket zusammengeschnürt.
Es enthält einfach ein paar Klassen die lange c++ Aufsätze auf eine Zeile beschränken soll.
Release :#----------
Neuer Upload :
http://www.mediafire.com/?19n1xart3316sekNeu dabei :
Alles übersichtlicher in namespaces verpackt.
Name von Draw2D ist jetzt CCESceneManager.
+DrawWin();
+DrawCenterWin();
+showCursor();Für Mac user das Archiv
http://www.mediafire.com/?bzbt3kvmukgc6p2
#----------Falls ich an diesem Projekt mal weiter arbeiten werde ist dies eine pre_alpha.
So ist die Funktion IProgressBar nicht fertig was ich aber noch machen werde.Enthalten sind :
IConsoleWin
IDraw
IFileSystem
ILine
IProgressBar
IStartMenu
ITimeLoaderund wers braucht stdafx.h(eig. sind alle inc in jeder Datei vorhanden)
, ein mageres Tutorial was ich nicht fertig stellen wollte , aus welchen Gründen auch immer
und eine Testanwendung die so den gröbsten Überblick über die Funktionen des Engines bieten.
Und wie schon der Titel sagt , ist es kein Grafikengine sondern ein
console-based-engine
der in der Console läuft.http://www.mediafire.com/?uw8bb6i3bbe63e9
Planung was noch so alles dazukommen wird:
-Erweiterung von IFileSystem für besser handhabung.
-IProgressBar fertigstellung (mach ich gerade).
-Erweiterung von IConsoleWin::set_IConsoleTitle
Da werde ich noch eine extra funktion machen damit man statt einem const char auch einen string verwenden kann von einer möglichen vorrigen eingabe.Nun zu euch :
Ich hab es in jede Datei hinzugeschrieben das alles Open Source ist(Was sonst).
Ich freue mich IMMER über jegliche kritik und versuche mich zuverbessern(Was ich nicht unter Kritik verstehe : "Du bist schei** und dein engine auch" - Zitat).
Falls ihr irgendwelche Einwände,Vorschläge oder Sonstiges habt , bitte lasst mich es wissen.
Ich füge auch gerne eure Funktionen hinzu sovern sie gut und noch nicht enthalten sind.Danke das ihr es vielleicht mal ausprobiert und ein Feedback gebt.
Habt Spaß
- mfg 7xCore
-
Hey,
ist ne gute Sache, aber; Was soll IFileSystem bringen? Ist in meinen Augen sinnlos, weil die Klasse ziemlich eingeschränkt ist. Im Prinzip kann man über deine Funktion ja nur den kompletten Content einlesen. Du hättest besser die FileStream-Instanz in der Klasse als proteced angelegt, dann hätte man die Klasse einfach erben und über die FileStream-Funktionen noch etwas Spielraum für Dateioperationen gehabt.
-
Ich habe mal schnell was getibbelt; So in etwa stelle ich mir ein FileSystem vor: (Ist natürlich nicht vollständig)
http://codepad.org/Au4TJEtd
Und durch den "m_AbleToOpen"-State könnte man später sogar nochmal einen assert() aufrufen, wie man will... nur so als Tipp.
-
Ja das stimmt.
IFileSystem hat bis jetzt wenig sinn , dabei muss ich dir zustimmen.
Ich bin über den code den du gepostest hast mal geflogen und es sieht sehr interessant aus.Ich werde mal sehen was sich da machen lässt.
Danke -7xCore
-
Ich habs mir jetzt durchgelesen und muss sagen das das extrem interessant aussieht.Ich werde sofort sehen wie ich das so unterbringen kann.
Echt genial :pWenn du noch mehr davon hast nur her damit :p
Nein ehrlich das mit dem m_AbleToOpen State gefällt mir sehr gut und erhöt die Benutzer-Freundlichkeit und -Freiheit um einiges.
Ich werde auf jeden fall mehr davon einbauen.
Danke nochmal für den Tipp.
-
Ahh da fällt mir auch gleich noch was dazu ein :
Ich werde mal versuchen ach so was wie die read_IFile funktion zu machen aber so das man :
1.Einen bestimmten string suchen kann.So zum beispiel wenn ein Fehler log ausgegeben wird der einen Error code vor jedem error enthält und man einen bestimmten fehler sucht so wie z.B:
error.txt:Error 9480219384 Nich gefunden Error 62356836676 i/o Path falsch Error 1014812 das programm mag dich nicht
und man sucht jetzt nur nach einem path error könnte man so schneller finden ... oder was auch immer.
2.In der Datei ab einer bestimmten position anfangen zu lesen oder zu schreiben
So was ähnliches wie eine Cursor-Positions-Funktion bloß mit zeilen und spalten....Leider ist theorie meistens einfacher als praxis
mal sehen was draus wird
-
@ Koya
Zu dem code den du mir da gegben hast gibt es eins was ich nicht kenne.
Tut mir leid wenn ich gerade blöd anstelle aberC3dsInStream::C3dsInStream( const char *Filename ) : m_Stream( Filename, std::ifstream::in )
Diese Zeile sieht nach einem fehler aus ?!
Oder hast du ich einfach nur verschrieben ?
Kommt ja vor , besonders oft bei mir :p
-
Hey,
ich kann da kein Fehler sehen. Google mal nach Initialisierungsliste
-
Tach. Sieht eigentlich ganz nett aus. Aber den Wisch den du da als Copyright mitlieferst ist nichts. Sieh dir mal die ZLib-Lizenz an...
-
Initialisierungsliste werde ich mir mal gelegentlich durchlesen da ich das so noch nicht kenne.
Wegen dem copyright : eig. ist es ja auch egal aber ich werds mir anschauen thx
-
Scheiss doch auf den copyright.
-
Meine rede
-
Alleine dass deine Klassennamen offenbar Präfixe haben, lässt mich zurückschrecken. Mit ner .exe fang ich unter Mac OS X auch nichts an.
-
Alleine dass deine Klassennamen offenbar Präfixe haben, lässt mich zurückschrecken
Bin halt ich
Mit ner .exe fang ich unter Mac OS X auch nichts an.
Sorry link ist ein paar sek da
-
Link ist da.
-
Gut, der Code ist natürlich Windows only, aber immerhin kann ich jetzt Feedback geben.
Irgendwie ist mir dein ganzes Interface zu C-Like. Ich finde da könnten durchaus mehr Klassen rein, die z.B rein Rechteck darstellen. Auch könnten da Stream-Manipulatoren für Farben rein. Die #defines gehören durch ein enum ersetzt.
Das sind die Dinge, dir mir beim groben durchsehen aufgefallen sind.
-
Irgendwie ist mir dein ganzes Interface zu C-Like.
Werde sehen was ich ändern kann.
Ich finde da könnten durchaus mehr Klassen rein, die z.B rein Rechteck darstellen.
Natürlich.Vielleicht schaffe ich sogar Dreiecke oder einen Kreis... was sicherlich bescheuert aussieht aber wer weißt für as man das braucht.
...Werd ich auf jedenfall machenAuch könnten da Stream-Manipulatoren für Farben rein.
Was meinst du damit genau?Es gibt ja die 2 funktionen setFontColor() und setBGColor().
Edit: ich glaub da gabs eine Lücke bei den hintergrund farben den ich fixen wollte. Ich muss noch mal sehen aber schreib was du damit meinst bitteDie #defines gehören durch ein enum ersetzt.
Das ist klar.
Dankeschön für das feedback des Meisters
Edit2:Da ich jetzt dann so in 5std in den Urlaub fahre werd ich jetzt dann mal für ne woche off sein.Die kann ich gut nutzen um mein neu bestelltes buch anzufangen : Accelerated C++ Practical Programming by Example
Jo bin dann mal weg.Hoffe komm lebend wieder.Und wenn ich wieder komme überflute ich euch mit meinem erfüllten c++ geist...()der vorallem in einer woche gebildet wurde )
bb
-
Mit Streammanipulatoren meine ich, dass sowas möglich sein soll:
std::cout << color::red << style::bold << "Hello, World!";
-
Wieder da ... mit Sonnenbrand am letzten Tag war ja klar
Naja auf jeden Fall :
Du meinst also das nur dieser bestimmte string farblich manipuliert wird ?
also wenn ich
... setFontColor(COLOR_GREEN); std::cout << color::red << style::bold << "das ist rot"; std::cout << "das ist grün";
dann kommt
(rot)das ist rot (grün)das ist grün
wenn es das ist werd ich hinzufügen.Danke
-
Ganze ..... 41 downloads hat das Ding jetzt schon , also muss ich mal wieder was machen...Danke für die downloads
(Wahrscheinlich sind von den 41 downloads 20 auf meinen rechner gegangen , um zu testen ob es geht , aber pschtttt)