使用统一双引号
This commit is contained in:
parent
4e055429b0
commit
5f4c571ff6
4
.github/workflows/build-pr.yml
vendored
4
.github/workflows/build-pr.yml
vendored
@ -14,7 +14,7 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
python_version:
|
python_version:
|
||||||
- '3.10'
|
- "3.10"
|
||||||
name: Windows Python ${{ matrix.python_version }}
|
name: Windows Python ${{ matrix.python_version }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
@ -91,7 +91,7 @@ jobs:
|
|||||||
# fail-fast: false
|
# fail-fast: false
|
||||||
# matrix:
|
# matrix:
|
||||||
# python_version:
|
# python_version:
|
||||||
# - '3.10'
|
# - "3.10"
|
||||||
# name: Ubuntu Python ${{ matrix.python_version }}
|
# name: Ubuntu Python ${{ matrix.python_version }}
|
||||||
# steps:
|
# steps:
|
||||||
# - name: 🛎️ Checkout
|
# - name: 🛎️ Checkout
|
||||||
|
|||||||
4
.github/workflows/build.yml
vendored
4
.github/workflows/build.yml
vendored
@ -16,7 +16,7 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
python_version:
|
python_version:
|
||||||
- '3.10'
|
- "3.10"
|
||||||
name: Windows Python ${{ matrix.python_version }}
|
name: Windows Python ${{ matrix.python_version }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
@ -100,7 +100,7 @@ jobs:
|
|||||||
# fail-fast: false
|
# fail-fast: false
|
||||||
# matrix:
|
# matrix:
|
||||||
# python_version:
|
# python_version:
|
||||||
# - '3.10'
|
# - "3.10"
|
||||||
# name: Ubuntu Python ${{ matrix.python_version }}
|
# name: Ubuntu Python ${{ matrix.python_version }}
|
||||||
# steps:
|
# steps:
|
||||||
# - name: 🛎️ Checkout
|
# - name: 🛎️ Checkout
|
||||||
|
|||||||
@ -67,7 +67,7 @@ class Map():
|
|||||||
if plantName not in c.WATER_PLANTS:
|
if plantName not in c.WATER_PLANTS:
|
||||||
if not self.map[map_y][map_x][c.MAP_PLANT]: # 没有植物肯定可以种植
|
if not self.map[map_y][map_x][c.MAP_PLANT]: # 没有植物肯定可以种植
|
||||||
return True
|
return True
|
||||||
elif (all((i in {'花盆(未实现)', c.PUMPKINHEAD}) for i in self.map[map_y][map_x][c.MAP_PLANT])
|
elif (all((i in {"花盆(未实现)", c.PUMPKINHEAD}) for i in self.map[map_y][map_x][c.MAP_PLANT])
|
||||||
and (plantName not in self.map[map_y][map_x][c.MAP_PLANT])): # 例外植物:集合中填花盆和南瓜头,只要这里没有这种植物就能种植
|
and (plantName not in self.map[map_y][map_x][c.MAP_PLANT])): # 例外植物:集合中填花盆和南瓜头,只要这里没有这种植物就能种植
|
||||||
return True
|
return True
|
||||||
elif (plantName == c.PUMPKINHEAD) and (c.PUMPKINHEAD not in self.map[map_y][map_x][c.MAP_PLANT]): # 没有南瓜头就能种南瓜头
|
elif (plantName == c.PUMPKINHEAD) and (c.PUMPKINHEAD not in self.map[map_y][map_x][c.MAP_PLANT]): # 没有南瓜头就能种南瓜头
|
||||||
@ -79,8 +79,8 @@ class Map():
|
|||||||
elif self.map[map_y][map_x][c.MAP_PLOT_TYPE] == c.MAP_TILE: # 屋顶
|
elif self.map[map_y][map_x][c.MAP_PLOT_TYPE] == c.MAP_TILE: # 屋顶
|
||||||
# 首先需要判断植物是否是水生植物,水生植物不能种植在陆地上
|
# 首先需要判断植物是否是水生植物,水生植物不能种植在陆地上
|
||||||
if plantName not in c.WATER_PLANTS:
|
if plantName not in c.WATER_PLANTS:
|
||||||
if '花盆(未实现)' in self.map[map_y][map_x][c.MAP_PLANT]:
|
if "花盆(未实现)" in self.map[map_y][map_x][c.MAP_PLANT]:
|
||||||
if (all((i in {'花盆(未实现)', c.PUMPKINHEAD}) for i in self.map[map_y][map_x][c.MAP_PLANT])
|
if (all((i in {"花盆(未实现)", c.PUMPKINHEAD}) for i in self.map[map_y][map_x][c.MAP_PLANT])
|
||||||
and (plantName not in self.map[map_y][map_x][c.MAP_PLANT])): # 例外植物:集合中填花盆和南瓜头,只要这里没有这种植物就能种植
|
and (plantName not in self.map[map_y][map_x][c.MAP_PLANT])): # 例外植物:集合中填花盆和南瓜头,只要这里没有这种植物就能种植
|
||||||
if plantName in {c.SPIKEWEED}: # 不能在花盆上种植的植物
|
if plantName in {c.SPIKEWEED}: # 不能在花盆上种植的植物
|
||||||
return False
|
return False
|
||||||
@ -90,7 +90,7 @@ class Map():
|
|||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
return False
|
return False
|
||||||
elif plantName == '花盆(未实现)': # 这一格本来没有花盆而且新来的植物是花盆,可以种
|
elif plantName == "花盆(未实现)": # 这一格本来没有花盆而且新来的植物是花盆,可以种
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
return False
|
return False
|
||||||
@ -106,7 +106,7 @@ class Map():
|
|||||||
if c.LILYPAD in self.map[map_y][map_x][c.MAP_PLANT]:
|
if c.LILYPAD in self.map[map_y][map_x][c.MAP_PLANT]:
|
||||||
if (all((i in {c.LILYPAD, c.PUMPKINHEAD}) for i in self.map[map_y][map_x][c.MAP_PLANT])
|
if (all((i in {c.LILYPAD, c.PUMPKINHEAD}) for i in self.map[map_y][map_x][c.MAP_PLANT])
|
||||||
and (plantName not in self.map[map_y][map_x][c.MAP_PLANT])):
|
and (plantName not in self.map[map_y][map_x][c.MAP_PLANT])):
|
||||||
if plantName in {c.SPIKEWEED, c.POTATOMINE, '花盆(未实现)'}: # 不能在睡莲上种植的植物
|
if plantName in {c.SPIKEWEED, c.POTATOMINE, "花盆(未实现)"}: # 不能在睡莲上种植的植物
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
return True
|
return True
|
||||||
|
|||||||
@ -66,7 +66,7 @@ class Bullet(pg.sprite.Sprite):
|
|||||||
frame_list = tool.GFX[name]
|
frame_list = tool.GFX[name]
|
||||||
if name in c.PLANT_RECT:
|
if name in c.PLANT_RECT:
|
||||||
data = c.PLANT_RECT[name]
|
data = c.PLANT_RECT[name]
|
||||||
x, y, width, height = data['x'], data['y'], data['width'], data['height']
|
x, y, width, height = data["x"], data["y"], data["width"], data["height"]
|
||||||
else:
|
else:
|
||||||
x, y = 0, 0
|
x, y = 0, 0
|
||||||
rect = frame_list[0].get_rect()
|
rect = frame_list[0].get_rect()
|
||||||
@ -81,15 +81,15 @@ class Bullet(pg.sprite.Sprite):
|
|||||||
|
|
||||||
fly_name = self.name
|
fly_name = self.name
|
||||||
if self.name == c.BULLET_MUSHROOM:
|
if self.name == c.BULLET_MUSHROOM:
|
||||||
explode_name = 'BulletMushRoomExplode'
|
explode_name = "BulletMushRoomExplode"
|
||||||
elif self.name == c.BULLET_PEA_ICE:
|
elif self.name == c.BULLET_PEA_ICE:
|
||||||
explode_name = 'PeaIceExplode'
|
explode_name = "PeaIceExplode"
|
||||||
elif self.name == c.BULLET_SEASHROOM:
|
elif self.name == c.BULLET_SEASHROOM:
|
||||||
explode_name = 'BulletSeaShroomExplode'
|
explode_name = "BulletSeaShroomExplode"
|
||||||
elif self.name == c.BULLET_STAR:
|
elif self.name == c.BULLET_STAR:
|
||||||
explode_name = 'StarBulletExplode'
|
explode_name = "StarBulletExplode"
|
||||||
else:
|
else:
|
||||||
explode_name = 'PeaNormalExplode'
|
explode_name = "PeaNormalExplode"
|
||||||
|
|
||||||
self.loadFrames(self.fly_frames, fly_name)
|
self.loadFrames(self.fly_frames, fly_name)
|
||||||
self.loadFrames(self.explode_frames, explode_name)
|
self.loadFrames(self.explode_frames, explode_name)
|
||||||
@ -254,7 +254,7 @@ class Plant(pg.sprite.Sprite):
|
|||||||
frame_list = tool.GFX[name]
|
frame_list = tool.GFX[name]
|
||||||
if name in c.PLANT_RECT:
|
if name in c.PLANT_RECT:
|
||||||
data = c.PLANT_RECT[name]
|
data = c.PLANT_RECT[name]
|
||||||
x, y, width, height = data['x'], data['y'], data['width'], data['height']
|
x, y, width, height = data["x"], data["y"], data["width"], data["height"]
|
||||||
else:
|
else:
|
||||||
x, y = 0, 0
|
x, y = 0, 0
|
||||||
rect = frame_list[0].get_rect()
|
rect = frame_list[0].get_rect()
|
||||||
@ -267,7 +267,7 @@ class Plant(pg.sprite.Sprite):
|
|||||||
self.loadFrames(self.frames, name, scale)
|
self.loadFrames(self.frames, name, scale)
|
||||||
|
|
||||||
def changeFrames(self, frames):
|
def changeFrames(self, frames):
|
||||||
'''change image frames and modify rect position'''
|
"""change image frames and modify rect position"""
|
||||||
self.frames = frames
|
self.frames = frames
|
||||||
self.frame_num = len(self.frames)
|
self.frame_num = len(self.frames)
|
||||||
self.frame_index = 0
|
self.frame_index = 0
|
||||||
@ -522,8 +522,8 @@ class WallNut(Plant):
|
|||||||
self.cracked1_frames = []
|
self.cracked1_frames = []
|
||||||
self.cracked2_frames = []
|
self.cracked2_frames = []
|
||||||
|
|
||||||
cracked1_frames_name = self.name + '_cracked1'
|
cracked1_frames_name = self.name + "_cracked1"
|
||||||
cracked2_frames_name = self.name + '_cracked2'
|
cracked2_frames_name = self.name + "_cracked2"
|
||||||
|
|
||||||
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
||||||
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
||||||
@ -605,8 +605,8 @@ class Chomper(Plant):
|
|||||||
self.animate_interval = 100 # 本身动画播放较慢
|
self.animate_interval = 100 # 本身动画播放较慢
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
attack_name = name + 'Attack'
|
attack_name = name + "Attack"
|
||||||
digest_name = name + 'Digest'
|
digest_name = name + "Digest"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.attack_frames, self.digest_frames]
|
frame_list = [self.idle_frames, self.attack_frames, self.digest_frames]
|
||||||
name_list = [idle_name, attack_name, digest_name]
|
name_list = [idle_name, attack_name, digest_name]
|
||||||
@ -676,7 +676,7 @@ class PuffShroom(Plant):
|
|||||||
self.sleep_frames = []
|
self.sleep_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.sleep_frames]
|
frame_list = [self.idle_frames, self.sleep_frames]
|
||||||
name_list = [idle_name, sleep_name]
|
name_list = [idle_name, sleep_name]
|
||||||
@ -726,9 +726,9 @@ class PotatoMine(Plant):
|
|||||||
self.idle_frames = []
|
self.idle_frames = []
|
||||||
self.explode_frames = []
|
self.explode_frames = []
|
||||||
|
|
||||||
init_name = name + 'Init'
|
init_name = name + "Init"
|
||||||
idle_name = name
|
idle_name = name
|
||||||
explode_name = name + 'Explode'
|
explode_name = name + "Explode"
|
||||||
|
|
||||||
frame_list = [self.init_frames, self.idle_frames, self.explode_frames]
|
frame_list = [self.init_frames, self.idle_frames, self.explode_frames]
|
||||||
name_list = [init_name, idle_name, explode_name]
|
name_list = [init_name, idle_name, explode_name]
|
||||||
@ -780,8 +780,8 @@ class Squash(Plant):
|
|||||||
self.attack_frames = []
|
self.attack_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
aim_name = name + 'Aim'
|
aim_name = name + "Aim"
|
||||||
attack_name = name + 'Attack'
|
attack_name = name + "Attack"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.aim_frames, self.attack_frames]
|
frame_list = [self.idle_frames, self.aim_frames, self.attack_frames]
|
||||||
name_list = [idle_name, aim_name, attack_name]
|
name_list = [idle_name, aim_name, attack_name]
|
||||||
@ -892,7 +892,7 @@ class Jalapeno(Plant):
|
|||||||
|
|
||||||
def loadImages(self, name, scale):
|
def loadImages(self, name, scale):
|
||||||
self.explode_frames = []
|
self.explode_frames = []
|
||||||
explode_name = name + 'Explode'
|
explode_name = name + "Explode"
|
||||||
self.loadFrames(self.explode_frames, explode_name)
|
self.loadFrames(self.explode_frames, explode_name)
|
||||||
|
|
||||||
self.loadFrames(self.frames, name)
|
self.loadFrames(self.frames, name)
|
||||||
@ -948,8 +948,8 @@ class ScaredyShroom(Plant):
|
|||||||
self.sleep_frames = []
|
self.sleep_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
cry_name = name + 'Cry'
|
cry_name = name + "Cry"
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.cry_frames, self.sleep_frames]
|
frame_list = [self.idle_frames, self.cry_frames, self.sleep_frames]
|
||||||
name_list = [idle_name, cry_name, sleep_name]
|
name_list = [idle_name, cry_name, sleep_name]
|
||||||
@ -1005,8 +1005,8 @@ class SunShroom(Plant):
|
|||||||
self.sleep_frames = []
|
self.sleep_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
big_name = name + 'Big'
|
big_name = name + "Big"
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.big_frames, self.sleep_frames]
|
frame_list = [self.idle_frames, self.big_frames, self.sleep_frames]
|
||||||
name_list = [idle_name, big_name, sleep_name]
|
name_list = [idle_name, big_name, sleep_name]
|
||||||
@ -1048,9 +1048,9 @@ class IceShroom(Plant):
|
|||||||
self.trap_frames = []
|
self.trap_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
snow_name = name + 'Snow'
|
snow_name = name + "Snow"
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
trap_name = name + 'Trap'
|
trap_name = name + "Trap"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.snow_frames, self.sleep_frames, self.trap_frames]
|
frame_list = [self.idle_frames, self.snow_frames, self.sleep_frames, self.trap_frames]
|
||||||
name_list = [idle_name, snow_name, sleep_name, trap_name]
|
name_list = [idle_name, snow_name, sleep_name, trap_name]
|
||||||
@ -1114,7 +1114,7 @@ class HypnoShroom(Plant):
|
|||||||
self.sleep_frames = []
|
self.sleep_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.sleep_frames]
|
frame_list = [self.idle_frames, self.sleep_frames]
|
||||||
name_list = [idle_name, sleep_name]
|
name_list = [idle_name, sleep_name]
|
||||||
@ -1398,7 +1398,7 @@ class SeaShroom(Plant):
|
|||||||
self.sleep_frames = []
|
self.sleep_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.sleep_frames]
|
frame_list = [self.idle_frames, self.sleep_frames]
|
||||||
name_list = [idle_name, sleep_name]
|
name_list = [idle_name, sleep_name]
|
||||||
@ -1443,8 +1443,8 @@ class TallNut(Plant):
|
|||||||
self.cracked1_frames = []
|
self.cracked1_frames = []
|
||||||
self.cracked2_frames = []
|
self.cracked2_frames = []
|
||||||
|
|
||||||
cracked1_frames_name = self.name + '_cracked1'
|
cracked1_frames_name = self.name + "_cracked1"
|
||||||
cracked2_frames_name = self.name + '_cracked2'
|
cracked2_frames_name = self.name + "_cracked2"
|
||||||
|
|
||||||
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
||||||
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
||||||
@ -1469,7 +1469,7 @@ class TangleKlep(Plant):
|
|||||||
self.splash_frames = []
|
self.splash_frames = []
|
||||||
|
|
||||||
idle_name = self.name
|
idle_name = self.name
|
||||||
splash_name = self.name + 'Splash'
|
splash_name = self.name + "Splash"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.splash_frames]
|
frame_list = [self.idle_frames, self.splash_frames]
|
||||||
name_list = [idle_name, splash_name]
|
name_list = [idle_name, splash_name]
|
||||||
@ -1528,8 +1528,8 @@ class DoomShroom(Plant):
|
|||||||
self.boom_frames = []
|
self.boom_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
boom_name = name + 'Boom'
|
boom_name = name + "Boom"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.sleep_frames, self.boom_frames]
|
frame_list = [self.idle_frames, self.sleep_frames, self.boom_frames]
|
||||||
name_list = [idle_name, sleep_name, boom_name]
|
name_list = [idle_name, sleep_name, boom_name]
|
||||||
@ -1602,11 +1602,11 @@ class Hole(Plant):
|
|||||||
self.roof2_frames = []
|
self.roof2_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
idle2_name = name + 'Shallow'
|
idle2_name = name + "Shallow"
|
||||||
water_name = name + 'Water'
|
water_name = name + "Water"
|
||||||
water2_name = name + 'WaterShallow'
|
water2_name = name + "WaterShallow"
|
||||||
roof_name = name + 'Roof'
|
roof_name = name + "Roof"
|
||||||
roof2_name = name + 'RoofShallow'
|
roof2_name = name + "RoofShallow"
|
||||||
|
|
||||||
frame_list = [ self.idle_frames, self.idle2_frames,
|
frame_list = [ self.idle_frames, self.idle2_frames,
|
||||||
self.water_frames, self.water2_frames,
|
self.water_frames, self.water2_frames,
|
||||||
@ -1698,8 +1698,8 @@ class FumeShroom(Plant):
|
|||||||
self.attack_frames = []
|
self.attack_frames = []
|
||||||
|
|
||||||
idle_name = name
|
idle_name = name
|
||||||
sleep_name = name + 'Sleep'
|
sleep_name = name + "Sleep"
|
||||||
attack_name = name + 'Attack'
|
attack_name = name + "Attack"
|
||||||
|
|
||||||
frame_list = [self.idle_frames, self.sleep_frames, self.attack_frames]
|
frame_list = [self.idle_frames, self.sleep_frames, self.attack_frames]
|
||||||
name_list = [idle_name, sleep_name, attack_name]
|
name_list = [idle_name, sleep_name, attack_name]
|
||||||
@ -1785,8 +1785,8 @@ class Garlic(Plant):
|
|||||||
self.cracked1_frames = []
|
self.cracked1_frames = []
|
||||||
self.cracked2_frames = []
|
self.cracked2_frames = []
|
||||||
|
|
||||||
cracked1_frames_name = self.name + '_cracked1'
|
cracked1_frames_name = self.name + "_cracked1"
|
||||||
cracked2_frames_name = self.name + '_cracked2'
|
cracked2_frames_name = self.name + "_cracked2"
|
||||||
|
|
||||||
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
||||||
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
||||||
@ -1811,8 +1811,8 @@ class PumpkinHead(Plant):
|
|||||||
self.cracked1_frames = []
|
self.cracked1_frames = []
|
||||||
self.cracked2_frames = []
|
self.cracked2_frames = []
|
||||||
|
|
||||||
cracked1_frames_name = self.name + '_cracked1'
|
cracked1_frames_name = self.name + "_cracked1"
|
||||||
cracked2_frames_name = self.name + '_cracked2'
|
cracked2_frames_name = self.name + "_cracked2"
|
||||||
|
|
||||||
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
self.loadFrames(self.cracked1_frames, cracked1_frames_name)
|
||||||
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
self.loadFrames(self.cracked2_frames, cracked2_frames_name)
|
||||||
|
|||||||
@ -61,7 +61,7 @@ class Zombie(pg.sprite.Sprite):
|
|||||||
width, height = rect.w, rect.h
|
width, height = rect.w, rect.h
|
||||||
if name in c.ZOMBIE_RECT:
|
if name in c.ZOMBIE_RECT:
|
||||||
data = c.ZOMBIE_RECT[name]
|
data = c.ZOMBIE_RECT[name]
|
||||||
x, width = data['x'], data['width']
|
x, width = data["x"], data["width"]
|
||||||
else:
|
else:
|
||||||
x = 0
|
x = 0
|
||||||
for frame in frame_list:
|
for frame in frame_list:
|
||||||
@ -287,7 +287,7 @@ class Zombie(pg.sprite.Sprite):
|
|||||||
self.head_group.add(ZombieHead(self.rect.centerx, self.rect.bottom))
|
self.head_group.add(ZombieHead(self.rect.centerx, self.rect.bottom))
|
||||||
|
|
||||||
def changeFrames(self, frames):
|
def changeFrames(self, frames):
|
||||||
'''change image frames and modify rect position'''
|
"""change image frames and modify rect position"""
|
||||||
self.frames = frames
|
self.frames = frames
|
||||||
self.frame_num = len(self.frames)
|
self.frame_num = len(self.frames)
|
||||||
self.frame_index = 0
|
self.frame_index = 0
|
||||||
@ -431,7 +431,7 @@ class Zombie(pg.sprite.Sprite):
|
|||||||
else: # 没有防具
|
else: # 没有防具
|
||||||
self.health -= damage
|
self.health -= damage
|
||||||
else:
|
else:
|
||||||
print('警告:植物攻击类型错误,现在默认进行类豌豆射手型攻击')
|
print("警告:植物攻击类型错误,现在默认进行类豌豆射手型攻击")
|
||||||
self.setDamage(damage, effect=effect, damageType=c.ZOMBIE_DEAFULT_DAMAGE)
|
self.setDamage(damage, effect=effect, damageType=c.ZOMBIE_DEAFULT_DAMAGE)
|
||||||
|
|
||||||
# 记录攻击时间
|
# 记录攻击时间
|
||||||
@ -539,10 +539,10 @@ class NormalZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
walk_name = self.name
|
walk_name = self.name
|
||||||
attack_name = self.name + 'Attack'
|
attack_name = self.name + "Attack"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHeadAttack'
|
losthead_attack_name = self.name + "LostHeadAttack"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.walk_frames, self.attack_frames, self.losthead_walk_frames,
|
frame_list = [self.walk_frames, self.attack_frames, self.losthead_walk_frames,
|
||||||
@ -571,12 +571,12 @@ class ConeHeadZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = c.NORMAL_ZOMBIE
|
walk_name = c.NORMAL_ZOMBIE
|
||||||
attack_name = c.NORMAL_ZOMBIE + 'Attack'
|
attack_name = c.NORMAL_ZOMBIE + "Attack"
|
||||||
losthead_walk_name = c.NORMAL_ZOMBIE + 'LostHead'
|
losthead_walk_name = c.NORMAL_ZOMBIE + "LostHead"
|
||||||
losthead_attack_name = c.NORMAL_ZOMBIE + 'LostHeadAttack'
|
losthead_attack_name = c.NORMAL_ZOMBIE + "LostHeadAttack"
|
||||||
die_name = c.NORMAL_ZOMBIE + 'Die'
|
die_name = c.NORMAL_ZOMBIE + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
||||||
@ -607,12 +607,12 @@ class BucketHeadZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = c.NORMAL_ZOMBIE
|
walk_name = c.NORMAL_ZOMBIE
|
||||||
attack_name = c.NORMAL_ZOMBIE + 'Attack'
|
attack_name = c.NORMAL_ZOMBIE + "Attack"
|
||||||
losthead_walk_name = c.NORMAL_ZOMBIE + 'LostHead'
|
losthead_walk_name = c.NORMAL_ZOMBIE + "LostHead"
|
||||||
losthead_attack_name = c.NORMAL_ZOMBIE + 'LostHeadAttack'
|
losthead_attack_name = c.NORMAL_ZOMBIE + "LostHeadAttack"
|
||||||
die_name = c.NORMAL_ZOMBIE + 'Die'
|
die_name = c.NORMAL_ZOMBIE + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
||||||
@ -642,10 +642,10 @@ class FlagZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
walk_name = self.name
|
walk_name = self.name
|
||||||
attack_name = self.name + 'Attack'
|
attack_name = self.name + "Attack"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHeadAttack'
|
losthead_attack_name = self.name + "LostHeadAttack"
|
||||||
die_name = c.NORMAL_ZOMBIE + 'Die'
|
die_name = c.NORMAL_ZOMBIE + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.walk_frames, self.attack_frames, self.losthead_walk_frames,
|
frame_list = [self.walk_frames, self.attack_frames, self.losthead_walk_frames,
|
||||||
@ -676,13 +676,13 @@ class NewspaperZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = self.name + 'NoPaper'
|
walk_name = self.name + "NoPaper"
|
||||||
attack_name = self.name + 'NoPaperAttack'
|
attack_name = self.name + "NoPaperAttack"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHeadAttack'
|
losthead_attack_name = self.name + "LostHeadAttack"
|
||||||
lostnewspaper_name = self.name + 'LostNewspaper'
|
lostnewspaper_name = self.name + "LostNewspaper"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
||||||
@ -774,12 +774,12 @@ class FootballZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = self.name + 'LostHelmet'
|
walk_name = self.name + "LostHelmet"
|
||||||
attack_name = self.name + 'LostHelmetAttack'
|
attack_name = self.name + "LostHelmetAttack"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHeadAttack'
|
losthead_attack_name = self.name + "LostHeadAttack"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
||||||
@ -808,11 +808,11 @@ class DuckyTubeZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
walk_name = self.name
|
walk_name = self.name
|
||||||
swim_name = self.name + 'Swim'
|
swim_name = self.name + "Swim"
|
||||||
attack_name = self.name + 'Attack'
|
attack_name = self.name + "Attack"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHead'
|
losthead_attack_name = self.name + "LostHead"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.walk_frames, self.swim_frames, self.attack_frames, self.losthead_walk_frames,
|
frame_list = [self.walk_frames, self.swim_frames, self.attack_frames, self.losthead_walk_frames,
|
||||||
@ -842,14 +842,14 @@ class ConeHeadDuckyTubeZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_swim_name = self.name + 'Swim'
|
helmet_swim_name = self.name + "Swim"
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = c.DUCKY_TUBE_ZOMBIE
|
walk_name = c.DUCKY_TUBE_ZOMBIE
|
||||||
swim_name = c.DUCKY_TUBE_ZOMBIE + 'Swim'
|
swim_name = c.DUCKY_TUBE_ZOMBIE + "Swim"
|
||||||
attack_name = c.DUCKY_TUBE_ZOMBIE + 'Attack'
|
attack_name = c.DUCKY_TUBE_ZOMBIE + "Attack"
|
||||||
losthead_walk_name = c.DUCKY_TUBE_ZOMBIE + 'LostHead'
|
losthead_walk_name = c.DUCKY_TUBE_ZOMBIE + "LostHead"
|
||||||
losthead_attack_name = c.DUCKY_TUBE_ZOMBIE + 'LostHead'
|
losthead_attack_name = c.DUCKY_TUBE_ZOMBIE + "LostHead"
|
||||||
die_name = c.DUCKY_TUBE_ZOMBIE + 'Die'
|
die_name = c.DUCKY_TUBE_ZOMBIE + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_swim_frames, self.helmet_attack_frames, self.walk_frames, self.swim_frames, self.attack_frames, self.losthead_walk_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_swim_frames, self.helmet_attack_frames, self.walk_frames, self.swim_frames, self.attack_frames, self.losthead_walk_frames,
|
||||||
@ -880,14 +880,14 @@ class BucketHeadDuckyTubeZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_swim_name = self.name + 'Swim'
|
helmet_swim_name = self.name + "Swim"
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = c.DUCKY_TUBE_ZOMBIE
|
walk_name = c.DUCKY_TUBE_ZOMBIE
|
||||||
swim_name = c.DUCKY_TUBE_ZOMBIE + 'Swim'
|
swim_name = c.DUCKY_TUBE_ZOMBIE + "Swim"
|
||||||
attack_name = c.DUCKY_TUBE_ZOMBIE + 'Attack'
|
attack_name = c.DUCKY_TUBE_ZOMBIE + "Attack"
|
||||||
losthead_walk_name = c.DUCKY_TUBE_ZOMBIE + 'LostHead'
|
losthead_walk_name = c.DUCKY_TUBE_ZOMBIE + "LostHead"
|
||||||
losthead_attack_name = c.DUCKY_TUBE_ZOMBIE + 'LostHead'
|
losthead_attack_name = c.DUCKY_TUBE_ZOMBIE + "LostHead"
|
||||||
die_name = c.DUCKY_TUBE_ZOMBIE + 'Die'
|
die_name = c.DUCKY_TUBE_ZOMBIE + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_swim_frames, self.helmet_attack_frames, self.walk_frames, self.swim_frames, self.attack_frames, self.losthead_walk_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_swim_frames, self.helmet_attack_frames, self.walk_frames, self.swim_frames, self.attack_frames, self.losthead_walk_frames,
|
||||||
@ -916,12 +916,12 @@ class ScreenDoorZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
helmet_walk_name = self.name
|
helmet_walk_name = self.name
|
||||||
helmet_attack_name = self.name + 'Attack'
|
helmet_attack_name = self.name + "Attack"
|
||||||
walk_name = c.NORMAL_ZOMBIE
|
walk_name = c.NORMAL_ZOMBIE
|
||||||
attack_name = c.NORMAL_ZOMBIE + 'Attack'
|
attack_name = c.NORMAL_ZOMBIE + "Attack"
|
||||||
losthead_walk_name = c.NORMAL_ZOMBIE + 'LostHead'
|
losthead_walk_name = c.NORMAL_ZOMBIE + "LostHead"
|
||||||
losthead_attack_name = c.NORMAL_ZOMBIE + 'LostHeadAttack'
|
losthead_attack_name = c.NORMAL_ZOMBIE + "LostHeadAttack"
|
||||||
die_name = c.NORMAL_ZOMBIE + 'Die'
|
die_name = c.NORMAL_ZOMBIE + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
frame_list = [self.helmet_walk_frames, self.helmet_attack_frames,
|
||||||
@ -954,14 +954,14 @@ class PoleVaultingZombie(Zombie):
|
|||||||
self.walk_before_jump_frames = []
|
self.walk_before_jump_frames = []
|
||||||
self.jump_frames = []
|
self.jump_frames = []
|
||||||
|
|
||||||
walk_name = self.name + 'WalkAfterJump'
|
walk_name = self.name + "WalkAfterJump"
|
||||||
attack_name = self.name + 'Attack'
|
attack_name = self.name + "Attack"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHeadAttack'
|
losthead_attack_name = self.name + "LostHeadAttack"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
walk_before_jump_name = self.name
|
walk_before_jump_name = self.name
|
||||||
jump_name = self.name + 'Jump'
|
jump_name = self.name + "Jump"
|
||||||
|
|
||||||
frame_list = [self.walk_frames, self.attack_frames, self.losthead_walk_frames,
|
frame_list = [self.walk_frames, self.attack_frames, self.losthead_walk_frames,
|
||||||
self.losthead_attack_frames, self.die_frames, self.boomdie_frames,
|
self.losthead_attack_frames, self.die_frames, self.boomdie_frames,
|
||||||
@ -1061,11 +1061,11 @@ class Zomboni(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
walk_name = self.name
|
walk_name = self.name
|
||||||
walk_damaged1_name = self.name + 'Damaged1'
|
walk_damaged1_name = self.name + "Damaged1"
|
||||||
walk_damaged2_name = self.name + 'Damaged2'
|
walk_damaged2_name = self.name + "Damaged2"
|
||||||
losthead_walk_name = self.name + 'Damaged2'
|
losthead_walk_name = self.name + "Damaged2"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = self.name + 'BoomDie'
|
boomdie_name = self.name + "BoomDie"
|
||||||
|
|
||||||
frame_list = [ self.walk_frames, self.walk_damaged1_frames,
|
frame_list = [ self.walk_frames, self.walk_damaged1_frames,
|
||||||
self.walk_damaged2_frames, self.losthead_walk_frames,
|
self.walk_damaged2_frames, self.losthead_walk_frames,
|
||||||
@ -1148,14 +1148,14 @@ class SnorkelZombie(Zombie):
|
|||||||
self.boomdie_frames = []
|
self.boomdie_frames = []
|
||||||
|
|
||||||
walk_name = self.name
|
walk_name = self.name
|
||||||
swim_name = self.name + 'Dive'
|
swim_name = self.name + "Dive"
|
||||||
attack_name = self.name + 'Attack'
|
attack_name = self.name + "Attack"
|
||||||
jump_name = self.name + 'Jump'
|
jump_name = self.name + "Jump"
|
||||||
float_name = self.name + 'Float'
|
float_name = self.name + "Float"
|
||||||
sink_name = self.name + 'Sink'
|
sink_name = self.name + "Sink"
|
||||||
losthead_walk_name = self.name + 'LostHead'
|
losthead_walk_name = self.name + "LostHead"
|
||||||
losthead_attack_name = self.name + 'LostHeadAttack'
|
losthead_attack_name = self.name + "LostHeadAttack"
|
||||||
die_name = self.name + 'Die'
|
die_name = self.name + "Die"
|
||||||
boomdie_name = c.BOOMDIE
|
boomdie_name = c.BOOMDIE
|
||||||
|
|
||||||
frame_list = [ self.walk_frames, self.swim_frames,
|
frame_list = [ self.walk_frames, self.swim_frames,
|
||||||
|
|||||||
@ -64,25 +64,25 @@ class Level(tool.State):
|
|||||||
|
|
||||||
# 同时指定音乐
|
# 同时指定音乐
|
||||||
# 缺省音乐为进入的音乐,方便发现错误
|
# 缺省音乐为进入的音乐,方便发现错误
|
||||||
self.bgm = 'intro.opus'
|
self.bgm = "intro.opus"
|
||||||
if c.CHOOSEBAR_TYPE in self.map_data: # 指定了choosebar_type的传送带关
|
if c.CHOOSEBAR_TYPE in self.map_data: # 指定了choosebar_type的传送带关
|
||||||
if self.map_data[c.CHOOSEBAR_TYPE] == c.CHOOSEBAR_BOWLING: # 坚果保龄球
|
if self.map_data[c.CHOOSEBAR_TYPE] == c.CHOOSEBAR_BOWLING: # 坚果保龄球
|
||||||
self.bgm = 'bowling.opus'
|
self.bgm = "bowling.opus"
|
||||||
elif self.map_data[c.CHOOSEBAR_TYPE] == c.CHOOSEBAR_MOVE: # 传送带
|
elif self.map_data[c.CHOOSEBAR_TYPE] == c.CHOOSEBAR_MOVE: # 传送带
|
||||||
self.bgm = 'battle.opus'
|
self.bgm = "battle.opus"
|
||||||
else: # 一般选卡关,非传送带
|
else: # 一般选卡关,非传送带
|
||||||
# 白天类
|
# 白天类
|
||||||
if self.map_data[c.BACKGROUND_TYPE] in c.BACKGROUND_DAY_LIKE_BACKGROUNDS:
|
if self.map_data[c.BACKGROUND_TYPE] in c.BACKGROUND_DAY_LIKE_BACKGROUNDS:
|
||||||
self.bgm = 'dayLevel.opus'
|
self.bgm = "dayLevel.opus"
|
||||||
# 夜晚
|
# 夜晚
|
||||||
elif self.map_data[c.BACKGROUND_TYPE] == c.BACKGROUND_NIGHT:
|
elif self.map_data[c.BACKGROUND_TYPE] == c.BACKGROUND_NIGHT:
|
||||||
self.bgm = 'nightLevel.opus'
|
self.bgm = "nightLevel.opus"
|
||||||
# 泳池
|
# 泳池
|
||||||
elif self.map_data[c.BACKGROUND_TYPE] == c.BACKGROUND_POOL:
|
elif self.map_data[c.BACKGROUND_TYPE] == c.BACKGROUND_POOL:
|
||||||
self.bgm = 'poolLevel.opus'
|
self.bgm = "poolLevel.opus"
|
||||||
# 浓雾
|
# 浓雾
|
||||||
elif self.map_data[c.BACKGROUND_TYPE] == c.BACKGROUND_FOG:
|
elif self.map_data[c.BACKGROUND_TYPE] == c.BACKGROUND_FOG:
|
||||||
self.bgm = 'fogLevel.opus'
|
self.bgm = "fogLevel.opus"
|
||||||
|
|
||||||
def setupBackground(self):
|
def setupBackground(self):
|
||||||
img_index = self.map_data[c.BACKGROUND_TYPE]
|
img_index = self.map_data[c.BACKGROUND_TYPE]
|
||||||
@ -143,7 +143,7 @@ class Level(tool.State):
|
|||||||
zombieList.append(newZombie)
|
zombieList.append(newZombie)
|
||||||
volume -= c.CREATE_ZOMBIE_DICT[newZombie][0]
|
volume -= c.CREATE_ZOMBIE_DICT[newZombie][0]
|
||||||
if volume < 0:
|
if volume < 0:
|
||||||
logger.warning(f'第{wave}波中手动设置的僵尸级别总数超过上限!')
|
logger.warning(f"第{wave}波中手动设置的僵尸级别总数超过上限!")
|
||||||
|
|
||||||
# 防止因为僵尸最小等级过大,使得总容量无法完全利用,造成死循环的检查机制
|
# 防止因为僵尸最小等级过大,使得总容量无法完全利用,造成死循环的检查机制
|
||||||
minCost = c.CREATE_ZOMBIE_DICT[min(useableZombies, key=lambda x:c.CREATE_ZOMBIE_DICT[x][0])][0]
|
minCost = c.CREATE_ZOMBIE_DICT[min(useableZombies, key=lambda x:c.CREATE_ZOMBIE_DICT[x][0])][0]
|
||||||
@ -312,7 +312,7 @@ class Level(tool.State):
|
|||||||
|
|
||||||
self.zombie_list = []
|
self.zombie_list = []
|
||||||
for data in self.map_data[c.ZOMBIE_LIST]:
|
for data in self.map_data[c.ZOMBIE_LIST]:
|
||||||
self.zombie_list.append((data['time'], data['name'], data['map_y']))
|
self.zombie_list.append((data["time"], data["name"], data["map_y"]))
|
||||||
self.zombie_start_time = 0
|
self.zombie_start_time = 0
|
||||||
self.zombie_list.sort(key=takeTime)
|
self.zombie_list.sort(key=takeTime)
|
||||||
|
|
||||||
@ -659,8 +659,8 @@ class Level(tool.State):
|
|||||||
if c.LILYPAD in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
if c.LILYPAD in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
||||||
if i.name == c.LILYPAD:
|
if i.name == c.LILYPAD:
|
||||||
continue
|
continue
|
||||||
elif '花盆(未实现)' in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
elif "花盆(未实现)" in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
||||||
if i.name == '花盆(未实现)':
|
if i.name == "花盆(未实现)":
|
||||||
continue
|
continue
|
||||||
self.killPlant(i, shovel=True)
|
self.killPlant(i, shovel=True)
|
||||||
# 使用后默认铲子复原
|
# 使用后默认铲子复原
|
||||||
@ -799,7 +799,7 @@ class Level(tool.State):
|
|||||||
if self.map_data[c.BACKGROUND_TYPE] in c.POOL_EQUIPPED_BACKGROUNDS:
|
if self.map_data[c.BACKGROUND_TYPE] in c.POOL_EQUIPPED_BACKGROUNDS:
|
||||||
if name in c.WATER_ZOMBIE:
|
if name in c.WATER_ZOMBIE:
|
||||||
map_y = random.randint(2, 3)
|
map_y = random.randint(2, 3)
|
||||||
elif name == '这里应该换成气球僵尸的名字(最好写调用的变量名,最好不要直接写,保持风格统一)':
|
elif name == "这里应该换成气球僵尸的名字(最好写调用的变量名,最好不要直接写,保持风格统一)":
|
||||||
map_y = random.randint(0, 5)
|
map_y = random.randint(0, 5)
|
||||||
else: # 陆生僵尸
|
else: # 陆生僵尸
|
||||||
map_y = random.randint(0, 3)
|
map_y = random.randint(0, 3)
|
||||||
@ -980,7 +980,7 @@ class Level(tool.State):
|
|||||||
self.hint_image = image
|
self.hint_image = image
|
||||||
self.hint_rect = image.get_rect()
|
self.hint_rect = image.get_rect()
|
||||||
# 花盆、睡莲图片应当下移一些
|
# 花盆、睡莲图片应当下移一些
|
||||||
if self.plant_name in {c.LILYPAD, '花盆(未实现)', c.TANGLEKLEP}:
|
if self.plant_name in {c.LILYPAD, "花盆(未实现)", c.TANGLEKLEP}:
|
||||||
self.hint_rect.centerx = pos[0]
|
self.hint_rect.centerx = pos[0]
|
||||||
self.hint_rect.bottom = pos[1] + 25
|
self.hint_rect.bottom = pos[1] + 25
|
||||||
else:
|
else:
|
||||||
@ -994,7 +994,7 @@ class Level(tool.State):
|
|||||||
frame_list = tool.GFX[plant_name]
|
frame_list = tool.GFX[plant_name]
|
||||||
if plant_name in c.PLANT_RECT:
|
if plant_name in c.PLANT_RECT:
|
||||||
data = c.PLANT_RECT[plant_name]
|
data = c.PLANT_RECT[plant_name]
|
||||||
x, y, width, height = data['x'], data['y'], data['width'], data['height']
|
x, y, width, height = data["x"], data["y"], data["width"], data["height"]
|
||||||
else:
|
else:
|
||||||
x, y = 0, 0
|
x, y = 0, 0
|
||||||
rect = frame_list[0].get_rect()
|
rect = frame_list[0].get_rect()
|
||||||
@ -1482,8 +1482,8 @@ class Level(tool.State):
|
|||||||
if c.LILYPAD in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
if c.LILYPAD in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
||||||
if i.name == c.LILYPAD:
|
if i.name == c.LILYPAD:
|
||||||
continue
|
continue
|
||||||
elif '花盆(未实现)' in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
elif "花盆(未实现)" in self.map.map[map_y][map_x][c.MAP_PLANT]:
|
||||||
if i.name == '花盆(未实现)':
|
if i.name == "花盆(未实现)":
|
||||||
continue
|
continue
|
||||||
i.highlightTime = self.current_time
|
i.highlightTime = self.current_time
|
||||||
return
|
return
|
||||||
|
|||||||
@ -48,7 +48,7 @@ class Menu(tool.State):
|
|||||||
def setupOptions(self):
|
def setupOptions(self):
|
||||||
# 冒险模式
|
# 冒险模式
|
||||||
self.adventure_frames = []
|
self.adventure_frames = []
|
||||||
frame_names = (f'{c.OPTION_ADVENTURE}_0', f'{c.OPTION_ADVENTURE}_1')
|
frame_names = (f"{c.OPTION_ADVENTURE}_0", f"{c.OPTION_ADVENTURE}_1")
|
||||||
frame_rect = (0, 0, 330, 144)
|
frame_rect = (0, 0, 330, 144)
|
||||||
for name in frame_names:
|
for name in frame_names:
|
||||||
self.adventure_frames.append(tool.get_image_menu(tool.GFX[name], *frame_rect, c.BLACK, 1))
|
self.adventure_frames.append(tool.get_image_menu(tool.GFX[name], *frame_rect, c.BLACK, 1))
|
||||||
@ -60,7 +60,7 @@ class Menu(tool.State):
|
|||||||
|
|
||||||
# 退出按钮
|
# 退出按钮
|
||||||
self.exit_frames = []
|
self.exit_frames = []
|
||||||
exit_frame_names = (f'{c.EXIT}_0', f'{c.EXIT}_1')
|
exit_frame_names = (f"{c.EXIT}_0", f"{c.EXIT}_1")
|
||||||
exit_frame_rect = (0, 0, 47, 27)
|
exit_frame_rect = (0, 0, 47, 27)
|
||||||
for name in exit_frame_names:
|
for name in exit_frame_names:
|
||||||
self.exit_frames.append(tool.get_image_menu(tool.GFX[name], *exit_frame_rect, c.BLACK, 1.1))
|
self.exit_frames.append(tool.get_image_menu(tool.GFX[name], *exit_frame_rect, c.BLACK, 1.1))
|
||||||
@ -72,7 +72,7 @@ class Menu(tool.State):
|
|||||||
|
|
||||||
# 选项按钮
|
# 选项按钮
|
||||||
self.option_button_frames = []
|
self.option_button_frames = []
|
||||||
option_button_frame_names = (f'{c.OPTION_BUTTON}_0', f'{c.OPTION_BUTTON}_1')
|
option_button_frame_names = (f"{c.OPTION_BUTTON}_0", f"{c.OPTION_BUTTON}_1")
|
||||||
option_button_frame_rect = (0, 0, 81, 31)
|
option_button_frame_rect = (0, 0, 81, 31)
|
||||||
for name in option_button_frame_names:
|
for name in option_button_frame_names:
|
||||||
self.option_button_frames.append(tool.get_image_menu(tool.GFX[name], *option_button_frame_rect, c.BLACK))
|
self.option_button_frames.append(tool.get_image_menu(tool.GFX[name], *option_button_frame_rect, c.BLACK))
|
||||||
@ -84,7 +84,7 @@ class Menu(tool.State):
|
|||||||
|
|
||||||
# 小游戏
|
# 小游戏
|
||||||
self.littleGame_frames = []
|
self.littleGame_frames = []
|
||||||
littleGame_frame_names = (c.LITTLEGAME_BUTTON + '_0', c.LITTLEGAME_BUTTON + '_1')
|
littleGame_frame_names = (c.LITTLEGAME_BUTTON + "_0", c.LITTLEGAME_BUTTON + "_1")
|
||||||
littleGame_frame_rect = (0, 7, 317, 135)
|
littleGame_frame_rect = (0, 7, 317, 135)
|
||||||
for name in littleGame_frame_names:
|
for name in littleGame_frame_names:
|
||||||
self.littleGame_frames.append(tool.get_image_menu(tool.GFX[name], *littleGame_frame_rect, c.BLACK, 1))
|
self.littleGame_frames.append(tool.get_image_menu(tool.GFX[name], *littleGame_frame_rect, c.BLACK, 1))
|
||||||
|
|||||||
@ -157,7 +157,7 @@ def get_image_menu(sheet, x, y, width, height, colorkey=c.BLACK, scale=1):
|
|||||||
def load_image_frames(directory, image_name, colorkey, accept):
|
def load_image_frames(directory, image_name, colorkey, accept):
|
||||||
frame_list = []
|
frame_list = []
|
||||||
tmp = {}
|
tmp = {}
|
||||||
# image_name is "Peashooter", pic name is 'Peashooter_1', get the index 1
|
# image_name is "Peashooter", pic name is "Peashooter_1", get the index 1
|
||||||
index_start = len(image_name) + 1
|
index_start = len(image_name) + 1
|
||||||
frame_num = 0
|
frame_num = 0
|
||||||
for pic in os.listdir(directory):
|
for pic in os.listdir(directory):
|
||||||
@ -178,7 +178,7 @@ def load_image_frames(directory, image_name, colorkey, accept):
|
|||||||
return frame_list
|
return frame_list
|
||||||
|
|
||||||
# colorkeys 是设置图像中的某个颜色值为透明,这里用来消除白边
|
# colorkeys 是设置图像中的某个颜色值为透明,这里用来消除白边
|
||||||
def load_all_gfx(directory, colorkey=c.WHITE, accept=('.png', '.jpg', '.bmp', '.gif', 'webp')):
|
def load_all_gfx(directory, colorkey=c.WHITE, accept=(".png", ".jpg", ".bmp", ".gif", "webp")):
|
||||||
graphics = {}
|
graphics = {}
|
||||||
for name1 in os.listdir(directory):
|
for name1 in os.listdir(directory):
|
||||||
# subfolders under the folder resources\graphics
|
# subfolders under the folder resources\graphics
|
||||||
@ -192,7 +192,7 @@ def load_all_gfx(directory, colorkey=c.WHITE, accept=('.png', '.jpg', '.bmp', '.
|
|||||||
dir3 = os.path.join(dir2, name3)
|
dir3 = os.path.join(dir2, name3)
|
||||||
# e.g. subfolders or pics under the folder resources\graphics\Zombies\ConeheadZombie
|
# e.g. subfolders or pics under the folder resources\graphics\Zombies\ConeheadZombie
|
||||||
if os.path.isdir(dir3):
|
if os.path.isdir(dir3):
|
||||||
# e.g. it's the folder resources\graphics\Zombies\ConeheadZombie\ConeheadZombieAttack
|
# e.g. it"s the folder resources\graphics\Zombies\ConeheadZombie\ConeheadZombieAttack
|
||||||
image_name, _ = os.path.splitext(name3)
|
image_name, _ = os.path.splitext(name3)
|
||||||
graphics[image_name] = load_image_frames(dir3, image_name, colorkey, accept)
|
graphics[image_name] = load_image_frames(dir3, image_name, colorkey, accept)
|
||||||
else:
|
else:
|
||||||
|
|||||||
@ -2,6 +2,6 @@
|
|||||||
cd `dirname $0`; pwd
|
cd `dirname $0`; pwd
|
||||||
git add *
|
git add *
|
||||||
git add .gitignore
|
git add .gitignore
|
||||||
git commit -m 'Updated by update.sh'
|
git commit -m "Updated by update.sh"
|
||||||
git push -u git@github.com:wszqkzqk/pypvz.git
|
git push -u git@github.com:wszqkzqk/pypvz.git
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user