From 324c69af0ad96ff44fb5f681435a9aa2c1bddd23 Mon Sep 17 00:00:00 2001 From: DUCHMANN LEO <@l.duchmann> Date: Thu, 8 Sep 2022 08:02:36 +0200 Subject: [PATCH] Ameliorations --- "L\303\251o/Champs.py" | 30 +++++++++ "L\303\251o/Game.py" | 39 ++++++++++++ "L\303\251o/T3.py" | 36 +++++++---- "L\303\251o/Temps.py" | 57 +++++++++++++++++- .../__pycache__/Champs.cpython-39.pyc" | Bin 0 -> 1813 bytes "L\303\251o/__pycache__/Game.cpython-39.pyc" | Bin 0 -> 1265 bytes assets/champ.png | Bin 0 -> 14361 bytes 7 files changed, 149 insertions(+), 13 deletions(-) create mode 100644 "L\303\251o/Champs.py" create mode 100644 "L\303\251o/Game.py" create mode 100644 "L\303\251o/__pycache__/Champs.cpython-39.pyc" create mode 100644 "L\303\251o/__pycache__/Game.cpython-39.pyc" create mode 100644 assets/champ.png diff --git "a/L\303\251o/Champs.py" "b/L\303\251o/Champs.py" new file mode 100644 index 0000000..037c231 --- /dev/null +++ "b/L\303\251o/Champs.py" @@ -0,0 +1,30 @@ +import pygame + +police = pygame.font.SysFont("Alef", 18) #pygame.font.get_fonts() -> liste des fonts + +class Champs: + def __init__ (self, tempature, humidite, tempsAvantMaturation, pos, image): + self.temperature = tempature + self.humidite = humidite + self.TAM = tempsAvantMaturation + self.pos = pos + self.image = image + self.rect = pygame.rect.Rect(self.pos, self.image.get_rect().size) + + def showInfo (self, screen): + #afficher à l'endroit de self.x et self.y + text = police.render("Température : " + str(self.temperature), False, (0,0,0)) #prix d'achat si buisson + + pygame.draw.rect(screen, (255, 255, 255), pygame.rect.Rect(self.pos,(100,100))) + screen.blit(text, self.pos) + + def draw (self, screen): + screen.blit(self.image, self.pos) + +class Houblon (Champs): + def __init__ (self, pos): + super().__init__(0, 0, 0, pos, pygame.image.load('../assets/champ.png')) + +class Buisson (Champs): + def __init__ (self, pos): + super().__init__(0, 0, 0, pos, pygame.image.load('../assets/buisson.png')) \ No newline at end of file diff --git "a/L\303\251o/Game.py" "b/L\303\251o/Game.py" new file mode 100644 index 0000000..eba2e29 --- /dev/null +++ "b/L\303\251o/Game.py" @@ -0,0 +1,39 @@ +import pygame +from Champs import * + +class Game: + def __init__ (self, screen): + self.screen = screen + self.score = 0 + self.money = 10000 + self.month = "janvier" + self.champs = [Buisson((0,0)),Houblon((800,500))] + self.clock = pygame.time.Clock() + self.selectedChamp = None + + def gameLoop (self): + while True: + self.screen.fill((0,0,0)) + isChamp = False + #ici il faudra charger les textures du jeu + for champ in self.champs: + champ.draw(self.screen) + + for event in pygame.event.get(): + if event.type == pygame.QUIT or event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE: + exit() + elif event.type == pygame.MOUSEMOTION: + for champ in self.champs: + if champ.rect.contains(*event.pos,0,0): + self.selectedChamp = champ + isChamp = True + + if not isChamp: + self.selectedChamp = None + + if self.selectedChamp: + self.selectedChamp.showInfo(self.screen) + + + pygame.display.update() + self.clock.tick(60) \ No newline at end of file diff --git "a/L\303\251o/T3.py" "b/L\303\251o/T3.py" index a50289d..d30eaa3 100644 --- "a/L\303\251o/T3.py" +++ "b/L\303\251o/T3.py" @@ -1,8 +1,9 @@ -import pygame, time, random, os -from datetime import date - +import pygame, time pygame.init() +from datetime import date +import Game + pygame.display.set_caption("Climate Simulator : Global Organization") screen = pygame.display.set_mode((0,0), pygame.FULLSCREEN) @@ -14,27 +15,27 @@ class month: current_month = month(date.today().strftime("%b")) #background (2è scène) -background = pygame.image.load('assets/accueil.jpg') +background = pygame.image.load('../assets/accueil.jpg') background = pygame.transform.scale(background, (screen.get_width(), screen.get_height())) #bannière -banner = pygame.image.load('assets/banner.png') +banner = pygame.image.load('../assets/banner.png') banner = pygame.transform.scale(banner, (500,500)) banner_rect = banner.get_rect() banner_rect.x = screen.get_width() / 4 #bouton -play_button = pygame.image.load('assets/button.png') +play_button = pygame.image.load('../assets/button.png') play_button = pygame.transform.scale(play_button,(400,150)) play_button_rect = play_button.get_rect() play_button_rect.x = screen.get_width() / 2.8 play_button_rect.y = screen.get_height() / 2.4 #buisson -bush = pygame.image.load('assets/buisson.png') +bush = pygame.image.load('../assets/buisson.png') #cadenas -lock = pygame.image.load('assets/cadenas.png') +lock = pygame.image.load('../assets/cadenas.png') screen.blit(background, (0,0)) screen.blit(play_button, play_button_rect) @@ -44,8 +45,19 @@ screen.blit(lock, (bush.get_width()/2,bush.get_height()/2+40)) pygame.display.update() +inMenu = True +while inMenu: + for event in pygame.event.get(): + if event.type == pygame.MOUSEBUTTONDOWN and play_button_rect.contains(*event.pos,0,0): + print("LANCEMENT") + inMenu = False + elif event.type == pygame.QUIT or event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE: + exit(0) + +Game.Game(screen).gameLoop() + #après l'appui de start -time.sleep(2) -screen.fill((0,0,0)) -pygame.display.flip() -time.sleep(2) \ No newline at end of file +#time.sleep(2) +#screen.fill((0,0,0)) +#pygame.display.flip() +#time.sleep(2) \ No newline at end of file diff --git "a/L\303\251o/Temps.py" "b/L\303\251o/Temps.py" index b272b63..364905b 100644 --- "a/L\303\251o/Temps.py" +++ "b/L\303\251o/Temps.py" @@ -1,3 +1,58 @@ +import random + class Temps: + climats = { + "janvier" : { + "temp" : [20,40], + "humidité" : [0,10] + }, + "février" : { + + }, + "mars" : { + + }, + "avril" : { + + }, + "mai" : { + + }, + "juin" : { + + }, + "juillet" : { + + }, + "août" : { + + }, + "septembre" : { + + }, + "octobre" : { + + }, + "novembre" : { + + }, + "décembre" : { + + } + } + def _init_ (self): - self. \ No newline at end of file + self.temperature + self.humidite + self.neige + self.currentMonth = "janvier" + + def randomTemp (self): + intervalleTemp = self.climats[self.currentMonth]["temp"] + + return random.randint(*intervalleTemp) # *intervalleTemp = intervalleTemp[0], intervalleTemp[1] + + def randomHumidite (self): + intervalleHumidite = self.climats[self.currentMonth]["humidité"] + + return random.randint(*intervalleHumidite) diff --git "a/L\303\251o/__pycache__/Champs.cpython-39.pyc" "b/L\303\251o/__pycache__/Champs.cpython-39.pyc" new file mode 100644 index 0000000000000000000000000000000000000000..127f3c39c396fcc1ff306e905315ddd012fdc539 GIT binary patch literal 1813 zcmb_cL2uhO6edMVmXjvUmKM#hZVS+2m=AI9MNu@%kaoc80ZV%k3<!!yI}&8cBdK*U zJYYZy^l#Wl|Ak$9-XGv~r<``$d3%qxVi!AZH2CQ~l74#cdmokT>}(Mjzdt=lhn$c< z(AgZYMxMdcF8~A)v>*|YB&Rb^c!JHnh&?BQ3;!(<{*@PT@B+~SuO;~vi+u1y(FVWm z{6Nq%(%HI(XrveM<3bLuKL$I+h0WoC^9-hb2p~yB1&KUCh4+?3OfbRW39l6aJblrE zprH*;E|Sq$rvdz>8EE@3PhjdN08=_8F`0URbjkp|DF<XzACMbA4`!_?$zdnwvv5xG z_8iX!f}D{B?RB>7wvnT;REepTwBbcP%0y;l#9kf0v}{~y>t~~6C~Yvl93~@axss`| z{0GEvC{4WdbvBWmz;Z2%LDa^WE~3JWqdVy9<DZh!yu{_iWL2qJu%$wP1yQ%*@z-mB zlgItnS}NTyWF_kUH&t4XWNCE&<m}I1e|!FYKP@01Bad`8s*A)_>S$P0=Sgu?sbNxP z6BoPx-TOt=UlQ0IU)nH^vobSrjOplG0E7lNzsc>@$>vmw{b~jS1G99TpMqh?j0$Ri z$DCc!d&EhH{o)y(`?Fw51qW-%dno+5H)j<3G;3p*@^J1^kREh6=+#*DE1>56V#)vE z<HOSqQxulh&|%kq;{poHLC3omXzv3+1A}o@WGOUA$x=vVnKnwHNK_lZa-otp3h#y5 zMnKjrKQA%^Z`wsC(5aHLwA{#_jqAh`_HZ-Q7uB0@%Rz-lHPT1C1Mfb);jG#JfHUL| zFPr1+4j52Bf$Bl6xz{kD@B}1r01u}Fms`hkS*cHO6$x4=qwaxw7p8Xop_A=Z->}3U zs1Mp)f=1)mZpHBk^i!aHD~^AxlVZ7}KEjZnB4D(QH@J6U%?dk?1iErV8irxZt);N` z!N7w!^nHNlTE8O$kOy4tFk<h3g@{A5nQgtO>hq#1|HTt_2?Oav07I^vx*!0Zg2r+- z<HDQMxxZ2k>p5ji_PgCjiPqBSM=5?My5n-V@U5?FxXjBUF|gy+@}f$_Vnr+pU_os= zj?)4n#PJ5fNDdO;5WKfay4&20g|Dzy^%=tF2>2JfvkI2VqG$p-J|E%{N9q?~VW(Z_ zkSg^58=+s<nb!Xsp?BAWo-YF<rRosUR1XkbDQl5n-N?cXRjYJvs8V0zzt##~Q}GpS zAd3wZ=yzJH>pG}PV_RpJ`V<U>cgJbZ@ul$OM#!6NZ1`j;_ow*n(D=Cuy<Km2e~<qI DD0Oxr literal 0 HcmV?d00001 diff --git "a/L\303\251o/__pycache__/Game.cpython-39.pyc" "b/L\303\251o/__pycache__/Game.cpython-39.pyc" new file mode 100644 index 0000000000000000000000000000000000000000..6814f9763fe9b428fde3aa5e130d61a265cca475 GIT binary patch literal 1265 zcmYjQPiq@T6rY*>Ygtn4q)9G0ln^Kza1ZXSgy2+m9Fs(9E1S|qWm)g6<yozE<e60x z1sMVk^j7FMkbBEl=&8_eG4$3`PQA3yW8WKD)U(WQ-n@DLX5MepR;xi^{QKkG><f>O zKXG$?II!7)sqX`D!f8ojTv<sE$v)u@ci$84Ua**P+9#3s5$s4eqJ}=qP`o}EY<6Jk zdjL6!DJSU0*?ST@%TTe)JqY6)cRwBH8G5V+%2-YZrrrUV(>Y0?BtVD($hZUO)Gic6 zYma*ubclMt4vKKGc1b{PaKv>^FiTfah$A*WBP0%rw0b3S6)~%{5Hay7q!fRHS=2PX z&QzXPv8OYs^4J^8DxVo#>eD#*YAUprRUAB%)8kTB#?MaE@kAScG8@8Wj9UvpuT#ow zWW3BSEuEKnR_DBfwh=QfC{C0MWqly31<OBufX<hLBb_TfD09iDgI$?T$9YxjL8t%M zyI=QvgRB(ew9dD*7*ETzmTGHQ%Hy=$l4_V%;%!<BSq)zN{y`4#VLzYDOqe915_OV5 z--&Jm5b9rjH))f;ZCT5eRfbQs8dx8?*<Sns!kiRjK{>so6v%N7Jt^2O`C;Rn&DjFF zQV={jyHmS`x9~3soV_`B=1viSCLA#xU&(7Drj9{wfPNk2x_LpsbNlMN1-k94=npY^ z(JpQb37l^HLb>y^o!^q5h^pt<`%Uhi)3bU`^|tN&CPX5|ruq$WadTA}WV^Na<PtK0 z=Jw(a_iVjDb<2~;`JWV4dTR0T<0H6xbl3LFxF@14l@A)@a+SVT0g7J!3OZ$+VO|3R zW)tASH%AADCV0O0{ci8Ou5m^{qVRdL*Y7;}de6A|8&R9}m%XF@-pk(ML9c6E1r#x1 z20TkerHwO@TCGFyIMk=|^+9zaO~8eol<Ca)(+LMADEzOHa@i<yRTGT^p)Jc|&k|GJ z0;Q$c5|9BVM5exwa)LYk0D!P2by<V9S(`qfArPZM?;%Z?OGD<<w$oTqW#!wAJY-h| zp_0Tjl4J~|Em3YJ$=Nh5mnZ55L|69_km%O{lPmn!k!Knqq~V&?Kqv57W8YpyTirEJ R8)$ixN6V~_k+-WD>_5okE5HB% literal 0 HcmV?d00001 diff --git a/assets/champ.png b/assets/champ.png new file mode 100644 index 0000000000000000000000000000000000000000..4058c34c0ec7d7b797a5aac2bd871fe6639423dd GIT binary patch literal 14361 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 TcTxzT00000NkvXXu0mjfKsgEN literal 0 HcmV?d00001 -- GitLab