Suchergebnisse
Suchergebnisse 1-16 von insgesamt 16.
Hui, nettes Projekt. Dranbleiben!
Wenn hier schon der Simpsons Film erwähnt wird, möchte ich auch auf die leider nur auf DVD erschienen Futurama Filme hinweisen. Die ich für besser als den Simpsons Filme halte, da nicht so mainstream.
Ich sehe es auch als Vorteil, wenn man es auf beide Arten durchführen kann, da mit der Tastatur oft eine genauere Positionierung möglich ist als mit der Maus.
Ich bin zwar erst im ersten Jahr meines Bachelors, aber hier trotzdem ein paar Tipps ... Du könntest eine KI für das Spiel Wargus (http://wargus.sourceforge.net) schreiben. Das gleiche wurde an unserer Uni auch schon gemacht. Wargus basiert auf der Stratagus-Engine und ist ein Echtzeitstrategiespiel. Jedoch brauchst du dafür eine Warcraft2-Version, da Wargus dessen Grafiken benutzt. Sollte aber nicht so schwer sein, Warcraft 2 für ein paar Euro zu erstehen. Alternativ gibt's auf der Stratagus-Se...
Statt Allegro würde ich dir Open Layer ans Herz legen.
Zitat von »"cbee"« Mal eine andere Frage: Warum packst du folgenden Funktionsaufruf in eine separate Funktion, die nichts anderes macht? Kostet doch nur Zeit... Das war noch in der Funktion, weil die ja früher noch anders aussah und auch was anderes anstellte. Und vielen Dank für den Hinweis, cbee, denn jetzt erscheint auch wieder was auf dem Bildschirm! Und das mit den Großbuchstaben habe ich jetzt auch noch mit eingebaut. Und es funktioniert!
Zitat von »"DragonMaster"« wieso übergibst du hier einen Zeiger auf einen Zeiger? Das ist an dieser stelle totaller unsinn und kostet nur Zeit. Bei einem Array stellt das erste Element immer die Anfangsadresse des gesamten Array dar. Das mit dem Doppelzeiger hatte ich eigentlich nur gemacht, weil Dragon Master das in seinem Beitrag auch so gemacht hatte (s.o.), und weil ich dachte, dass es an diesem Zeiger liegen würde, dass bei mir jetzt überhaupt keine Buchstaben mehr auf dem Bildschirm ausge...
Zitat von »"Fabster"« for( int a= 0; a < 256; a++ ) *kopfgegendiewandhau* Danke, Fabster! EDIT: Jetzt erscheinen nicht mal mehr kleine Buchstaben auf meinem Bildschirm. Hä? EDIT AGAIN: Ah, ups. Hab den Fehler IMO gefunden. Kann ihn aber nicht beheben. Quellcode 1 2 3 4 5 *p_aKey[256] ) { //Daten abfragen g_pKeyboard->GetDeviceState( sizeof( p_aKey ), &p_aKey ); }; Die folgende Zeile verursacht einen Konvertierungsfehler, obwohl die übergebene Variable doch dem Parameter entspricht. Oder irre ic...
Also sieht meine KeyDown-Funktion jetzt so aus: Quellcode 1 2 3 4 5 void KeyDown( BYTE aKey[256] ) { //Daten abfragen g_pKeyboard->GetDeviceState( sizeof( aKey ), &aKey ); }; Und der Rest so: Quellcode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 bool lettersize = false; BYTE szKey[256]; if ( active == true ) { KeyDown( szKey ); if ( szKey[DIK_LSHIFT] & 0x80 || szKey[DIK_RSHIFT] & 0x80 ) { lettersize = true; }; for( int a; a < 256; a++ ) { if ( szKey[a] & 0x80 ) { strcat ( txt, diArray [ s...
Zitat von »"Fabster"« Na da haste doch den Fehler... Du fragst 2x mal die States ab und brichst bei der ersten gedrückten Taste ab Beziehst du dich auf den Code der Funktion KeyDown oder auf den zuvor geposteten Code? Ich verstehe irgendwie nicht wirklich, was du meinst. ???
Mit 1 erzeugst du eine Instanz der Klasse, mit 2 einen Zeiger auf die Klasse.
Zitat von »"cbee"« Mich würde auch mal interessieren, was die Funktion KeyDown macht! Ich könnte mir vorstellen, dass der Fehler durch das zweimalige Aufrufen der Funktion KeyDown zustande kommt. Quellcode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 //Taste gedrückt? int KeyDown( bool number_value ) { BYTE aKey[256]; HRESULT hr; //Daten abfragen hr = g_pKeyboard->GetDeviceState( sizeof( aKey ), &aKey ); for ( int a = 0; a < 256; a++ ) { if ( aKey[ a ] & 0x80 ) { if (...
Zitat von »"cbee"« Hier mal ein ungetestetes Beispiel: Dein Beispiel ist aber nicht sehr effektiv, da du die Zeile Zitat Quellcode 1 if((Keys[DIK_LSHIFT] & 0x80) && ((Keys[DIK_A] & 0x80))) ziemlich oft eingeben musst. Also ich habe es jetzt so für meine Textbox gemacht: Quellcode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 bool lettersize; if ( active == true ) { switch ( KeyDown ( false ) ) { //Textbox deaktiveren, ...
Zitat von »"DragonMaster"« afaik gibt es auch keinen Unterschied zwischen der Taste Shift und der Taste A. Sind doch alles nur Tasten. Und sie werden alle in ein und dem selben Array gespeichert das man abfragen kann. Ja, die Tasten sind bei mir auch alle in einem Array abgelegt. Also frage ich dann einfach zuerst ab, ob die SHIFT-Taste gedrückt wurde und dann kann ich ja sehen, ob Großbuchstaben oder Kleinbuchstaben eingegeben werden. Werde das sogleich mal ausprobieren.
Zitat von »"Nox"« Das brauchst du nicht....du kannst den aktuellen Stand fragen, ob c gedrückt wurde oder ob a gedrückt wurde..... dabei können beide gleichzeitig gedrückt worden sein; dies so als Beispiel. Ja, das war mir schon klar. Vielleicht war meine Frage nicht klar genug gestellt. Ich wollte wissen, wie ich erkennen kann, ob zum Beispiel die SHIFT- und die A-Taste gleichzeitig gedrückt sind, um ein großes A einzugeben.
Wie erkenne ich, ob zwei Tasten gleichzeitig gedrückt und welche das sind?