Logo Bolo: a re-envisioning of the classic tank game by Stuart Cheshire in NetLogo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
898 B

  1. ;; lobo: Logo Bolo
  2. ;; (c) Ben Kurtovic, 2011
  3. breed [tanks tank]
  4. tanks-own [
  5. acceleration
  6. friction
  7. is-accelerating?
  8. is-player?
  9. max-speed
  10. max-turn
  11. speed
  12. team
  13. ]
  14. to set-tank-vars [tank-team player-tank?]
  15. set acceleration 0.03
  16. set friction 0.0075
  17. set is-accelerating? false
  18. set is-player? player-tank?
  19. set max-speed 0.25
  20. set max-turn 24
  21. set speed 0
  22. set team tank-team
  23. set color get-tank-color
  24. set heading 0
  25. set shape "tank"
  26. set size 1.5
  27. end
  28. to do-tank-logic
  29. if is-accelerating? [
  30. accelerate acceleration
  31. ]
  32. fd speed
  33. decelerate friction
  34. end
  35. to accelerate [amount]
  36. set speed speed + amount
  37. if speed > max-speed [
  38. set speed max-speed
  39. ]
  40. end
  41. to decelerate [amount]
  42. set speed speed - amount
  43. if speed < 0 [
  44. set speed 0
  45. ]
  46. end
  47. to-report get-tank-color
  48. if is-player? [ report black ]
  49. if team = 0 [ report green ]
  50. report red
  51. end