Jun-18-2021, 01:13 PM
So basically I have been trying to get a terrain generator but the values are always the same on the top left corner. Any ideas why?
MAIN SCRIPT


MAIN SCRIPT
import pygame import player import world_gen pygame.init() tk = pygame.time.Clock() FPS = 60 background = pygame.image.load('imgs/background_gradient.png') is_running = True (WIN_W, WIN_H) = (1600, 900) display = pygame.display.set_mode((WIN_W, WIN_H)) pygame.display.set_caption('2D Minecraft v0.0 ALPHA') temp_tile = pygame.image.load('imgs/temp_tile.png') def HandleDrawing(): display.blit(background, (0, 0)) at_block = 0 for chunk in world_gen.world_dat: display.blit(temp_tile, (chunk[at_block], chunk[at_block+1])) at_block += 1 if player.is_walking: if not player.left and player.right: display.blit(pygame.transform.flip(player.walk_anim[player.at_walk_frame], True, False), (player.x, player.y)) elif not player.right and player.left: display.blit(player.walk_anim[player.at_walk_frame], (player.x, player.y)) elif player.left and player.right: display.blit(player.player, (player.x, player.y)) else: display.blit(player.player, (player.x, player.y)) pygame.display.update() world_gen.chunk_gen(1) while is_running: for event in pygame.event.get(): if event.type == pygame.QUIT: is_running = False player.Movement() HandleDrawing() tk.tick(FPS) pygame.quit()WORLD GEN
import pygame import noise import random chunk_size = 24 grid_size = 40 noise_multiplier = 0.05 world_dat = [] def chunk_gen(x): global world_dat chunk_dat = [] for x_pos in range(chunk_size): h = int(noise.pnoise1(x + x_pos* chunk_size * noise_multiplier, repeat=9999999) * 5) chunk_dat.append(x + x_pos * grid_size) chunk_dat.append(h) chunk_dat.append(round(x / chunk_size)) world_dat.append(chunk_dat)