Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Public Class Form1
- Public Structure Warrior
- Dim Hpmax, HpMin, AttackMin, AttackMax, Defense, Loot As UShort
- Dim Name, Weapon, Shield, Helm, Armor, Boots As String
- Dim Obrazok As Image
- End Structure
- Public Soldier(100) As Warrior
- Dim Enemy As Warrior
- Dim poc As Integer = 1
- Dim poz As Integer
- Public Gold As UInteger
- Private Sub ShowSoldier(ByVal poz)
- Select Case Soldier(poz).Weapon
- Case "Weapon"
- PictureBox2.Image = My.Resources.Weapon
- Case Else
- PictureBox2.Image = Nothing
- End Select
- Select Case Soldier(poz).Shield
- Case "Shield"
- PictureBox4.Image = My.Resources.Shield
- Case Else
- PictureBox4.Image = Nothing
- End Select
- Select Case Soldier(poz).Helm
- Case "Helm"
- PictureBox1.Image = My.Resources.Helm
- Case Else
- PictureBox1.Image = Nothing
- End Select
- Select Case Soldier(poz).Armor
- Case "Armor"
- PictureBox5.Image = My.Resources.Armor
- Case Else
- PictureBox5.Image = Nothing
- End Select
- Select Case Soldier(poz).Boots
- Case "Boots"
- PictureBox3.Image = My.Resources.Boots
- Case Else
- PictureBox3.Image = Nothing
- End Select
- Label1.Text = Soldier(poz).Name
- Label2.Text = "HP: " & Soldier(poz).Hpmin & " / " & Soldier(poz).Hpmax
- Label3.Text = "Armor: " & Soldier(poz).Defense
- Label4.Text = "Attack: " & Soldier(poz).AttackMin & " - " & Soldier(poz).AttackMax
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- Gold = 100
- Label9.Text = "Gold: " & Gold
- Soldier(0).Name = "Duke Nukem"
- Soldier(0).Hpmax = 25
- Soldier(0).HpMin = 25
- Soldier(0).AttackMin = 8
- Soldier(0).AttackMax = 10
- Soldier(0).Defense = 5
- Soldier(0).Weapon = "Weapon"
- Soldier(0).Shield = "Shield"
- Soldier(0).Helm = "Helm"
- Soldier(0).Armor = "Armor"
- Soldier(0).Boots = "Boots"
- ShowSoldier(0)
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- If poz > 0 Then
- poz -= 1
- ShowSoldier(poz)
- End If
- End Sub
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- If poz < poc - 1 Then
- poz += 1
- ShowSoldier(poz)
- End If
- End Sub
- Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
- Dim nahoda As UShort
- Randomize()
- nahoda = (3 - 0) * Rnd() + 0
- Select Case nahoda
- Case 0
- Enemy.Name = "Skeleton"
- Enemy.Hpmax = 8
- Enemy.HpMin = 8
- Enemy.AttackMin = 5
- Enemy.AttackMax = 9
- Enemy.Defense = 2
- Enemy.Weapon = "Weapon"
- Enemy.Shield = "Shield"
- Enemy.Obrazok = My.Resources.skeleton
- Enemy.Loot = 12
- Case 1
- Enemy.Name = "Zombie"
- Enemy.Hpmax = 14
- Enemy.HpMin = 14
- Enemy.AttackMin = 10
- Enemy.AttackMax = 18
- Enemy.Defense = 1
- Enemy.Weapon = "Weapon"
- Enemy.Shield = "Locked"
- Enemy.Armor = "Armor"
- Enemy.Obrazok = My.Resources.zombie
- Enemy.Loot = 28
- Case 2
- Enemy.Name = "Skeleton Warrior"
- Enemy.Hpmax = 8
- Enemy.HpMin = 8
- Enemy.AttackMin = 4
- Enemy.AttackMax = 10
- Enemy.Defense = 5
- Enemy.Weapon = "Two-Handed Mace"
- Enemy.Shield = "Locked"
- Enemy.Helm = "Helm"
- Enemy.Obrazok = My.Resources.skeletonwarrior
- Enemy.Loot = 26
- Case 3
- Enemy.Name = "Zombie Warrior"
- Enemy.Hpmax = 20
- Enemy.HpMin = 20
- Enemy.AttackMin = 5
- Enemy.AttackMax = 12
- Enemy.Defense = 5
- Enemy.Weapon = "Mace"
- Enemy.Shield = "Shield"
- Enemy.Helm = "Helm"
- Enemy.Armor = "Armor"
- Enemy.Armor = "Boots"
- Enemy.Obrazok = My.Resources.zombiewarrior
- Enemy.Loot = 30
- End Select
- Label8.Text = Enemy.Name
- PictureBox6.Image = Enemy.Obrazok
- Label7.Text = "HP: " & Enemy.HpMin & " / " & Enemy.Hpmax
- Label6.Text = "Armor: " & Enemy.Defense
- Label5.Text = "Attack: " & Enemy.AttackMin & " - " & Enemy.AttackMax
- Button4.Enabled = True
- Button3.Enabled = False
- End Sub
- Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
- Button1.Enabled = False
- Button2.Enabled = False
- Button3.Enabled = False
- Button4.Enabled = False
- Timer1.Enabled = True
- End Sub
- Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
- Dim UtokVojak, UtokEnemy As Integer
- Randomize()
- ' utok vojak
- UtokVojak = (Soldier(poz).AttackMax - Soldier(poz).AttackMin) * Rnd() + Soldier(poz).AttackMin
- If Enemy.Defense < UtokVojak Then
- UtokVojak = UtokVojak - Enemy.Defense
- Else
- UtokVojak = (1 - 0) * Rnd() + 0
- End If
- If Enemy.HpMin >= UtokVojak Then
- Enemy.HpMin = Enemy.HpMin - UtokVojak
- Else
- Enemy.HpMin = 0
- End If
- ListBox1.Items.Add(Soldier(poz).Name & " dal utok " & UtokVojak)
- Label7.Text = "HP: " & Enemy.HpMin & " / " & Enemy.Hpmax
- ' utok enemy
- UtokEnemy = (Enemy.AttackMax - Enemy.AttackMin) * Rnd() + Enemy.AttackMin
- If Soldier(poz).Defense < UtokEnemy Then
- UtokEnemy = UtokEnemy - Soldier(poz).Defense
- Else
- UtokEnemy = (1 - 0) * Rnd() + 0
- End If
- If Soldier(poz).HpMin >= UtokEnemy Then
- Soldier(poz).HpMin = Soldier(poz).HpMin - UtokEnemy
- Else
- Soldier(poz).HpMin = 0
- End If
- ListBox1.Items.Add(Enemy.Name & " dal utok " & UtokEnemy)
- ShowSoldier(poz)
- ' test ukoncenia bitky
- If Soldier(poz).Hpmin <= 0 Or Enemy.Hpmin <= 0 Then
- Button1.Enabled = True
- Button2.Enabled = True
- Timer1.Enabled = False
- Button5.Enabled = True
- If Enemy.HpMin = 0 Then
- Gold += Enemy.Loot
- ListBox1.Items.Add("Ziskali sme odmenu " & Enemy.Loot & " Gold")
- Label9.Text = "Gold: " & Gold
- End If
- End If
- End Sub
- Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
- ListBox1.Items.Clear()
- Button5.Enabled = False
- If Enemy.HpMin = 0 Then
- PictureBox6.Image = My.Resources.otaznik
- Label8.Text = "Enemy"
- Label7.Text = "HP : 0/0"
- Label6.Text = "Armor: 0"
- Label5.Text = "Attack: 0-0"
- Button3.Enabled = True
- End If
- End Sub
- Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
- Dim Meno, Priezvisko As String
- Dim nahoda As UShort
- If Gold >= 20 Then
- poc += 1
- poz = poc - 1
- Randomize()
- Meno = "Chybný"
- Priezvisko = "Chybné"
- nahoda = (4 + 0) * Rnd() + 0
- Select Case nahoda
- Case 0
- Meno = "Jano"
- Case 1
- Meno = "Jozef"
- Case 2
- Meno = "Adam"
- Case 3
- Meno = "Richard"
- Case 4
- Meno = "Stefan"
- End Select
- Select Case nahoda
- Case 0
- Priezvisko = "Podhorsky"
- Case 1
- Priezvisko = "Valentovič"
- Case 2
- Priezvisko = "Arvay"
- Case 3
- Priezvisko = "Patoprsty"
- Case 4
- Priezvisko = "May"
- End Select
- Soldier(poz).Name = Meno & " " & Priezvisko
- Soldier(poz).Hpmax = 10
- Soldier(poz).HpMin = 10
- Soldier(poz).AttackMin = 1
- Soldier(poz).AttackMax = 3
- Soldier(poz).Defense = 0
- ShowSoldier(poz)
- Gold -=20
- Label9.Text = "Gold: " & Gold
- Else
- MsgBox("Nemas dostatok goldov na noveho vojaka", vbCritical, "Nie je dostatok goldov")
- End If
- End Sub
- Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
- If Soldier(poz).HpMin > 0 Then
- If Soldier(poz).HpMin < Soldier(poz).Hpmax Then
- If Gold >= 5 Then
- Soldier(poz).HpMin = Soldier(poz).Hpmax
- ShowSoldier(poz)
- Gold -= 5
- Label9.Text = "Gold: " & Gold
- Else
- MsgBox("Nie je dostatok zlata", vbInformation, "Nejde to")
- End If
- Else
- MsgBox("Vojak neni zraneni.", vbInformation, "Nejde to")
- End If
- Else
- MsgBox("Vojak je mrtvy.", vbInformation, "Nejde to")
- End If
- End Sub
- End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement