codetower/README.md

46 lines
1.7 KiB
Markdown
Raw Normal View History

2022-02-24 13:15:41 +01:00
# CodeTower
2022-02-24 15:06:22 +01:00
**Code your tower (coding tower defense)**
2022-04-06 18:40:27 +02:00
CodeTower is a Tower Defense coding game where the towers are driven by Python code.
2022-04-06 22:18:26 +02:00
It's a early prototype. CodeTower is a open source software distributed under the terms of the GPLv3 license.
2022-04-06 22:39:49 +02:00
2022-04-06 22:18:26 +02:00
The game engine is [Blender](https://blender.org) - [UPGE](https://upbge.org).
2022-04-06 18:40:27 +02:00
![Screenshot](img/screenshot-01.jpg)
2022-04-06 22:18:26 +02:00
### Download
2022-04-06 18:40:27 +02:00
2022-04-06 22:44:36 +02:00
Source repository (Gitlab) : https://gitlab.com/phroy/codetower
2022-04-06 18:40:27 +02:00
2022-04-06 22:33:16 +02:00
Binaries (GNU/Linux and Windows) : [www.phroy.org](http://www.phroy.org/cloud/index.php/s/nyoWT6xMkxAJ9Pm)
2022-04-06 22:30:03 +02:00
2022-04-06 22:18:26 +02:00
### Tower commands
2022-04-06 22:44:36 +02:00
With your Python script, you can build, remove and upgrade your towers.
For each tower, you will be able to choose dynamically most appropriate techno (archer tower) or spell (mage tower).
The Python script is **ct_cmd.py** (in the game folder), you have to edit it with editing software (Spyder, Emacs, Atom, ...).
2022-04-06 22:39:49 +02:00
2022-04-06 22:33:16 +02:00
* **Build a tower : ct_build (x, y, category, name, color, style)**
2022-04-06 22:30:03 +02:00
- x position (integer)
- y position (integer)
- category (string) : "Archer tower", "Mage tower" or "Barrack" (not implemented)
- name (string)
- color (RGB model) : purple, turquoise, magenta, orange, yellow, green, red or [R, G, B, 1]
- style : square or round and version (A,B or C), exemple : 'square-A'
- Return boolean flag
2022-04-06 22:43:24 +02:00
- True : builded without error
2022-04-06 22:33:16 +02:00
- False : not builded (error)
- Exemple : ct_build(1,1, "Archer tower", "Tower \#1",yellow,"round-A")
2022-04-06 22:18:26 +02:00
2022-04-06 22:33:16 +02:00
* **Remove a tower : ct_remove (x, y)**
2022-04-06 22:30:03 +02:00
- x position (integer)
- y position (integer)
2022-04-06 22:18:26 +02:00
2022-04-06 22:33:16 +02:00
* **Get your level : ct_level ()**
2022-04-06 22:30:03 +02:00
- Return your level (integer)
2022-04-06 22:18:26 +02:00
2022-04-06 22:33:16 +02:00
* **Time management (temporization) : ct_sleep (delay)**
2022-04-06 22:30:03 +02:00
- delay : delay in seconds (float)