[9141] | 1 | =============================================================================== |
---|
| 2 | Classes |
---|
| 3 | =============================================================================== |
---|
| 4 | |
---|
| 5 | TowerDefense: |
---|
| 6 | GameType class |
---|
| 7 | |
---|
| 8 | TowerDefenseCenterpoint |
---|
| 9 | Centerpoint class. Store tower template |
---|
| 10 | |
---|
| 11 | Tower |
---|
| 12 | Represents a Tower |
---|
[9143] | 13 | I'm not actually sure if you have to code C++ in order to have your result. I would suggest to simply create a new spaceship template or maybe better a |
---|
| 14 | new template for a pawn. (The tower don't need to be spaceships; pawn is just fine.) |
---|
| 15 | Example for a template: /data/levels/templates/assff.oxt && /data/levels/include/weaponSettingsAssff.oxi |
---|
| 16 | @ assff.oxt: you don't need an engine (or your towers could fly away :-) and probably no Cameras. (just try what happens if you leave them out.) |
---|
| 17 | @ weaponSettingsAssff.oxi: |
---|
| 18 | <weaponslots>: location where you want to have your tower to be equiped with weapons |
---|
| 19 | <weaponsets> : if you press fire, you actually always fire a whole set of weapons. The amount of weaponsets is defined here. (I'm not 100% sure whether this explanation is right.) |
---|
[9141] | 20 | |
---|
[9143] | 21 | There are three <Weapon> tags - one for each weaponslot. Each weapon can contain several objects which you would probably |
---|
| 22 | refer to as "weapons": |
---|
[9141] | 23 | |
---|
[9143] | 24 | LightningGun: Shoots a slow, rotation, yellow "ball". |
---|
| 25 | HsW01: the default laser weapon |
---|
| 26 | SimpleRocketFire: a weak (self steering) rocket |
---|
| 27 | RocketFire: a strong rocket |
---|
| 28 | |
---|
| 29 | About your Tower's Template location - either keep it in the level or do it similarly to the Assff templates. |
---|
| 30 | (If your towers behave & look nicely, I'm quite sure others want to include them in other levels, too.) |
---|
| 31 | |
---|
| 32 | |
---|
[9141] | 33 | =============================================================================== |
---|
| 34 | Other files |
---|
| 35 | =============================================================================== |
---|
| 36 | |
---|
| 37 | /data/levels/towerdefense.oxw |
---|
| 38 | Loads the level. In <Level>, we first create a SpawnPoint. It spawns a cylinder using the 'centerpointmark' Template, which uses the 'centerpointmarkcamera' Template to create a static camera. Then, we create an instance of TowerDefenseCenterpoint and pass the 'towertemplate' Template, so that we can later create towers using this template. We also plase the playfield.mesh in a way that maps every field on the playfield.mesh to nice coordinates: the playfield spans as a square from -8,-8 to 8,8. |
---|