40 Commits

Author SHA1 Message Date
4e05a62274 Food now grows, the chance to graw is dependent on the decay rate. The lower the decay rate, the higher the chance to grow. This helps keep the food from growing exponentially. 2025-06-03 22:25:41 -05:00
ae88bf0dd2 Food now grows, the chance to graw is dependent on the decay rate. The lower the decay rate, the higher the chance to grow. This helps keep the food from growing exponentially. 2025-06-03 22:20:37 -05:00
Sam
56415bb07a Added rounding to the object representation of the food object.
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 30s
2025-06-03 20:41:20 -05:00
Sam
9a8217a034 Refine zoom limits in simulation interface for improved user experience
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 34s
2025-06-03 20:38:50 -05:00
Sam
0202fe59a5 Add legend visibility toggle and pause functionality to simulation
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 31s
2025-06-03 20:35:53 -05:00
Sam
9e7ad041b4 Update test runner configuration to use copy link mode during installation to suppress warning
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 31s
2025-06-03 20:21:43 -05:00
Sam
55633706a2 Add tests for World class object management and querying functionality
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 28s
2025-06-03 20:19:54 -05:00
Sam
dad79942c2 Enhance World initialization with size parameters and adjust food spawning range
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 27s
2025-06-03 20:10:22 -05:00
Sam
f0e00d66b6 Add interaction radius visibility toggle and render circles for interactable objects
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 29s
2025-06-03 20:03:27 -05:00
Sam
11bd766e62 Decay rate is now accelerated by nearby food.
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 33s
2025-06-03 19:55:31 -05:00
Sam
3a4301f7cb Refactor Camera and Entity classes for improved type hinting and documentation using typing and pydantic.
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 34s
2025-06-03 19:47:39 -05:00
Sam
9e3c34fd3e Enable food spawning and ensure selected objects remain valid during ticks
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 40s
2025-06-03 19:29:37 -05:00
5eb2079da1 food work :3
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 2m18s
2025-06-03 19:25:54 -05:00
da355dbc6c Merge branch 'food'
# Conflicts:
#	main.py
#	world/render_objects.py
2025-06-03 18:46:47 -05:00
Sam
b80a5afc4a Added camera stabilization, moved the Camera class into its own file, normalized the diagonal camera vector, added a select and multi-select feature, added an inspect feature, changed the world class to use spatial hashing for better storage, changed the world class to use a double buffer to swap states when ticking, added death and interaction flags, added world class object queries, added an abstract base class for a basic entity that should be inherited by all object classes, added a max_visual_width parameter to said base class for selection clarity that should be set by all new entity/object classes, and added a basic interaction framework with an interaction radius parameter. When an object could interact with it's neighbors in the next tick, it should enable its can_interact flag, and the world will provide a list of interactable objects in that radius through the object's tick function. Also removed ruff format precommit check because it currently doesn't work. Also temporarily removed food class because it's outdated.
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 2m21s
2025-06-03 18:38:27 -05:00
fc171cd523 food turns yellow then black as it spoils, checks food amount and adds more to equal 10, randomizes position with seed 2025-06-02 17:01:19 -05:00
56857e24b8 food turns green as it spoils 2025-06-02 00:30:51 -05:00
6952e88e61 Rendering framework
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 2m0s
2025-06-01 23:59:53 -05:00
Sam
fb5d63f636 Update .gitignore to include IDE and cache directories
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 28s
2025-06-01 16:21:51 -05:00
Sam
784123b9e1 Add Ruff linter and formatter to pre-commit configuration 2025-06-01 16:20:19 -05:00
Sam
3988f0a6fc Formatting with Ruff
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 27s
2025-06-01 16:18:00 -05:00
Sam
17a070e99b Update pip-compile hook to use pyproject.toml instead of requirements.in 2025-06-01 13:59:50 -05:00
Sam
ad02f34b6c Remove placeholder comment from test function 2025-05-31 20:23:27 -05:00
Sam
d57f993868 Remove test results upload action and add step to print test summary
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 25s
2025-05-31 20:20:16 -05:00
Sam
7fc550f4dd Update test results upload action to use dorny/test-reporter and specify artifact details
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 47s
2025-05-31 20:17:31 -05:00
Sam
b5a3d6348f Add conditional upload step for test results in workflow
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 26s
2025-05-31 20:15:46 -05:00
Sam
9ecbab5371 Remove caching configuration from uv setup step in test workflow
All checks were successful
Build Simulation and Test / Run All Tests (push) Successful in 27s
2025-05-31 20:11:08 -05:00
Sam
ebf276d250 Update test results upload action to use version 3 and set retention days
Some checks failed
Build Simulation and Test / Run All Tests (push) Has been cancelled
2025-05-31 20:09:14 -05:00
Sam
c98f48d4bc Refactor Python setup step in test workflow to use 'uv python install'
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 5m2s
2025-05-31 20:00:58 -05:00
Sam
853d2120da Update test results upload action to use latest version
Some checks failed
Build Simulation and Test / Run All Tests (push) Has been cancelled
2025-05-31 19:58:34 -05:00
Sam
253f15b71c Fix action reference in test results upload step
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 8s
2025-05-31 19:57:48 -05:00
Sam
e00edd8137 Update test workflow to upload results using Gitea action
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 8s
2025-05-31 19:56:11 -05:00
Sam
b52690549b Enhance pre-commit configuration and update test workflow for better results reporting
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 7s
2025-05-31 19:54:05 -05:00
Sam
c3b0a12c32 Update pre-commit configuration and add initial test file
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 5m6s
2025-05-31 19:39:47 -05:00
Sam
5743650e6b Add uv.lock file to manage project dependencies and versions 2025-05-31 19:34:10 -05:00
Sam
1d23d3f366 Add uv.lock file to manage project dependencies and versions 2025-05-31 19:28:36 -05:00
Sam
4775b59936 Add pytest dependency for improved testing capabilities
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 8m31s
2025-05-31 19:26:02 -05:00
Sam
a8103af866 Add GitHub Actions workflow for automated testing and setup 2025-05-31 19:25:46 -05:00
Sam
34f790ca18 Optimize grid line drawing by precomputing line coordinates for improved performance 2025-05-31 19:25:36 -05:00
Sam
43882f4fef Add initial project structure with Pygame integration and camera controls 2025-05-31 18:30:47 -05:00