Logo Bolo: a re-envisioning of the classic tank game by Stuart Cheshire in NetLogo
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

58 linhas
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