Problem with coding for movement keys - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: Game Development (https://python-forum.io/forum-11.html) +--- Thread: Problem with coding for movement keys (/thread-19533.html) |
Problem with coding for movement keys - Aresofthesea - Jul-03-2019 I am following a youtube tutorial on how to make a multiplayer game in python: https://www.youtube.com/watch?v=_fx7FQ3SP0U. I am using the online python editor, compiler, and interpreter https://repl.it/languages/python3. Whenever I run the code, I get this error: Python 3.6.1 (default, Dec 2015, 13:05:11) [GCC 4.8.2] on linux File "main.py", line 26 if keys[pygame.K_LEFT] ^ SyntaxError: invalid syntax This is my code: import pygame width = 500 height = 500 win = pygame.display.set_mode((width, height)) pygame.display.set_caption("Client") clientNumber = 0 class Player(): def __init__(self, x, y, width, height, color): self.x = x self.y = y self.width = width self.height = height self.color = color self.rect = (x, y, width, height) self.vel = 3 def draw(self, win): pygame.draw.rect(win, self.color, self.rect) def move(self): keys = pygame.key.get_pressed() if keys[pygame.K_LEFT] self.x -= self.vel if keys[pygame.K_RIGHT] self.x += self.vel if keys[pygame.K_UP] self.y -+ self.vel if keys[pygame.K_DOWN] self.y += self.vel self.rect = (self.x, self.y, self.width, self.height) def redrawWindow(win, player): win.fill(255, 255, 255) player.draw(win) pygame.display.update() def main(): run = True p = Player(50, 50, 100, 100, (0, 255, 0)) pygame.time.clock() while run: clock.tick(60) for event in pygame.event.get(): if event.type == pygame.QUIT: run = False pygame.quit() p.move() redrawWindow(win, p) main()Can anybody tell me what's wrong with it? I'm using Ubuntu, not Windows. I don't know if that helps. I found a pygame tutorial on repl.it. It said to make an account, click new repl, and choose pygame from language list: I pasted in the same code I had before: this is what I got: Python 3.6.7 bash -c polygott-x11-vnc q && DISPLAY=:0 run-project nohup: redirecting stderr to stdout Keyboard Control: auto repeat: off key click percent: 0 LED mask: 00000000 XKB indicators: 00: Caps Lock: off 01: Num Lock: off 02: Scroll Lock: off 03: Compose: off 04: Kana: off 05: Sleep: off 06: Suspend: off 07: Mute: off 08: Misc: off 09: Mail: off 10: Charging: off 11: Shift Lock: off 12: Group 2: off 13: Mouse Keys: off auto repeat delay: 660 repeat rate: 25 auto repeating keys: 00ffffffdffffbbf fadfffefffedffff 9fffffffffffffff fff7ffffffffffff bell percent: 50 bell pitch: 400 bell duration: 100 Pointer Control: acceleration: 2/1 threshold: 4 Screen Saver: prefer blanking: yes allow exposures: yes timeout: 600 cycle: 600 Colors: default colormap: 0x20 BlackPixel: 0x0 WhitePixel: 0xffffff Font Path: /usr/share/fonts/X11/misc,built-ins DPMS (Energy Star): Display is not capable of DPMS nohup: ignoring input and appending output to 'nohup.out' nohup: appending output to 'nohup.out' File "main.py", line 26 if keys[pygame.K_LEFT] ^ SyntaxError: invalid syntax exit status 1 RE: Problem with coding for movement keys - ichabod801 - Jul-03-2019 You need colons (:) at the end of your if statements. You need a colon before any indented block of code in Python. RE: Problem with coding for movement keys - Aresofthesea - Jul-03-2019 I added pygame.init() before width = 500 and after import pygame, because repl.it said to. but it kept saying this: Python 3.6.7 bash -c polygott-x11-vnc q && DISPLAY=:0 run-project nohup: redirecting stderr to stdout PLease help - I'm super confused. It still didn't work, I'll just take more courses until I figure this out. RE: Problem with coding for movement keys - nilamo - Jul-05-2019 That's not an error. It's just a message letting you know what it's doing. It seems like the issue is with trying to start python. Is there a reason you can't install it on your computer? |