From fa0f8a1a4faf3c88c79d54fa65d1025c4e635bc7 Mon Sep 17 00:00:00 2001 From: Luthics Date: Fri, 7 Jul 2023 15:33:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=93=E8=AF=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/Minecraft.ttf | Bin 0 -> 14488 bytes assets/cat.png | Bin 0 -> 1680 bytes assets/enemy.png | Bin 0 -> 3340 bytes day2/Shield.py | 46 +++ day2/__pycache__/Shield.cpython-311.pyc | Bin 0 -> 3820 bytes day2/main.py | 458 ++++++++++++++++++++++++ day2/map.png | Bin 0 -> 97178 bytes day2/sprite.png | Bin 0 -> 20897 bytes day2/tempCodeRunnerFile.py | 1 + day4/main.py | 0 main.py | 59 --- 11 files changed, 505 insertions(+), 59 deletions(-) create mode 100644 assets/Minecraft.ttf create mode 100644 assets/cat.png create mode 100644 assets/enemy.png create mode 100644 day2/Shield.py create mode 100644 day2/__pycache__/Shield.cpython-311.pyc create mode 100644 day2/main.py create mode 100644 day2/map.png create mode 100644 day2/sprite.png create mode 100644 day2/tempCodeRunnerFile.py create mode 100644 day4/main.py delete mode 100644 main.py diff --git a/assets/Minecraft.ttf b/assets/Minecraft.ttf new file mode 100644 index 0000000000000000000000000000000000000000..85c14725a3bf6d67aaf0f03292f9b763c1654f07 GIT binary patch literal 14488 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 Z*c*kN@$GAW{e3oGeYSI$CI24pe*xM150(G` literal 0 HcmV?d00001 diff --git a/assets/cat.png b/assets/cat.png new file mode 100644 index 0000000000000000000000000000000000000000..3e5ab8a27eade013ec09f5e8d559963605769855 GIT binary patch literal 1680 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD~={ftew|C&U%V{r~@e!GRS&9t1Qb zF#Nc&RZa;T;0v!tXCLFfcNd1o;L3{}0LwBNwFcPdLxOz+~^~ z;uumf=k4r^d50BvTqo-;{QF-&&i}p4jeFVgCpU()emUyS*sS07cJ+;I(g)ZcSo}!L z`p$GCZrl6g8{gm8e|*xumSI~jKfl9_Tb3Ml49REo7To1c==q#_e)~nHh5QZ{clEhv z$T9HP?o2T{v`x3bXxWo0hG}xV2ai9tc|JMuN9A`thUbz3Msq&Li!%st>?)MZkM!(h zXP7J~Z)eqzsd0R-FvG#+3*8mUm=jJUM)fVe%gN9(v*WUs1oKgb(lX{93@Kbi?hTI} zChU#BoU&88;Yfy!HB&~iT1w?Tmp4oYlyoA^*bYzFvPHPz$xD_A7VlXbB;4m{>ptHr ze?a8v38A2%-01HN94#*x?l4bke!#dO)uP4H*&x6B5Uav2MXP4V8{7&`g31yvJB}Eb zFdle2YfkEp?~DNoZBKWUF|XJpeL!5nmdBStiDP-fdsYM1Dw$_5SPzt~<@z~AhkMro zi3XRDl`B)SlD^(yb6|bL;Gq*I&FB&&m$a9^fn}x8<*ifhvpP)nS9!WR;QyX#aR%9h z2?p1nxx6a06K3#r5$vi|m0@R4{P1$Q!+GZq3;`N$N@`Q`820P43f<*ia43&KzTw_? z?vNcZ{om713h_5soY@-{_wf=d!}4rK^Y;OZ*%{t_vtM@hw;e;tq56g|zgbfmf_v7! z`+OwQ_JGa3^@mCsMDOTpuv{q2>nxeN_OnniJA=TDd6z}?eNT5x;Q_|XMwM)iX?OKC x*aB|G?cW5_e``T?Tv*Be1p)^iRMg8J;6L$W%GA|L#>$|A!_(EzWt~$(699xz8H4}; literal 0 HcmV?d00001 diff --git a/assets/enemy.png b/assets/enemy.png new file mode 100644 index 0000000000000000000000000000000000000000..b88124fba089e603e227f5b378fa7fd7df64c68b GIT binary patch literal 3340 zcmYjUS5%YR)?Hr`LXnby6qOP{1RJ17q$EP5C?Lhdp$P$_Ac{&;=`CZCptwn*Qtu!Pw`CA3RRM#>iG%8DVq)Us3F}dl@wK&}g1TTO5$Nphz8ozm zBI4piiZHsm8$*kVZs7%$c~5tGC=8D`#iM9O`oXEA{1BzOZ{O&327}QjCMYP#*0DkM z2|h>Njfn~5bao~H&Kj)G@q>dhT#|=QDexhCd8y5DGtT&Uj)bD20zMCQ0He@`=Hh>q zsnbai#gBn)T?~Trp_sqPnqVEvwyC!(+?yJpj_3QdD+)i3pT@7^Sv9HrNyXOk0 zk0D!W{YiF7eMM2(ZAMUR>>>Hr$Ih<&qbmfJL|2>f&zvRgCtD-6ydK2D_ZM0uwpu`? zrA>zT#`lOw^sQTUV)o1vQX>9eM$pN^cEWtXY>bt2%122vP~?8U4WDSBMtpJJQ)enq zCKEHW!|M|@)4hhTg!s=8?L@q1r?tNgg;x#vaN75OCS{Dw@L_Yu`;83rp>yBx#{0zs zB!r3$E8UziWZxYkBgkmWWEq;~v=-~8>kB*_7;O9QK-L*IB`)>^J4|WXJ);t##SdnaKjg6pNg zBS}y1Niep(K8E_>1?rtWjiTpq(&kTFhlY3YnR*ow#{6JI6(&6OLbr#D!&m3E9xH_D zIkQaoQYtP>UH>&x`O|@;A-to4SP@wD=1pQxg-%8K@}<&n*3u5=@XfV1P}~mmI1hnY zEXb@(b?rw8w}C$Xoy96YvHAIlp1--o)6kO3_7uwa822z|Zb+XnYIq1y&kjMD`r;kx zO`3cZdwX@YIo}7rbdMiDj_}^GTIe{fjAj(>g5Y1%_?{;S(ouD@vt^P+Wqy_flq$8H zwGI9^3r2a5*6}}>Qhaoq9OtR(7*Y+?S6Zp+2ZbSFgT-?5Z1nf_oiA$1r?AZANB17i z>fJe1D@mL6{5}#3#SPkCO%o)97WzX#cIVDfa}5oRjVpe57yGh91FdnccXv2zKg5BJ zt2q1>QeFl)vri=ClDqrJ_ACJ!Q$&_DJQMKGuBL{tNtCbzABtSOnRtc9CD=P{Zl5eW~S&c#;+OG7|~WNo?p4~C`1B{pkj7lXdP zD5`_=>#g6nZ|#$Uh#15r5-J*VMaZ2K+n`VU+8h5B3@D|4TV!y0IDt-SlEagqEj28Q zIn1zcL)~8+`sY>Ut9CtCMWfLRt<*P{3u*&rK_xrP1qRAw(^jIRB%u5F{R5Q4g-5zO zJH0Q&+CwJOgGA_AZ9g|uETdGDmuIqwiJR*G62iiscpbJe7wfQODNB1`)HFAJ&5h69!^chVkv&tGfC1u-Pmjf` z@!Itm>A`oz_G2V?ALhyN*P03cOCZOLL~hWq z2&gRu`u;TB@VV0-9tHaeC^8vgJ|E$7r3F$A0w64-Qx}<>q$78i&WPA(cxa9I?e(;e zFXc7HLb>0W)Wtk0gn4<;rC}8XBWh0Nb;>fwf~-&NIKgia@JCg1ondYm7ZM;ENuaQX~x&*0)?yqeDt>x zlcI0=BeX!>4)@eAWO>_J9)qUFlTRO|pu=_9!5s?H!l9e*iUK#gYdqa2>o*WlbZ^A* zW-iB!Y53^DCFbp~jw;YAPkMP9p~c0@@QTQGPA%-WD`W?Sg;gh^itL%v`;C3|JmTZz zyrC75ZvwK(vp6;ARnp~UtMkj!bGuR%Q*`-HMJ6UBu+>Pg%=;xW)*w44n}Pc|F)`tG zITUTN{`%sWV*(CLb!~W1%myBLEZNsr<1?Bb1g1xI#n)@IvZsxHw`C>f$fC#Pnis3ad{rN?FTlwiO#TKWd~pe{+4?YVxz# z>yDlSm05uT^O(KQAKf&tpWw{qOum0M`mE!6H)jOhs2~&(! zWKz!oouX|G#@qpwetZ;e^Qa$pb#YNt{u}5#VkV~QDLlUMWfPYbZtPIaG;F|5;1Gg} zX+eBOK0?hfd(`5l$cv#}9WOUp*$xLp6?Z-3gT7C`F|(7~AQR7hO4oKq?(~z@v9W(s z&UH?>bVw*Un%!9*`+b22Avbc3M5xb|<`rjIN^Pj6_sC94x{tRy=mPH}eb zc3wVQbLgHIpJLzQ;$ro;hPDG=du>-y>O^9Teg(oUAwo!@*TJWjma!G2p`lSr>G{x; ze@HRASRU1Lj6E{z>`vS|8~Z2#RY7hCLPx`%hSH+H@vsla3NP|Skq4Ez%?zR7jAdzv zl-!u8SJKAayLVHRz0-DJB&Fr#dZMD0ae%@=s?PdVTd_DeeX3Lv1JL+UEFn>65o;_? zmE`lWAsZN=9m|Tm<&uA=XJ}`BR9?WSovj*QJbiPx;5EqOH=BBL!hj{#k``K;q-$D|cCnA2hB=p<^T17_QSWhO)$KKuuylbNlYnz6XP%4W_$u2UmdQ z_Wg*Z_xqK@MQEJHncW+mo!h-4m1*oBd{eVi5+YRjZ9YJd%E=^miE+_9*!OW7^Efk; zHU2@24 z78eu#ITmwip1Y{?_h@a*OrF!A*axMFcVGubj5JR weT-lI9eZ^2X(?*M`qO9_LWoKAsx9D%RK7NDweB9*<$iC##K^+1P@fw49~s>E&j0`b literal 0 HcmV?d00001 diff --git a/day2/Shield.py b/day2/Shield.py new file mode 100644 index 0000000..9b69362 --- /dev/null +++ b/day2/Shield.py @@ -0,0 +1,46 @@ +import pygame +import math + + +class Shield(pygame.sprite.Sprite): + def __init__(self, player): + super().__init__() + self.player = player + self.radius = 16 + self.arc_angle = 90 + self.start_angle = 0 + self.shield_image = pygame.Surface( + (self.radius*2, self.radius*2), pygame.SRCALPHA) + self.color = (0, 255, 0) + self.update_shield_image() + + def update_shield_image(self): + self.shield_image.fill((0, 0, 0, 0)) # 透明背景 + pygame.draw.arc(self.shield_image, self.color, self.shield_image.get_rect(), math.radians( + self.start_angle), math.radians(self.start_angle + self.arc_angle), self.radius) + + def generate(self): + self.player_group = pygame.sprite.Group() + self.player_group.add(self.player) + + # 根据玩家的位置和护盾角度调整护盾的位置和角度 + self.rect = self.shield_image.get_rect(center=self.player.rect.center) + self.rect.x -= self.radius + self.rect.y -= self.radius + self.rotate_shield() + + def rotate_shield(self): + rotated_image = pygame.transform.rotate( + self.shield_image, self.player.toword_angle) + self.image = pygame.Surface(rotated_image.get_size(), pygame.SRCALPHA) + self.image.blit(rotated_image, (0, 0)) + self.mask = pygame.mask.from_surface(self.image) + + def damage(self): + self.arc_angle -= 90 + self.start_angle += 90 + if self.arc_angle <= 0: + self.kill() + else: + self.update_shield_image() + self.rotate_shield() diff --git a/day2/__pycache__/Shield.cpython-311.pyc b/day2/__pycache__/Shield.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dbb7456fb5fdb35e0ec1e4b77f2dc1d904460862 GIT binary patch literal 3820 zcmb7H-ESLJ7Qf@KT*u?2U7X;gj^n1;vMwPN2sJe7BED2WB_`bfyK7QLgYP7D;>6+3 zWZR_PRaQb;7g;I~-K`OM@KY#Ck$B*N2ljvPShKP0w6;q2(qt?u1i@A?S|~o!qvQ1AUU@+)-sy`8^MDK38BABcaQ;J_t^tw z-z}h8k4G4hH%3Awse}~K17RgGL*j!{z^zOCP;yrg8By1c&`O`Hmr!@LNMIYH4_lUe zhU~^eUF_<6Fp7OK66h=JdPopTd{>#JglZAj)BAmRW(2WS%-lZ)LHDyDC~N#a6KTJr z|KM8FvK`bnH#BNvMai${4Mnj-8wGU>EFr3r{HAV)Rhm=O_2q(QM|4A_MyC+k*jiTC zG`nwMlP;+_&BhDAd-3_#=3jZx!bYy-1~YzCTT77k^)*tNP;nmT|SXzPJXXd_v7H5_RjTMF%L;8(WmE z%=TcX>`o;FM*XiK{=0(?aP($hrLT$O4IDS|sD(%Cc(gT~CRA1V?bXWRlt}dVX?Bc!Gzx7LFzx@t@V6h`#52c`Le+$b^ zoNC~di6<;PQFnh2U=S$R3rx1H9MH31y~E(bLilqufQhsRk^7ooN3W#q*AO$goBiCdW?pH|TyD%ohYPWRvC2Q)!m&R9rF{kFt@r*T|sn5S*&A$zS;VTjZf@~j>bOgrafgytphv9V& zLj#KLvm&5Y6YS*r*w+gTU@8GY*fgR4Bpd| zsKD3++d^HTUzfVj1G@m)_M@;$zFy|_)DbLxM4cXAt>>obj^4X!T@XulD5tF(8ch#4 zXbtHbG;aWVzD$do8@BAQva-xeew7f;nH=Oa3GLef24#ARsnT_hTwB_*qqJyrS(ly! zcMp=;8CcgS1PJnU4IK0TfNal4vma$?PV9GGmu7t~xO5{W1_6=Z5rv8Mj ziANiF)Wiu3C+hC+Fq9eZaVY=c|AsPbqyQ}Ff+-FyOSS2! z1Jccb8@yZIcrW{uqH43bLp$1Ih3)67#lKvBX1J1Am_ZGWpe= zU{mTi4q03E1rsM7wG|nxJX^ioh$QQgB<%OCS3h|5=B3J|GJn68k2U4VhCFG?r!Dz( zT|NyVO*z?+lct=q{fe?yB%1}M%Zl>erdn`3JP~!~H6$3%be&q6O$m|zZt)kxc5`!M6#6VdwjuJkZ0+0 uP-OVi=Rvgnk|ecIbceq!6xrc#JCv4S6o*Cmt;!WEdh%Q5`tArn@9{^^UegKy literal 0 HcmV?d00001 diff --git a/day2/main.py b/day2/main.py new file mode 100644 index 0000000..10b2f6d --- /dev/null +++ b/day2/main.py @@ -0,0 +1,458 @@ +# coding = utf-8 + +import pygame +import sys +import math +import random +from pygame.sprite import Sprite +from pygame.sprite import Group +from Shield import Shield + + +class Map: + def __init__(self, width, height, tile_size=40): + self.width = width + self.height = height + self.tile_size = tile_size + self.tiles = [] + self.circle = [0, 0, 0, 0] + self.circle_r = 200 + + def render(self, screen): + colors = { + 0: (242, 234, 211), # 浅色 + 1: (255, 0, 0), # 红色 + 2: (0, 0, 255) # 蓝色 + } + for y in range(self.height): + for x in range(self.width): + tile_type = self.tiles[y][x] + tile_color = colors.get(tile_type, (255, 255, 255)) # 默认为白色 + rect = pygame.Rect(x * self.tile_size, y * + self.tile_size, self.tile_size, self.tile_size) + pygame.draw.rect(screen, tile_color, rect) + # 画圆 + # 如果全部为1 + if self.circle[0] == 1 and self.circle[1] == 1 and self.circle[2] == 1 and self.circle[3] == 1: + pygame.draw.circle(screen, (0, 255, 0), (400, 300), self.circle_r) + else: + for i in range(4): + if self.circle[i] == 1: + # 从 90*i 开始画,画 90 度 + pygame.draw.arc(screen, (255, 255, 255), (400 - self.circle_r, 300 - self.circle_r, self.circle_r * 2, self.circle_r * 2), + math.radians(90 * i), math.radians(90 * (i + 1)), 4) + # 画两个边 + pygame.draw.line(screen, (255, 255, 255), (400, 300), (400 + self.circle_r * math.cos(math.radians(90 * i)), + 300 - self.circle_r * math.sin(math.radians(90 * i))), 4) + pygame.draw.line(screen, (255, 255, 255), (400, 300), (400 + self.circle_r * math.cos(math.radians(90 * (i + 1))), + 300 - self.circle_r * math.sin(math.radians(90 * (i + 1)))), 4) + + def generate_map(self): + # 先生成一个空的二维数组 + self.tiles = [] + for y in range(self.height): + row = [] + for x in range(self.width): + row.append(random.randint(-1, 1)) + self.tiles.append(row) + for y in range(self.height): + for x in range(self.width): + self.tiles[y][x] = self.map_func(x, y) + + def map_func(self, x, y): + neighbors_weights = [ + self.get_tile_weight(x-1, y), + self.get_tile_weight(x+1, y), + self.get_tile_weight(x, y-1), + self.get_tile_weight(x, y+1) + ] + weight_sum = sum(neighbors_weights)/4 + random.uniform(-0.3, 0.3) + tile_type = 0 # 默认为绿色 + # 最外面一圈默认为红色 + if x == 0 or y == 0 or x == self.width - 1 or y == self.height - 1: + tile_type = 1 + # 每隔4个格子,随机出现一个蓝色格子 + elif random.random() < 0.01: + tile_type = 2 + return tile_type + + def get_tile_weight(self, x, y): + if x < 0 or y < 0 or x >= self.width or y >= self.height: + return 0 # 超出地图边界,默认权重为0 + return self.tiles[y][x] + + +class Bullet(pygame.sprite.Sprite): + def __init__(self, position, direction, color, owner, speed=8): + super().__init__() + # 使用SRCALPHA色彩格式创建Surface对象 + self.image = pygame.Surface((16, 16), pygame.SRCALPHA) + self.image.fill(color) + # pygame.draw.line(self.image, (255, 255, 255), (0, 15), (32, 15), 4) + # pygame.draw.line(self.image, (255, 255, 255), (15, 0), (15, 32), 4) + self.rect = self.image.get_rect() + self.rect.center = position + self.direction = direction + self.speed = speed + self.owner = owner + self.collision_rect = pygame.Rect( + self.rect.x, self.rect.y, self.rect.width, self.rect.height) + + def update(self): + dx = math.cos(math.radians(self.direction)) * self.speed + dy = -math.sin(math.radians(self.direction)) * self.speed + self.rect.x += dx + self.rect.y += dy + self.collision_rect.x = self.rect.x + self.collision_rect.y = self.rect.y + + +class Mysprite(Sprite): + def __init__(self, id, bot=False): + super().__init__() + if(bot): + self.mast_image = pygame.image.load('./assets/enemy.png') + else : + self.mast_image = pygame.image.load('./assets/cat.png') # 读取图像 + self.original_image = self.mast_image.copy() + self.rect = self.mast_image.get_rect(height=32, width=32) # 获取图像矩形参数 + self.frame_rect = self.rect.copy() # 声明框架参数 + self.rect.x, self.rect.y = 400, 300 + # self.frame_rect.width /= 1 + # self.frame_rect.height /= 4 + self.id = id + self.frame = 0 + self.last_frame = (self.rect.height // self.frame_rect.height) - 1 + self.old_frame = 1 + self.last_time = 0 + self.speed = 4 + self.direction = 1 + self.toword_angle = 0 + self.hp = 10 + self.move_directions = [] + self.collision_rect = pygame.Rect( + self.rect.x, self.rect.y, self.rect.width, self.rect.height) + self.last_use_time = 0 + self.click_move = False + self.click_move_x = 0 + self.click_move_y = 0 + self.bot = bot + self.cool_down = 500 + self.hurt_time = 0 + + def update(self, current_time, rate=100): + if current_time >= self.last_time + rate: + self.frame += 1 + if self.frame > self.last_frame: + self.frame = 0 + self.last_time = current_time + + if self.bot: + self.bot_update() + + current_time = pygame.time.get_ticks() + if current_time - self.hurt_time < 100: + overlay = pygame.Surface(self.image.get_size()) + overlay.fill((255, 0, 0, 25)) + self.image.blit(overlay, (0, 0), + special_flags=pygame.BLEND_MULT) + else: + self.image = self.original_image.copy() + + if self.old_frame != self.frame: + self.frame_rect.x = (self.frame // 4) * self.frame_rect.width + self.frame_rect.y = (self.frame % 4) * self.frame_rect.height + self.old_frame = self.frame + if self.direction == 1: + self.frame_rect.y = 0 # 向上 + elif self.direction == 2: + self.frame_rect.y = self.frame_rect.height # 向下 + elif self.direction == 3: + self.frame_rect.y = self.frame_rect.height * 2 # 向左 + elif self.direction == 4: + self.frame_rect.y = self.frame_rect.height * 3 # 向右 + self.updatemove() + self.image = self.mast_image.subsurface(self.frame_rect) # 这里就是在生成子表面 + self.collision_rect.x = self.rect.x + self.collision_rect.y = self.rect.y + + def attack(self): + # 发射子弹 + # 随机生成一个颜色 + color = (random.randint(0, 255), random.randint( + 0, 255), random.randint(0, 255)) + bullet = Bullet(self.rect.center, self.toword_angle, color, self) + bullet_group.add(bullet) + + def bot_update(self): + # bot 的更新逻辑 + # 随机移动 + if random.random() < 0.05: + self.startmove(random.choice(['left', 'right', 'up', 'down'])) + if random.random() < 0.1: + self.stopmove(random.choice(['left', 'right', 'up', 'down'])) + if random.random() < 0.01: + self.attack() + if random.random() < 0.01: + self.flash() + + def be_hit(self, attacker=None): + self.hp -= 1 + self.hurt_time = pygame.time.get_ticks() + if self.hp <= 0: + if(attacker != None): + if(attacker.bot == False): + attacker.hp += 10 + attacker.cool_down = max(0, attacker.cool_down - 25) + self.kill() + + def updatemove(self): + dx = 0 + dy = 0 + if(self.click_move): + # 判断是否到达目标点 + if(abs(self.rect.centerx - self.click_move_x) < 3 and abs(self.rect.centery - self.click_move_y) < 3): + self.click_move = False + else: + self.move(self.click_move_x - self.rect.centerx, + self.click_move_y - self.rect.centery) + return + if 'left' in self.move_directions: + dx -= 1 + if 'right' in self.move_directions: + dx += 1 + if 'up' in self.move_directions: + dy -= 1 + if 'down' in self.move_directions: + dy += 1 + self.move(dx, dy) + # 三角函数 + + def clickmove(self, x, y): + self.click_move = True + self.click_move_x = x + self.click_move_y = y + + def move(self, dx, dy): + if dx != 0 or dy != 0: + angle = math.atan2(-dy, dx) + self.rect.x += self.speed * math.cos(angle) + if(self.rect.x < 0): + self.rect.x = 0 + elif(self.rect.x + self.rect.width > 800): + self.rect.x = 800 - self.rect.width + + self.rect.y -= self.speed * math.sin(angle) + if(self.rect.y < 0): + self.rect.y = 0 + elif(self.rect.y + self.rect.height > 600): + self.rect.y = 600 - self.rect.height + + # 判断是否和其他玩家碰撞 + for player in group.sprites(): + if player.id != self.id: + if self.collision_rect.colliderect(player.collision_rect): + self.rect.x -= self.speed * math.cos(angle) + self.rect.y += self.speed * math.sin(angle) + self.resetmove() + break + for enemy in enemy_group.sprites(): + if self.collision_rect.colliderect(enemy.collision_rect): + self.rect.x -= self.speed * math.cos(angle) + self.rect.y += self.speed * math.sin(angle) + self.resetmove() + break + + self.toword_angle = math.degrees(angle) + if(dy < 0): + self.direction = 4 + elif(dy > 0): + self.direction = 1 + if(dx < 0): + self.direction = 2 + elif(dx > 0): + self.direction = 3 + + def resetmove(self): + self.move_directions = [] + + def startmove(self, direction): + self.click_move = False + self.move_directions.append(direction) + + def stopmove(self, direction): + if direction in self.move_directions: + self.move_directions.remove(direction) + + def flash(self): + if pygame.time.get_ticks() - self.last_use_time < self.cool_down: + return + self.last_use_time = pygame.time.get_ticks() + for i in range(4): + color = (random.randint(0, 255), random.randint( + 0, 255), random.randint(0, 255)) + bullet = Bullet(self.rect.center, + self.toword_angle + i * 30 - 45, color, self, 16) + bullet_group.add(bullet) + + +pygame.init() +font = pygame.font.Font("./assets/MineCraft.ttf", 24) +screen = pygame.display.set_mode((800, 600)) +color = (255, 255, 255) +tick = pygame.time.Clock() # 第一行初始化了一个Clock对象 +player1 = Mysprite(1) +player2 = Mysprite(2) +group = Group() +bullet_group = Group() +shields = pygame.sprite.Group() +shield1 = Shield(player1) +shield2 = Shield(player2) +shields.add(shield1) +shields.add(shield2) +group.add(player1) +group.add(player2) +player1.rect.center = (200, 300) +player2.rect.center = (600, 300) + +enemy_group = pygame.sprite.Group() +enemy_timer_interval = 5000 +enemy_timer_event = pygame.USEREVENT + 1 +pygame.time.set_timer(enemy_timer_event, enemy_timer_interval) + + +map_tile_size = 8 +map_width = screen.get_width() // map_tile_size +map_height = screen.get_height() // map_tile_size +map_obj = Map(map_width, map_height, map_tile_size) +map_obj.generate_map() + +while True: + tick.tick(60) # 给tick方法加上的参数就成为了游戏绘制的最大帧率 + for event in pygame.event.get(): + if event.type == pygame.QUIT: + sys.exit() + if event.type == pygame.KEYDOWN: # 键盘事件 + if player1 in group: + if event.key == pygame.K_a: + player1.startmove('left') + elif event.key == pygame.K_d: + player1.startmove('right') + elif event.key == pygame.K_w: + player1.startmove('up') + elif event.key == pygame.K_s: + player1.startmove('down') + elif event.key == pygame.K_v: + player1.attack() + elif event.key == pygame.K_b: + player1.flash() + if player2 in group: + if event.key == pygame.K_LEFT: + player2.startmove('left') + elif event.key == pygame.K_RIGHT: + player2.startmove('right') + elif event.key == pygame.K_UP: + player2.startmove('up') + elif event.key == pygame.K_DOWN: + player2.startmove('down') + elif event.key == pygame.K_COMMA: + player2.attack() + elif event.key == pygame.K_PERIOD: + player2.flash() + elif event.key == pygame.K_1: + map_obj.circle[0] = 1 - map_obj.circle[0] + elif event.key == pygame.K_2: + map_obj.circle[1] = 1 - map_obj.circle[1] + elif event.key == pygame.K_3: + map_obj.circle[2] = 1 - map_obj.circle[2] + elif event.key == pygame.K_4: + map_obj.circle[3] = 1 - map_obj.circle[3] + elif event.type == pygame.KEYUP: + if player1 in group: + if event.key == pygame.K_a: + player1.stopmove('left') + elif event.key == pygame.K_d: + player1.stopmove('right') + elif event.key == pygame.K_w: + player1.stopmove('up') + elif event.key == pygame.K_s: + player1.stopmove('down') + if player2 in group: + if event.key == pygame.K_LEFT: + player2.stopmove('left') + elif event.key == pygame.K_RIGHT: + player2.stopmove('right') + elif event.key == pygame.K_UP: + player2.stopmove('up') + elif event.key == pygame.K_DOWN: + player2.stopmove('down') + + elif event.type == pygame.MOUSEBUTTONDOWN: + if event.button == 1: + player1.clickmove(event.pos[0], event.pos[1]) + elif event.button == 3: + player2.clickmove(event.pos[0], event.pos[1]) + if event.type == enemy_timer_event: + enemy = Mysprite(len(enemy_group.sprites()) + 3, True) + enemy.rect.center = (random.randint(0, 800), + random.randint(0, 600)) + enemy_group.add(enemy) + screen.fill(color) + ticks = pygame.time.get_ticks() + map_obj.render(screen) + + group.update(ticks) + bullet_group.update() + enemy_group.update(ticks) + # shields.update() + + group.draw(screen) + bullet_group.draw(screen) + enemy_group.draw(screen) + # shields.draw(screen) + + if player1 in group: + if player1.hp > 0: + # 左上角血量显示 + player1_hp_text = font.render( + "HP " + str(player1.hp), True, (0, 0, 0)) + screen.blit(player1_hp_text, (10, 10)) + # 下面是技能冷却时间显示,显示一个条形,总宽度 100px + if pygame.time.get_ticks() - player1.last_use_time < 500: + pygame.draw.rect(screen, (255, 255, 0), (10, 30, 100, 10)) + # 从左向右 + pygame.draw.rect(screen, (0, 128, 255), (10, 30, (pygame.time.get_ticks() - + player1.last_use_time) / 5, 10)) + else: + pygame.draw.rect(screen, (0, 128, 255), (10, 30, 100, 10)) + + if player2 in group: + if player2.hp > 0: + # 右上角血量显示 + player2_hp_text = font.render( + "HP " + str(player2.hp), True, (0, 0, 0)) + hp_text_width = player2_hp_text.get_width() + screen.blit(player2_hp_text, + (screen.get_width() - hp_text_width - 10, 10)) + # 下面是技能冷却时间显示,显示一个条形,总宽度 100px + if pygame.time.get_ticks() - player2.last_use_time < 500: + pygame.draw.rect(screen, (255, 255, 0), + (screen.get_width() - 110, 30, 100, 10)) + # 从右向左 + pygame.draw.rect(screen, (0, 128, 255), (screen.get_width() - 110 + 100 - (pygame.time.get_ticks() - + player2.last_use_time) / 5, 30, (pygame.time.get_ticks() - player2.last_use_time) / 5, 10)) + else: + pygame.draw.rect(screen, (0, 128, 255), + (screen.get_width() - 110, 30, 100, 10)) + + for bullet in bullet_group.sprites(): + for player in group.sprites(): + if bullet.collision_rect.colliderect(player.collision_rect) and bullet.owner.id != player.id: + player.be_hit() + bullet.kill() + for enemy in enemy_group.sprites(): + if bullet.collision_rect.colliderect(enemy.collision_rect) and bullet.owner.bot != True: + enemy.be_hit(bullet.owner) + bullet.kill() + pygame.display.update() + pygame.event.pump() diff --git a/day2/map.png b/day2/map.png new file mode 100644 index 0000000000000000000000000000000000000000..10a9e0e9704d4dc9b8cae8a97c671251fd62a88c GIT binary patch literal 97178 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 P_#-E+bT{X=!SnwE>j`QK literal 0 HcmV?d00001 diff --git a/day2/sprite.png b/day2/sprite.png new file mode 100644 index 0000000000000000000000000000000000000000..655e54ae6838405a6e67ff94c72932ec38e7467e GIT binary patch literal 20897 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 IM6N<$f~ 200: - circles.remove((pos, radius)) - - # 更新圆的半径 - else: - circles[circles.index((pos, radius))] = (pos, radius) - - # 更新屏幕 - pygame.display.flip() - - # 控制帧率 - clock.tick(60) - -# 退出游戏 -pygame.quit() \ No newline at end of file