Hey ich bin noch Anfänger was das Programmieren und VB allgemein angeht. Ich habe schon ein paar kleinere Übungen gemacht sowas wie einen Taschenrechner zu schreiben etc, war auch kein Problem. Jetzt wollte ich etwas eigenes versuchen und zwar wollte ich ein Text basiertes RPG schreiben. Ich weiß auch nicht warum es dabei auftritt davor als ich etwas deklariert habe, hat es einwandfrei funktioniert sprich: Die Hp, Mp und das Geld.
FormatException:
Hero Module:
Monster Module:
Form1:
Form3:
Wäre sehr nett wenn es mir jemand erklären könnte ich bin nämlich am verzweifeln und finde im Internet keine Beispiele die so ungefähr wie mein Code ist um es irgendwie vergleichen zu können.
Danke, mfg Andrey
FormatException:
Ich habe versucht ein "Spielerlevel" und Exp einzufügen. Von der Umsetzung her klappt das leider nur nicht weil ich mich nicht sehr gut auskenne und ich kriege eine Format Exception wenn ich das "Level" auf einem Label anzeigen lassen möchte.
Ich lasse einfach mal die ganzen Codes da damit jemand drübergucken kann und vielleicht einen Fehler (oder auch hunderte) entdeckt.
Ich lasse einfach mal die ganzen Codes da damit jemand drübergucken kann und vielleicht einen Fehler (oder auch hunderte) entdeckt.
Hero Module:
Code:
Module Hero
Public h_HitPoints As Integer = 250
Public h_ManaPoints As Integer = 70
Public h_Exp As Integer
Public h_Level As Integer
''''''Abfrage für Level Up'''''''
Public Level_2 As Boolean = False
Public Level_3 As Boolean = False
Public Level_4 As Boolean = False
Public Level_5 As Boolean = False
Public Level_6 As Boolean = False
Public Level_7 As Boolean = False
Public Level_8 As Boolean = False
Public Level_9 As Boolean = False
Public Level_10 As Boolean = False
Public Level_11 As Boolean = False
''''''''''''''''''''''''''''''''''
Public abfrageCheck As Boolean = False
Public pGold As New Random
Public pGold_int As Integer = Form1.Label3.Text
''''''Hero Attack'''''''
Public Sub h_Hit_calc()
If abfrageCheck = False Then
mon_HitPoints = mon_HitPoints - 27
Form3.Label2.Text = mon_HitPoints
If mon_HitPoints < 1 Then
mon_HitPoints = 0
Form3.Label2.Text = mon_HitPoints
End If
End If
End Sub
''''''Hero HP regenaration'''''''
Public Sub hero_HP_regen()
If mon_HitPoints < 30 Then
h_HitPoints += 25
ElseIf h_HitPoints < 30 Then
h_HitPoints += 65
End If
End Sub
''''''Hero MP regen'''''''
Public Sub hero_MP_regen()
If mon_HitPoints = 100 Then
h_ManaPoints = 70
End If
End Sub
''''''Hero Death -> Lose all Gold'''''''
Public Sub h_death()
If h_HitPoints < 1 Then
pGold_int = 0
End If
End Sub
''''''Hero Skill (Heal)'''''''
Public Sub Skill_Heal()
If h_HitPoints < 250 Then
h_HitPoints += 30
h_ManaPoints -= 35
ElseIf h_HitPoints > 249 Then
h_HitPoints = 250
h_ManaPoints -= 1
If h_ManaPoints < 1 Then
h_ManaPoints = 0
End If
End If
End Sub
''''''Hero EXP'''''''
Public Sub Experience()
If mon_HitPoints < 1 Then
h_Exp = +5
End If
End Sub
''''''Hero Level'''''''
'Public Sub LV_1()
' h_Level = "1"
' If h_Exp = 25 Then
' Level_2 = True
' If Level_2 = True Then
' h_Level = "2"
' End If
' End If
'End Sub
''''''Hero Level'''''''
Public Sub LV_2()
If h_Exp = 50 Then
End If
End Sub '''''''Hero Level'''''''
Public Sub LV_3()
If h_Exp = 75 Then
End If
End Sub '''''''Hero Level'''''''
Public Sub LV_4()
If h_Exp = 100 Then
End If
End Sub '''''''Hero Level'''''''
Public Sub LV_5()
If h_Exp = 150 Then
End If
End Sub '''''''Hero Level'''''''
Public Sub LV_6()
If h_Exp = 200 Then
End If
End Sub '''''''Hero Level'''''''
Public Sub LV_7()
If h_Exp = 250 Then
End If
End Sub '''''''Hero Level'''''''
Public Sub LV_8()
If h_Exp = 300 Then
End If
End Sub
''''''Hero Level'''''''
Public Sub LV_9()
If h_Exp = 350 Then
End If
End Sub
''''''Hero Level'''''''
Public Sub LV_10()
If h_Exp = 400 Then
End If
End Sub
End Module
Monster Module:
Code:
Module Monster
Public mon_HitPoints As Integer = 100
'''''''Monster Attack'''''''
Public Sub mon_Hit_calc()
If abfrageCheck = False Then
h_HitPoints = h_HitPoints - 15
Form3.Label1.Text = h_HitPoints
If h_HitPoints < 1 Then
h_HitPoints = 0
Form3.Label1.Text = h_HitPoints
End If
End If
End Sub
'''''''Monster Dead -> Next Monster'''''''
Public Sub mon_refsresh()
If mon_HitPoints = 0 Then
Form3.Close()
mon_HitPoints = 100
End If
End Sub
End Module
Form1:
[Only registered and activated users can see links. Click Here To Register...]
Code:
Code:
Code:
Imports System.ComponentModel
Public Class Form1
'''''''Save Text to Textbox/Label '''''''
Private Sub ReadFromSettings()
Label3.Text = My.Settings.pGold_Setting
End Sub
Private Sub SaveTexttoSettings()
My.Settings.pGold_Setting = Label3.Text
My.Settings.Save()
My.Settings.Reload()
End Sub
'''''''Start/Welcome Window'''''''
Public Sub Form1_Load(ByVal sender As Object, e As EventArgs) Handles MyBase.Load
Label1.Text = "Obviously Not Flyff"
ReadFromSettings()
Dim LvUp_1 As New LV1_Exp
LvUp_1.LV_1_Experience()
h_LV_Text_Main.Text = "Level:"
h_LV_Num_Main.Text = Hero.h_Level <- In der Zeile taucht der Fehler auf
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Form3.Show()
Hide()
End Sub
Private Sub Form1_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
SaveTexttoSettings()
End Sub
End Class
'''''''Hero Level'''''''
Public Class LV1_Exp
Dim h_Exp As Integer
Dim h_Level As Integer
Public Sub LV_1_Experience()
If h_Exp = 25 Then
Level_2 = True
If Level_2 = True Then
h_Level = 2
End If
End If
End Sub
End Class
Form3:
[Only registered and activated users can see links. Click Here To Register...]
Code:
Code:
Code:
Imports System.ComponentModel
Public Class Form3
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Label1.ForeColor = Color.Green
Label1.Text = h_HitPoints
Label2.ForeColor = Color.Red
Label2.Text = mon_HitPoints
Attack_btn.Text = "Normal Attack"
Heal_btn.Text = "Heal Skill"
Manapoints_lbl.ForeColor = Color.Blue
Manapoints_lbl.Text = h_ManaPoints
MP_Text_lbl.Text = "MP"
If h_ManaPoints < 1 Then
Heal_btn.Enabled = False
End If
End Sub
Private Sub Attack_btn_Click(sender As Object, e As EventArgs) Handles Attack_btn.Click
If Attack_btn.Enabled = True Then
h_Hit_calc()
Attack_btn.Enabled = False
mon_Hit_calc()
Attack_btn.Enabled = True
If mon_HitPoints = 0 Then
Attack_btn.Enabled = False
''''''START Gold Drop''''''
Dim mon_DropG As New Gold_drop
mon_DropG.mon_DropGold()
''''''END Gold Drop''''''
'''''''''START Gold Drop Message'''''''
Dim pGold_msg As New Gold_drop_msg
pGold_msg.Gold_drop()
''''''END Gold Drop Message'''''''
mon_refsresh()
hero_HP_regen()
hero_MP_regen()
h_death()
End If
End If
End Sub
Private Sub Form3_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
Form1.Show()
End Sub
Public Sub Heal_btn_Click(sender As Object, e As EventArgs) Handles Heal_btn.Click
Skill_Heal()
Label1.Text = h_HitPoints
Manapoints_lbl.Text = h_ManaPoints
If h_ManaPoints < 1 Then
Heal_btn.Enabled = False
End If
End Sub
End Class
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''MISC''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''Gold Drop Message'''''''
Public Class Gold_drop_msg
Dim pGold_msg
Public Sub Gold_drop()
If mon_HitPoints = 0 Then
MsgBox("You have " & pGold_int & " Penya now!")
End If
End Sub
End Class
''''''Gold Drop''''''
Public Class Gold_drop
Public Sub mon_DropGold()
If mon_HitPoints = 0 Then
pGold_int += pGold.Next(5, 20)
Form1.Label3.Text = pGold_int
End If
End Sub
End Class
Wäre sehr nett wenn es mir jemand erklären könnte ich bin nämlich am verzweifeln und finde im Internet keine Beispiele die so ungefähr wie mein Code ist um es irgendwie vergleichen zu können.
Danke, mfg Andrey