Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorPorteries Tristan <republicthunderbolt9@gmail.com>2015-03-15 12:36:55 +0300
committerJorge Bernal <jbernalmartinez@gmail.com>2015-03-15 12:50:59 +0300
commit176ecd9c9ca9fd0d2b28b4690e005f79177ab509 (patch)
treeba0e6ec6c90939f5f5c916ab9ba799f76f15b70b /source
parent3824e0f1243798fc580f18c7948a5fc473baa58c (diff)
BGE : Fix for T43724 and T41599 addObject() with KX_FontObject and
overlay scene GetGameObjectType is overwritten in KX_FontObject to differentiate a font object into AddNodeReplicaObject function. Now, in this function, we add fonts in the appropriate list. Reviewers: campbellbarton, moguri, dfelinto, lordloki Reviewed By: lordloki Subscribers: lordloki Projects: #game_logic, #game_engine Differential Revision: https://developer.blender.org/D1130
Diffstat (limited to 'source')
-rw-r--r--source/gameengine/GameLogic/SCA_IObject.h1
-rw-r--r--source/gameengine/Ketsji/KX_FontObject.cpp1
-rw-r--r--source/gameengine/Ketsji/KX_FontObject.h1
-rw-r--r--source/gameengine/Ketsji/KX_Scene.cpp2
4 files changed, 4 insertions, 1 deletions
diff --git a/source/gameengine/GameLogic/SCA_IObject.h b/source/gameengine/GameLogic/SCA_IObject.h
index 3ffe128c3b3..d5972a0a807 100644
--- a/source/gameengine/GameLogic/SCA_IObject.h
+++ b/source/gameengine/GameLogic/SCA_IObject.h
@@ -221,6 +221,7 @@ public:
OBJ_ARMATURE=0,
OBJ_CAMERA=1,
OBJ_LIGHT=2,
+ OBJ_FONT=3,
} ObjectTypes;
};
diff --git a/source/gameengine/Ketsji/KX_FontObject.cpp b/source/gameengine/Ketsji/KX_FontObject.cpp
index 9789a8294ee..f3b098f407a 100644
--- a/source/gameengine/Ketsji/KX_FontObject.cpp
+++ b/source/gameengine/Ketsji/KX_FontObject.cpp
@@ -118,7 +118,6 @@ CValue* KX_FontObject::GetReplica()
void KX_FontObject::ProcessReplica()
{
KX_GameObject::ProcessReplica();
- KX_GetActiveScene()->AddFont(this);
}
int GetFontId(VFont *vfont)
diff --git a/source/gameengine/Ketsji/KX_FontObject.h b/source/gameengine/Ketsji/KX_FontObject.h
index 209ab6ca69f..3a25d366148 100644
--- a/source/gameengine/Ketsji/KX_FontObject.h
+++ b/source/gameengine/Ketsji/KX_FontObject.h
@@ -54,6 +54,7 @@ public:
*/
virtual CValue* GetReplica();
virtual void ProcessReplica();
+ virtual int GetGameObjectType() { return OBJ_FONT; }
protected:
std::vector<STR_String> m_text;
diff --git a/source/gameengine/Ketsji/KX_Scene.cpp b/source/gameengine/Ketsji/KX_Scene.cpp
index 97ebd6d40a9..6d989ca1760 100644
--- a/source/gameengine/Ketsji/KX_Scene.cpp
+++ b/source/gameengine/Ketsji/KX_Scene.cpp
@@ -532,6 +532,8 @@ KX_GameObject* KX_Scene::AddNodeReplicaObject(class SG_IObject* node, class CVal
m_objectlist->Add(newobj->AddRef());
if (newobj->GetGameObjectType()==SCA_IObject::OBJ_LIGHT)
m_lightlist->Add(newobj->AddRef());
+ else if (newobj->GetGameObjectType()==SCA_IObject::OBJ_FONT)
+ AddFont((KX_FontObject*)newobj);
newobj->AddMeshUser();
// logic cannot be replicated, until the whole hierarchy is replicated.