Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Sep 17, 2015, 3:32:50 PM (9 years ago)
Author:
fvultier
Message:

Different wave types with different enemies. New field type: obstacle. It is impossible to build a tower on a field with an obstacle.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/towerdefenseFabien/src/modules/towerdefense/TowerDefense.h

    r10587 r10591  
    6161        void payCredit(int pay){ this->credit_ -= pay; }
    6262        int getLifes(){ return this->lifes_; }
    63         int getWaveNumber(){ return this->waves_; }
     63        int getWaveNumber(){ return this->waveNumber_; }
     64        void setWaveNumber(int wavenumber){ waveNumber_=wavenumber; }
    6465        void setCredit(int credit){ credit_ = credit; }
    65         void setLifes(int lifes){ lifes_ = lifes; }
    66         void setWaveNumber(int wavenumber){ waves_=wavenumber; }
    67         void buyTower(int cost){ credit_ -= cost;}
     66        void setLifes(int lifes){ lifes_ = lifes; }       
     67        void buyTower(int cost){ cost -= cost;}
    6868        void addCredit(int credit) { credit_+=credit; }
    69         void nextwave(){ enemies_.clear(); waves_++; time=0;}
    7069        int reduceLifes(int NumberofLifes){ return lifes_-=NumberofLifes; }
    7170        TowerDefenseField* getField(TDCoordinate* coord){ return fields_[coord->GetX()][coord->GetY()]; }
    72         /*  Called by TowerDefenseCenterpoint upon game start
    73             The centerpoint is used to create towers
    74         */
    7571        void setCenterpoint(TowerDefenseCenterpoint* centerpoint);       
    76         /* Adds a tower at x, y in the playfield */
    7772        void addTower(int x, int y);
    7873        void upgradeTower(int x, int y);
    7974        virtual TDCoordinate* getNextStreetCoord(TDCoordinate*);
    80 
    81         //virtual void pawnKilled(Pawn* victim, Pawn* killer = 0);
    82         //virtual void playerScored(PlayerInfo* player, int score);
    83 
     75       
    8476        TowerDefenseSelecter* selecter;       
    8577
    86         //TODO: void spawnNewWave()
    87         //TODO: create a timer which regularly calls the spawnNewWave function  (time driven)
    88         //      or spawn a new wave when the old wave has been killed           (event driven)
     78    private:
     79        void createFields();
    8980
    90     private:
    9181        orxonox::WeakPtr<TowerDefenseCenterpoint> center_;
    9282        PlayerInfo* player_;
    93         float time;       
     83        float timeSinceLastSpawn_;
     84        float timeUntilNextWave_;
     85        int waveSize_;
    9486        int credit_;
    95         int waves_;
     87        int waveNumber_;
    9688        int lifes_;
    97         Timer nextwaveTimer_;
    9889        std::list<orxonox::WeakPtr<TowerDefenseEnemy> > enemies_;
    9990        TowerDefenseField* fields_[16][16];
    10091        std::vector<orxonox::WeakPtr<TowerDefenseField> > waypoints_;
    10192        Vector3 endpoint_;
    102 
    103         void createFields();
     93        Vector3 offset_;       
    10494    };
    10595}
Note: See TracChangeset for help on using the changeset viewer.