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:
authorErwin Coumans <blender@erwincoumans.com>2006-05-10 03:43:14 +0400
committerErwin Coumans <blender@erwincoumans.com>2006-05-10 03:43:14 +0400
commit55ab57519d42607a8798ec51a531b162e9399bb9 (patch)
tree961d8c133cae9e2c56ce45a5c8f1c52d4ef870c8 /source
parent12e2f68bff2e1a953aa8a0412f6dd8db3e79d87f (diff)
modified behaviour of PropertySensor and MessageSensor on popular request.
Logic systems should be improved, with consistent Level and Edge triggering usage in the logic bricks.
Diffstat (limited to 'source')
-rw-r--r--source/gameengine/GameLogic/SCA_PropertySensor.cpp11
-rw-r--r--source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp5
2 files changed, 14 insertions, 2 deletions
diff --git a/source/gameengine/GameLogic/SCA_PropertySensor.cpp b/source/gameengine/GameLogic/SCA_PropertySensor.cpp
index 6f98b777d8c..979ce51ab5e 100644
--- a/source/gameengine/GameLogic/SCA_PropertySensor.cpp
+++ b/source/gameengine/GameLogic/SCA_PropertySensor.cpp
@@ -260,7 +260,16 @@ bool SCA_PropertySensor::CheckPropertyCondition()
default:
; /* error */
}
- m_recentresult=result;
+
+ //the concept of Edge and Level triggering has unwanted effect for KX_PROPSENSOR_CHANGED
+ //see Game Engine bugtracker [ #3809 ]
+ if (m_checktype != KX_PROPSENSOR_CHANGED)
+ {
+ m_recentresult=result;
+ } else
+ {
+ m_recentresult=true;
+ }
return result;
}
diff --git a/source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp b/source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp
index b44269faa9a..67f4fb69e72 100644
--- a/source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp
+++ b/source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp
@@ -149,7 +149,10 @@ bool KX_NetworkMessageSensor::Evaluate(CValue* event)
bool KX_NetworkMessageSensor::IsPositiveTrigger()
{
// printf("KX_NetworkMessageSensor IsPositiveTrigger\n");
- return m_IsUp;
+ //attempt to fix [ #3809 ] IPO Actuator does not work with some Sensors
+ //a better solution is to properly introduce separate Edge and Level triggering concept
+
+ return true;//m_IsUp;
}
/* --------------------------------------------------------------------- */