home *** CD-ROM | disk | FTP | other *** search
- // defines abstract script object with default parameters
- // to be inherited by the real script objects
- ////////////////////////////////////////////////////////////////////////////////////
-
- // start wrapper - prevent multiple inclusions or recursive inclusions
-
- //(this currently causes 'unrecognized preprocessor directive' warnings, until implemented)
- #ifndef INCLUDED_DEFAULTS_GSH
- #define INCLUDED_DEFAULTS_GSH
-
- ////////////////////////////////////////////////////////////////////////////////////
-
- #include "glresrc.h"
- #include "sounds.h"
-
- // default character
-
- abstract character Chr_Default
- {
- walking speed 1 // normally defined by the animators
- turning speed 0.5
-
- aggression 0.7 // between 0 and 1
- sight range 22 // 22 metres away
- sight angle 45 // 45 degrees left or right
- hearing range 17 // 17 metres away
-
- }
-
- // default goodie character
-
- abstract character Chr_DefaultGoodie : Chr_Default
- {
- strength 20
- aim 1
- }
-
- // default baddie character
-
- abstract character Chr_DefaultBaddie : Chr_Default
- {
- strength 10
- aim 4
- }
-
- // default nothing pickup
-
- character Chr_Nothing_Pickup : Chr_Default
- {
- turning speed 0 // this is in revolutions per second
- walking speed 0 // this is in animation cycles per second
- strength 10 // initial strength points
- aim 0
- aggression 0.21 // 2 = nothing pickup
- }
-
- // default "other" pickup (eg a "mission" item with no other use)
-
- character Chr_Other_Pickup : Chr_Default
- {
- turning speed 0 // this is in revolutions per second
- walking speed 0 // this is in animation cycles per second
- strength 10 // initial strength points
- aim 0
- aggression 0.101 // 10 = "other" pickup
- }
-
- // default settings for a placed object which does bugger all
-
- abstract role Rol_PlacedObject
- {
- character none
- light none
- projectile none
- identifier none
-
- per vertex fogging yes
- alpha fogging no
- destructibility none
- }
-
- // default settings for a robot
-
- abstract role Rol_DefaultRobot
- {
- light none
- projectile none
- identifier none // can be overridden
-
- per vertex fogging no
- alpha fogging yes
- destructibility none
- }
-
- // default settings for a projectile
-
- abstract role Rol_DefaultProjectile
- {
- light none // can be overridden
- character none
- identifier none // can be overridden
-
- per vertex fogging no
- alpha fogging yes
- destructibility none
- status display no
- }
-
- // default for a garbage heap (contains an item)
-
- // Morgan: This was added in for the purposes of the training level. It
- // stops the game from printing a "junkpile empty" message when searched.
- // If you derive your junkpile or garbage roles from the two roles below
- // instead, they should give out empty messages as usual.
- abstract role Rol_DefaultGarbage_NoMsg : Rol_PlacedObject
- {
- character Chr_Nothing_Pickup
- identifier "nothing"
-
- ai pickup
- armour 25
- destroy after collection no
- destination selectable yes
- }
-
- abstract role Rol_DefaultGarbage : Rol_DefaultGarbage_NoMsg
- {
- pickup name junkpile empty pickup
- }
-
- // default for a junkpile (contains nothing)
-
- abstract role Rol_DefaultJunkpile : Rol_DefaultGarbage
- {
- }
-
- // default for a collectable object
-
- abstract role Rol_DefaultPickup
- {
- character none
- light none
- projectile none
- identifier none // can be overridden
-
- per vertex fogging no
- alpha fogging yes
- destructibility none
-
- ai pickup
- }
-
- abstract role Rol_FragObject : Rol_PlacedObject
- {
- hit test ignore yes
- frag control yes
- alpha fogging yes
- }
-
- role Rol_CollectedPickup : Rol_DefaultGarbage
- {
- ai reserved
- identifier "collected_pickup"
- armour 25
- }
-
- destructibility Des_Explode
- {
- type explode
- }
-
- destructibility Des_Splatter
- {
- type splatter
- }
-
- // COMMON INVENTORY ITEMS
- // every level should have these to allow for continuity between levels
-
- #include "pickups.gsh"
- #include "ammo_pickups.gsh"
- #include "body_slot_upgrades.gsh"
-
- #include "repair_arm.gsh"
- #include "interface_device.gsh"
-
- #include "mine.gsh"
-
- #include "lasers.gsh"
- #include "plasma.gsh"
- #include "nanofrag.gsh"
- #include "flamethrower.gsh"
- #include "grenade_launcher.gsh"
- #include "missile_launcher.gsh"
- #include "epulsar.gsh"
- #include "fragprojectile.gsh"
- #include "decoyprojectile.gsh"
-
- ////////////////////////////////////////////////////////////////////////////////////
-
- // end wrapper - for preventing multiple or recursive inclusions
- #endif // !INCLUDED_DEFAULTS_GSH
-