Klick counter

06/01/2015 08:11 Katarina48#1
Hallo Leute
Ich will mit C++ sowas wie ein kleines Klickspiel erstellen, jeder kennt sowas wie Dr.meth oder cookie clicker
Und meine Frage an euch :

Wie kann ich machen, dass wenn ich die Linke Maustaste oder am besten sogar ein zuvor deklarierte Taste drücke, dass dann ein Counter immer +1 geht
06/01/2015 08:15 Homiophat#2
Im Prinzip ist das eine einfache If abfrage.

Du erstellst dir eine Variable z. B clicks und diese lässt du hochzählen durch die Abfrage. Sprich wenn Tasten Druck Variable clicks +1. und mit der Variable kannst du dann weiter arbeiten.
06/01/2015 08:17 Katarina48#3
Hat vielleicht jemand einen code parat? Auf google finde nichts wirklich qualifiziertes
06/01/2015 11:17 manniL#4
Quote:
Originally Posted by Katarina48 View Post
Hat vielleicht jemand einen code parat? Auf google finde nichts wirklich qualifiziertes
Wer soll das Spiel programmieren? Du oder wir? ^^

Insofern musst du schon selbst probieren. Bei Problemen können wir dir gern weiterhelfen.

PS: Probiers mit GetAsyncKeyState
06/01/2015 18:15 hazejp#5
Quote:
Originally Posted by manniL View Post
PS: Probiers mit GetAsyncKeyState
Ungeignet, da diese Funktion sehr unpräzise ist und die ganze Zeit True zurückgibt, auch wenn man den Button nur gedrückt hält.
Eine Möglichkeit wäre allerdings auf Window Messages wie WM_KEYDOWN oder WM_LBUTTONDOWN zurückzugreifen.
06/02/2015 14:48 qqdev#6
Quote:
Originally Posted by hazejp View Post
Ungeignet, da diese Funktion sehr unpräzise ist und die ganze Zeit True zurückgibt, auch wenn man den Button nur gedrückt hält.
Eine Möglichkeit wäre allerdings auf Window Messages wie WM_KEYDOWN oder WM_LBUTTONDOWN zurückzugreifen.
Das lässt sich aber mit sehr wenig Aufwand 'präzisieren'.
06/04/2015 01:19 Mognakor#7
Welche IDE benutzt du (Visual Studio, Qt, Bloodshed Dev C++ etc.) und wo soll das ganze laufen?
06/04/2015 15:23 LibraryOfWonderland#8
google, da findest du in den ersten 3 beiträgen eig. gute antworten, hab das auch mal aus spaß gemacht :d
07/13/2015 20:02 MaBarker#9
Quote:
#include <iostream>
#include <Windows.h>

int zahl1 = 0;

void ClickZeahler()
{
if((GetKeyState(VK_LBUTTON)) != 1)
{
zahl1++;
std::cout << zahl1 << std::endl;
Sleep(600);
}
}

int main()
{
while(1)
{
ClickZeahler();
}
return 0;
}
Hab das gerad ma so zusammen geschrieben bin selbst ziemlicher newbie in C++ kannst ja mal ausprobieren ^^
07/14/2015 08:16 ƬheGame#10
Wenn du nicht einmal weisst, wie man eine Variable inkrementiert oder einen Tastendruck erkennt wirst du in absehbarer Zeit sowieso nichts in dieser Art programmieren können. Das sind wahrscheinlich die zwei Sachen, die bei so einem Spiel am simpelsten sind. Damit will ich nicht sagen, dass du es nicht versuchen sollst, aber du würdest besser erst einmal die basics einer Programmieresprache lernen.
07/14/2015 08:48 Ninjotzu#11
Quote:
Originally Posted by ƬheGame View Post
oder einen Tastendruck erkennt
Naja im Vergleich zu deinen Verständnisproblemen bezüglich Konsolenausgaben via "printf" ist das schon etwas komplexer.


Quote:
Originally Posted by qqdev
Das lässt sich aber mit sehr wenig Aufwand 'präzisieren'.
Selbst wenn, jeder der Tastaturabfragen in einem Spiel explizit mit GetAsyncKeyState implementiert ist einfach nur bescheuert. Moderne Betriebssysteme verfügen nicht umsonst über gut durchdachte, ausgereifte Modelle bezüglich der Nachrichtenverarbeitung.

Quote:
Originally Posted by Mognakor
Welche IDE benutzt du
Jo. Das ist für die Inkrementierung einer Variable bestimmt von großer Bedeutung.
07/14/2015 09:22 ƬheGame#12
Quote:
Originally Posted by Ninjotzu View Post
Naja im Vergleich zu deinen Verständnisproblemen bezüglich Konsolenausgaben via "printf" ist das schon etwas komplexer.
?
07/15/2015 01:49 Mognakor#13
Quote:
Originally Posted by Ninjotzu View Post
Jo. Das ist für die Inkrementierung einer Variable bestimmt von großer Bedeutung.
Nein, aber für das erkennen eines Mausklicks eventuell relevant. In Qt haben Fenster zum Beispiel eine Funktion die automatisch für jeden Mausklick aufgerufen wird.
07/15/2015 11:25 Padmak#14
Was machst du aber, wenn ich QT in Visual Studio programmiere? Dann sage ich dir, dass ich Visual Studio verwende, du weißt aber nicht dass ich QT benutze ;)
Was er damit sagen will: Die IDE gibt überhaupt keine Informationen zu benutzbaren Sachen, wenn dann musst du nach dem Compiler fragen bzw. noch genauer: nach der/den Zielplattformen.

Padmak
07/15/2015 12:17 ƬheGame#15
Quote:
Originally Posted by Padmak View Post
Was machst du aber, wenn ich QT in Visual Studio programmiere? Dann sage ich dir, dass ich Visual Studio verwende, du weißt aber nicht dass ich QT benutze ;)
Was er damit sagen will: Die IDE gibt überhaupt keine Informationen zu benutzbaren Sachen, wenn dann musst du nach dem Compiler fragen bzw. noch genauer: nach der/den Zielplattformen.

Padmak
Seit wann verwendest du QT? Als ich damals damit ankam, meintest du das es scheisse ist xD