diff options
author | Quentin Bazin <quent42340@gmail.com> | 2018-11-28 20:01:49 +0100 |
---|---|---|
committer | SmallJoker <SmallJoker@users.noreply.github.com> | 2018-11-28 20:01:49 +0100 |
commit | 5f1cd555cd9d1c64426e173b30b5b792d211c835 (patch) | |
tree | 2c8508467d3bf28d549cce2d25144fa8ef42beae /src/clientobject.h | |
parent | ddd9317b733857630499972179caebc236b4d991 (diff) | |
download | minetest-5f1cd555cd9d1c64426e173b30b5b792d211c835.tar.gz minetest-5f1cd555cd9d1c64426e173b30b5b792d211c835.tar.bz2 minetest-5f1cd555cd9d1c64426e173b30b5b792d211c835.zip |
Move client-specific files to 'src/client' (#7902)
Update Android.mk
Remove 'src/client' from include_directories
Diffstat (limited to 'src/clientobject.h')
-rw-r--r-- | src/clientobject.h | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/src/clientobject.h b/src/clientobject.h deleted file mode 100644 index 9377d1e67..000000000 --- a/src/clientobject.h +++ /dev/null @@ -1,108 +0,0 @@ -/* -Minetest -Copyright (C) 2010-2013 celeron55, Perttu Ahola <celeron55@gmail.com> - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details. - -You should have received a copy of the GNU Lesser 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. -*/ - -#pragma once - -#include "irrlichttypes_extrabloated.h" -#include "activeobject.h" -#include <unordered_map> - -class ClientEnvironment; -class ITextureSource; -class Client; -class IGameDef; -class LocalPlayer; -struct ItemStack; -class WieldMeshSceneNode; - -class ClientActiveObject : public ActiveObject -{ -public: - ClientActiveObject(u16 id, Client *client, ClientEnvironment *env); - virtual ~ClientActiveObject(); - - virtual void addToScene(ITextureSource *tsrc) {}; - virtual void removeFromScene(bool permanent) {} - // 0 <= light_at_pos <= LIGHT_SUN - virtual void updateLight(u8 light_at_pos){} - virtual void updateLightNoCheck(u8 light_at_pos){} - virtual v3s16 getLightPosition(){return v3s16(0,0,0);} - virtual bool getCollisionBox(aabb3f *toset) const { return false; } - virtual bool getSelectionBox(aabb3f *toset) const { return false; } - virtual bool collideWithObjects() const { return false; } - virtual v3f getPosition(){ return v3f(0,0,0); } - virtual float getYaw() const { return 0; } - virtual scene::ISceneNode *getSceneNode() { return NULL; } - virtual scene::IAnimatedMeshSceneNode *getAnimatedMeshSceneNode() { return NULL; } - virtual bool isLocalPlayer() const {return false;} - virtual ClientActiveObject *getParent() const { return nullptr; }; - virtual void setAttachments() {} - virtual bool doShowSelectionBox(){return true;} - - // Step object in time - virtual void step(float dtime, ClientEnvironment *env){} - - // Process a message sent by the server side object - virtual void processMessage(const std::string &data){} - - virtual std::string infoText() {return "";} - virtual std::string debugInfoText() {return "";} - - /* - This takes the return value of - ServerActiveObject::getClientInitializationData - */ - virtual void initialize(const std::string &data){} - - // Create a certain type of ClientActiveObject - static ClientActiveObject* create(ActiveObjectType type, Client *client, - ClientEnvironment *env); - - // If returns true, punch will not be sent to the server - virtual bool directReportPunch(v3f dir, const ItemStack *punchitem=NULL, - float time_from_last_punch=1000000) - { return false; } - -protected: - // Used for creating objects based on type - typedef ClientActiveObject* (*Factory)(Client *client, ClientEnvironment *env); - static void registerType(u16 type, Factory f); - Client *m_client; - ClientEnvironment *m_env; -private: - // Used for creating objects based on type - static std::unordered_map<u16, Factory> m_types; -}; - -struct DistanceSortedActiveObject -{ - ClientActiveObject *obj; - f32 d; - - DistanceSortedActiveObject(ClientActiveObject *a_obj, f32 a_d) - { - obj = a_obj; - d = a_d; - } - - bool operator < (const DistanceSortedActiveObject &other) const - { - return d < other.d; - } -}; |