JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

das <conio.h> debakel. eine kleine Lösung

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 12:04    Titel: das <conio.h> debakel. eine kleine Lösung Antworten mit Zitat

Hi,

oft ließt man im Forum ja "clrscr() geht nicht" oder sonstige Dinge die mit der conio.h zu tun haben. Problem ist das die conio.h nicht dem Standard untersteht, denn der Standard sieht vor das C++ keine Bildschrime, Dateien, Tastaturen und co. kennt.

Viele greifen für die Consolenprogrammierung nun mal auf die "praktische" conio.h zurück. Auf dem Borland Compilern kein Problem, aber auf dem VC++ siehts schlecht aus, da es keinen Standard für diese Datei gibt.

Im Internet gibt es dafür die sog. "conioex.h" doch die ist recht buggy und 2. dirty style Wink

Ich hab deshalb mal selbst was für euch zusammen gebastelt für den VC++.

Hier die 3 Dateien (conioex.cpp, conioex.h, main.cpp)
CPP:
// ###########################################################################
// Datei:        conioex.h
// ###########################################################################
// Autor:        Patrick Ullmann
// Erstellt:     27.06.2005
// Änderungen:   27.06.2005 (Patrick) Datei erstellt
// ###########################################################################
// Beschreibung: Portierung der <conio.h> für den VC++

#if (_MSC_VER > 1000)
#pragma once
#endif // VC++ Include Guard

#if !defined(__conioex_h__)
#define __conioex_h__

// I N C L U D E S ###########################################################
    // Allgemeine conio includieren
#include <conio.h>

// D E F I N I T I O N E N ###################################################
    // Nur für Non-Borland Compiler benötigen wir folgende Implementierung
#if !defined(__BORLANDC__)

    // Nur Win32-Konsolen werden unterstützt
#if !defined(_WIN32) || (defined(_MSC_VER) && !defined(_CONSOLE))
#error Only Win32-Console-Targets supported
#endif

    // Farben definieren wenn nötig
#if !defined(__COLORS)
#define __COLORS
    // Die Farben
enum COLORS
{
        // Dunkle Farben
    BLACK,
    BLUE,
    GREEN,
    CYAN,
    RED,
    MAGENTA,
    BROWN,

        // Helle Farben
    LIGHTGRAY,
    DARKGRAY,
    LIGHTBLUE,
    LIGHTGREEN,
    LIGHTCYAN,
    LIGHTRED,
    LIGHTMAGENTA,
    YELLOW,
    WHITE
};
#endif

      // Cursortypen für _setcursortype()
const unsigned long _NOCURSOR     = 0;
const unsigned long _SOLIDCURSOR  = 1;
const unsigned long _NORMALCURSOR = 2;

    // Makro für die Erstellung von Textattributen
#if !defined(BUILD_TEXTATTR)
#define BUILD_TEXTATTR(f, b) static_cast<int>((((b) & 15) << 4) | ((f) & 15))
#endif

    // Leert den Inhalt des Bildschirms und setzt den Cursor auf 1x1
void __cdecl clrscr (void);

    // Leert die Aktuelle Zeile, Cursor wird nicht verschoben
void __cdecl clreol (void);

    // Setzt den Cursor an die Position X und Y
void __cdecl gotoxy (int x, int y);

    // Gibt die aktuelle X-Position des Cursors wieder
int __cdecl wherex (void);

    // Gibt die aktuelle Y-Position des Cursors wieder
int __cdecl wherey (void);

    // Fügt eine neue Zeile hinzu.
void __cdecl insline (void);

    // Löscht eine Zeile
void __cdecl delline (void);

    // Setzt eine Textfarbe
void __cdecl textcolor (int color);

    // Setzt eine Hintergrundfarbe für den Text
void __cdecl textbackground (int color);

    // Setzt ein Attribut für den Text
void __cdecl textattr (int attr);

    // Aktiviert helle Farben
void __cdecl highvideo (void);

    // Deaktiviert helle Farben
void __cdecl lowvideo (void);

    // Verändert den Cursortyp
void __cdecl _setcursortype (unsigned long cur_t);

#endif

#endif


CPP:
// ###########################################################################
// Datei:        conioex.cpp
// ###########################################################################
// Autor:        Patrick Ullmann
// Erstellt:     27.06.2005
// Änderungen:   27.06.2005 (Patrick) Datei erstellt
// ###########################################################################
// Beschreibung: Portierung der <conio.h> für den VC++

