Raggygandalf
Ensign
- Registriert
- Dez. 2008
- Beiträge
- 179
Hallo jungs ich bin gerade etwas am programmieren in C#
und wollte ein Zahlenraten spiel machen.
Form1 = Hier wird nur ein spiel gestartet und öffnet form 2, eine listbox zeigt die gespielten spiele an
Form2 = hier werden die zahlen eingegeben um die zufallszahl zu erraten.
Ich habe nun folgendes Problem:
Wenn ich ein spiel gewonnen habe oder beendet habe und eine neues spiel starte bleiben die attribute vom 1. spiel erhalten.
Soll heißen wenn ich im ersten spiel 5 von 10 versuchen benötigt habe habe ich im 2. spiel nur noch 5 und die zufallszahl ändert sich auch nicht.
In Java war es so das wenn ich ein Fenster ein 2. mal starte sich alles komplett neu initialisiert. Nur hier bleiben die Werte irgendwie erhalten
habe hier mal meinen Code von Form2 namens bitteraten angehangen.
Ich habe den 2 Attributen "versuche" und dem Objekt "spielspiel" beim beenden oder gewonnen spiel einfach die anfangswerte zugewiesen.
Geht zwar aber ich denke sehr gewurschtelt.
und wollte ein Zahlenraten spiel machen.
Form1 = Hier wird nur ein spiel gestartet und öffnet form 2, eine listbox zeigt die gespielten spiele an
Form2 = hier werden die zahlen eingegeben um die zufallszahl zu erraten.
Ich habe nun folgendes Problem:
Wenn ich ein spiel gewonnen habe oder beendet habe und eine neues spiel starte bleiben die attribute vom 1. spiel erhalten.
Soll heißen wenn ich im ersten spiel 5 von 10 versuchen benötigt habe habe ich im 2. spiel nur noch 5 und die zufallszahl ändert sich auch nicht.
In Java war es so das wenn ich ein Fenster ein 2. mal starte sich alles komplett neu initialisiert. Nur hier bleiben die Werte irgendwie erhalten
habe hier mal meinen Code von Form2 namens bitteraten angehangen.
Ich habe den 2 Attributen "versuche" und dem Objekt "spielspiel" beim beenden oder gewonnen spiel einfach die anfangswerte zugewiesen.
Geht zwar aber ich denke sehr gewurschtelt.
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
namespace Zahlenraten
{
public partial class bitteraten : Form
{
private Spiel spielspiel = new Spiel();
private int versuche = 10;
public bitteraten()
{
InitializeComponent();
}
private void bt_ende_Click(object sender, EventArgs e)
{
Close();
}
private void bt_raten_Click(object sender, EventArgs e)
{
int eingegeben = Convert.ToInt32(this.tf_ratezahl.Text);
this.versuche--;
if (versuche > 0)
{
switch (this.spielspiel.setZahl(eingegeben))
{
case 1:
this.lb_bitteraten.Text = "Zu klein!";
this.tf_ratezahl.Text = "";
break;
case 2:
this.lb_bitteraten.Text = "Zu groß!";
this.tf_ratezahl.Text = "";
break;
case 3:
MessageBox.Show("Gewonnen");
this.tf_ratezahl.Text = "";
Datenbank.spieleliste.Add(this.spielspiel);
this.versuche = 10;
this.spielspiel = new Spiel();
this.Close();
break;
}
}
else
{
Datenbank.spieleliste.Add(this.spielspiel);
MessageBox.Show("Sie haben leider verloren");
this.versuche = 10;
this.spielspiel = new Spiel();
this.Close();
}
}
}
}