This is also off of my hello world book.
Type this:
import pygame, sys from math import * pygame.init() #wider screen than LunarLander, since we have sideways motion screen = pygame.display.set_mode([800,600]) screen.fill([0, 0, 0]) ground = 540 #landing pad is ay y = 540 start = 90 # starting location 90 pixels from top of window clock = pygame.time.Clock() ship_mass = 5000.0 fuel = 5000.0 fps = 30 #default x_loc = 20 # x-location in meters = dist from center of landing pad y_loc = 40 # y-location in meters = height above the landing pad x_offset = 40 # offsets so that when ship location is (0,0), ship is y_offset = -108 # just touching landing pad, and centered. x_speed = 2000.0 #pixels/frame y_speed = -800.0 x_velocity = x_speed/(10.0*fps) #m/s y_velocity = y_speed/(10.0*fps) gravity = 1.5 thrust = 0 delta_v = 0 scale = 10 #scale factor from pixels to meters throttle_down = False left_down = False right_down = False #held_down = False count = 0 x_pos = 0 y_pos = 0 """ x_pos, y_pos in pixels - (0,0) is top left x_loc, y_loc in meters - (0,0) is center of landing pad x_speed, y_speed in pixels per frame. x_velocity, y_velocity in m/s scale factor = 10 (10 pixels = 1 meter) pos (pixels) to loc (meters) is scaled by: scaleFactor (meters/pixel) speed (pixels/frame) to velocity (m/s) is scaled by: ScaleFactor * FPS (Frames Per Second) """ # sprite for the ship class ShipClass(pygame.sprite.Sprite): def __init__(self, image_file, position): pygame.sprite.Sprite.__init__(self) self.imageMaster = pygame.image.load(image_file) self.image = self.imageMaster self.rect = self.image.get_rect() self.position = position self.rect.centerx, self.rect.centery = self.position self.angle = 0 def update(self): self.rect.centerx, self.rect.centery = self.position oldCenter = self.rect.center self.image = pygame.transform.rotate(self.imageMaster, self.angle) self.rect = self.image.get_rect() self.rect.center = oldCenter
No comments:
Post a Comment