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:
authorDalai Felinto <dfelinto@gmail.com>2012-03-03 06:47:01 +0400
committerDalai Felinto <dfelinto@gmail.com>2012-03-03 06:47:01 +0400
commit1f928833f3677fa47a10099205c9f7ffa9adfadb (patch)
tree85b6fb8af88d7d459830e7b3fb51f6b84e74cf50 /source/gameengine/Converter/BL_ArmatureActuator.cpp
parent95bba22af075148f9cbdb5a9b1ef41aeff1f560f (diff)
option for the Armature Actuator to change the influence of a bone constraint.
Also adds DampedTrackTo to the list of supported constraints in the BGE Test file: http://www.pasteall.org/blend/11715 Patch developed as part of a project to NF-UBC Nereus Program. Development time 'sponsored' by the project. www.nereusprogram.org
Diffstat (limited to 'source/gameengine/Converter/BL_ArmatureActuator.cpp')
-rw-r--r--source/gameengine/Converter/BL_ArmatureActuator.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/gameengine/Converter/BL_ArmatureActuator.cpp b/source/gameengine/Converter/BL_ArmatureActuator.cpp
index 73403baa15e..3f4a261a972 100644
--- a/source/gameengine/Converter/BL_ArmatureActuator.cpp
+++ b/source/gameengine/Converter/BL_ArmatureActuator.cpp
@@ -53,7 +53,8 @@ BL_ArmatureActuator::BL_ArmatureActuator(SCA_IObject* obj,
const char *constraintname,
KX_GameObject* targetobj,
KX_GameObject* subtargetobj,
- float weight) :
+ float weight,
+ float influence) :
SCA_IActuator(obj, KX_ACT_ARMATURE),
m_constraint(NULL),
m_gametarget(targetobj),
@@ -61,6 +62,7 @@ BL_ArmatureActuator::BL_ArmatureActuator(SCA_IObject* obj,
m_posechannel(posechannel),
m_constraintname(constraintname),
m_weight(weight),
+ m_influence(influence),
m_type(type)
{
if (m_gametarget)
@@ -173,6 +175,10 @@ bool BL_ArmatureActuator::Update(double curtime, bool frame)
if (m_constraint)
m_constraint->SetWeight(m_weight);
break;
+ case ACT_ARM_SETINFLUENCE:
+ if (m_constraint)
+ m_constraint->SetInfluence(m_influence);
+ break;
}
}
return result;
@@ -216,6 +222,7 @@ PyAttributeDef BL_ArmatureActuator::Attributes[] = {
KX_PYATTRIBUTE_RW_FUNCTION("target", BL_ArmatureActuator, pyattr_get_object, pyattr_set_object),
KX_PYATTRIBUTE_RW_FUNCTION("subtarget", BL_ArmatureActuator, pyattr_get_object, pyattr_set_object),
KX_PYATTRIBUTE_FLOAT_RW("weight",0.0f,1.0f,BL_ArmatureActuator,m_weight),
+ KX_PYATTRIBUTE_FLOAT_RW("influence",0.0f,1.0f,BL_ArmatureActuator,m_influence),
KX_PYATTRIBUTE_INT_RW("type",0,ACT_ARM_MAXTYPE,false,BL_ArmatureActuator,m_type),
{ NULL } //Sentinel
};