From 927f2ff2842b7aa1c883deb64f789a577e981a9b Mon Sep 17 00:00:00 2001 From: Peter Gerwinski Date: Thu, 29 Mar 2018 14:47:05 +0200 Subject: [PATCH] Beanies. --- assets/beanie.png | Bin 0 -> 237 bytes assets/molpy.xcf.gz | Bin 3742 -> 4559 bytes assets/playerLeftDownBeanie.png | Bin 0 -> 453 bytes assets/playerLeftUpBeanie.png | Bin 0 -> 449 bytes assets/playerRightDownBeanie.png | Bin 0 -> 455 bytes assets/playerRightUpBeanie.png | Bin 0 -> 467 bytes molpyup.py | 102 +++++++++++++++++++++---------- 7 files changed, 70 insertions(+), 32 deletions(-) create mode 100644 assets/beanie.png create mode 100644 assets/playerLeftDownBeanie.png create mode 100644 assets/playerLeftUpBeanie.png create mode 100644 assets/playerRightDownBeanie.png create mode 100644 assets/playerRightUpBeanie.png diff --git a/assets/beanie.png b/assets/beanie.png new file mode 100644 index 0000000000000000000000000000000000000000..1945c63391642cf51d218b187a92dfc2baacf3f4 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^oIuRV!3HF!2OrA@Qfx`y?k)`fL2$v|<&!~53Opi< z85p>QL70(Y)*K0-AbW|YuPgf_W?61UHfg0@JwPF)%#er@=ltB<)VvZPmw_RmD77pz zzqD9g!QInM!7(p0H?btYsO6C>Gf>jU)5S4_<9h9xjhqbz46GNYZ;`ZGQo?Lr$Re#? z&>x{@CaBcG&c5HmF5j#~#xA0;H=(SN!SeaPD~4`sO*K`whAo}K@cj7UH*&{*JY^I7 VBV)LHYhfP9R!>(ymvv4FO#pCFMd|4Ucc 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 I>zOS80IdgGM*si- diff --git a/assets/playerLeftDownBeanie.png b/assets/playerLeftDownBeanie.png new file mode 100644 index 0000000000000000000000000000000000000000..c17862566ae71ad0ec66b25ae0aa1a349d898959 GIT binary patch literal 453 zcmeAS@N?(olHy`uVBq!ia0vp^+CVJM!3HEJJ>4b-q}YQL70(Y)*K0-AbW|YuPgf_W?61&;oz_aIiQeIW=KSdbAE1aYF-JD%fJv&lv~}k!&z>`BX@70`<0UqeCpX)E`n02#Y0LZHwh2#4HnN{`i|dV)Zm3yZVx#pz s@n}_9!qt+>w4b`3OIUpVylsEO7jko%&G$T|BcRaqboFyt=akR{08f*)P5=M^ literal 0 HcmV?d00001 diff --git a/assets/playerLeftUpBeanie.png b/assets/playerLeftUpBeanie.png new file mode 100644 index 0000000000000000000000000000000000000000..4403921c2ee2f73f79eade4a6d8deb4fdfa2476e GIT binary patch literal 449 zcmeAS@N?(olHy`uVBq!ia0vp^+CVJM!3HEJJ>4b-q}YQL70(Y)*K0-AbW|YuPgf_W?61ottig*6M#ZWnIRD+&iT2ysd*(pE(1eAQEFLc zerd6~g1e`if@5B0ZemG(QOhG&W(EdE1y2{p5Rc<;!w&McCi24!Dpc~QB zso(V=-8-yM^-Zl`vc)$R=6TcasHnKzxto~A+92Qb%iy?rl2^l0D_^fI*Q6LOl*ZkzowVfc__Fg?n`+I{uQ$t^C%o9C!*R>~s#=s&Wa)w(hjZxvX4b-q}YQL70(Y)*K0-AbW|YuPgf_W?61&lW#Gmr9dI2%#er@=ltB<)VvZPmw_RmD77pz zzqD9g!QInM!7(p0H?btYsO6C>GXn#onx~6nh{y4_(+;j}HsEQi58uGR?)E`vCX<>| zQtKUw#?S;&zIUyQOiU+ynzY4#)l!Z{H~KywWfQj3ezfQEOru)I2?q`D+O=+3m(Ac1 zD00y3=E-fj+UZu;qN>y*JS#MIa!oXGKhv`;^TK!ARjUr!oHt~iHg$t{(d_8#W(H1U z@9U+9&TO(0W!Mxq*ZN$O<)yoSZ08*|$oYKy!khbwtLNVP`q9ZpQFT^-YGlB)r<3Oz zvN0I+C0nFEFVWv3`pCcJ&sW>p`m+*?@A0vUFv*H`&abwPZwQ_{A!#ws)Y?#uZ~l!Y zU3K@eT4aCko%m+CLR0{IxL@Fj6t7P2-}i!^&Dd||dwG75t!d=0TYS&n?aD~^(_E)l tY5dpspxb?QS9@*AZyjFMg{vd$@?2>@b3v7-P0 literal 0 HcmV?d00001 diff --git a/assets/playerRightUpBeanie.png b/assets/playerRightUpBeanie.png new file mode 100644 index 0000000000000000000000000000000000000000..06c454570ace3c3ad078175a396210db1d94fecd GIT binary patch literal 467 zcmeAS@N?(olHy`uVBq!ia0vp^+CVJM!3HEJJ>4b-q}YQL70(Y)*K0-AbW|YuPgf_W?61oEBAf-zW{}lGD9Ltobz*YQ}arITn2`KqSUg? z{L*4|1$R$31;@P1+{BXnqLxRl%nS^SMxHK?As)xyh8^r}G2ofAU`m6A;?@>()*X`j zCT1wwdo2*nNSbd`JO8%m8z~P3$MQ>2r8!Ud6?*U@KqO^-F%wE8VV_8XQZQrFL#Ffnzt&dbOmN#pWm`UprRy3{sGgAtUONvhVQld zc@K8Rx!cHQRdRN6Fg)1Hugj~ZRPo+k=KRiOnPK-C64tUZ@EkrcUH@1cSB=`U*vjm; zT5hRTS2mk$P%33tSrp#sv2U`3R;qPs=ai876LanDG?G1C9*S#bYdz2qW$1Zak=1Nj zWheijAnlL0t^G~ypgSIa3PUei*RT73WMci>?DAXuXAa)KW%~1FJ}7KGUHx3vIVCg! E034FB^Z)<= literal 0 HcmV?d00001 diff --git a/molpyup.py b/molpyup.py index f558d2e..04482c5 100644 --- a/molpyup.py +++ b/molpyup.py @@ -46,9 +46,12 @@ class MolpyUp: self.screen = pygame.display.set_mode((self.sx, self.sy)) pygame.font.init() self.font = pygame.font.SysFont("xkcd,sans", 25) + self.xmovementmax = 10 self.platformTypeNormal = 0 self.platformTypeFloating = 1 self.platformTypeBreaking = 2 + self.itemTypeAccelerator = 0 + self.itemTypeBeanie = 1 self.imgPlatformNormal = pygame.image.load("assets/platformNormal.png").convert_alpha() self.imgPlatformFloating = pygame.image.load("assets/platformFloating.png").convert_alpha() self.imgPlatformBreaking = pygame.image.load("assets/platformBreaking.png").convert_alpha() @@ -57,9 +60,28 @@ class MolpyUp: self.imgPlayerRightDown = pygame.image.load("assets/playerRightDown.png").convert_alpha() self.imgPlayerLeftUp = pygame.image.load("assets/playerLeftUp.png").convert_alpha() self.imgPlayerLeftDown = pygame.image.load("assets/playerLeftDown.png").convert_alpha() + self.imgPlayerRightUpBeanie = pygame.image.load("assets/playerRightUpBeanie.png").convert_alpha() + self.imgPlayerRightDownBeanie = pygame.image.load("assets/playerRightDownBeanie.png").convert_alpha() + self.imgPlayerLeftUpBeanie = pygame.image.load("assets/playerLeftUpBeanie.png").convert_alpha() + self.imgPlayerLeftDownBeanie = pygame.image.load("assets/playerLeftDownBeanie.png").convert_alpha() self.imgAccelerator = pygame.image.load("assets/accelerator.png").convert_alpha() self.imgAcceleratorUsed = pygame.image.load("assets/acceleratorUsed.png").convert_alpha() + self.imgBeanie = pygame.image.load("assets/beanie.png").convert_alpha() + def reset(self): + self.cameray = 0 + self.score = 0 + self.items = [] + self.playerx = self.sx // 2 + self.playery = self.sy * 3 // 4 + self.direction = 0 + self.jump = 0 + self.gravity = 0 + self.xmovement = 0 + self.playerWearsBeanie = False + self.platforms = [[self.playerx, self.playery + self.sy // 6, self.platformTypeNormal, False]] + self.generatePlatforms() + def updatePlayer(self): if not self.jump: self.playery += self.gravity @@ -91,14 +113,26 @@ class MolpyUp: self.cameray -= self.sy // 60 if not self.direction: if self.jump: - self.screen.blit(self.imgPlayerRightDown, (self.playerx, self.playery - self.cameray)) + if self.playerWearsBeanie: + self.screen.blit(self.imgPlayerRightDownBeanie, (self.playerx, self.playery - self.cameray)) + else: + self.screen.blit(self.imgPlayerRightDown, (self.playerx, self.playery - self.cameray)) else: - self.screen.blit(self.imgPlayerRightUp, (self.playerx, self.playery - self.cameray)) + if self.playerWearsBeanie: + self.screen.blit(self.imgPlayerRightUpBeanie, (self.playerx, self.playery - self.cameray)) + else: + self.screen.blit(self.imgPlayerRightUp, (self.playerx, self.playery - self.cameray)) else: if self.jump: - self.screen.blit(self.imgPlayerLeftDown, (self.playerx, self.playery - self.cameray)) + if self.playerWearsBeanie: + self.screen.blit(self.imgPlayerLeftDownBeanie, (self.playerx, self.playery - self.cameray)) + else: + self.screen.blit(self.imgPlayerLeftDown, (self.playerx, self.playery - self.cameray)) else: - self.screen.blit(self.imgPlayerLeftUp, (self.playerx, self.playery - self.cameray)) + if self.playerWearsBeanie: + self.screen.blit(self.imgPlayerLeftUpBeanie, (self.playerx, self.playery - self.cameray)) + else: + self.screen.blit(self.imgPlayerLeftUp, (self.playerx, self.playery - self.cameray)) def updatePlatforms(self): for p in self.platforms: @@ -131,12 +165,18 @@ class MolpyUp: platformType = 1 else: platformType = 2 - - self.platforms.append([random.randint(0, self.sx * 7 // 8), self.platforms[-1][1] - self.sy // 12, platformType, 0]) - coords = self.platforms[-1] + self.platforms.append([random.randint(0, self.sx * 7 // 8), self.platforms[-1][1] - self.sy // 12, platformType, False]) check = random.randint(0, 1000) if check > 900 and platformType == 0: - self.accelerators.append([coords[0], coords[1] - self.imgPlatformNormal.get_height(), 0]) + x = self.platforms[-1][0] + y = self.platforms[-1][1] + itemType = random.randint(0,1000) + if itemType < 900: + itemType = self.itemTypeAccelerator + self.items.append([x, y + 10, itemType, False]) + else: + itemType = self.itemTypeBeanie + self.items.append([x + self.imgPlatformNormal.get_width() * 3 // 4, y + 6, itemType, False]) self.platforms.pop(0) self.score += 1 if p[2] == self.platformTypeNormal: @@ -148,16 +188,28 @@ class MolpyUp: self.screen.blit(self.imgPlatformBreaking, (p[0], p[1] - self.cameray)) else: self.screen.blit(self.imgPlatformBroken, (p[0], p[1] - self.cameray)) - - for accelerator in self.accelerators: - if accelerator[-1]: - self.screen.blit(self.imgAcceleratorUsed, (accelerator[0], accelerator[1] - self.cameray)) - else: - self.screen.blit(self.imgAccelerator, (accelerator[0], accelerator[1] - self.cameray)) - if pygame.Rect(accelerator[0], accelerator[1], self.imgAccelerator.get_width(), self.imgAccelerator.get_height()).colliderect(pygame.Rect(self.playerx, self.playery, self.imgPlayerRightUp.get_width(), self.imgPlayerRightUp.get_height())): - self.jump = self.sy // 12 - self.cameray -= self.sy // 12 - accelerator[-1] = True + for item in self.items: + if item[2] == self.itemTypeAccelerator: + if item[-1]: + imgItem = self.imgAcceleratorUsed + else: + imgItem = self.imgAccelerator + elif item[2] == self.itemTypeBeanie: + if not item[-1]: + imgItem = self.imgBeanie + else: + imgItem = None + if imgItem: + self.screen.blit(imgItem, (item[0], item[1] - imgItem.get_height() - self.cameray)) + if not item[-1]: + if pygame.Rect(item[0], item[1] - imgItem.get_height(), imgItem.get_width(), imgItem.get_height()).colliderect(pygame.Rect(self.playerx, self.playery, self.imgPlayerRightUp.get_width(), self.imgPlayerRightUp.get_height())): + if item[2] == self.itemTypeAccelerator: + self.jump = self.sy // 12 + self.cameray -= self.sy // 12 + item[-1] = True + elif item[2] == self.itemTypeBeanie: + self.playerWearsBeanie = True + item[-1] = True def generatePlatforms(self): on = self.sy @@ -178,20 +230,6 @@ class MolpyUp: pygame.draw.line(self.screen, (222,222,222), (x * 12, 0), (x * 12, self.sy)) pygame.draw.line(self.screen, (222,222,222), (0, x * 12), (self.sx, x * 12)) - def reset(self): - self.cameray = 0 - self.score = 0 - self.accelerators = [] - self.playerx = self.sx // 2 - self.playery = self.sy * 3 // 4 - self.direction = 0 - self.jump = 0 - self.gravity = 0 - self.xmovement = 0 - self.xmovementmax = 10 - self.platforms = [[self.playerx, self.playery + self.sy // 6, self.platformTypeNormal, 0]] - self.generatePlatforms() - def showScore(self): line1 = self.font.render("Press ENTER to restart,", -1, (0, 0, 0)) line2 = self.font.render("ESC to quit.", -1, (0, 0, 0)) -- 2.30.2