Logo Bolo: a re-envisioning of the classic tank game by Stuart Cheshire in NetLogo
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

58 Zeilen
949 B

  1. ;; lobo: Logo Bolo
  2. ;; (c) Ben Kurtovic, 2011
  3. breed [bullets bullet]
  4. bullets-own [
  5. max-travel-distance
  6. shooter
  7. speed
  8. travel-distance
  9. ]
  10. ;; ==========
  11. ;; Procedures
  12. ;; ==========
  13. to fire-bullet
  14. hatch-bullets 1 [
  15. set max-travel-distance 8
  16. set shooter [who] of myself
  17. set speed 1
  18. set travel-distance 0
  19. set color white
  20. set shape "bullet"
  21. set size 0.5
  22. ; Bullets shouldn't travel perfectly straight:
  23. lt random 10
  24. rt random 10
  25. ]
  26. end
  27. to do-bullet-logic
  28. fd speed
  29. set travel-distance travel-distance + speed
  30. if travel-distance > max-travel-distance [
  31. explode "decay"
  32. die
  33. ]
  34. let mxcor xcor
  35. let mycor ycor
  36. let is-close-enough false
  37. let target min-one-of tanks-here [distancexy mxcor mycor]
  38. if target != nobody [
  39. ask target [
  40. if distancexy mxcor mycor < 0.65 [
  41. set is-close-enough true
  42. shot-at
  43. ]
  44. ]
  45. ]
  46. if is-close-enough [
  47. die
  48. ]
  49. end