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
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-01-05 10:34:14 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-01-05 10:34:14 +0400
commit890c97ca40024ae32edbc3c5af6db0ee257a942d (patch)
tree634b385fd292652bbc480631b98dfc69a4339c4a /source/gameengine/Converter/KX_ConvertProperties.cpp
parentcda279b5250091a89ab5edb1717ca3cf54c42ca3 (diff)
more edits to r43145,
- remove redundant check in new prop operator which is covered by operators poll func. - use get_ob_property to get the object prop in BL_ConvertTextProperty() rather then looping for it.
Diffstat (limited to 'source/gameengine/Converter/KX_ConvertProperties.cpp')
-rw-r--r--source/gameengine/Converter/KX_ConvertProperties.cpp118
1 files changed, 55 insertions, 63 deletions
diff --git a/source/gameengine/Converter/KX_ConvertProperties.cpp b/source/gameengine/Converter/KX_ConvertProperties.cpp
index 03d9be0d909..8eea39c4956 100644
--- a/source/gameengine/Converter/KX_ConvertProperties.cpp
+++ b/source/gameengine/Converter/KX_ConvertProperties.cpp
@@ -56,6 +56,9 @@
#include "BLI_winstuff.h"
#endif
+extern "C" {
+ #include "BKE_property.h"
+}
/* prototype */
void BL_ConvertTextProperty(Object* object, KX_FontObject* fontobj,SCA_TimeEventManager* timemgr,SCA_IScene* scene, bool isInActiveLayer);
@@ -174,79 +177,68 @@ void BL_ConvertTextProperty(Object* object, KX_FontObject* fontobj,SCA_TimeEvent
{
CValue* tprop = fontobj->GetProperty("Text");
if(!tprop) return;
+ bProperty* prop = get_ob_property(object, "Text");
+ if(!prop) return;
Curve *curve = static_cast<Curve *>(object->data);
STR_String str = curve->str;
+ CValue* propval = NULL;
- bProperty* prop = (bProperty*)object->prop.first;
- CValue* propval;
-
- while(prop)
- {
- if (strcmp(prop->name, "Text")!=0) {
- prop = prop->next;
- continue;
+ switch(prop->type) {
+ case GPROP_BOOL:
+ {
+ int value = atoi(str);
+ propval = new CBoolValue((bool)(value != 0));
+ tprop->SetValue(propval);
+ break;
}
-
- propval = NULL;
-
- switch(prop->type) {
- case GPROP_BOOL:
- {
- int value = atoi(str);
- propval = new CBoolValue((bool)(value != 0));
- tprop->SetValue(propval);
- break;
- }
- case GPROP_INT:
- {
- int value = atoi(str);
- propval = new CIntValue(value);
- tprop->SetValue(propval);
- break;
- }
- case GPROP_FLOAT:
- {
- float floatprop = atof(str);
- propval = new CFloatValue(floatprop);
- tprop->SetValue(propval);
- break;
- }
- case GPROP_STRING:
+ case GPROP_INT:
+ {
+ int value = atoi(str);
+ propval = new CIntValue(value);
+ tprop->SetValue(propval);
+ break;
+ }
+ case GPROP_FLOAT:
+ {
+ float floatprop = atof(str);
+ propval = new CFloatValue(floatprop);
+ tprop->SetValue(propval);
+ break;
+ }
+ case GPROP_STRING:
+ {
+ propval = new CStringValue(str, "");
+ tprop->SetValue(propval);
+ break;
+ }
+ case GPROP_TIME:
+ {
+ float floatprop = atof(str);
+
+ CValue* timeval = new CFloatValue(floatprop);
+ // set a subproperty called 'timer' so that
+ // we can register the replica of this property
+ // at the time a game object is replicated (AddObjectActuator triggers this)
+ CValue *bval = new CBoolValue(true);
+ timeval->SetProperty("timer",bval);
+ bval->Release();
+ if (isInActiveLayer)
{
- propval = new CStringValue(str, "");
- tprop->SetValue(propval);
- break;
+ timemgr->AddTimeProperty(timeval);
}
- case GPROP_TIME:
- {
- float floatprop = atof(str);
- CValue* timeval = new CFloatValue(floatprop);
- // set a subproperty called 'timer' so that
- // we can register the replica of this property
- // at the time a game object is replicated (AddObjectActuator triggers this)
- CValue *bval = new CBoolValue(true);
- timeval->SetProperty("timer",bval);
- bval->Release();
- if (isInActiveLayer)
- {
- timemgr->AddTimeProperty(timeval);
- }
-
- propval = timeval;
- tprop->SetValue(timeval);
- }
- default:
- {
- // todo make an assert etc.
- }
+ propval = timeval;
+ tprop->SetValue(timeval);
}
-
- if (propval)
- propval->Release();
+ default:
+ {
+ // todo make an assert etc.
+ }
+ }
- prop = prop->next;
+ if (propval) {
+ propval->Release();
}
}