-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathObject.py
More file actions
70 lines (67 loc) · 2.46 KB
/
Copy pathObject.py
File metadata and controls
70 lines (67 loc) · 2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import math
import random
import sys
import pygame
import time
from __ultis__ import loadShapeMap
# Player in game 1
class Player():
direction = 'Ahead'
sprite_num = 1
reached = False
map = loadShapeMap(r"./Map/Map.txt")
def __init__(self, x ,y, speed):
self.x = x
self.y = y
self.img = pygame.image.load(r'img/player/Back_1.png')
self.speed = speed
def draw(self, screen):
if(self.sprite_num > 3):
self.sprite_num = 1
self.img = pygame.image.load(r'img/player/{}_{}.png'.format(self.direction, self.sprite_num))
screen.blit(self.img, (self.x, self.y))
def update(self, moveLeft, moveRight, moveUp, moveDown):
if moveLeft == True:
if(self.direction != 'Left'):
self.direction = 'Left'
self.sprite_num = 1
self.sprite_num += 1
for i in range(3,18):
if(self.map[self.y + i][self.x - self.speed] == 1) :
return
if(self.map[self.y + i][self.x - self.speed] == 2) :
self.reached = True
self.x -= self.speed
if moveRight == True:
if(self.direction != 'Right'):
self.direction = 'Right'
self.sprite_num = 1
self.sprite_num += 1
for i in range(3,18):
if(self.map[self.y + i][self.x + 14 + self.speed] == 1) :
return
if(self.map[self.y + i][self.x + 14 + self.speed] == 2) :
self.reached = True
self.x += self.speed
if moveUp == True:
if(self.direction != 'Back'):
self.direction = 'Back'
self.sprite_num = 1
self.sprite_num += 1
for i in range(2,12):
if(self.map[self.y - self.speed][self.x + i] == 1) :
return
if(self.map[self.y - self.speed][self.x] == 2) :
self.reached = True
self.y -= self.speed
if moveDown == True:
if(self.direction != 'Ahead'):
self.direction = 'Ahead'
self.sprite_num = 1
self.sprite_num += 1
for i in range(2,12):
if(self.map[self.y + 19 + self.speed][self.x] == 1) :
return
if(self.map[self.y + 19 + self.speed][self.x] == 2) :
self.reached = True
self.y += self.speed