Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Nov 9, 2015, 5:55:42 PM (9 years ago)
Author:
fvultier
Message:

Munition may and must now be defined for each pawn separately. This way a heavy cruiser may carry more munition than a drone.

Location:
code/branches/fabienHS15/src/orxonox/worldentities
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • code/branches/fabienHS15/src/orxonox/worldentities/MobileEntity.h

    r10437 r10791  
    4747        linear velocity. Then the linear velocity is multiplied by the time since the last call of tick and then added to the position. The same happens with
    4848        the angular acceleration and velocity. With this procedure MobileEntities can change their position and orientation with time.
     49
     50        A MobileEntity can only have the collisition type WorldEntity::None, WorldEntity::Dynamic or WorldEntity::Kinematic. The collsion type WorldEntity::Static is illegal.
    4951    */
    5052
  • code/branches/fabienHS15/src/orxonox/worldentities/StaticEntity.h

    r10437 r10791  
    4444        it is called StaticEntity. It will keep the same position (always with respect to its parent) forever unless you call the
    4545        function @see setPosition to changee it.
     46
     47        A StaticEntity can only have the collisition type WorldEntity::None or WorldEntity::Static. The collsion types WorldEntity::Dynamic and WorldEntity::Kinematic are illegal.
    4648    */
    4749
  • code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.cc

    r10746 r10791  
    4646#include "weaponsystem/WeaponPack.h"
    4747#include "weaponsystem/WeaponSet.h"
     48#include "weaponsystem/Munition.h"
    4849#include "sound/WorldSound.h"
    4950
     
    139140        XMLPortObject(Pawn, WeaponSlot, "weaponslots", addWeaponSlot, getWeaponSlot, xmlelement, mode);
    140141        XMLPortObject(Pawn, WeaponSet, "weaponsets", addWeaponSet, getWeaponSet, xmlelement, mode);
    141         XMLPortObject(Pawn, WeaponPack, "weapons", addWeaponPackXML, getWeaponPack, xmlelement, mode);
     142        XMLPortObject(Pawn, WeaponPack, "weaponpacks", addWeaponPackXML, getWeaponPack, xmlelement, mode);
     143        XMLPortObject(Pawn, Munition, "munition", addMunitionXML, getMunitionXML, xmlelement, mode);
    142144
    143145        XMLPortParam(Pawn, "reloadrate", setShieldRechargeRate, getShieldRechargeRate, xmlelement, mode).defaultValues(0);
     
    557559    }
    558560
     561    void Pawn::addMunitionXML(Munition* munition)
     562    {
     563        if (this->weaponSystem_ && munition)
     564        {
     565            this->weaponSystem_->addMunition(munition);
     566        }
     567    }
     568
     569    Munition* Pawn::getMunitionXML() const
     570    {
     571        return NULL;
     572    }
     573
    559574    Munition* Pawn::getMunition(SubclassIdentifier<Munition> * identifier)
    560575    {
     
    570585    void Pawn::startLocalHumanControl()
    571586    {
    572 //        SUPER(ControllableEntity, changedPlayer());
     587//        SUPER(ControllableEntity, startLocalHumanControl());
    573588        ControllableEntity::startLocalHumanControl();
    574589        this->isHumanShip_ = true;
  • code/branches/fabienHS15/src/orxonox/worldentities/pawns/Pawn.h

    r10746 r10791  
    151151            WeaponPack * getWeaponPack(unsigned int index) const;
    152152            std::vector<WeaponPack *> * getAllWeaponPacks();
     153
     154            void addMunitionXML(Munition* munition);
     155            Munition* getMunitionXML() const;
    153156           
    154             Munition * getMunition(SubclassIdentifier<Munition> * identifier);
     157            Munition* getMunition(SubclassIdentifier<Munition> * identifier);
    155158
    156159            virtual void addedWeaponPack(WeaponPack* wPack) {}
  • code/branches/fabienHS15/src/orxonox/worldentities/pawns/SpaceShip.h

    r10746 r10791  
    5454        - The <b>boost shaking</b>, when the SpaceShip boosts, the camera shakes to create a more immersive effect. Two parameters can be used to adjust the effect. The <b>shakeFrequency</b> is the frequency with which the camera shakes. And the <b>shakeAmplitude</b> is the amount with which the camera shakes. Again these parameters must bee non-negative.
    5555        - The <b>lift</b> creates a more natural flight feeling through the addition of a lift force. There are again two parameters that can be specified. The <b>lift</b> which is the lift force that is applied. And the <b>stallSpeed</b> which is the forward speed after which no more lift is generated.
     56
     57        A spaceship always needs to have the collision type "dynamic". Other collision types are illegal.
    5658
    5759        As mentioned @ref orxonox::Engine Engines can be mounted on the SpaceShip. Here is a (primitive) example of a SpaceShip defined in XML:
Note: See TracChangeset for help on using the changeset viewer.