Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Jun 27, 2006, 12:37:58 PM (19 years ago)
Author:
rennerc
Message:

started implementing message based spawningpoint synchronisation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/multi_player_map/src/world_entities/spawning_point.h

    r8802 r8820  
    1010#include "playable.h"
    1111
     12#include "message_manager.h"
     13
    1214#include <list>
    1315
     
    1921  float respawnTime;
    2022  WorldEntity * entity;
    21   OM_LIST list;
    2223};
    2324
     
    4344
    4445  public:
    45     SpawningPoint (ClassID classID, const Vector& position = Vector(0.0, 0.0, 0.0));
    46     SpawningPoint (const Vector& position, ClassID classID, SpawningPointMode type, float delay);
     46    SpawningPoint(const TiXmlElement* root = NULL);
     47    SpawningPoint(ClassID classID, const Vector& position = Vector(0.0, 0.0, 0.0));
     48    SpawningPoint(const Vector& position, ClassID classID, SpawningPointMode type, float delay);
    4749    virtual ~SpawningPoint ();
    4850    void init();
     
    5052    virtual void loadParams(const TiXmlElement* root);
    5153
    52     /**  sets the entity that is going to be spawned by this point @param classID: the id from the class_id.h file */
    53     void SpawningPoint::setSpawningEntity(ClassID classid) { this->classid = classid; }
    54     /** sets the frequency with which the point is going to spawn entities (1/sec) @param frequency: the frequency */
    55     void SpawningPoint::setSpawningDelay(float delay) { this->delay = delay; }
    56     /** sets the spawning point mode @param mode: the mode */
    57     void SpawningPoint::setSpawningMode(int mode) { this->mode = (SpawningPointMode)mode; }
    58    
    5954    inline int getTeamId(){ return this->teamId; }
    6055    inline void setTeamId( int teamId ){ this->teamId = teamId; }
     
    7570  private:
    7671    void spawn(WorldEntity* entity);
     72   
     73    void sendRespawnMessage( int uniqueId );
     74    static bool respawnMessageHandler( MessageId messageId, byte * data, int dataLength, void * someData, int userId );
    7775
    7876
    7977  private:
    80     float                           delay;                          //!< the timer that counts down until the next spawn
    8178    float                           localTimer;                     //!< the local timer
    82     float                           seed;                           //!< the random seed of the position
    8379    int                             teamId;                         //!< only spawn players of this team
    84     ClassID                         classid;                        //!< the classid of the entity to spawn
    85     SpawningPointMode               mode;                           //!< the mode of the spawning point
    8680    std::list<QueueEntry>           queue;                          //!< queue of waiting WorldEntities to be spawned
    8781    bool                            bSpawning;                      //!< flag to indicate if this spawning point is active or not
Note: See TracChangeset for help on using the changeset viewer.