// I N C L U D E S ###########################################################
    // Nur für Nun-Borland Compiler gillt diese Implementierung
#if !defined(__BORLANDC__)
#include <windows.h>
#include "conioex.h"

// F U N K T I O N E N #######################################################

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Leert den Inhalt des Bildschirms und setzt den Cursor auf 1x1
// ///////////////////////////////////////////////////////////////////////////
void __cdecl clrscr (void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;
    unsigned long               written;
    COORD                       coord;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Cursor verschieben
    coord.X = 0;
    coord.Y = 0;

        // Konsole manipulieren
    ::FillConsoleOutputAttribute (out, info.wAttributes,
                                       info.dwSize.X*info.dwSize.Y,
                                       coord,
                                       &written);

    ::FillConsoleOutputCharacter (out, TEXT(' '),
                                       info.dwSize.X*info.dwSize.Y,
                                       coord,
                                       &written);

        // Cursorposition setzen
    ::SetConsoleCursorPosition   (out, coord);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Leert die Aktuelle Zeile, Cursor wird nicht verschoben
// ///////////////////////////////////////////////////////////////////////////
void __cdecl clreol (void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;
    unsigned long               written;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Konsole manipulieren
    ::FillConsoleOutputAttribute (out, info.wAttributes,
                                  (info.dwSize.X - info.dwCursorPosition.X),
                                  info.dwCursorPosition,
                                  &written);

    ::FillConsoleOutputCharacter (out, TEXT(' '),
                                  (info.dwSize.X - info.dwCursorPosition.X),
                                  info.dwCursorPosition,
                                  &written);

        // Cursor setzen
    ::SetConsoleCursorPosition   (out, info.dwCursorPosition);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Setzt den Cursor an die Position X und Y
// ///////////////////////////////////////////////////////////////////////////
void __cdecl gotoxy(int x, int y)
{
        // Sicherheitsabfrage
    if(HIWORD(x) || HIWORD(y))
        return;

        // Hilfsstruktur
    COORD  coord;

        // Cursor verschieben
    coord.X = LOWORD(x - 1);
    coord.Y = LOWORD(y - 1);

        // Cursor setzen
    ::SetConsoleCursorPosition (::GetStdHandle(STD_OUTPUT_HANDLE), coord);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Gibt die aktuelle X-Position des Cursors wieder
// ///////////////////////////////////////////////////////////////////////////
int __cdecl wherex(void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;

        // Informationen holen
    if (!::GetConsoleScreenBufferInfo(::GetStdHandle(STD_OUTPUT_HANDLE),&info))
        return 0;

        // Position zurück geben
    return (info.dwCursorPosition.X + 1);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Gibt die aktuelle Y-Position des Cursors wieder
// ///////////////////////////////////////////////////////////////////////////
int __cdecl wherey(void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;

        // Informationen holen
    if (!::GetConsoleScreenBufferInfo(::GetStdHandle(STD_OUTPUT_HANDLE),&info))
        return 0;

        // Position zurück geben
    return (info.dwCursorPosition.Y + 1);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Fügt eine neue Zeile hinzu.
// ///////////////////////////////////////////////////////////////////////////
void __cdecl insline(void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    SMALL_RECT                  rect;
    CHAR_INFO                   char_info;
    HANDLE                      out;
    COORD                       coord;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;
       
        // Unicode oder nicht?
    #if defined(UNICODE)
      char_info.Char.UnicodeChar = L' ';
    #else
      char_info.Char.AsciiChar   =  ' ';
    #endif

        // Attribute sichern
    char_info.Attributes = info.wAttributes;

        // Rechteck ausrechnen
    rect.Left   = 0;
    rect.Top    = LOWORD(info.dwCursorPosition.Y);
    rect.Right  = LOWORD(info.dwSize.X - 1);
    rect.Bottom = LOWORD(info.dwSize.Y - 1);

        // Position setzen
    coord.X    = 0;
    coord.Y    = LOWORD(info.dwCursorPosition.Y + 1);

        // Konsole manipulieren
    ::ScrollConsoleScreenBuffer (out, &rect, NULL, coord, &char_info);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Löscht eine Zeile
// ///////////////////////////////////////////////////////////////////////////
void __cdecl delline(void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    SMALL_RECT                  rect;
    CHAR_INFO                   char_info;
    HANDLE                      out;
    COORD                       coord;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;
       
        // Unicode oder nicht?
    #if defined(UNICODE)
      char_info.Char.UnicodeChar = L' ';
    #else
      char_info.Char.AsciiChar   =  ' ';
    #endif

        // Attribute sichern
    char_info.Attributes = info.wAttributes;

        // Rechteck ausrechnen
    rect.Left   = 0;
    rect.Top    = LOWORD(info.dwCursorPosition.Y + 1);
    rect.Right  = LOWORD(info.dwSize.X - 1);
    rect.Bottom = LOWORD(info.dwSize.Y - 1);

        // Position setzen
    coord.X    = 0;
    coord.Y    = LOWORD(info.dwCursorPosition.Y);

        // Konsole manipulieren
    ::ScrollConsoleScreenBuffer (out, &rect, NULL, coord, &char_info);
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Setzt eine Textfarbe
// ///////////////////////////////////////////////////////////////////////////
void __cdecl textcolor (int color)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Konsole manipulieren
    ::SetConsoleTextAttribute (out,
                static_cast<unsigned short>((info.wAttributes & ~0x0F) |
                static_cast<unsigned short>(color & 0x0F)));
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Setzt eine Hintergrundfarbe für den Text
// ///////////////////////////////////////////////////////////////////////////
void __cdecl textbackground (int color)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Konsole manipulieren
    ::SetConsoleTextAttribute (out,
                static_cast<unsigned short>((info.wAttributes & ~0xF0) |
                static_cast<unsigned short>((color & 0x0F) << 4)));
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Setzt ein Attribut für den Text
// ///////////////////////////////////////////////////////////////////////////
void __cdecl textattr (int attr)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Konsole manipulieren
    ::SetConsoleTextAttribute (out,
                static_cast<unsigned short>((info.wAttributes & ~0xFF) |
                static_cast<unsigned short>(attr & 0xFF)));
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Aktiviert helle Farben
// ///////////////////////////////////////////////////////////////////////////
void __cdecl highvideo (void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Konsole manipulieren
    ::SetConsoleTextAttribute (out,
        static_cast<unsigned short>(info.wAttributes | FOREGROUND_INTENSITY));
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Deaktiviert helle Farben
// ///////////////////////////////////////////////////////////////////////////
void __cdecl lowvideo (void)
{
        // Hilfsvariablen /- strukturen
    CONSOLE_SCREEN_BUFFER_INFO  info;
    HANDLE                      out;

        // Informationen holen
    if ((out = ::GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
        return;
    if (!::GetConsoleScreenBufferInfo(out, &info))
        return;

        // Konsole manipulieren
    ::SetConsoleTextAttribute (out,
        static_cast<unsigned short>(info.wAttributes | ~FOREGROUND_INTENSITY));
}

// ///////////////////////////////////////////////////////////////////////////
// PUBLIC
//
// Verändert den Cursortyp
// ///////////////////////////////////////////////////////////////////////////
void __cdecl _setcursortype (unsigned long type)
{
        // Hilfsstruktur
    CONSOLE_CURSOR_INFO info;

        // Größe verändern
         if ((type == _NOCURSOR) || (type == _NORMALCURSOR))
         info.dwSize = 25;
    else if (type == _SOLIDCURSOR)
         info.dwSize = 100;
    else
         return;

        // Cursor sichtbar?
    info.bVisible = (type == _NOCURSOR) ? false : true;

        // Konsole manipulieren
    ::SetConsoleCursorInfo (::GetStdHandle(STD_OUTPUT_HANDLE), &info);
}

#endif


CPP:
// ###########################################################################
// Datei:        main.cpp
// ###########################################################################
// Autor:        Patrick Ullmann
// Erstellt:     27.06.2005
// Änderungen:   27.06.2005 (Patrick) Datei erstellt
// ###########################################################################
// Beschreibung: Hauptdatei

// I N C L U D E S ###########################################################
#include <iostream>
#include "conioex.h"

// F U N K T I O N E N #######################################################
void header (void)
{
        // Bildschirm löschen
    clrscr ();

        // Textfarbe und Hintergrund setzen
    textcolor (WHITE);
    textbackground (LIGHTBLUE);

        // Zeile hinzufügen
    insline();

        // Titelzeile
    std::cout << "Testprogramm fuer <conioex.h>";

        // Version soll ganz rechts stehen
    gotoxy (79, 1);
    std::cout << "v1";

        // Textfarbe und Hintergrund setzen
    textcolor (WHITE);
    textbackground (BLACK);
}

void footer (void)
{
        // Ganz nach unten
    gotoxy (1, 25);

        // Textfarbe  und Hintergrund setzen
    textcolor (WHITE);
    textbackground (LIGHTBLUE);

        // Zeile hinzu fügen
    insline();

        // Bissel Blabla
    std::cout << "Yeah es geht!";

        // Textfarbe und Hintergrund setzen
    textcolor (WHITE);
    textbackground (BLACK);
}

int main (void)
{
        // Header malen
    header ();

        // Die 1. 16 Zellen der ASCII-Tabelle ausgeben
    for (unsigned long i=0; i<16; ++i)
    {
        gotoxy (5, i+4);
        std::cout << i << ": " << static_cast<char>(i);
    }

        // Text ausgeben
    gotoxy (20, 4);
    std::cout << "Ein kleiner Teil einer ASCII-Tabelle";

        // Footer malen
    footer ();

    gotoxy (25, 20);


    return 0;
}


Ja ist leider recht "viel", hätte es auch lieber gezippt aber auf der Arbeit haben wir kein WinACE oder sonstige schönen dinge Wink

Sagt mir was ihr davon haltet Smile

- Patrick, der trotzdem beim Standard bleibt Very Happy
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Fallen
JLI MVP
JLI MVP


Alter: 41
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 27.06.2005, 12:14    Titel: Antworten mit Zitat

Sehr schön, gibs zu das hast du nur gemacht weil dich der Tannenbaumwettbewerb in den Konsolenrausch brachte Wink
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 12:47    Titel: Antworten mit Zitat

FallenAngel84
Joah a bissel Very Happy Aber da ging es ja um Standard Wink

Apropos... die Bäume poste ich heut abend mal Smile
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
proggaholic
Junior JLI'ler


Alter: 36
Anmeldedatum: 07.05.2005
Beiträge: 85
Wohnort: Heap
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 15:55    Titel: Antworten mit Zitat

Wenn ich mal ein Problem mit der conio.h haben sollte, werde ich darauf zurückgreifen ;)
(Visual Studio 2003)

mfg
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
PeaceKiller
JLI Master


Alter: 36
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 18:01    Titel: Antworten mit Zitat

Gehört das nicht in die FAQ?

Patrick:
Du hast auch zuviel Zeit, oder?
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 18:14    Titel: Antworten mit Zitat

oder nix besseres zu tun Wink
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 18:31    Titel: Antworten mit Zitat

PeaceKiller
Korrekt Wink

Kommt noch in die FAQ, wollte aber erst mal Meinungen hören Smile
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Fallen
JLI MVP
JLI MVP


Alter: 41
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 27.06.2005, 18:32    Titel: Antworten mit Zitat

Patrick hat Folgendes geschrieben:

Kommt noch in die FAQ, wollte aber erst mal Meinungen hören Smile


Du hörst auf uns? Shocked
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 18:33    Titel: Antworten mit Zitat

FallenAngel84
Tja, jetzt wo man ja Mod ist sollte man auch mal auf die anderen hören Wink Also legt mal los Very Happy

Wollt ihr diesen Topic in der FAQ haben? *auf gegröhle warte* Very Happy
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Fallen
JLI MVP
JLI MVP


Alter: 41
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 27.06.2005, 18:38    Titel: Antworten mit Zitat

Packs lieber auf deine Seite oder zu anderen Seiten die spezielle bereiche für Codeschnippel oder ähnliches haben. Ins FAQ passt es meiner meinung nach nicht. Aber nen Thread mit nem Link zum Tut sowie nen kleinen Problemlösungsansatz falls sich jemand selber damit auseinander setzen möchte, das hätte dann mehr Lehrgehalt als fast purer Code.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 27.06.2005, 19:36    Titel: Antworten mit Zitat

gut, ich habe die Diskussion getrennt, weil das schon sehr weit abschweifte. Die Forendiskussion ist jetzt bei "Fragen Antworten und Kritik"
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 11.07.2005, 12:24    Titel: Antworten mit Zitat

Patrick hat Folgendes geschrieben:
FallenAngel84
Joah a bissel Very Happy Aber da ging es ja um Standard Wink

Apropos... die Bäume poste ich heut abend mal Smile


Hm, heute Abend müsste vorbei sein, also wo finden wir die Bäume?
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum