Hallo liebe VB- Community,
ich bin absoluter Einsteiger im Bereich VB und wollte nun ein kleines Textadventure programmieren. Leider bin ich dabei auf ein paar Hindernisse gestoßen. Das meiste konnte ich mit Google glücklicherweise lösen, jedoch stoße ich nun an meine Grenzen, da ich nicht weiß, nach welchem Begriff ich suchen muss.
Ich habe die Buttons "Gehe nach...." und dann eben Norden, Süden, Westen und Osten. Bei all den Buttons soll das gleiche passieren: Entweder stößt man auf einen Dungeon, auf ein Waldstück, eine Lichtung oder See. Hier wiederrum sollen je nach Gebiet unterschiedliche Gegner auftauchen. Momentan habe ich einen riesigen Quellcode für nur einen Button, den ich natürlich kopieren kann. Allerdings falls ich später mal was änderen möchte, wird es knifflig. Meine Frage daher: Kann ich einen Teil abkürzen, in dem ich es einmal irgendwo definiere und dann abfrage?
Hier mein Code:
Spoiler anzeigen
Hier meine Variablen:
Ich hoffe, ihr könnt mir helfen. Vielen Dank schon mal im Voraus
Viele Grüße und ein frohes Fest an alle
Corai
p.s.: oh und bitte zerfleischt mich nicht, ich weiß, daß ich Anfänger bin XD
Sehr langen Codeausschnitt in Spoiler-Tags versteckt. ~Thunderbolt
ich bin absoluter Einsteiger im Bereich VB und wollte nun ein kleines Textadventure programmieren. Leider bin ich dabei auf ein paar Hindernisse gestoßen. Das meiste konnte ich mit Google glücklicherweise lösen, jedoch stoße ich nun an meine Grenzen, da ich nicht weiß, nach welchem Begriff ich suchen muss.
Ich habe die Buttons "Gehe nach...." und dann eben Norden, Süden, Westen und Osten. Bei all den Buttons soll das gleiche passieren: Entweder stößt man auf einen Dungeon, auf ein Waldstück, eine Lichtung oder See. Hier wiederrum sollen je nach Gebiet unterschiedliche Gegner auftauchen. Momentan habe ich einen riesigen Quellcode für nur einen Button, den ich natürlich kopieren kann. Allerdings falls ich später mal was änderen möchte, wird es knifflig. Meine Frage daher: Kann ich einen Teil abkürzen, in dem ich es einmal irgendwo definiere und dann abfrage?
Hier mein Code:
VB.NET-Quellcode
- Private Sub btnNorden_Click(sender As Object, e As EventArgs) Handles btnNorden.Click
- vGebiet = vZufallswürfel.Next(1, 11)
- vGegner = vZufallswürfel.Next(1, 11)
- btnNorden.Enabled = False
- btnSüden.Enabled = False
- btnWesten.Enabled = False
- btnOsten.Enabled = False
- btnAngriff.Enabled = True
- Select Case vGebiet
- Case 1 To 3
- lstStory.Items.Add("Du siehst in eine Höhle")
- Select Case vGegner
- Case 1 To 3
- btnNorden.Enabled = True
- btnSüden.Enabled = True
- btnWesten.Enabled = True
- btnOsten.Enabled = True
- btnAngriff.Enabled = False
- Case 4 To 6
- lstStory.Items.Add(vRattetext)
- vGegnername = "Ratte"
- vGegnerHP = 10
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- vXPZuwachs = 5
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 7 To 8
- lstStory.Items.Add(vFledermaustext)
- vGegnername = "Fledermaus"
- vGegnerHP = 15
- vXPZuwachs = 15
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 9 To 10
- lstStory.Items.Add(vGeisttext)
- vGegnername = "Geist"
- vGegnerHP = 20
- vXPZuwachs = 15
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- End Select
- Case 4, 5
- lstStory.Items.Add("Du kommst in einen Wald")
- Select Case vGegner
- Case 1 To 3
- btnNorden.Enabled = True
- btnSüden.Enabled = True
- btnWesten.Enabled = True
- btnOsten.Enabled = True
- btnAngriff.Enabled = False
- Case 4 To 5
- lstStory.Items.Add(vFledermaustext)
- vGegnername = "Fledermaus"
- vGegnerHP = 15
- vXPZuwachs = 15
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 6 To 7
- lstStory.Items.Add(vWolftext)
- vGegnername = "Wolf"
- vGegnerHP = 20
- vXPZuwachs = 20
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 8 To 9
- lstStory.Items.Add(vLuchstext)
- vGegnername = "Luchs"
- vGegnerHP = 15
- vXPZuwachs = 15
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 10
- lstStory.Items.Add(vBärtext)
- vGegnername = "Bär"
- vGegnerHP = 40
- vXPZuwachs = 40
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- End Select
- Case 6
- lstStory.Items.Add("Du kommst auf eine Lichtung")
- Select Case vGegner
- Case 1 To 3
- btnNorden.Enabled = True
- btnSüden.Enabled = True
- btnWesten.Enabled = True
- btnOsten.Enabled = True
- btnAngriff.Enabled = False
- Case 4 To 6
- lstStory.Items.Add(vSchlange)
- vGegnername = "Schlange"
- vGegnerHP = 15
- vXPZuwachs = 15
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 7 To 8
- lstStory.Items.Add(vAdlertext)
- vGegnername = "Adler"
- vGegnerHP = 15
- vXPZuwachs = 15
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 9
- lstStory.Items.Add(vGreiftext)
- vGegnername = "Greif"
- vGegnerHP = 20
- vXPZuwachs = 20
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 10
- lstStory.Items.Add(vDrachetext)
- vGegnername = "Drache"
- vGegnerHP = 80
- vXPZuwachs = 80
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- End Select
- Case 7 To 10
- lstStory.Items.Add("Du gehst auf einen See zu")
- Select Case vGegner
- Case 1 To 3
- btnNorden.Enabled = True
- btnSüden.Enabled = True
- btnWesten.Enabled = True
- btnOsten.Enabled = True
- btnAngriff.Enabled = False
- Case 4 To 5
- lstStory.Items.Add(vFuchstext)
- vGegnername = "Fuchs"
- vGegnerHP = 10
- vXPZuwachs = 10
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 6 To 7
- lstStory.Items.Add(vHirschtext)
- vGegnername = "Hirsch"
- vGegnerHP = 20
- vXPZuwachs = 20
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 8 To 9
- lstStory.Items.Add(vKampffisch)
- vGegnername = "Kampffisch"
- vGegnerHP = 10
- vXPZuwachs = 10
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- Case 10
- lstStory.Items.Add(vHydra)
- vGegnername = "Hydra"
- vGegnerHP = 35
- vXPZuwachs = 35
- vGegnerstärke = vZufallswürfel.Next(1, 5)
- lstStory.Items.Add("Du erleidest" & vGegnerstärke & " Schaden")
- lstStory.Items.Add("")
- vLebenaktuell -= vGegnerstärke
- lblLebenszahl.Text = vLebenaktuell.ToString & " / " & vLebenMax.ToString
- pbLeben.Value -= vGegnerstärke
- End Select
- End Select
Hier meine Variablen:
VB.NET-Quellcode
- Dim vGegnername As String
- Dim vGegnerHP As Double
- Dim vRattetext As String = "Eine riesige Ratte greift dich an"
- Dim vFledermaustext As String = "Mehrere Fledermäuse attackieren dich."
- Dim vGeisttext As String = "Ein Geist erscheint. Du erstarrst vor Angst!"
- Dim vWolftext As String = "Ein Wolf springt auf dich zu"
- Dim vLuchstext As String = "Ein Luchs greift dich an."
- Dim vBärtext As String = "Ein Bär greift dich an."
- Dim vSchlange As String = "Ein Schlange greift dich an."
- Dim vAdlertext As String = "Ein Adler greift dich an."
- Dim vGreiftext As String = "Ein Greif greift dich an."
- Dim vDrachetext As String = "Ein Drache greift dich an."
- Dim vFuchstext As String = "Ein Fuchs greift dich an."
- Dim vHirschtext As String = "Ein Hirsch greift dich an."
- Dim vKampffisch As String = "Ein Kampffisch greift dich an."
- Dim vHydra As String = "Ein Hydra greift dich an."
Ich hoffe, ihr könnt mir helfen. Vielen Dank schon mal im Voraus
Viele Grüße und ein frohes Fest an alle
Corai
p.s.: oh und bitte zerfleischt mich nicht, ich weiß, daß ich Anfänger bin XD
Sehr langen Codeausschnitt in Spoiler-Tags versteckt. ~Thunderbolt
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Thunderbolt“ ()