Changeset View
Changeset View
Standalone View
Standalone View
source/gameengine/GameLogic/SCA_VisibilityActuator.cpp
- This file was moved from source/gameengine/Ketsji/KX_VisibilityActuator.cpp.
| Show All 20 Lines | |||||
| * The Original Code is: all of this file. | * The Original Code is: all of this file. | ||||
| * | * | ||||
| * Contributor(s): none yet. | * Contributor(s): none yet. | ||||
| * | * | ||||
| * ***** END GPL LICENSE BLOCK ***** | * ***** END GPL LICENSE BLOCK ***** | ||||
| * Actuator to toggle visibility/invisibility of objects | * Actuator to toggle visibility/invisibility of objects | ||||
| */ | */ | ||||
| /** \file gameengine/Ketsji/KX_VisibilityActuator.cpp | /** \file gameengine/GameLogic/SCA_VisibilityActuator.cpp | ||||
| * \ingroup ketsji | * \ingroup gamelogic | ||||
| */ | */ | ||||
| #include "KX_VisibilityActuator.h" | #include "SCA_VisibilityActuator.h" | ||||
| #include "KX_GameObject.h" | #include "KX_GameObject.h" | ||||
| KX_VisibilityActuator::KX_VisibilityActuator( | SCA_VisibilityActuator::SCA_VisibilityActuator( | ||||
| SCA_IObject* gameobj, | SCA_IObject* gameobj, | ||||
| bool visible, | bool visible, | ||||
| bool occlusion, | bool occlusion, | ||||
| bool recursive | bool recursive | ||||
| ) | ) | ||||
| : SCA_IActuator(gameobj, KX_ACT_VISIBILITY), | : SCA_IActuator(gameobj, SCA_ACT_VISIBILITY), | ||||
| m_visible(visible), | m_visible(visible), | ||||
| m_occlusion(occlusion), | m_occlusion(occlusion), | ||||
| m_recursive(recursive) | m_recursive(recursive) | ||||
| { | { | ||||
| // intentionally empty | // intentionally empty | ||||
| } | } | ||||
| KX_VisibilityActuator::~KX_VisibilityActuator( | SCA_VisibilityActuator::~SCA_VisibilityActuator( | ||||
| void | void | ||||
| ) | ) | ||||
| { | { | ||||
| // intentionally empty | // intentionally empty | ||||
| } | } | ||||
| CValue* | CValue* | ||||
| KX_VisibilityActuator::GetReplica( | SCA_VisibilityActuator::GetReplica( | ||||
| void | void | ||||
| ) | ) | ||||
| { | { | ||||
| KX_VisibilityActuator* replica = new KX_VisibilityActuator(*this); | SCA_VisibilityActuator* replica = new SCA_VisibilityActuator(*this); | ||||
| replica->ProcessReplica(); | replica->ProcessReplica(); | ||||
| return replica; | return replica; | ||||
| } | } | ||||
| bool | bool | ||||
| KX_VisibilityActuator::Update() | SCA_VisibilityActuator::Update() | ||||
| { | { | ||||
| bool bNegativeEvent = IsNegativeEvent(); | bool bNegativeEvent = IsNegativeEvent(); | ||||
| RemoveAllEvents(); | RemoveAllEvents(); | ||||
| if (bNegativeEvent) return false; | if (bNegativeEvent) return false; | ||||
| KX_GameObject *obj = (KX_GameObject*) GetParent(); | KX_GameObject *obj = (KX_GameObject*) GetParent(); | ||||
| obj->SetVisible(m_visible, m_recursive); | obj->SetVisible(m_visible, m_recursive); | ||||
| obj->SetOccluder(m_occlusion, m_recursive); | obj->SetOccluder(m_occlusion, m_recursive); | ||||
| obj->UpdateBuckets(m_recursive); | obj->UpdateBuckets(m_recursive); | ||||
| return false; | return false; | ||||
| } | } | ||||
| #ifdef WITH_PYTHON | #ifdef WITH_PYTHON | ||||
| /* ------------------------------------------------------------------------- */ | /* ------------------------------------------------------------------------- */ | ||||
| /* Python functions */ | /* Python functions */ | ||||
| /* ------------------------------------------------------------------------- */ | /* ------------------------------------------------------------------------- */ | ||||
| /* Integration hooks ------------------------------------------------------- */ | /* Integration hooks ------------------------------------------------------- */ | ||||
| PyTypeObject KX_VisibilityActuator::Type = { | PyTypeObject SCA_VisibilityActuator::Type = { | ||||
| PyVarObject_HEAD_INIT(NULL, 0) | PyVarObject_HEAD_INIT(NULL, 0) | ||||
| "KX_VisibilityActuator", | "SCA_VisibilityActuator", | ||||
| sizeof(PyObjectPlus_Proxy), | sizeof(PyObjectPlus_Proxy), | ||||
| 0, | 0, | ||||
| py_base_dealloc, | py_base_dealloc, | ||||
| 0, | 0, | ||||
| 0, | 0, | ||||
| 0, | 0, | ||||
| 0, | 0, | ||||
| py_base_repr, | py_base_repr, | ||||
| 0,0,0,0,0,0,0,0,0, | 0,0,0,0,0,0,0,0,0, | ||||
| Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, | Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, | ||||
| 0,0,0,0,0,0,0, | 0,0,0,0,0,0,0, | ||||
| Methods, | Methods, | ||||
| 0, | 0, | ||||
| 0, | 0, | ||||
| &SCA_IActuator::Type, | &SCA_IActuator::Type, | ||||
| 0,0,0,0,0,0, | 0,0,0,0,0,0, | ||||
| py_base_new | py_base_new | ||||
| }; | }; | ||||
| PyMethodDef KX_VisibilityActuator::Methods[] = { | PyMethodDef SCA_VisibilityActuator::Methods[] = { | ||||
| {NULL,NULL} //Sentinel | {NULL,NULL} //Sentinel | ||||
| }; | }; | ||||
| PyAttributeDef KX_VisibilityActuator::Attributes[] = { | PyAttributeDef SCA_VisibilityActuator::Attributes[] = { | ||||
| KX_PYATTRIBUTE_BOOL_RW("visibility", KX_VisibilityActuator, m_visible), | KX_PYATTRIBUTE_BOOL_RW("visibility", SCA_VisibilityActuator, m_visible), | ||||
| KX_PYATTRIBUTE_BOOL_RW("useOcclusion", KX_VisibilityActuator, m_occlusion), | KX_PYATTRIBUTE_BOOL_RW("useOcclusion", SCA_VisibilityActuator, m_occlusion), | ||||
| KX_PYATTRIBUTE_BOOL_RW("useRecursion", KX_VisibilityActuator, m_recursive), | KX_PYATTRIBUTE_BOOL_RW("useRecursion", SCA_VisibilityActuator, m_recursive), | ||||
| { NULL } //Sentinel | { NULL } //Sentinel | ||||
| }; | }; | ||||
| #endif // WITH_PYTHON | #endif // WITH_PYTHON | ||||