Заготовка игры танки
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
import arcade
|
||||
from tank import Tank
|
||||
from bonus import Bonus
|
||||
from random import randint
|
||||
|
||||
class Map():
|
||||
ground_tiles = arcade.SpriteList()
|
||||
object_tiles = arcade.SpriteList()
|
||||
def __init__(self,width,height,tw,th):
|
||||
self.height = height
|
||||
self.width = width
|
||||
self.tilew = tw
|
||||
self.tileh = th
|
||||
self.ground = [
|
||||
' ........ ',
|
||||
' . ',
|
||||
' . ',
|
||||
' . ',
|
||||
' . ',
|
||||
' . ',
|
||||
' . ',
|
||||
' . ',
|
||||
' ',
|
||||
]
|
||||
self.objects = [
|
||||
' ',
|
||||
' e e ',
|
||||
' s ',
|
||||
' ',
|
||||
' p ',
|
||||
' ',
|
||||
' e ',
|
||||
' ',
|
||||
' s e ',
|
||||
]
|
||||
self.setup()
|
||||
def init_ground(self):
|
||||
for i in range(len(self.ground)):
|
||||
for j in range(len(self.ground[i])):
|
||||
if self.ground[i][j] == ' ':
|
||||
tile = arcade.Sprite(
|
||||
'./assets/tileGrass1.png',
|
||||
scale=1
|
||||
)
|
||||
elif self.ground[i][j] == '.':
|
||||
tile = arcade.Sprite(
|
||||
'./assets/tileSand1.png',
|
||||
scale=1
|
||||
)
|
||||
tile.center_x = self.tilew//2 + j * self.tilew
|
||||
tile.center_y = self.height - (self.tileh//2 + i * self.tileh)
|
||||
Map.ground_tiles.append(tile)
|
||||
def init_objects(self):
|
||||
for i in range(len(self.objects)):
|
||||
for j in range(len(self.objects[i])):
|
||||
if self.objects[i][j] == 'p':
|
||||
Tank(
|
||||
self.tilew//2 + j * self.tilew,
|
||||
self.height - (self.tileh//2 + i * self.tileh),
|
||||
'player')
|
||||
elif self.objects[i][j] == 'e':
|
||||
Tank(
|
||||
self.tilew//2 + j * self.tilew,
|
||||
self.height - (self.tileh//2 + i * self.tileh)
|
||||
)
|
||||
elif self.objects[i][j] == 's':
|
||||
Bonus(
|
||||
self.tilew//2 + j * self.tilew,
|
||||
self.height - (self.tileh//2 + i * self.tileh)
|
||||
)
|
||||
#tile.center_x = self.tilew//2 + j * self.tilew
|
||||
#tile.center_y = self.height - (self.tileh//2 + i * self.tileh)
|
||||
#Map.object_tiles.append(tile)
|
||||
def setup(self):
|
||||
self.init_ground()
|
||||
self.init_objects()
|
||||
def update(self):
|
||||
if self.coin_timer >= 1:
|
||||
for i in range(len(self.objects)):
|
||||
for j in range(len(self.objects[i])):
|
||||
if self.objects[i][j] == ' ' and randint(0,1) == 1:
|
||||
self.objects[i][j] = 's'
|
||||
|
||||
def draw(self):
|
||||
Map.ground_tiles.draw()
|
||||
#Map.object_tiles.draw()
|
||||
Reference in New Issue
Block a user