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/?19n1xart3316sek

    Neu 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
    ITimeLoader

    und 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 :p

    Wenn 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 aber

    C3dsInStream::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 machen

    Auch 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 bitte

    Die #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)


Anmelden zum Antworten