#ifndef _MANACOST_HYBRID_H_ #define _MANACOST_HYBRID_H_ class ManaCostHybrid { public: uint8_t color1; uint8_t color2; uint8_t value1; uint8_t value2; ManaCostHybrid(); ManaCostHybrid(const ManaCostHybrid& hybridManaCost); ManaCostHybrid(const ManaCostHybrid* hybridManaCost); ManaCostHybrid(int c1, int v1, int c2, int v2); void init(int c1, int v1, int c2, int v2); int hasColor(int color); string toString(); int getConvertedCost(); int getManaSymbols(int color); int getManaSymbolsHybridMerged(int color); void reduceValue(int color, int value); friend std::ostream& operator<<(std::ostream& out, ManaCostHybrid& m); friend std::ostream& operator<<(std::ostream& out, ManaCostHybrid* m); }; #endif