KVOID BulletFactor::BindEffect( PropertySet kProp ) { ////////////////////////////////////////////////////////////////////////// // 加载特效 KSTR sEffect; if (kProp.GetStrValue("$SpawnEffect",sEffect)) { KFLOAT fTimes = -1.0f; kProp.GetFloatValue("$SpawnEffectTime",fTimes); EffectObject* pObj = AttachEffect(sEffect,fTimes); if (pObj) { // 设置特效缩放 KFLOAT fEfScale; if (kProp.GetFloatValue("$SpawnEffectScale",fEfScale)) { pObj->SetScale(fEfScale); } pObj->SetUserData(1); pObj->SetCallbackObj(this); } } if (kProp.GetStrValue("$IdleEffect",sEffect)) { KFLOAT fTimes = -1.0f; kProp.GetFloatValue("$IdleEffectTime",fTimes); EffectObject* pObj = AttachEffect(sEffect,fTimes); if (pObj) { // 设置特效缩放 KFLOAT fEfScale; if (kProp.GetFloatValue("$IdleEffectScale",fEfScale)) { pObj->SetScale(fEfScale); } pObj->SetUserData(2); pObj->SetCallbackObj(this); } } if (kProp.GetStrValue("$DestroyEffect",sEffect)) { KFLOAT fTimes = -1.0f; kProp.GetFloatValue("$DestroyEffectTime",fTimes); EffectObject* pObj = AttachEffect(sEffect,fTimes); if (pObj) { // 设置特效缩放 KFLOAT fEfScale; if (kProp.GetFloatValue("$DestroyEffectScale",fEfScale)) { pObj->SetScale(fEfScale); } pObj->SetUserData(3); pObj->SetCallbackObj(this); } } }