123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- #include "CCPUOnCountObserverTranslator.h"
- #include "extensions/Particle3D/PU/CCPUParticleSystem3D.h"
- #include "extensions/Particle3D/PU/CCPUDynamicAttribute.h"
- #include "extensions/Particle3D/PU/CCPUDynamicAttributeTranslator.h"
- NS_CC_BEGIN
- PUOnCountObserverTranslator::PUOnCountObserverTranslator()
- {
- }
- bool PUOnCountObserverTranslator::translateChildProperty( PUScriptCompiler* compiler, PUAbstractNode *node )
- {
- PUPropertyAbstractNode* prop = reinterpret_cast<PUPropertyAbstractNode*>(node);
- PUObserver* ob = static_cast<PUObserver*>(prop->parent->context);
- PUOnCountObserver* observer = static_cast<PUOnCountObserver*>(ob);
- if (prop->name == token[TOKEN_ONCOUNT_THRESHOLD])
- {
-
- if (passValidatePropertyNumberOfValues(compiler, prop, token[TOKEN_ONCOUNT_THRESHOLD], 2))
- {
- std::string compareType;
- unsigned int val = 0;
- PUAbstractNodeList::const_iterator i = prop->values.begin();
- if(getString(**i, &compareType))
- {
- if (compareType == token[TOKEN_LESS_THAN])
- {
- observer->setCompare(CO_LESS_THAN);
- }
- else if (compareType == token[TOKEN_GREATER_THAN])
- {
- observer->setCompare(CO_GREATER_THAN);
- }
- else if (compareType == token[TOKEN_EQUALS])
- {
- observer->setCompare(CO_EQUALS);
- }
- ++i;
- if(getUInt(**i, &val))
- {
- observer->setThreshold(val);
- return true;
- }
- }
- }
- }
- return false;
- }
- bool PUOnCountObserverTranslator::translateChildObject( PUScriptCompiler* , PUAbstractNode* )
- {
-
- return false;
- }
- NS_CC_END
|