made vssg.py executable, converted line endings to unix

--HG--
branch : vssg
This commit is contained in:
cecilkorik 2007-01-22 20:04:41 +00:00
parent 9ede2b5204
commit 88a70248b3

250
vssg.py
View file

@ -1,124 +1,126 @@
import pygame #!/usr/bin/python
from pygame.locals import *
import os import pygame
import sys from pygame.locals import *
import math import os
import random import sys
import starmap import math
import starmap_gen import random
import starmap
pygame.init() import starmap_gen
def handle_keys(keys): pygame.init()
global bounce, speed_player, trails, dir_player, color_player
for key in keys: def handle_keys(keys):
if key == K_b: global bounce, speed_player, trails, dir_player, color_player
bounce = not bounce for key in keys:
elif key == K_q: if key == K_b:
sys.exit(0) bounce = not bounce
elif key == K_c: elif key == K_q:
color_player = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) sys.exit(0)
elif key == K_t: elif key == K_c:
trails = not trails color_player = (random.randint(0,255), random.randint(0,255), random.randint(0,255))
elif key == K_UP: elif key == K_t:
speed_player += 0.01 trails = not trails
elif key == K_DOWN: elif key == K_UP:
speed_player -= 0.01 speed_player += 0.01
elif key == K_LEFT: elif key == K_DOWN:
dir_player -= (math.pi / 180.0) speed_player -= 0.01
elif key == K_RIGHT: elif key == K_LEFT:
dir_player += (math.pi / 180.0) dir_player -= (math.pi / 180.0)
elif key == K_RIGHT:
def move(coords, dir, mag): dir_player += (math.pi / 180.0)
return [coords[0] + (math.sin(dir) * mag), coords[1] - (math.cos(dir) * mag)]
def move(coords, dir, mag):
def limitdir(dir): return [coords[0] + (math.sin(dir) * mag), coords[1] - (math.cos(dir) * mag)]
while dir < 0:
dir += math.pi*2.0 def limitdir(dir):
while dir > math.pi*2.0: while dir < 0:
dir -= math.pi*2.0 dir += math.pi*2.0
return dir while dir > math.pi*2.0:
dir -= math.pi*2.0
def bouncedir(normal, dir): return dir
inv_normal = limitdir(normal + math.pi)
return limitdir(normal + (inv_normal - dir)) def bouncedir(normal, dir):
inv_normal = limitdir(normal + math.pi)
return limitdir(normal + (inv_normal - dir))
loc_player = [100.0,150.0]
dir_player = math.pi * 0.80
loc_player = [100.0,150.0]
size = width, height = (800,600) dir_player = math.pi * 0.80
scr = pygame.display.set_mode(size)
size = width, height = (800,600)
#options scr = pygame.display.set_mode(size)
color_player = (255,255,255)
bounce = True #options
speed_player = 5.0 color_player = (255,255,255)
trails = False bounce = True
speed_player = 5.0
scr.fill((0,0,0)) trails = False
keys = [] scr.fill((0,0,0))
do_quit = False
keys = []
map = starmap_gen.starmap_generate() do_quit = False
while True: map = starmap_gen.starmap_generate()
events = pygame.event.get((KEYDOWN, KEYUP, QUIT))
for ev in events: while True:
if ev.type == QUIT: events = pygame.event.get((KEYDOWN, KEYUP, QUIT))
do_quit = True for ev in events:
break if ev.type == QUIT:
elif ev.type == KEYUP: do_quit = True
try: break
del keys[keys.index(ev.key)] elif ev.type == KEYUP:
except IndexError: try:
pass del keys[keys.index(ev.key)]
else: except IndexError:
keys += [ev.key] pass
else:
if do_quit: keys += [ev.key]
break
if do_quit:
handle_keys(keys) break
pygame.event.pump()
""" handle_keys(keys)
loc_new = move(loc_player, dir_player, speed_player) pygame.event.pump()
"""
if loc_new[0] < 5: loc_new = move(loc_player, dir_player, speed_player)
if not bounce:
loc_new[0] = width-6 if loc_new[0] < 5:
else: if not bounce:
dir_player = bouncedir(math.pi*0.5, dir_player) loc_new[0] = width-6
elif loc_new[1] < 5: else:
if not bounce: dir_player = bouncedir(math.pi*0.5, dir_player)
loc_new[1] = height-6 elif loc_new[1] < 5:
else: if not bounce:
dir_player = bouncedir(math.pi, dir_player) loc_new[1] = height-6
elif loc_new[0] > width - 5: else:
if not bounce: dir_player = bouncedir(math.pi, dir_player)
loc_new[0] = 6 elif loc_new[0] > width - 5:
else: if not bounce:
dir_player = bouncedir(math.pi*1.5, dir_player) loc_new[0] = 6
elif loc_new[1] > height - 5: else:
if not bounce: dir_player = bouncedir(math.pi*1.5, dir_player)
loc_new[1] = 6 elif loc_new[1] > height - 5:
else: if not bounce:
dir_player = bouncedir(0, dir_player) loc_new[1] = 6
else:
if bounce: dir_player = bouncedir(0, dir_player)
loc_new = move(loc_player, dir_player, speed_player)
if bounce:
if not trails: loc_new = move(loc_player, dir_player, speed_player)
pygame.draw.circle(scr, (0,0,0), loc_player, 2, 1)
pygame.draw.circle(scr, color_player, loc_new, 2, 1) if not trails:
pygame.draw.circle(scr, (0,0,0), loc_player, 2, 1)
pygame.draw.circle(scr, color_player, loc_new, 2, 1)
loc_player = loc_new
"""
loc_player = loc_new
for star in map.get_all_stars(): """
star.draw(scr)
for star in map.get_all_stars():
star.draw(scr)
pygame.display.flip()
pygame.display.flip()