Guest User

Untitled

a guest
Dec 12th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.69 KB | None | 0 0
  1. import pygame, sys, numpy
  2. #create fps clock
  3. clock = pygame.time.Clock()
  4. #
  5. MAPHEIGHT = 80
  6. MAPWIDTH = 80
  7. TILESIZE = 40
  8. TILESONSCREENW = 13
  9. TILESONSCREENH = 13
  10. #set screen size
  11. SCREENH = TILESONSCREENH*TILESIZE
  12. SCREENW = TILESONSCREENW*TILESIZE
  13. #create character vars
  14. circleRad = 40
  15. circleSpeed = 4
  16. #create circle pos vars
  17. circleX = 250
  18. circleY = 250
  19. #create keyboard button vars
  20. rightP = False
  21. leftP = False
  22. upP = False
  23. downP = False
  24. #
  25. playerOnTileS = pygame.Surface((MAPWIDTH*TILESIZE, MAPHEIGHT*TILESIZE))
  26. #constants for the tilemap
  27. GRASS = pygame.image.load("grass.png")
  28. #tilemap
  29. tilemap = [[GRASS for i in range(MAPHEIGHT)] for j in range(MAPWIDTH)]
  30. #create window
  31. DISPLAYSURF = pygame.display.set_mode((SCREENW, SCREENH))
  32. #set window name
  33. pygame.display.set_caption("Snowball Fight!")
  34. #---------------------------------------------------
  35. class Player:
  36. def __init__(self, playX, playY, size):
  37. self.playerX = playX
  38. self.playerY = playY
  39. self.size = size
  40. self.playerSurface = pygame.Surface((size, size))
  41. pygame.draw.rect(self.playerSurface, (19,135,67), (0,0,size, size))
  42. #------------------------------------------------
  43. def update(self):
  44. playerOnTileS.blit(self.playerSurface, (self.playerX, self.playerY))
  45. DISPLAYSURF.blit(playerOnTileS, (SCREENW/2-self.playerX-self.size ,SCREENH/2-self.playerY-self.size))
  46. #game loop
  47. myPlayer = Player(0,0,circleRad)
  48. while True:
  49. DISPLAYSURF.fill((0,0,0))
  50. for event in pygame.event.get():
  51. #if the user closed the window
  52. if event.type == pygame.QUIT:
  53. #close pygame
  54. pygame.quit()
  55. sys.exit()
  56. if event.type == pygame.KEYDOWN:
  57. if event.key == pygame.K_a:
  58. leftP = True
  59. if event.key == pygame.K_d:
  60. rightP = True
  61. if event.key == pygame.K_w:
  62. upP = True
  63. if event.key == pygame.K_s:
  64. downP = True
  65. if event.type == pygame.KEYUP:
  66. if event.key == pygame.K_a:
  67. leftP = False
  68. if event.key == pygame.K_d:
  69. rightP = False
  70. if event.key == pygame.K_w:
  71. upP = False
  72. if event.key == pygame.K_s:
  73. downP = False
  74. if leftP:
  75. myPlayer.move(-circleSpeed,0,True)
  76. if rightP:
  77. myPlayer.move(circleSpeed,0,True)
  78. if downP:
  79. myPlayer.move(0,circleSpeed,True)
  80. if upP:
  81. myPlayer.move(0,-circleSpeed,True)
  82. for row in range(len(tilemap)):
  83. for column in range(len(tilemap[row])):
  84. playerOnTileS.blit(tilemap[row][column],(column*TILESIZE,row*TILESIZE))
  85. myPlayer.update()
  86. pygame.display.update()
  87. clock.tick(30)
Add Comment
Please, Sign In to add comment