Advertisement
Guest User

Untitled

a guest
Feb 19th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.12 KB | None | 0 0
  1. Public Class Form1
  2. Public Structure Warrior
  3. Dim Hpmax, HpMin, AttackMin, AttackMax, Defense, Loot As UShort
  4. Dim Name, Weapon, Shield, Helm, Armor, Boots As String
  5. Dim Obrazok As Image
  6. End Structure
  7.  
  8. Public Soldier(100) As Warrior
  9. Dim Enemy As Warrior
  10.  
  11. Dim poc As Integer = 1
  12. Dim poz As Integer
  13. Public Gold As UInteger
  14. Private Sub ShowSoldier(ByVal poz)
  15. Select Case Soldier(poz).Weapon
  16. Case "Weapon"
  17. PictureBox2.Image = My.Resources.Weapon
  18. Case Else
  19. PictureBox2.Image = Nothing
  20. End Select
  21.  
  22. Select Case Soldier(poz).Shield
  23. Case "Shield"
  24. PictureBox4.Image = My.Resources.Shield
  25. Case Else
  26. PictureBox4.Image = Nothing
  27. End Select
  28.  
  29. Select Case Soldier(poz).Helm
  30. Case "Helm"
  31. PictureBox1.Image = My.Resources.Helm
  32. Case Else
  33. PictureBox1.Image = Nothing
  34. End Select
  35.  
  36. Select Case Soldier(poz).Armor
  37. Case "Armor"
  38. PictureBox5.Image = My.Resources.Armor
  39. Case Else
  40. PictureBox5.Image = Nothing
  41. End Select
  42.  
  43. Select Case Soldier(poz).Boots
  44. Case "Boots"
  45. PictureBox3.Image = My.Resources.Boots
  46. Case Else
  47. PictureBox3.Image = Nothing
  48. End Select
  49.  
  50. Label1.Text = Soldier(poz).Name
  51. Label2.Text = "HP: " & Soldier(poz).Hpmin & " / " & Soldier(poz).Hpmax
  52. Label3.Text = "Armor: " & Soldier(poz).Defense
  53. Label4.Text = "Attack: " & Soldier(poz).AttackMin & " - " & Soldier(poz).AttackMax
  54. End Sub
  55. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  56. Gold = 100
  57. Label9.Text = "Gold: " & Gold
  58.  
  59. Soldier(0).Name = "Duke Nukem"
  60. Soldier(0).Hpmax = 25
  61. Soldier(0).HpMin = 25
  62. Soldier(0).AttackMin = 8
  63. Soldier(0).AttackMax = 10
  64. Soldier(0).Defense = 5
  65. Soldier(0).Weapon = "Weapon"
  66. Soldier(0).Shield = "Shield"
  67. Soldier(0).Helm = "Helm"
  68. Soldier(0).Armor = "Armor"
  69. Soldier(0).Boots = "Boots"
  70.  
  71. ShowSoldier(0)
  72.  
  73.  
  74.  
  75.  
  76.  
  77. End Sub
  78.  
  79. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  80. If poz > 0 Then
  81. poz -= 1
  82. ShowSoldier(poz)
  83. End If
  84. End Sub
  85.  
  86. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  87. If poz < poc - 1 Then
  88. poz += 1
  89. ShowSoldier(poz)
  90. End If
  91. End Sub
  92.  
  93. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
  94. Dim nahoda As UShort
  95. Randomize()
  96.  
  97. nahoda = (3 - 0) * Rnd() + 0
  98.  
  99. Select Case nahoda
  100. Case 0
  101. Enemy.Name = "Skeleton"
  102. Enemy.Hpmax = 8
  103. Enemy.HpMin = 8
  104. Enemy.AttackMin = 5
  105. Enemy.AttackMax = 9
  106. Enemy.Defense = 2
  107. Enemy.Weapon = "Weapon"
  108. Enemy.Shield = "Shield"
  109. Enemy.Obrazok = My.Resources.skeleton
  110. Enemy.Loot = 12
  111.  
  112. Case 1
  113. Enemy.Name = "Zombie"
  114. Enemy.Hpmax = 14
  115. Enemy.HpMin = 14
  116. Enemy.AttackMin = 10
  117. Enemy.AttackMax = 18
  118. Enemy.Defense = 1
  119. Enemy.Weapon = "Weapon"
  120. Enemy.Shield = "Locked"
  121. Enemy.Armor = "Armor"
  122. Enemy.Obrazok = My.Resources.zombie
  123. Enemy.Loot = 28
  124.  
  125. Case 2
  126. Enemy.Name = "Skeleton Warrior"
  127. Enemy.Hpmax = 8
  128. Enemy.HpMin = 8
  129. Enemy.AttackMin = 4
  130. Enemy.AttackMax = 10
  131. Enemy.Defense = 5
  132. Enemy.Weapon = "Two-Handed Mace"
  133. Enemy.Shield = "Locked"
  134. Enemy.Helm = "Helm"
  135. Enemy.Obrazok = My.Resources.skeletonwarrior
  136. Enemy.Loot = 26
  137.  
  138. Case 3
  139. Enemy.Name = "Zombie Warrior"
  140. Enemy.Hpmax = 20
  141. Enemy.HpMin = 20
  142. Enemy.AttackMin = 5
  143. Enemy.AttackMax = 12
  144. Enemy.Defense = 5
  145. Enemy.Weapon = "Mace"
  146. Enemy.Shield = "Shield"
  147. Enemy.Helm = "Helm"
  148. Enemy.Armor = "Armor"
  149. Enemy.Armor = "Boots"
  150. Enemy.Obrazok = My.Resources.zombiewarrior
  151. Enemy.Loot = 30
  152. End Select
  153.  
  154. Label8.Text = Enemy.Name
  155. PictureBox6.Image = Enemy.Obrazok
  156. Label7.Text = "HP: " & Enemy.HpMin & " / " & Enemy.Hpmax
  157. Label6.Text = "Armor: " & Enemy.Defense
  158. Label5.Text = "Attack: " & Enemy.AttackMin & " - " & Enemy.AttackMax
  159.  
  160. Button4.Enabled = True
  161. Button3.Enabled = False
  162. End Sub
  163.  
  164. Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
  165. Button1.Enabled = False
  166. Button2.Enabled = False
  167. Button3.Enabled = False
  168. Button4.Enabled = False
  169. Timer1.Enabled = True
  170. End Sub
  171.  
  172. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
  173. Dim UtokVojak, UtokEnemy As Integer
  174.  
  175. Randomize()
  176.  
  177. ' utok vojak
  178. UtokVojak = (Soldier(poz).AttackMax - Soldier(poz).AttackMin) * Rnd() + Soldier(poz).AttackMin
  179.  
  180. If Enemy.Defense < UtokVojak Then
  181. UtokVojak = UtokVojak - Enemy.Defense
  182. Else
  183. UtokVojak = (1 - 0) * Rnd() + 0
  184. End If
  185.  
  186. If Enemy.HpMin >= UtokVojak Then
  187. Enemy.HpMin = Enemy.HpMin - UtokVojak
  188. Else
  189. Enemy.HpMin = 0
  190. End If
  191.  
  192. ListBox1.Items.Add(Soldier(poz).Name & " dal utok " & UtokVojak)
  193. Label7.Text = "HP: " & Enemy.HpMin & " / " & Enemy.Hpmax
  194.  
  195. ' utok enemy
  196. UtokEnemy = (Enemy.AttackMax - Enemy.AttackMin) * Rnd() + Enemy.AttackMin
  197.  
  198. If Soldier(poz).Defense < UtokEnemy Then
  199. UtokEnemy = UtokEnemy - Soldier(poz).Defense
  200. Else
  201. UtokEnemy = (1 - 0) * Rnd() + 0
  202. End If
  203.  
  204. If Soldier(poz).HpMin >= UtokEnemy Then
  205. Soldier(poz).HpMin = Soldier(poz).HpMin - UtokEnemy
  206. Else
  207. Soldier(poz).HpMin = 0
  208. End If
  209.  
  210. ListBox1.Items.Add(Enemy.Name & " dal utok " & UtokEnemy)
  211.  
  212. ShowSoldier(poz)
  213.  
  214.  
  215. ' test ukoncenia bitky
  216. If Soldier(poz).Hpmin <= 0 Or Enemy.Hpmin <= 0 Then
  217. Button1.Enabled = True
  218. Button2.Enabled = True
  219. Timer1.Enabled = False
  220. Button5.Enabled = True
  221. If Enemy.HpMin = 0 Then
  222. Gold += Enemy.Loot
  223. ListBox1.Items.Add("Ziskali sme odmenu " & Enemy.Loot & " Gold")
  224. Label9.Text = "Gold: " & Gold
  225. End If
  226. End If
  227. End Sub
  228.  
  229. Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
  230. ListBox1.Items.Clear()
  231. Button5.Enabled = False
  232. If Enemy.HpMin = 0 Then
  233. PictureBox6.Image = My.Resources.otaznik
  234. Label8.Text = "Enemy"
  235. Label7.Text = "HP : 0/0"
  236. Label6.Text = "Armor: 0"
  237. Label5.Text = "Attack: 0-0"
  238. Button3.Enabled = True
  239. End If
  240. End Sub
  241.  
  242. Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
  243. Dim Meno, Priezvisko As String
  244. Dim nahoda As UShort
  245.  
  246. If Gold >= 20 Then
  247. poc += 1
  248. poz = poc - 1
  249.  
  250. Randomize()
  251.  
  252. Meno = "Chybný"
  253. Priezvisko = "Chybné"
  254.  
  255.  
  256. nahoda = (4 + 0) * Rnd() + 0
  257. Select Case nahoda
  258. Case 0
  259. Meno = "Jano"
  260. Case 1
  261. Meno = "Jozef"
  262. Case 2
  263. Meno = "Adam"
  264. Case 3
  265. Meno = "Richard"
  266. Case 4
  267. Meno = "Stefan"
  268. End Select
  269.  
  270. Select Case nahoda
  271. Case 0
  272. Priezvisko = "Podhorsky"
  273. Case 1
  274. Priezvisko = "Valentovič"
  275. Case 2
  276. Priezvisko = "Arvay"
  277. Case 3
  278. Priezvisko = "Patoprsty"
  279. Case 4
  280. Priezvisko = "May"
  281. End Select
  282.  
  283. Soldier(poz).Name = Meno & " " & Priezvisko
  284.  
  285. Soldier(poz).Hpmax = 10
  286. Soldier(poz).HpMin = 10
  287. Soldier(poz).AttackMin = 1
  288. Soldier(poz).AttackMax = 3
  289. Soldier(poz).Defense = 0
  290.  
  291. ShowSoldier(poz)
  292. Gold -=20
  293. Label9.Text = "Gold: " & Gold
  294. Else
  295. MsgBox("Nemas dostatok goldov na noveho vojaka", vbCritical, "Nie je dostatok goldov")
  296. End If
  297. End Sub
  298.  
  299. Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
  300. If Soldier(poz).HpMin > 0 Then
  301. If Soldier(poz).HpMin < Soldier(poz).Hpmax Then
  302. If Gold >= 5 Then
  303. Soldier(poz).HpMin = Soldier(poz).Hpmax
  304. ShowSoldier(poz)
  305. Gold -= 5
  306. Label9.Text = "Gold: " & Gold
  307. Else
  308. MsgBox("Nie je dostatok zlata", vbInformation, "Nejde to")
  309. End If
  310. Else
  311. MsgBox("Vojak neni zraneni.", vbInformation, "Nejde to")
  312. End If
  313. Else
  314. MsgBox("Vojak je mrtvy.", vbInformation, "Nejde to")
  315. End If
  316. End Sub
  317. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement