source:
orxonox.OLD/trunk/src/world_entities/script_trigger.h
@
  8378
        
        | Last change on this file since 8378 was 8271, checked in by bensch, 19 years ago | |
|---|---|
| File size: 1.4 KB | |
| Rev | Line | |
|---|---|---|
| [8170] | 1 | #ifndef _SCRIPT_TRIGGER_H | 
| 2 | #define _SCRIPT_TRIGGER_H | |
| 3 | ||
| [8171] | 4 | #include <string> | 
| 5 | ||
| [8170] | 6 | #include "world_entity.h" | 
| 7 | #include "loading/load_param.h" | |
| [8171] | 8 | #include "vector.h" | 
| 9 | #include "script_manager.h" | |
| [8211] | 10 | #include "script.h" | 
| [8170] | 11 | |
| 12 | class ScriptTrigger : public WorldEntity | |
| 13 | { | |
| 14 | public: | |
| [8207] | 15 | ScriptTrigger(const TiXmlElement* root = NULL); | 
| [8170] | 16 | ~ScriptTrigger(); | 
| 17 | ||
| [8207] | 18 | ///LOADING | 
| [8170] | 19 | virtual void loadParams(const TiXmlElement* root); | 
| [8211] | 20 | |
| 21 | ||
| [8208] | 22 | /// DO WORK | 
| [8171] | 23 | virtual void tick(float timestep); | 
| 24 | virtual void executeAction(); | |
| [8243] | 25 | void testScriptingFramework(); | 
| [8170] | 26 | |
| [8208] | 27 | /// SET MEMBER | 
| [8199] | 28 | void setTarget(const std::string& targetName); | 
| [8202] | 29 | void setTarget(WorldEntity* target) { if(target!=NULL) this->target=target; } | 
| [8205] | 30 | void setTriggerParent(const std::string& name); | 
| [8208] | 31 | void setCallOnce(const bool call) { this->callOnce = call; } | 
| 32 | void setRadius(const float radius) { if(radius>0) this->radius = radius; } | |
| 33 | void setDelay(const float time){if(delay>0) this->delay = delay; } | |
| [8211] | 34 | void setScript(const std::string& file); | 
| [8208] | 35 | void setFunction(const std::string& function){ this->functionName = function; } | 
| [8262] | 36 | |
| 37 | ///DRAWING | |
| 38 | void draw()const{this->debugDraw();}; | |
| [8171] | 39 | |
| [8170] | 40 | private: | 
| 41 | ||
| 42 | WorldEntity* target; | |
| [8178] | 43 | bool callOnce; | 
| [8202] | 44 | float radius; | 
| 45 | float delay; | |
| [8211] | 46 | Script* script; | 
| [8202] | 47 | std::string functionName; | 
| [8170] | 48 | |
| [8208] | 49 | //for internal use | 
| [8205] | 50 | bool scriptCalled; | 
| [8211] | 51 | bool scriptIsOk; | 
| [8173] | 52 | |
| [8170] | 53 | }; | 
| 54 | ||
| [8171] | 55 | #endif | 
Note: See TracBrowser
        for help on using the repository browser.
    


 
            







