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.

46 Zeilen
902 B

  1. ;; lobo: Logo Bolo
  2. ;; (c) Ben Kurtovic, 2011
  3. to spawn-player
  4. create-tanks 1 [
  5. set player tank who
  6. set-tank-vars 0 true
  7. ]
  8. end
  9. to do-player-logic
  10. if mouse-inside? [
  11. if mouse-down? and not mouse-was-down? [
  12. set is-accelerating? true
  13. set player-has-target? true
  14. set player-target-xcor (round mouse-xcor)
  15. set player-target-ycor (round mouse-ycor)
  16. ]
  17. set mouse-was-down? mouse-down?
  18. ]
  19. ifelse player-has-target? [
  20. tank-facexy player-target-xcor player-target-ycor
  21. let dist distancexy player-target-xcor player-target-ycor
  22. if dist < 2 and speed > 0.075 [
  23. decelerate friction * 5
  24. ]
  25. if dist < 0.1 [
  26. cancel-target
  27. ]
  28. ] [
  29. tank-facexy mouse-xcor mouse-ycor
  30. ]
  31. end
  32. to cancel-order
  33. if player-has-target? [
  34. cancel-target
  35. ]
  36. end
  37. to cancel-target
  38. set is-accelerating? false
  39. set player-has-target? false
  40. end