📄 objectfx.cpp
字号:
ops.fMaxVelocity = 25.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.75f;
ops.nFXFlags = OBJPSFX_MOVINGSOURCE;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Firepart64.dtx");
break;
}
case OBJFX_FLAMING_3:
{
pClientDE->SetObjectClientFlags(m_hObj, CF_NOTIFYREMOVE);
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fRampDownTime = 0.25f;
ops.fDuration = 0.0f;
ops.fAddDelay = 0.05f;
ops.fRadius = 4000.0f;
ops.fPosRadius = 25.0f;
ops.fGravity = 225.0f;
ops.nEmitType = OBJPSFX_EMITFILLEDSPHERE;
ops.nNumParticles = 3;
ops.fDensity = 7.5f;
ops.fAlpha = 0.75f;
VEC_SET(ops.vMinColor, 192.0f, 0.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinVelocity = 0.0f;
ops.fMaxVelocity = 25.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.75f;
ops.nFXFlags = OBJPSFX_MOVINGSOURCE;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Firepart64.dtx");
break;
}
case OBJFX_GROUNDFLAME_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 3000.0f;
ops.fPosRadius = 15.0f;
ops.fGravity = 500.0f;
ops.nEmitType = OBJPSFX_EMITCOMETTAIL;
ops.nNumParticles = 8;
ops.fAlpha = 0.25f;
VEC_SET(ops.vMinColor, 255.0f, 0.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 0.0f);
ops.fMinLifetime = 0.15f;
ops.fMaxLifetime = 0.4f;
ops.nFXFlags = OBJPSFX_REMOVESTOPPED;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\flames1_09.dtx");
break;
}
case OBJFX_GROUNDFLAME_2:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fRampDownTime = 0.25f;
ops.fAddDelay = 0.025f;
ops.fRadius = 2000.0f;
ops.fPosRadius = 12.5f;
ops.fGravity = 25.0f;
ops.nEmitType = OBJPSFX_EMITCOMETTAIL;
ops.nNumParticles = 12;
ops.fDensity = 5.0f;
ops.fAlpha = 0.25f;
VEC_SET(ops.vMinColor, 255.0f, 0.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 0.0f);
ops.fMinLifetime = 0.2f;
ops.fMaxLifetime = 0.4f;
ops.nFXFlags = OBJPSFX_STREAMING | OBJPSFX_SMOOTHSTOP;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\flames1_09.dtx");
break;
}
case OBJFX_STAFFTRAIL_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 350.0f;
ops.fPosRadius = 10.0f;
ops.fGravity = 50.0f;
ops.nNumParticles = 3;
ops.nEmitType = OBJPSFX_EMITSPHERE;
ops.fDensity = 6.5f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 255.0f, 0.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 0.0f);
ops.fMinVelocity = -10.0f;
ops.fMaxVelocity = -20.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.5f;
ops.nFXFlags = OBJPSFX_SMOOTHSTOP | OBJPSFX_STREAMING;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare32_1.dtx");
break;
}
case OBJFX_STAFFTRAIL_2:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 350.0f;
ops.fPosRadius = 10.0f;
ops.fGravity = 50.0f;
ops.nNumParticles = 3;
ops.nEmitType = OBJPSFX_EMITSPHERE;
ops.fDensity = 6.5f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 0.0f, 0.0f, 255.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinVelocity = -10.0f;
ops.fMaxVelocity = -20.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.5f;
ops.nFXFlags = OBJPSFX_SMOOTHSTOP | OBJPSFX_STREAMING;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare32_1.dtx");
break;
}
case OBJFX_STAFFTRAIL_3:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 350.0f;
ops.fPosRadius = 10.0f;
ops.fGravity = 50.0f;
ops.nNumParticles = 3;
ops.nEmitType = OBJPSFX_EMITSPHERE;
ops.fDensity = 6.5f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 192.0f, 192.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 0.0f);
ops.fMinVelocity = -10.0f;
ops.fMaxVelocity = -20.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.5f;
ops.nFXFlags = OBJPSFX_SMOOTHSTOP | OBJPSFX_STREAMING;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare32_1.dtx");
break;
}
case OBJFX_BUGSPRAY_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 400.0f;
ops.fPosRadius = 3.0f;
ops.fGravity = -75.0f;
ops.nNumParticles = 3;
ops.nEmitType = OBJPSFX_EMITFILLEDSPHERE;
ops.fDensity = 7.5f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 0.0f, 32.0f, 0.0f);
VEC_SET(ops.vMaxColor, 128.0f, 196.0f, 0.0f);
ops.fMinVelocity = -5.0f;
ops.fMaxVelocity = 5.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.35f;
ops.nFXFlags = OBJPSFX_SMOOTHSTOP | OBJPSFX_STREAMING;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare32_1.dtx");
break;
}
case OBJFX_BUGSPRAY_2:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.01f;
ops.fRadius = 1500.0f;
ops.fPosRadius = 3.0f;
ops.fGravity = 100.0f;
ops.nNumParticles = 1;
ops.nEmitType = OBJPSFX_EMITFILLEDSPHERE;
ops.fDensity = 7.5f;
ops.fAlpha = 0.5f;
VEC_SET(ops.vMinColor, 192.0f, 192.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinLifetime = 0.35f;
ops.fMaxLifetime = 0.5f;
ops.nFXFlags = OBJPSFX_SMOOTHSTOP | OBJPSFX_STREAMING;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\flames1_09.dtx");
break;
}
case OBJFX_ORBTRAIL_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 200.0f;
ops.fPosRadius = 3.0f;
ops.nNumParticles = 3;
ops.nEmitType = OBJPSFX_EMITFILLEDSPHERE;
ops.fDensity = 7.5f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 128.0f, 128.0f, 255.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinVelocity = -5.0f;
ops.fMaxVelocity = 5.0f;
ops.fMinLifetime = 0.25f;
ops.fMaxLifetime = 0.35f;
ops.nFXFlags = OBJPSFX_SMOOTHSTOP | OBJPSFX_STREAMING;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare32_1.dtx");
break;
}
case OBJFX_ORBTRAIL_2:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 200.0f;
ops.fPosRadius = 3.0f;
ops.nEmitType = OBJPSFX_EMITLOCATION;
ops.fDensity = 5.0f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 128.0f, 128.0f, 255.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinVelocity = 20.0f;
ops.fMaxVelocity = 40.0f;
ops.fMinLifetime = 0.15f;
ops.fMaxLifetime = 0.20f;
ops.nFXFlags = OBJPSFX_ROTATINGSOURCE | OBJPSFX_ALIGNROTATION | OBJPSFX_REMOVESTOPPED | OBJPSFX_RAMPDOWNSTOPPED | OBJPSFX_MOVINGSOURCE | OBJPSFX_MOVINGSTREAM;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare32_1.dtx");
break;
}
case OBJFX_ENERGYWALL_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fRampDownTime = 0.25f;
ops.nRampDownType = OBJPSFX_RAMPALPHA;
ops.fDuration = 2.5f;
ops.fAddDelay = 0.025f;
ops.fRadius = 1500.0f;
ops.fPosRadius = 25.0f;
ops.fGravity = 250.0f;
VEC_SET(ops.vRotations, 0.0f, 0.025f, 0.0f);
ops.nEmitType = OBJPSFX_EMITRING;
ops.nNumParticles = 18;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 0.0f, 0.0f, 255.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinLifetime = 0.75f;
ops.fMaxLifetime = 1.0f;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare_1.dtx");
break;
}
case OBJFX_POWERUP_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
VEC_SET(ops.vOffset, -25.0f, 0.0f, 0.0f);
ops.fRampDownTime = 0.25f;
ops.nRampDownType = OBJPSFX_RAMPALPHA;
ops.fDuration = 2.5f;
ops.fAddDelay = 0.1f;
ops.fRadius = 1750.0f;
ops.fPosRadius = 25.0f;
ops.fGravity = 150.0f;
VEC_SET(ops.vRotations, 0.0f, 0.025f, 0.0f);
ops.nEmitType = OBJPSFX_EMITRING;
ops.nNumParticles = 18;
ops.fAlpha = 0.5f;
VEC_SET(ops.vMinColor, 0.0f, 0.0f, 255.0f);
VEC_SET(ops.vMaxColor, 196.0f, 196.0f, 255.0f);
ops.fMinLifetime = 0.75f;
ops.fMaxLifetime = 1.0f;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\smoke64_2.dtx");
break;
}
case OBJFX_DEATHRAY_RING_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
VEC_COPY(ops.vOffset, m_vOffset);
ops.fRampDownTime = 0.25f;
ops.nRampDownType = OBJPSFX_RAMPALPHA;
ops.fDuration = 1.5f;
ops.fAddDelay = 1.5f;
ops.fRadius = 4000.0f;
ops.fPosRadius = 2.5f;
VEC_SET(ops.vRotations, 0.0f, 0.0f, GetRandom(-0.01f,0.01f));
ops.nEmitType = OBJPSFX_EMITPOWERRING;
ops.nNumParticles = 24;
ops.fDensity = 2.5f;
ops.fAlpha = 0.1f;
VEC_SET(ops.vMinColor, 0.0f, 196.0f, 0.0f);
VEC_SET(ops.vMaxColor, 64.0f, 255.0f, 64.0f);
ops.fMinVelocity = 150.0f;
ops.fMaxVelocity = 450.0f;
ops.fMinLifetime = 0.85f;
ops.fMaxLifetime = 0.85f;
ops.nFXFlags = OBJPSFX_ALIGNROTATION;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\smoke64_2.dtx");
break;
}
case OBJFX_DEATHRAY_RING_2:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
VEC_COPY(ops.vOffset, m_vOffset);
ops.fRampDownTime = 0.25f;
ops.nRampDownType = OBJPSFX_RAMPALPHA;
ops.fDuration = 1.5f;
ops.fAddDelay = 1.5f;
ops.fRadius = 1000.0f;
ops.fPosRadius = 2.5f;
VEC_SET(ops.vRotations, 0.0f, 0.0f, GetRandom(-0.01f,0.01f));
ops.nEmitType = OBJPSFX_EMITPOWERRING;
ops.nNumParticles = 32;
ops.fDensity = 2.5f;
ops.fAlpha = 0.5f;
VEC_SET(ops.vMinColor, 0.0f, 196.0f, 0.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinVelocity = 85.0f;
ops.fMaxVelocity = 450.0f;
ops.fMinLifetime = 1.0f;
ops.fMaxLifetime = 1.0f;
ops.nFXFlags = OBJPSFX_ALIGNROTATION;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare_1.dtx");
break;
}
case OBJFX_ELECTRIC_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fRampDownTime = 0.25f;
ops.nRampDownType = OBJPSFX_RAMPALPHA;
ops.fDuration = 0.75f;
ops.fAddDelay = 0.75f;
ops.fRadius = 750.0f;
ops.fPosRadius = 15.0f;
ops.fGravity = -250.0f;
ops.nEmitType = OBJPSFX_EMITSPHERE;
ops.nNumParticles = 24;
ops.fAlpha = 0.5f;
VEC_SET(ops.vMinColor, 0.0f, 0.0f, 196.0f);
VEC_SET(ops.vMaxColor, 255.0f, 255.0f, 255.0f);
ops.fMinVelocity = 100.0f;
ops.fMaxVelocity = 300.0f;
ops.fMinLifetime = 0.5f;
ops.fMaxLifetime = 0.75f;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\Lensflare_1.dtx");
break;
}
#ifdef _ADD_ON
case OBJFX_GREEN_SMOKE:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.01f;
ops.fRadius = 2000.0f;
ops.fGravity = 25.0f;
ops.nEmitType = OBJPSFX_EMITLOCATION;
ops.nNumParticles = 12;
ops.fDensity = 1.0f;
ops.fAlpha = 0.25f;
VEC_SET(ops.vMinColor, 0.0f, 64.0f, 0.0f);
VEC_SET(ops.vMaxColor, 128.0f, 192.0f, 128.0f);
ops.fMinVelocity = 20.0f;
ops.fMaxVelocity = 50.0f;
ops.fMinLifetime = 0.5f;
ops.fMaxLifetime = 0.75f;
ops.nFXFlags = OBJPSFX_ALL;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\smoke64_2.dtx");
break;
}
case OBJFX_BLOOD_TRAIL_1:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.025f;
ops.fRadius = 150.0f;
ops.fPosRadius = 5.0f;
ops.fGravity = -250.0f;
ops.nEmitType = OBJPSFX_EMITCOMETTAIL;
ops.nNumParticles = 6;
ops.fDensity = 10.0f;
ops.fAlpha = 1.0f;
VEC_SET(ops.vMinColor, 32.0f, 0.0f, 0.0f);
VEC_SET(ops.vMaxColor, 96.0f, 0.0f, 0.0f);
ops.fMinVelocity = 0.0f;
ops.fMaxVelocity = 25.0f;
ops.fMinLifetime = 0.5f;
ops.fMaxLifetime = 0.75f;
ops.nFXFlags = OBJPSFX_REMOVESTOPPED | OBJPSFX_RAMPDOWNSTOPPED | OBJPSFX_MOVINGSOURCE | OBJPSFX_MOVINGSTREAM;
ops.szParticle = pClientDE->CreateString("SpriteTextures\\drop32_1.dtx");
break;
}
#endif
default:
{
ops.hServerObj = m_hObj;
ops.hObj = m_hObj;
ops.fAddDelay = 0.01f;
ops.fRadius = 2000.0f;
ops.fGravity = 25.0f;
ops.nEmitType = OBJPSFX_EMITLOCATION;
ops.nNumParticles = 12;
ops.fDensity = 1.0f;
ops.fAlpha = 0.25f;
VEC_SET(ops.vMinColor, 96.0f, 96.0f, 96.0f);
VEC_SET(ops.vMaxColor, 192.0f, 192.0f, 192.0f);
ops.fMinVelocity = 20.0f;
ops.fMaxVelocity = 50.0f;
ops.fMinLifetime = 0.5f;
ops.fMaxLifetime = 0.75f;
ops.nFXFlags = OBJPSFX_ALL;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -