aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorsfan5 <sfan5@live.de>2020-06-13 19:03:26 +0200
committerGitHub <noreply@github.com>2020-06-13 19:03:26 +0200
commit2424dfe007e451bb02f87884c2b272cf307d6e7c (patch)
treede43d4ab42126b0533bf5955de3ce68f97f53420 /cmake
parent982a030f330bd4f4953ed7d4a7f88286f6fd645d (diff)
downloadminetest-2424dfe007e451bb02f87884c2b272cf307d6e7c.tar.gz
minetest-2424dfe007e451bb02f87884c2b272cf307d6e7c.tar.bz2
minetest-2424dfe007e451bb02f87884c2b272cf307d6e7c.zip
Server pushing media at runtime (#9961)
Diffstat (limited to 'cmake')
0 files changed, 0 insertions, 0 deletions
class="hl com">the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef TOOLDEF_HEADER #define TOOLDEF_HEADER #include <string> #include <iostream> struct ToolDiggingProperties { // time = basetime + sum(feature here * feature in MaterialProperties) float full_punch_interval; float basetime; float dt_weight; float dt_crackiness; float dt_crumbliness; float dt_cuttability; float basedurability; float dd_weight; float dd_crackiness; float dd_crumbliness; float dd_cuttability; ToolDiggingProperties(float full_punch_interval_=1.0, float a=0.75, float b=0, float c=0, float d=0, float e=0, float f=50, float g=0, float h=0, float i=0, float j=0); }; struct ToolDefinition { std::string imagename; ToolDiggingProperties properties; ToolDefinition(){} ToolDefinition(const std::string &imagename_, ToolDiggingProperties properties_): imagename(imagename_), properties(properties_) {} std::string dump(); void serialize(std::ostream &os); void deSerialize(std::istream &is); }; class IToolDefManager { public: IToolDefManager(){} virtual ~IToolDefManager(){} virtual const ToolDefinition* getToolDefinition(const std::string &toolname) const=0; virtual std::string getImagename(const std::string &toolname) const =0; virtual ToolDiggingProperties getDiggingProperties( const std::string &toolname) const =0; virtual void serialize(std::ostream &os)=0; }; class IWritableToolDefManager : public IToolDefManager { public: IWritableToolDefManager(){} virtual ~IWritableToolDefManager(){} virtual const ToolDefinition* getToolDefinition(const std::string &toolname) const=0; virtual std::string getImagename(const std::string &toolname) const =0; virtual ToolDiggingProperties getDiggingProperties( const std::string &toolname) const =0; virtual bool registerTool(std::string toolname, const ToolDefinition &def)=0; virtual void clear()=0; virtual void serialize(std::ostream &os)=0; virtual void deSerialize(std::istream &is)=0; }; IWritableToolDefManager* createToolDefManager(); #endif