Untitled
import pygame from pygame import Vector3 # Initialize pygame pygame.init() # Set up display width, height = 800, 600 screen = pygame.display.set_mode((width, height)) pygame.display.set_caption("3D Pixel Survival") # Colors black = (0, 0, 0) white = (255, 255, 255) red = (255, 0, 0) green = (0, 255, 0) # Camera camera_pos = Vector3(0, 0, -5) # Player player_size = 20 player_pos = Vector3(width/2, height/2, 0) player_speed = 5 player_body = # Enemies enemy_size = 10 enemy_pos = Vector3(random.randint(0, width-enemy_size), 0, 0) enemy_speed = 3 enemies = # Bullet bullet_size = 5 bullet_speed = 10 bullets = # Game loop game_over = False while not game_over: for event in pygame.event.get(): if event.type == pygame.QUIT: game_over = True if event.type == pygame.KEYDOWN: if event.key == pygame.K_SPACE: bullet_pos = Vector3(player_pos.x + player_size/2 - bullet_size/2, player_pos.y, player_pos.z) bullets.append(bullet_pos) # Player movement keys = pygame.key.get_pressed() if keys[pygame.K_LEFT]: player_pos.x -= player_speed if keys[pygame.K_RIGHT]: player_pos.x += player_speed if keys[pygame.K_UP]: player_pos.y -= player_speed if keys[pygame.K_DOWN]: player_pos.y += player_speed # Enemy movement enemy_pos.y += enemy_speed # Bullet movement for i, bullet_pos in enumerate(bullets): bullet_pos.y += bullet_speed if bullet_pos.y > height: bullets.pop(i) # Check for collisions (simplified) for enemy in enemies: if (player_pos.x - enemy.x)**2 + (player_pos.y - enemy.y)**2 <= (player_size + enemy_size)**2 / 4: game_over = True # Draw screen.fill(black) # Draw player (simplified) pygame.draw.rect(screen, white, (player_pos.x, player_pos.y, player_size, player_size)) # Draw enemies for enemy in enemies: pygame.draw.rect(screen, red, (enemy.x, enemy.y, enemy_size, enemy_size)) # Draw bullets for bullet_pos in bullets: pygame.draw.rect(screen, green, (bullet_pos.x, bullet_pos.y, bullet_size, bullet_size)) pygame.display.update() # Game over pygame.quit()
Leave a Comment