"Minus-Weniger" bei Werten
-
Hallo,

ich habe mir nun vorgenommen ein kleines Taktik-Konsolen-Spiel zu schreiben.
Nun aber da ich will,dass wenn man "a" drückt,dass man jemanden -50Schaden abnimmt.Ich habe nun gschwind etwas kleines geschrieben und zeige mal ein Beispiel:
int Leben = 100; int schaden; int *sniper = &Leben; int *assault = &Leben;... das Problem dabei ist,dass wenn ich eine IF schleife mache,wird das dann nicht gehen..
int Leben = 100; int schaden; int *ich = &Leben; int *gegner = &Leben; cout<<endl; cout<<"1. M4 2. Granate"<<endl; cout<<*gegner<<endl; cin>>schaden; if(cin>>schaden) { if(schaden = 1) { gegner - 40; } if(schaden = 2) { gegner - 60; } } cout<<*gegner;so nun seit ihr dran :p
primer

-
Hallo
Es gibt keine If-Schleifen.
wird das dann nicht gehen..
Wird was nicht gehen? Stell eine genaue Frage mit einer genauen Fehlerbeschreibung.
int Leben = 100; int *ich = &Leben; int *gegner = &Leben;Dir ist aber klar, das wenn von "ich" Lebensenegrie abgezogen wird, auch von "gegner" der selber betrag abgezogen wird? Oder um es technisch genauer auszudrücken : Das die Pointer "ich" und "gegner" auf die selber Werteinstanz zugreifen?
bis bald
akari
-
Ertz mal die Zuweisung durch einen Vergleich ('if schaden == 1' ...).
-
und was soll das hier bewirken
gegner - 40;eher so
gegner -= 40;
-
Braunstein schrieb:
und was soll das hier bewirken
gegner - 40;eher so
gegner -= 40;Also,wenn der Gegner 100 Leben hat,ich ihn angreife,verliert er 40Lebenspunkte.
Und nun hat er noch 60.Wie könnte ich das so machen,dass es wirklich geht?
-
Primer schrieb:
Wie könnte ich das so machen,dass es wirklich geht?
So, wie Braunstein geschrieben hat.
-
@Primer
Um es nochmal genauer zu sagen. Dir fehlte bei deiner Anweisung (gegner - 40) die Zuweisung. Was soll denn bitte schön aus dem Ergebnis dieser Berechnung sonst werden.
Das hiergegner -= 40;entsprichte dem hier
gegner = gegner - 40;Verstanden?
Lies dir bitte mal ein Tutorial durch. Hire im Forum gibt es ein paar schöne Links.
-
Braunstein schrieb:
@Primer
Um es nochmal genauer zu sagen. Dir fehlte bei deiner Anweisung (gegner - 40) die Zuweisung. Was soll denn bitte schön aus dem Ergebnis dieser Berechnung sonst werden.
Das hiergegner -= 40;entsprichte dem hier
gegner = gegner - 40;Verstanden?
Lies dir bitte mal ein Tutorial durch. Hire im Forum gibt es ein paar schöne Links.ja,ich hatte nähmlich
gegner - 40;geschrieben und ohne "gegner =" War alles falsch glaube ich ^^
-
EDIT: Also ich habe nur mal eine kleine Frage und noch ein Problem:
1.) Also ich will mal fragen, ob solche Werte erlaubt sind:
int schaden = -150; int ssschaden = -2;?
2.) Ich möchte,dass ich in einem cin>> folgende Werte drinnen haben:
int m4_assault = -50; int m95_sniper = -75;Aber ich mache eine IF-Anweisung und dort wird abgefragt,mit welchem Gewehr man schießen möchte ..
int ich = 150; int Gegner = 150; int m4_assault = -50; int m95_sniper = -75; int kreuz; cout<<"Beginne deinen Kreuzzug!"<<endl; cout<<"Gib dazu die Zahl 1 ein: "; cin>>kreuz; cout<<endl; if(kreuz == 1) { cout<<"Mit welchem Gewehr moechtest du ihn angreifen?"<<endl; cout<<"a. M4(Sturmgewehr) b. Scharfschuetzengewehr(Sniper) "<<endl; cout<<"Gewehr: "; cin>>Und wie ich das mit dem nächsten Schritt beim cin>> mache,weiss ich nicht,also es soll soetwas bewirken,dass wenn ich cin>>m95 eingebe,dass er -75 abnimmt und wenn ich m4 eingebe,dass das -50 schadet.
Wie mache ich das am besten?
-
int ich = 150; int Gegner = 150; char waffe; int m4_assault = -50; int m95_sniper = -75; int kreuz; cout<<"Beginne deinen Kreuzzug!"<<endl; cout<<"Gib dazu die Zahl 1 ein: "; cin>>kreuz; if(kreuz == 1) { cout<<"Mit welchem Gewehr moechtest du ihn angreifen?"<<endl; cout<<"a. M4(Sturmgewehr) b. Scharfschuetzengewehr(Sniper) "<<endl; cout<<"Gewehr: "; WAFFE:; cin>>waffe; if(waffe == m4) { gegner = gegner - 60; } else if(waffe == m95) { gegner = gegner - 70; } else { goto WAFFE; } }Du solltest wirklich über ein tut oder ein buch nachdenken.
Allerdings hatte deine frage garnichts mit programmieren zu tuhen.Nur mit denken.
Du musst doch wissen was du willst.
Und wie eine IF-Anweisung functioniert siehst du in deinem eigenen script.MFG Marian
PS: Ich weis das goto ungerne gesehen wird...
Und wer nen rechtschreibfehler findet darf ihn behalten und zum eigenbedarf verwenden.
Verkauft er ihn bei ebay oder sonstwo muss 10% an mich gezahlt werden...
-
Da waren zwei Fehler drinnen,einen von mir(Gegner,anstatt gegner) und einen von dir(m4_assault,anstatt m4 wie bei if-anweisung).
Auch wenn ich diese ausbesserte,funktioniert das überhaupt nicht.
Versuch es bitte einmal selber,dann merkst du es
-
Sqwan schrieb:
Du solltest wirklich über ein tut oder ein buch nachdenken.
Das würde ich dir allerdings auch raten.
Und wer nen rechtschreibfehler findet darf ihn behalten und zum eigenbedarf verwenden.
Aber auf C++-Fehler möchtest du hingewiesen werden? Ist das selektive Lernbereitschaft oder eine Schieflage in den Anforderungen an die eigene Qualität?
@Primer:
Du musst waffe mit den tatsächlichen Eingabewerten vergleichen:if(waffe == 'a')
-
MFK schrieb:
@Primer:
Du musst waffe mit den tatsächlichen Eingabewerten vergleichen:if(waffe == 'a')Also danke,bei mir klappt es herrlich

Danke
-
sry.
Wirklich nicht das beste bsp.
bei m4 hätten " hingemusst und bei m95 auch.Und auch das goto ist ungerne gesehen wie ich grade erfahren habe...
Wofür ich sonst ein tut oder ein buch bräucht weiß ich in diesem fall nicht.
Auch wenn ich beides habe und öfter benötige
