Compare commits

..

No commits in common. "fc171cd523a368a1e57983277e2d744c63f6d5e4" and "6952e88e61a58fca5c766fc3ccf68b742e79dd95" have entirely different histories.

3 changed files with 6 additions and 32 deletions

21
main.py
View File

@ -1,7 +1,6 @@
import pygame
import time
import sys
import random
from world.world import World, Position
from world.render_objects import DebugRenderObject, FoodObject
@ -24,7 +23,7 @@ GRID_WIDTH = 20 # Number of cells horizontally
GRID_HEIGHT = 15 # Number of cells vertically
CELL_SIZE = 20 # Size of each cell in pixels
DEFAULT_TPS = 20 # Amount of ticks per second for the simulation
DEFAULT_TPS = 200 # Amount of ticks per second for the simulation
class Camera:
@ -227,9 +226,7 @@ def main():
world = World()
world.add_object(DebugRenderObject(Position(0,0)))
# setting the seed to 67 >_<
random.seed(67)
world.add_object(FoodObject(Position(100, 0)))
running = True
while running:
@ -274,14 +271,6 @@ def main():
print("Tick logic executed")
world.tick_all()
# gets every object in the world and returns amount of FoodObjects
objects = world.get_objects()
food = len([obj for obj in objects if isinstance(obj, FoodObject)])
print(f"Food count: {food}")
if food < 10:
for i in range(10 - food):
world.add_object(FoodObject(Position(random.randint(-200, 200), random.randint(-200, 200))))
# Calculate TPS every second
if current_time - last_tps_time >= 1.0:
actual_tps = tick_counter
@ -314,12 +303,6 @@ def main():
tps_rect.bottomright = (SCREEN_WIDTH - 10, SCREEN_HEIGHT - 10)
screen.blit(tps_text, tps_rect)
# Render camera position and speed in bottom left
cam_text = font.render(f"Camera: ({camera.x:.2f}, {camera.y:.2f}), Speed: {camera.speed:.2f}", True, WHITE)
cam_rect = cam_text.get_rect()
cam_rect.bottomleft = (10, SCREEN_HEIGHT - 10)
screen.blit(cam_text, cam_rect)
# Update display
pygame.display.flip()
clock.tick(180)

View File

@ -2,13 +2,6 @@ from world.world import Position
import pygame
# returns desired yellow value for food decay
def food_decay_yellow(decay):
if decay < 128:
return decay
else:
return 255 - decay
class DebugRenderObject:
def __init__(self, position: Position):
self.position = position
@ -28,9 +21,10 @@ class FoodObject:
def tick(self):
self.decay += 1
if self.decay > 255:
self.decay = 0 # eventually will raise a destroy flag
if (self.decay > 255):
self.decay = 0
def render(self, camera, screen):
if camera.is_in_view(*self.position.get_position()):
pygame.draw.circle(screen, (255-self.decay,food_decay_yellow(self.decay),0), camera.world_to_screen(*self.position.get_position()), 5 * camera.zoom)
pygame.draw.circle(screen, (255,self.decay,0), camera.world_to_screen(*self.position.get_position()), 5 * camera.zoom)

View File

@ -14,9 +14,6 @@ class World:
def add_object(self, new_object):
self.objects.append(new_object)
def get_objects(self):
return self.objects
class Position:
def __init__(self, x, y):
self.x = x