EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
MiningLaser.h
Go to the documentation of this file.
1 
10 #ifndef _EVE_SHIP_MODULES_MININGLASER_H_
11 #define _EVE_SHIP_MODULES_MININGLASER_H_
12 
14 
15 class AsteroidSE;
16 
18 {
19 public:
21  virtual ~MiningLaser() { /* do nothing here */ }
22 
23  /* GenericModule overrides */
24  virtual MiningLaser* GetMiningModule() { return this; }
25  virtual bool IsMiningLaser() const { return true; }
26  virtual void DeactivateCycle(bool abort=false);
27 
28  /* ActiveModule overrides */
29  virtual uint32 DoCycle();
30  //virtual void Activate(uint16 effectID, uint32 targetID=0, int16 repeat=0);
31  //virtual void Deactivate(std::string effect="");
32 
33  // functions to be handled in derived classes as needed
34  virtual void LoadCharge(InventoryItemRef charge);
35  virtual void UnloadCharge();
36  virtual bool CanActivate();
37 
38  /* MiningLaser methods */
39  float GetMiningVolume();
40 
41  // specific ProcessCycle call for depleted rocks
42  void Depleted(std::multimap<float, MiningLaser*> &mMap);
43  void AddOreAndDeactivate(uint16 typeID, float amt, bool slave=true);
44 
46 
47 
48 protected:
49  void ProcessCycle(bool abort=false);
50 
51 
52 private:
53  //cached item-type stuff
56 
57  float m_crystalDmg;
60 
62 
64 };
65 
66 #endif // _EVE_SHIP_MODULES_MININGLASER_H_
bool m_rMiner
Definition: MiningLaser.h:54
virtual MiningLaser * GetMiningModule()
Definition: MiningLaser.h:24
float GetMiningVolume()
EVEItemFlags
Definition: EVE_Flags.h:13
virtual bool CanActivate()
Definition: MiningLaser.cpp:78
virtual void UnloadCharge()
Definition: MiningLaser.cpp:66
MiningLaser(ModuleItemRef mRef, ShipItemRef sRef)
Definition: MiningLaser.cpp:24
virtual uint32 DoCycle()
virtual ~MiningLaser()
Definition: MiningLaser.h:21
void CancelOnError()
Definition: MiningLaser.h:45
float m_crystalDmgChance
Definition: MiningLaser.h:59
EVEItemFlags m_holdFlag
Definition: MiningLaser.h:63
float m_crystalDmg
Definition: MiningLaser.h:57
void AddOreAndDeactivate(uint16 typeID, float amt, bool slave=true)
virtual void LoadCharge(InventoryItemRef charge)
Definition: MiningLaser.cpp:52
float m_crystalDmgAmount
Definition: MiningLaser.h:58
bool m_iMiner
Definition: MiningLaser.h:54
void Depleted(std::multimap< float, MiningLaser * > &mMap)
virtual void DeactivateCycle(bool abort=false)
unsigned __int32 uint32
Definition: eve-compat.h:50
virtual bool IsMiningLaser() const
Definition: MiningLaser.h:25
bool m_dcMiner
Definition: MiningLaser.h:54
void ProcessCycle(bool abort=false)
uint16 m_crystalRoidGrp
Definition: MiningLaser.h:61
unsigned __int16 uint16
Definition: eve-compat.h:48
virtual void DeactivateCycle(bool abort=false)
bool m_gMiner
Definition: MiningLaser.h:54
uint32 typeID()
Definition: GenericModule.h:98
bool m_IsInitialCycle
Definition: MiningLaser.h:55