Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Feb 11, 2018, 10:31:46 PM (6 years ago)
Author:
landauf
Message:

[AsteroidMining_HS17] some cleanup - Field and Belt should not depend on Pawn, should not be synchronized either (server-side logic). also removed additional constructors and replaced with regular setters.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/Presentation_HS17_merge/src/modules/asteroidmining/SpicedAsteroidBelt.cc

    r11735 r11736  
    4545
    4646
    47 #include "../../orxonox/worldentities/pawns/Pawn.h"
    48 #include "../../orxonox/worldentities/WorldEntity.h"
    49 
    5047#include "SpicedAsteroidBelt.h"
    5148#include "SpicedAsteroidField.h"
     
    5451
    5552#include "core/CoreIncludes.h"
    56 #include "core/GameMode.h"
    5753#include "core/XMLPort.h"
    58 #include "core/EventIncludes.h"
    59 #include "network/NetworkFunction.h"
    6054#include "util/Math.h"
    6155
     
    6458    RegisterClass(SpicedAsteroidBelt);
    6559
    66     SpicedAsteroidBelt::SpicedAsteroidBelt(Context* context) : Pawn(context) {
     60    SpicedAsteroidBelt::SpicedAsteroidBelt(Context* context) : BaseObject(context) {
    6761
    6862        RegisterObject(SpicedAsteroidBelt);
    69 
    70         this->context = context;
    7163
    7264        // Default Values:
     
    8577        this->tiltAt = 0.0;
    8678        this->tiltBy = 0.0; 
    87 
    88         this->registerVariables();
    8979
    9080    }
     
    115105           
    116106            Vector3 pos(radius*cos(sepp)*sin(globi), radius*sin(sepp)*sin(globi), radius*cos(globi));
    117             new SpicedAsteroidField(this->context, this->position + pos, this->minSize, this->maxSize, width, segmentCount, this->foggy, this->mDensity, this->fogDensity);
    118            
     107
     108            SpicedAsteroidField* field = new SpicedAsteroidField(this->getContext());
     109            field->setPosition(this->position + pos);
     110            field->setMinSize(this->minSize);
     111            field->setMaxSize(this->maxSize);
     112            field->setRadius(width);
     113            field->setCount(segmentCount);
     114            field->setFog(this->foggy);
     115            field->setMineralDensity(this->mDensity);
     116            field->setFogDensity(this->fogDensity);
    119117        }
    120        
    121118    }
    122119
     
    142139    }
    143140
    144     void SpicedAsteroidBelt::XMLEventPort(Element& xmlelement, XMLPort::Mode mode){
    145 
    146     }
    147 
    148     void SpicedAsteroidBelt::registerVariables(){
    149 
    150         registerVariable(this->count, VariableDirection::ToClient);
    151         registerVariable(this->mDensity, VariableDirection::ToClient);
    152         registerVariable(this->position, VariableDirection::ToClient);
    153         registerVariable(this->segments, VariableDirection::ToClient);
    154 
    155         registerVariable(this->maxSize, VariableDirection::ToClient);
    156         registerVariable(this->minSize, VariableDirection::ToClient);
    157         registerVariable(this->radius0, VariableDirection::ToClient);
    158         registerVariable(this->radius1, VariableDirection::ToClient);
    159         registerVariable(this->foggy, VariableDirection::ToClient);
    160         registerVariable(this->fogDensity, VariableDirection::ToClient);
    161 
    162         registerVariable(this->tiltAt, VariableDirection::ToClient);
    163         registerVariable(this->tiltBy, VariableDirection::ToClient);
    164 
    165     }
    166 
    167141    void SpicedAsteroidBelt::tick(float dt){
    168142
    169143        this->create();
    170         this->bAlive_ = false;
    171144        this->destroyLater();
    172145
Note: See TracChangeset for help on using the changeset viewer.