2.3 KiB
2.3 KiB
Repository Guidelines
Project Structure & Module Organization
Assets/contains all Unity assets and code. Game-specific content lives underAssets/GameMain/.Assets/GameMain/Scripts/holds gameplay code organized by domain (Procedure/,Entity/,UI/,Scene/,Sound/,Utility/).Assets/GameMain/Scenes/stores Unity scenes (start fromAssets/Launcher.unity).Assets/GameMain/Configs/andAssets/GameMain/DataTables/store runtime configuration and data tables.StreamingAssets/is for runtime-loaded files that must be preserved on build.docs/contains design notes (seedocs/GameDesign.md).Êý¾Ý±í/is a top-level data table workspace; keep it in sync withAssets/GameMain/DataTables/when exporting.
Build, Test, and Development Commands
- Open the project with Unity Hub and load
GeometryTDas a Unity project. - Play locally via the Unity Editor Play button (no custom CLI runner is defined in this repo).
- Build via Unity:
File > Build Settings...then choose target and build. - IDE support: open
GeometryTD.slnorAssembly-CSharp.csprojfor C# navigation and tooling.
Coding Style & Naming Conventions
- C# uses 4-space indentation and Allman braces (see
Assets/GameMain/Scripts/Procedure/ProcedureLaunch.cs). - Types, methods, and public members use
PascalCase; locals and parameters usecamelCase. - Namespaces follow
GeometryTD.*by feature area (example:GeometryTD.Procedure). - Keep Unity
.metafiles with their assets; do not delete or regenerate them manually.
Testing Guidelines
- No project-specific tests are present yet. Unity¡¯s Test Runner is available if tests are added.
- If you add tests, place them under
Assets/withEditororRuntimeassembly definition files and use*Tests.csnaming.
Commit & Pull Request Guidelines
- This repository does not include Git history in the workspace, so no commit convention can be inferred.
- Use clear, scoped commit messages (example:
Add tower targeting component), and include a brief PR description plus screenshots for visual changes.
Configuration Tips
- Project settings live in
ProjectSettings/andPackages/; review diffs carefully when they change. - Avoid committing
Library/,Temp/, orLogs/outputs; they are generated by Unity.