def __init__( self,width, height, size): self.mSize = 45 self.mReducedSize = 0.4 * size pad = (self.mSize - self.mReducedSize)/2 self.mWidth = width self.mHeight = height self.mGameState = 1 ## x = self.mSize * 3 - self.mReducedSize + 40 ## y = self.mSize * 8 + pad x = self.mWidth//2-(self.mReducedSize/2) y = (55 * 10) + 15 self.mFrog = froggerlib.Frog(x , y , self.mReducedSize, self.mReducedSize, x,y,8, 55, 55) self.mBeginningStage = froggerlib.Stage(0,55 * 10,self.mWidth, 55) self.mMidStage = froggerlib.Stage(0,55 * 5,self.mWidth,55) self.mHome = froggerlib.Home(0,55 * 0,self.mWidth,55) self.mRoad = froggerlib.Road(0,55*6, self.mWidth,55*4) self.mWater = froggerlib.Water(0,55,self.mWidth, 55*4) self.mDozer = froggerlib.Dozer(0,55 * 9 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 9 + 15,3) self.mDozer1 = froggerlib.Dozer(205,55 * 9 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 9 + 15,3) self.mDozer2 = froggerlib.Dozer(405,55 * 9 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 9 + 15,3) self.mTruck = froggerlib.Truck(0,55 * 8 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 8 + 15,5) self.mTruck1 = froggerlib.Truck(205,55 * 8 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 8 + 15,5) self.mTruck2 = froggerlib.Truck(405,55 * 8 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 8 + 15,5) self.mRacer = froggerlib.RaceCar(0,55 * 7 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 7 + 15,4,10) self.mRacer1 = froggerlib.RaceCar(205,55 * 7 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 7 + 15,4,10) self.mRacer2 = froggerlib.RaceCar(405,55 *7 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 7 + 15,4,10) self.mCar = froggerlib.Car(0,55 * 6 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 6 + 15,8) self.mCar1 = froggerlib.Car(205,55 * 6 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 6 + 15,8) self.mCar2 = froggerlib.Car(405,55 * 6 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 6 + 15,8) self.mDodge = [self.mDozer,self.mDozer1,self.mDozer2, self.mTruck, self.mTruck1, self.mTruck2, self.mRacer, self.mRacer1, self.mRacer2, self.mCar, self.mCar1, self.mCar2] self.mAlligator = froggerlib.Alligator(0,55 * 4 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 4 + 15,7) self.mAlligator1 = froggerlib.Alligator(205,55 * 4 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 4 + 15,7) self.mAlligator2 = froggerlib.Alligator(405,55 * 4 + 15,self.mReducedSize, self.mReducedSize, self.mWidth,55 * 4 + 15,7) self.mLog = froggerlib.Log(0,55 * 3+ 15,self.mReducedSize + 20, self.mReducedSize , -self.mReducedSize,55 * 3 + 15,3) self.mLog1 = froggerlib.Log(205,55 * 3 + 15,self.mReducedSize + 20, self.mReducedSize, -self.mReducedSize,55 * 3 + 15,3) self.mLog2 = froggerlib.Log(405,55 * 3 + 15,self.mReducedSize + 20, self.mReducedSize, -self.mReducedSize,55 * 3 + 15,3) self.mLog3 = froggerlib.Log(0,55 * 2+ 15,self.mReducedSize + 40, self.mReducedSize, self.mWidth,55 * 2 + 15,4) self.mLog4 = froggerlib.Log(205,55 * 2 + 15,self.mReducedSize + 40, self.mReducedSize, self.mWidth,55 * 2 + 15,4) self.mLog5 = froggerlib.Log(405,55 * 2 + 15,self.mReducedSize + 40, self.mReducedSize, self.mWidth,55 * 2 + 15,4) self.mTurtle = froggerlib.Turtle(0,55 * 1 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 1 + 15,5) self.mTurtle1 = froggerlib.Turtle(205,55 * 1 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 1 + 15,5) self.mTurtle2 = froggerlib.Turtle(405,55 * 1 + 15,self.mReducedSize, self.mReducedSize, -self.mReducedSize,55 * 1 + 15,5)
def __init__(self): game.Game.__init__(self, TITLE, SCREEN_WIDTH, SCREEN_HEIGHT, FPS) self.stage1 = froggerlib.Stage(0, 10 * VG, SCREEN_WIDTH, VG) self.stage2 = froggerlib.Stage(0, 5 * VG, SCREEN_WIDTH, VG) self.road = froggerlib.Road(0, 6 * VG, SCREEN_WIDTH, 4 * VG) self.water = froggerlib.Water(0, VG, SCREEN_WIDTH, 4 * VG) self.frog = None self.restart() y = 9 * VG + PADDING self.cars = [ froggerlib.Car(0, y, 2 * FROG_SIZE, FROG_SIZE, SCREEN_WIDTH, y, 5), froggerlib.Car(SCREEN_WIDTH / 4, y, 2 * FROG_SIZE, FROG_SIZE, SCREEN_WIDTH, y, 5), froggerlib.Car(SCREEN_WIDTH / 4 * 2, y, 2 * FROG_SIZE, FROG_SIZE, SCREEN_WIDTH, y, 5), froggerlib.Car(SCREEN_WIDTH / 4 * 3, y, 2 * FROG_SIZE, FROG_SIZE, SCREEN_WIDTH, y, 5), ] y = 8 * VG + PADDING self.trucks = [ froggerlib.Truck(0, y, 2 * FROG_SIZE + 10, FROG_SIZE, SCREEN_WIDTH, y, 4), froggerlib.Truck(SCREEN_WIDTH / 3, y, 2 * FROG_SIZE + 10, FROG_SIZE, SCREEN_WIDTH, y, 4), froggerlib.Truck(SCREEN_WIDTH / 3 * 2, y, 2 * FROG_SIZE + 10, FROG_SIZE, SCREEN_WIDTH, y, 4), ] y = 7 * VG + PADDING self.dozers = [ froggerlib.Dozer(0, y, 2 * FROG_SIZE + 10, FROG_SIZE, -1 * (2 * FROG_SIZE + 10), y, 3), froggerlib.Dozer(SCREEN_WIDTH / 3, y, 2 * FROG_SIZE + 10, FROG_SIZE, -1 * (2 * FROG_SIZE + 10), y, 3), froggerlib.Dozer(SCREEN_WIDTH / 3 * 2, y, 2 * FROG_SIZE + 10, FROG_SIZE, -1 * (2 * FROG_SIZE + 10), y, 3), ] y = 6 * VG + PADDING self.racecars = [ froggerlib.RaceCar(0, y, 2 * FROG_SIZE, FROG_SIZE, -1 * 2 * FROG_SIZE, y, 4, 7), froggerlib.RaceCar(SCREEN_WIDTH / 3, y, 2 * FROG_SIZE, FROG_SIZE, -1 * 2 * FROG_SIZE, y, 4, 7), froggerlib.RaceCar(SCREEN_WIDTH / 3 * 2, y, 2 * FROG_SIZE, FROG_SIZE, -1 * 2 * FROG_SIZE, y, 4, 7), ] self.allcars = self.cars + self.trucks + self.dozers + self.racecars self.logs = [] self.turtles = [] self.ridable = self.logs + self.turtles self.movable = self.allcars + self.ridable
def __init__( self, width, height ): self.mWidth = width self.mHeight = height self.mGameOver = False #Initializes Stages and Frog stage1, lane_size, half_gap, object_height = 11, 50, 5, 40 frog_speed = 20 x, y = self.mWidth/2, stage1 * lane_size + half_gap self.mFrog = froggerlib.Frog( x, y, object_height, object_height, x, y, frog_speed, lane_size, lane_size ) self.mStage1 = froggerlib.Stage( 0, stage1 * lane_size, self.mWidth, lane_size ) self.mStage2 = froggerlib.Stage( 0, stage1 * lane_size - 300, self.mWidth, lane_size * 2 ) #Initializes Roads and Cars road = 10 w, h = 90, 40 x, y = self.mWidth - w, road * lane_size + half_gap self.mCar1 = froggerlib.Car( randint(0, self.mWidth), y, w, h, -w, y, 10 ) x, y = 0, road * lane_size self.mRoad1 = froggerlib.Road(x, y, self.mWidth, lane_size) road = 10 w, h = 60, 40 x, y = self.mWidth - w, (road * lane_size + half_gap) - 50 self.mCar2 = froggerlib.Car( randint(0, self.mWidth), y, w, h, self.mWidth, y, 15 ) x, y = 0, (road * lane_size + half_gap) - 50 self.mRoad2 = froggerlib.Road(x, y, self.mWidth, lane_size) road = 10 w, h = 40, 40 x, y = self.mWidth - w, (road * lane_size + half_gap) - 100 self.mCar3 = froggerlib.Car( randint(0, self.mWidth), y, w, h, -w, y, 25 ) x, y = 0, (road * lane_size + half_gap) - 100 self.mRoad3 = froggerlib.Road(x, y, self.mWidth, lane_size) road = 10 w, h = 60, 40 x, y = self.mWidth - w, (road * lane_size + half_gap) - 150 self.mCar4 = froggerlib.Car( randint(0, self.mWidth), y, w, h, self.mWidth, y, 20 ) x, y = 0, (road * lane_size + half_gap) - 150 self.mRoad4 = froggerlib.Road(x, y - 5, self.mWidth, lane_size + 5) #Initializes Water and Logs lane_size = 50 object_size = 40 half_gap = 5 x, y = 0, 4 * lane_size w, h = self.mWidth, lane_size self.mWater1 = froggerlib.Water(x, y, w, h) x, y = 0, 4 * lane_size + half_gap w, h = 4 * lane_size, object_size dx, dy = self.mWidth, y speed = randint(5, 15) self.mLog1 = froggerlib.Log(randint(0, self.mWidth), y, w, h, 0 - w, dy, speed) lane_size = 50 object_size = 40 half_gap = 5 x, y = 0, 4 * lane_size w, h = self.mWidth, lane_size self.mWater2 = froggerlib.Water(x, y - 50, w, h) x, y = 0, 4 * lane_size + half_gap w, h = 4 * lane_size, object_size dx, dy = self.mWidth, y speed = randint(5, 15) self.mLog2 = froggerlib.Log(randint(0, self.mWidth), y - 50, w, h, dx, dy - 50, speed) lane_size = 50 object_size = 40 half_gap = 5 x, y = 0, 4 * lane_size w, h = self.mWidth, lane_size self.mWater3 = froggerlib.Water(x, y - 100, w, h) x, y = 0, 4 * lane_size + half_gap w, h = 4 * lane_size, object_size dx, dy = self.mWidth, y speed = randint(5, 15) self.mLog3 = froggerlib.Log(randint(0, self.mWidth), y - 100, w, h, 0 - w, dy - 100, speed) lane_size = 50 object_size = 40 half_gap = 5 x, y = 0, 4 * lane_size w, h = self.mWidth, lane_size self.mWater4 = froggerlib.Water(x, y - 150, w, h) x, y = 0, 4 * lane_size + half_gap w, h = 4 * lane_size, object_size dx, dy = self.mWidth, y speed = randint(5, 15) self.mLog4 = froggerlib.Log(randint(0, self.mWidth), y - 150, w, h, dx, dy - 150, speed) #Initializes Grasses and Homes self.mGrass1 = froggerlib.Grass(0, 0, 100, 50) self.mHome1 = froggerlib.Home(100, 0, 100, 50) self.mGrass2 = froggerlib.Grass(200, 0, 100, 50) self.mHome2 = froggerlib.Home(300, 0, 100, 50) self.mGrass3 = froggerlib.Home(400, 0, 100, 50) self.mHome3 = froggerlib.Home(500, 0, 100, 50) self.mGrass4 = froggerlib.Grass(600, 0, 100, 50) return
def __init__( self, width, height ,size): self.mSize = size self.mWidth = width self.mHeight = height self.mReducedSize = 0.8 * size column = self.mWidth / self.mSize row = self.mHeight / self.mSize # frog frogSize = self.mReducedSize * .2 frogX = self.mSize * 6 - self.mReducedSize /2 frogY = self.mSize * 12 + (self.mSize - self.mReducedSize) / 2 self.mFrog = froggerlib.Frog(frogX,frogY,self.mReducedSize,self.mReducedSize,frogX,frogY,20, self.mSize, self.mSize) #stage1 self.mStage1 = froggerlib.Stage(0, self.mHeight - size, self.mWidth, self.mHeight) #stage2 self.mStage2 = froggerlib.Stage(0, size * 6 , self.mWidth, size) #road self.mRoad = froggerlib.Road(0, size * 7, self.mWidth, size * 5) #water self.mWater = froggerlib.Water(0, size * 1, self.mWidth, size * 5) #home self.mHome = froggerlib.Home(0, 0, self.mWidth, size) #grass grassX = size * 2 - self.mReducedSize / 2 - size * 0.1 grassY = 0 self.mGrass = [] for x in range(5): grass = froggerlib.Grass( grassX, grassY, self.mReducedSize, self.mSize) grassX += size * 2 self.mGrass.append(grass) # dozers dozerX = size * 2 dozerY = frogY - size self.mDozers = [] for x in range(3): dozer = froggerlib.Dozer( dozerX, dozerY, self.mReducedSize, self.mReducedSize, dozerX, dozerY, 1) dozerX += size * 4 self.mDozers.append(dozer) #car carX = size * 4 carY = dozerY - size self.mCars = [] for x in range(4): car = froggerlib.Car( carX, carY, self.mReducedSize, self.mReducedSize, carX, carY, 5) carX += size * 4 self.mCars.append(car) # truck truckX = size * 3 truckY = carY - size self.mTrucks = [] for x in range(4): truck = froggerlib.Truck( truckX, truckY, self.mReducedSize, self.mReducedSize, truckX, truckY, 3) truckX += size * 3 self.mTrucks.append(truck) #raceCar raceCarX = size * 3 raceCarY = truckY - size self.mRaceCars = [] for x in range(4): raceCar = froggerlib.RaceCar( raceCarX, raceCarY, self.mReducedSize, self.mReducedSize, raceCarX, raceCarY, 3, 10) raceCarX += size * 3 self.mRaceCars.append(raceCar) #dozers1 dozerX = size * 4 dozerY = raceCarY - size self.mDozers1 = [] for x in range(4): dozer = froggerlib.Dozer( dozerX, dozerY, self.mReducedSize, self.mReducedSize, dozerX, dozerY, 1) dozerX += size * 3 self.mDozers1.append(dozer) #logs1 self.mLog1_size = self.mReducedSize * 4 log1X = size * 3 log1Y = dozerY - size * 2 self.mLogs1 = [] for x in range(3): log = froggerlib.Log(log1X, log1Y, self.mLog1_size, self.mReducedSize, log1X, log1Y, 1) log1X += size * 5 self.mLogs1.append(log) #turtles1 self.mTurtle1_size = self.mReducedSize * 3 turtle1X = size * 3 turtle1Y = log1Y - size self.mTurtles1 = [] for x in range(3): turtle = froggerlib.Turtle(turtle1X, turtle1Y, self.mTurtle1_size, self.mReducedSize, turtle1X, turtle1Y, 2) turtle1X += size * 4 self.mTurtles1.append(turtle) #logs2 self.mLog2_size = self.mReducedSize * 2 log2X = size * 3 log2Y = turtle1Y - size self.mLogs2 = [] for x in range(3): log = froggerlib.Log(log2X, log2Y, self.mLog2_size, self.mReducedSize, log2X, log2Y, 4) log2X += size * 4 self.mLogs2.append(log) #turtles self.mTurtle2_size = self.mReducedSize * 3 turtle2X = size * 2 turtle2Y = log2Y - size self.mTurtles2 = [] for x in range(3): turtle = froggerlib.Turtle(turtle2X, turtle2Y, self.mTurtle2_size, self.mReducedSize, turtle2X, turtle2Y, 3) turtle2X += size * 4 self.mTurtles2.append(turtle) #logs3 self.mLog3_size = self.mReducedSize * 3 log3X = size * 3 log3Y = turtle2Y - size self.mLogs3 = [] for x in range(3): log = froggerlib.Log(log3X, log3Y, self.mLog3_size, self.mReducedSize, log3X, log3Y, 4) log3X += size * 4 self.mLogs3.append(log) self.mGameOver = True
def __init__(self, width, height, lane_size): self.mWidth = width self.mHeight = height self.mBackGroundColor = (255, 255, 255) self.mFrogColor = (0, 255, 0) self.mStageColor = (134, 65, 244) self.mRoadColor = (0, 0, 0) self.mWaterColor = (0, 0, 255) self.mCarColor = (0, 255, 255) self.mTruckColor = (125, 125, 125) self.mRaceCarColor = (244, 66, 179) self.mDozerColor = (151, 244, 65) self.mGrassColor = (100, 205, 100) self.mHomeColor = (66, 244, 235) self.mLogColor = (244, 65, 100) self.mTurtleColor = (65, 244, 146) # self.mLaneSize = lane_size self.mObjectSize = int(self.mLaneSize * 0.8) self.mObjectGap = int((self.mLaneSize - self.mObjectSize) / 2) self.mFrogDead = False # Frog w = self.mObjectSize h = self.mObjectSize x = int(self.mWidth / 2 - w / 2) y = 10 * self.mLaneSize + self.mObjectGap speed = 8 horizontal_gap = self.mLaneSize vertical_gap = self.mLaneSize self.mFrog = froggerlib.Frog(x, y, w, h, x, y, speed, horizontal_gap, vertical_gap) # Lanes self.mLanes = [] self.mLanes.append( froggerlib.Stage(0, 10 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Road(0, 9 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Road(0, 8 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Road(0, 7 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Road(0, 6 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Stage(0, 5 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Water(0, 4 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Water(0, 3 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Water(0, 2 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Water(0, 1 * self.mLaneSize, self.mWidth, self.mLaneSize)) self.mLanes.append( froggerlib.Grass(0, 0 * self.mLaneSize, self.mWidth, self.mLaneSize)) # Home spots self.mLanes.append( froggerlib.Home(80, 0 * self.mLaneSize, 70, self.mLaneSize)) self.mLanes.append( froggerlib.Home(230, 0 * self.mLaneSize, 70, self.mLaneSize)) self.mLanes.append( froggerlib.Home(380, 0 * self.mLaneSize, 70, self.mLaneSize)) self.mLanes.append( froggerlib.Home(530, 0 * self.mLaneSize, 70, self.mLaneSize)) # Logs self.mLogs = [] x = self.mWidth y = 4 * self.mLaneSize + self.mObjectGap w = self.mObjectSize + 80 h = self.mObjectSize dx = 0 - w dy = y speed = 6 speed1 = 5 y1 = 1 * self.mLaneSize + self.mObjectGap dy1 = y1 self.mLogs.append(froggerlib.Log(x, y, w, h, dx, dy, speed)) self.mLogs.append(froggerlib.Log(x, y1, w, h, dx, dy1, speed1)) #Turtles self.mTurtles = [] x = self.mWidth y = 3 * self.mLaneSize + self.mObjectGap w = self.mObjectSize + 80 h = self.mObjectSize dx = self.mWidth dy = y speed = 5 speed1 = 8 y1 = 2 * self.mLaneSize + self.mObjectGap dy1 = y1 self.mTurtles.append(froggerlib.Turtle(x, y, w, h, dx, dy, speed)) self.mTurtles.append(froggerlib.Turtle(x, y1, w, h, dx, dy1, speed1)) self.mCars = [] x = self.mWidth y = 9 * self.mLaneSize + self.mObjectGap w = self.mObjectSize h = self.mObjectSize dx = 0 - w dy = y speed = 10 #Truck y1 = 8 * self.mLaneSize + self.mObjectGap speed1 = 7 dy1 = y1 x1 = 0 dx1 = self.mWidth if dx1 < 0 + self.mWidth: dx1 = 0 #Dozer y2 = 7 * self.mLaneSize + self.mObjectGap speed2 = 2 dy2 = y2 x2 = 0 dx2 = self.mWidth #RaceCar y3 = 6 * self.mLaneSize + self.mObjectGap dy3 = y3 self.mins = 5 self.maxs = 20 self.mCars.append(froggerlib.Car(x, y, w, h, dx, dy, speed)) self.mCars.append(froggerlib.Truck(x1, y1, w, h, dx1, dy1, speed1)) self.mCars.append(froggerlib.Dozer(x2, y2, w, h, dx2, dy2, speed2)) self.mCars.append( froggerlib.RaceCar(x, y3, w, h, dx, dy3, self.mins, self.maxs))