当前位置: 首页>>代码示例>>C++>>正文


C++ CServerDE::WriteToMessageByte方法代码示例

本文整理汇总了C++中CServerDE::WriteToMessageByte方法的典型用法代码示例。如果您正苦于以下问题:C++ CServerDE::WriteToMessageByte方法的具体用法?C++ CServerDE::WriteToMessageByte怎么用?C++ CServerDE::WriteToMessageByte使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CServerDE的用法示例。


在下文中一共展示了CServerDE::WriteToMessageByte方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: SendEffectMessage

void ClientLightFX::SendEffectMessage()
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE) return;

	HMESSAGEWRITE hMessage = pServerDE->StartSpecialEffectMessage(this);
	pServerDE->WriteToMessageByte(hMessage, SFX_LIGHT_ID);

	pServerDE->WriteToMessageVector(hMessage, &m_vColor);
	pServerDE->WriteToMessageDWord(hMessage, m_dwLightFlags);
	pServerDE->WriteToMessageFloat(hMessage, m_fIntensityMin);
	pServerDE->WriteToMessageFloat(hMessage, m_fIntensityMax);
	pServerDE->WriteToMessageByte(hMessage, m_nIntensityWaveform);
	pServerDE->WriteToMessageFloat(hMessage, m_fIntensityFreq);
	pServerDE->WriteToMessageFloat(hMessage, m_fIntensityPhase);
	pServerDE->WriteToMessageFloat(hMessage, m_fRadiusMin);
	pServerDE->WriteToMessageFloat(hMessage, m_fRadiusMax);
	pServerDE->WriteToMessageByte(hMessage, m_nRadiusWaveform);
	pServerDE->WriteToMessageFloat(hMessage, m_fRadiusFreq);
	pServerDE->WriteToMessageFloat(hMessage, m_fRadiusPhase);
	pServerDE->WriteToMessageHString(hMessage, m_hstrRampUpSound);
	pServerDE->WriteToMessageHString(hMessage, m_hstrRampDownSound);

	pServerDE->EndMessage(hMessage);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:25,代码来源:ClientLightFX.cpp

示例2: SendEffectMessage

void Rain::SendEffectMessage()
{
    CServerDE* pServerDE = GetServerDE();
    if (!pServerDE) return;

    HMESSAGEWRITE hMessage = pServerDE->StartSpecialEffectMessage(this);
    pServerDE->WriteToMessageByte(hMessage, SFX_RAIN_ID);
    /*
    	if(m_fTimeLimit)	//SCHLEGZ 5/3/98 11:36:00 PM: remove object if the server object disappears (HACK!!)
    		pServerDE->WriteToMessageByte(hMessage, DFALSE);
    	else
    //pServerDE->WriteToMessageByte(hMessage, DTRUE);
    */
    pServerDE->WriteToMessageFloat(hMessage, (DFLOAT)m_dwFlags);
    pServerDE->WriteToMessageFloat(hMessage, m_fDensity);
    pServerDE->WriteToMessageFloat(hMessage, m_fLifetime);
    pServerDE->WriteToMessageByte(hMessage, (DBYTE)m_bGravity);
    pServerDE->WriteToMessageFloat(hMessage, m_fParticleScale);
    pServerDE->WriteToMessageFloat(hMessage, m_fSpread);
    pServerDE->WriteToMessageVector(hMessage, &m_vDims);
    pServerDE->WriteToMessageVector(hMessage, &m_vDirection);
    pServerDE->WriteToMessageVector(hMessage, &m_vColor1);
    pServerDE->WriteToMessageVector(hMessage, &m_vColor2);
    pServerDE->WriteToMessageFloat(hMessage, m_fTimeLimit);
    pServerDE->WriteToMessageFloat(hMessage, m_fPulse);
    pServerDE->EndMessage(hMessage);
}
开发者ID:jordandavidson,项目名称:lithtech,代码行数:27,代码来源:Rain.cpp

示例3: SetupSprite

void CClientExplosionSFX::SetupSprite(DVector *vScale1, DVector *vScale2, DFLOAT fDuration,
					DFLOAT fInitAlpha, DBYTE bWaveForm, DBYTE bFade, DBOOL bAlign, char *szSprite)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE) return;

	HSTRING		hszSprite;

	if(szSprite)	hszSprite = pServerDE->CreateString(szSprite);
		else		hszSprite = pServerDE->CreateString("Sprites\\Explode128.spr");

	// Tell the clients about the Explosion...
	HMESSAGEWRITE hMessage = pServerDE->StartInstantSpecialEffectMessage(&m_vPos);
	pServerDE->WriteToMessageByte(hMessage, SFX_EXPLOSIONSPRITE_ID);
//	pServerDE->WriteToMessageByte(hMessage, DFALSE);

	pServerDE->WriteToMessageVector(hMessage, &m_vPos);
	pServerDE->WriteToMessageVector(hMessage, &m_vNormal);

	pServerDE->WriteToMessageVector(hMessage, vScale1);
	pServerDE->WriteToMessageVector(hMessage, vScale2);
	pServerDE->WriteToMessageFloat(hMessage, fDuration);
	pServerDE->WriteToMessageFloat(hMessage, fInitAlpha);
	pServerDE->WriteToMessageByte(hMessage, bWaveForm);
	pServerDE->WriteToMessageByte(hMessage, bFade);
	pServerDE->WriteToMessageByte(hMessage, bAlign);
	pServerDE->WriteToMessageHString(hMessage, hszSprite);

	pServerDE->EndMessage(hMessage);

	pServerDE->FreeString( hszSprite );

}
开发者ID:Arc0re,项目名称:lithtech,代码行数:33,代码来源:ClientExplosionSFX.cpp

示例4: SetupFX

void CClientParticleStreamSFX::SetupFX()
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE) return;

	HMESSAGEWRITE hMessage = pServerDE->StartSpecialEffectMessage(this);
	pServerDE->WriteToMessageByte(hMessage, SFX_PARTICLESTREAM_ID);

	pServerDE->WriteToMessageFloat(hMessage, fRadius);
	pServerDE->WriteToMessageFloat(hMessage, fPosRadius);
	pServerDE->WriteToMessageFloat(hMessage, fMinVel);
	pServerDE->WriteToMessageFloat(hMessage, fMaxVel);
	pServerDE->WriteToMessageDWord(hMessage, nNumParticles);
	pServerDE->WriteToMessageFloat(hMessage, fSpread);
	pServerDE->WriteToMessageVector(hMessage, &vColor1);
	pServerDE->WriteToMessageVector(hMessage, &vColor2);
	pServerDE->WriteToMessageFloat(hMessage, fAlpha);
	pServerDE->WriteToMessageFloat(hMessage, fMinLife);
	pServerDE->WriteToMessageFloat(hMessage, fMaxLife);
	pServerDE->WriteToMessageFloat(hMessage, fRampTime);
	pServerDE->WriteToMessageFloat(hMessage, fDelay);
	pServerDE->WriteToMessageFloat(hMessage, fGravity);
	pServerDE->WriteToMessageByte(hMessage, bRampFlags);
	pServerDE->WriteToMessageByte(hMessage, bOn);
	pServerDE->WriteToMessageHString(hMessage, hstrTexture);
	pServerDE->WriteToMessageFloat(hMessage, fSoundRadius);
	pServerDE->WriteToMessageHString(hMessage, hstrSound1);
	pServerDE->WriteToMessageHString(hMessage, hstrSound2);
	pServerDE->WriteToMessageHString(hMessage, hstrSound3);

	pServerDE->EndMessage(hMessage);
}
开发者ID:bsmr-games,项目名称:Blood2,代码行数:32,代码来源:ClientParticleStreamSFX.cpp

示例5: Save

void WeaponPowerup::Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE || !hWrite) return;

	pServerDE->WriteToMessageByte(hWrite, m_iWeaponType);
	pServerDE->WriteToMessageByte(hWrite, m_eModelSize);
	pServerDE->WriteToMessageDWord(hWrite, m_dwAmmo);
}
开发者ID:Joincheng,项目名称:lithtech,代码行数:9,代码来源:WeaponPowerups.cpp

示例6: Save

void CDebris::Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags)
{
	CServerDE* pServerDE = BaseClass::GetServerDE();
	if (!pServerDE || !hWrite) return;

	pServerDE->WriteToLoadSaveMessageObject(hWrite, m_hObject);
	pServerDE->WriteToMessageHString(hWrite, m_hstrSound);
	pServerDE->WriteToMessageHString(hWrite, m_hstrTexture1);
	pServerDE->WriteToMessageHString(hWrite, m_hstrTexture2);
	pServerDE->WriteToMessageHString(hWrite, m_hstrModel1);
	pServerDE->WriteToMessageHString(hWrite, m_hstrModel2);
	pServerDE->WriteToMessageByte(hWrite, m_nAmount);
	pServerDE->WriteToMessageFloat(hWrite, m_fScale);
	pServerDE->WriteToMessageByte(hWrite, m_bExploding);
	pServerDE->WriteToMessageByte(hWrite, m_bStone);
	pServerDE->WriteToMessageByte(hWrite, m_bMetal);
	pServerDE->WriteToMessageByte(hWrite, m_bWood);	
	pServerDE->WriteToMessageByte(hWrite, m_bEnergy);
	pServerDE->WriteToMessageByte(hWrite, m_bGlass);
	pServerDE->WriteToMessageByte(hWrite, m_bTerrain);
	pServerDE->WriteToMessageByte(hWrite, m_bPlastic);
	pServerDE->WriteToMessageByte(hWrite, m_bFlesh);
	pServerDE->WriteToMessageByte(hWrite, m_bLiquid);
	pServerDE->WriteToMessageByte(hWrite, m_bCustom);
	pServerDE->WriteToMessageDWord(hWrite, (DDWORD)m_eType);

	pServerDE->WriteToMessageFloat(hWrite, m_fDamageRadius);
	pServerDE->WriteToMessageFloat(hWrite, m_fExplodeDamage);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:29,代码来源:Debris.cpp

示例7: InitialUpdate

void VolumeBrush::InitialUpdate(int nData)
{
    CServerDE* pServerDE = GetServerDE();
    if (!pServerDE) return;

    // For save game restores, just recreate the surface
    if (nData == INITIALUPDATE_SAVEGAME)
        return;

    if (m_bShowSurface)
    {
        CreateSurface();
    }

    m_hPlayerClass = pServerDE->GetClass("CPlayerObj");

    DDWORD dwUserFlags = m_bHidden ? 0 : USRFLG_VISIBLE;
    dwUserFlags |= USRFLG_SAVEABLE;

    pServerDE->SetObjectUserFlags(m_hObject, dwUserFlags);

    if (m_hSurfaceObj)
    {
        pServerDE->SetObjectUserFlags(m_hSurfaceObj, dwUserFlags);
    }

    // Tell the client about any special fx (fog)...
    HMESSAGEWRITE hMessage = pServerDE->StartSpecialEffectMessage(this);
    pServerDE->WriteToMessageByte(hMessage, SFX_VOLUMEBRUSH_ID);
//pServerDE->WriteToMessageByte(hMessage, DTRUE);
    pServerDE->WriteToMessageByte(hMessage, (DBYTE)m_bFogEnable);
    pServerDE->WriteToMessageFloat(hMessage, m_fFogFarZ);
    pServerDE->WriteToMessageFloat(hMessage, m_fFogNearZ);
    pServerDE->WriteToMessageVector(hMessage, &m_vFogColor);
    pServerDE->EndMessage(hMessage);

    pServerDE->SetNextUpdate(m_hObject, 0.001f);


    // Save volume brush's initial flags...

    m_dwSaveFlags = pServerDE->GetObjectFlags(m_hObject);


    // Normalize viscosity (1 = no movement, 0 = full movement)...

    if (m_fViscosity < 0.0) m_fViscosity = 0.0f;
    else if (m_fViscosity > 1.0) m_fViscosity = 1.0f;

    // Okay, internally we really want it the opposite way (i.e., 1 = full
    // movement, 0 = no movement)...

    m_fViscosity = 1.0f - m_fViscosity;
}
开发者ID:jordandavidson,项目名称:lithtech,代码行数:54,代码来源:VolumeBrush.cpp

示例8: GetServerDE

void PolyGrid::	Setup(DVector* pvDims, DVector* pvColor1, DVector* pvColor2,
					  HSTRING hstrSurfaceSprite, DFLOAT fXScaleMin, DFLOAT fXScaleMax,
					  DFLOAT fYScaleMin, DFLOAT fYScaleMax, DFLOAT fXScaleDuration,
					  DFLOAT fYScaleDuration, DFLOAT fXPan, DFLOAT fYPan,
					  DFLOAT fAlpha, DDWORD dwNumPolies)
{
	D_WORD wColor1, wColor2;

	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE || !pvDims || !pvColor1 || !pvColor2 || dwNumPolies < 4) return;

	VEC_COPY(m_vDims, *pvDims);
	pServerDE->SetObjectDims(m_hObject, pvDims);
	VEC_COPY(m_vColor1, *pvColor1);
	VEC_COPY(m_vColor2, *pvColor2);

	wColor1 = Color255VectorToWord( pvColor1 );
	wColor2 = Color255VectorToWord( pvColor2 );

	// Limit the number of polies to 32k...
	if ( dwNumPolies > 0x7FFF )
		dwNumPolies = 0x7FFF;

	HSTRING hstrSprite = hstrSurfaceSprite ? hstrSurfaceSprite : pServerDE->CreateString("");

	// Tell the clients about the polygrid...
	HMESSAGEWRITE hMessage = pServerDE->StartSpecialEffectMessage(this);
	pServerDE->WriteToMessageByte(hMessage, SFX_POLYGRID_ID);
	pServerDE->WriteToMessageVector(hMessage, &m_vDims);
	pServerDE->WriteToMessageWord(hMessage, wColor1);
	pServerDE->WriteToMessageWord(hMessage, wColor2);
	pServerDE->WriteToMessageFloat(hMessage, fXScaleMin);
	pServerDE->WriteToMessageFloat(hMessage, fXScaleMax);
	pServerDE->WriteToMessageFloat(hMessage, fYScaleMin);
	pServerDE->WriteToMessageFloat(hMessage, fYScaleMax);
	pServerDE->WriteToMessageFloat(hMessage, fXScaleDuration);
	pServerDE->WriteToMessageFloat(hMessage, fYScaleDuration);
	pServerDE->WriteToMessageFloat(hMessage, fXPan);
	pServerDE->WriteToMessageFloat(hMessage, fYPan);
	pServerDE->WriteToMessageFloat(hMessage, fAlpha);
	pServerDE->WriteToMessageHString(hMessage, hstrSprite);
	pServerDE->WriteToMessageWord(hMessage, (D_WORD)dwNumPolies);
	pServerDE->WriteToMessageByte(hMessage, m_nPlasmaType);
	pServerDE->WriteToMessageByte(hMessage, m_nRingRate[0]);
	pServerDE->WriteToMessageByte(hMessage, m_nRingRate[1]);
	pServerDE->WriteToMessageByte(hMessage, m_nRingRate[2]);
	pServerDE->WriteToMessageByte(hMessage, m_nRingRate[3]);
	pServerDE->EndMessage(hMessage);

	if (!hstrSurfaceSprite)
	{
		pServerDE->FreeString(hstrSprite);
	}
}
开发者ID:bsmr-games,项目名称:Blood2,代码行数:54,代码来源:PolyGrid.cpp

示例9: Save

void ClientLightFX::Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE || !hWrite) return;

	// Only need to save the data that changes (all the data in the
	// special fx message is saved/loaded for us)...

	pServerDE->WriteToMessageByte(hWrite, m_bOn);
	pServerDE->WriteToMessageByte(hWrite, m_bDynamic);
	pServerDE->WriteToMessageFloat(hWrite, m_fLifeTime);
	pServerDE->WriteToMessageFloat(hWrite, m_fStartTime);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:13,代码来源:ClientLightFX.cpp

示例10: Save

void ObjectiveTrigger::Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE || !hWrite) return;

	pServerDE->WriteToMessageByte(hWrite, m_bPlayerTriggerable);
	pServerDE->WriteToMessageByte(hWrite, m_bAITriggerable);
	pServerDE->WriteToMessageByte(hWrite, m_bTriggered);
	pServerDE->WriteToMessageHString(hWrite, m_hstrAIName);
	pServerDE->WriteToMessageHString(hWrite, m_hAddObjectives);
	pServerDE->WriteToMessageHString(hWrite, m_hRemoveObjectives);
	pServerDE->WriteToMessageHString(hWrite, m_hCompletedObjectives);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:13,代码来源:ObjectiveTrigger.cpp

示例11: EngineMessageFn

DDWORD CHandWeaponModel::EngineMessageFn(DDWORD messageID, void *pData, DFLOAT lData)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE) return 0;

	switch(messageID)
	{
		case MID_PRECREATE:
		{
			ObjectCreateStruct *ocs = (ObjectCreateStruct*)pData;
			m_dwClientID = ocs->m_UserData;

			if(ocs->m_NextUpdate == 0.02f)
				m_bLeftHand = DTRUE;

			ocs = DNULL;
		}

		case MID_UPDATE:
		{
			if (!Update())
				pServerDE->RemoveObject(m_hObject);
			break;
		}

		case MID_INITIALUPDATE:
		{
			pServerDE->SetNextUpdate(m_hObject, 0.01f);
			DVector vDims;
			VEC_SET(vDims, 0.1f, 0.1f, 0.1f);
			pServerDE->SetObjectDims(m_hObject, &vDims);

			if(m_dwClientID)
			{
				HMESSAGEWRITE hMsg = pServerDE->StartSpecialEffectMessage(this);
				pServerDE->WriteToMessageByte(hMsg, SFX_WEAPONHANDMODEL_ID);
				pServerDE->WriteToMessageDWord(hMsg, m_dwClientID);
				pServerDE->WriteToMessageByte(hMsg, (m_bLeftHand << 1) | DFALSE);
				pServerDE->EndMessage2(hMsg, MESSAGE_GUARANTEED);
			}
			break;
		}

		default:
			break;
	}


	return BaseClass::EngineMessageFn(messageID, pData, lData);
}
开发者ID:bsmr-games,项目名称:Blood2,代码行数:50,代码来源:HandWeaponModel.cpp

示例12: Save

void CDestructableBrush::Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE || !hWrite) return;

	pServerDE->WriteToMessageFloat(hWrite, m_fInitHitPoints);
	pServerDE->WriteToMessageFloat(hWrite, m_fMass);
	pServerDE->WriteToMessageByte(hWrite, m_bDestructable);
	pServerDE->WriteToMessageByte(hWrite, m_bPushable);
	pServerDE->WriteToMessageByte(hWrite, m_bBoxPhysics);
	pServerDE->WriteToMessageByte(hWrite, m_bAllowMarks);
	pServerDE->WriteToMessageHString(hWrite, m_hstrDebrisSkin);
	pServerDE->WriteToMessageDWord(hWrite, m_eSurfType);
	pServerDE->WriteToMessageByte(hWrite, m_bFireThrough);
}
开发者ID:bsmr-games,项目名称:Blood2,代码行数:15,代码来源:DestructableBrush.cpp

示例13: InitialUpdate

void ParticleSystem::InitialUpdate(DVector *pMovement)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE) return;

	// Tell the clients about the ParticleSystem, and remove thyself...

	HMESSAGEWRITE hMessage = pServerDE->StartSpecialEffectMessage(this);
//	pServerDE->WriteToMessageByte(hMessage, SFX_PARTICLESYSTEM_ID | (( m_bStatic ) ? SFX_STATIC : 0 ));
	pServerDE->WriteToMessageByte(hMessage, SFX_PARTICLESYSTEM_ID);
//pServerDE->WriteToMessageByte(hMessage, m_bStatic);
	pServerDE->WriteToMessageVector(hMessage, &m_vColor1);
	pServerDE->WriteToMessageVector(hMessage, &m_vColor2);
	pServerDE->WriteToMessageFloat(hMessage, (DFLOAT)m_dwFlags);
	pServerDE->WriteToMessageFloat(hMessage, m_fBurstWait);
	pServerDE->WriteToMessageFloat(hMessage, m_fParticlesPerSecond);
	pServerDE->WriteToMessageFloat(hMessage, m_fEmissionRadius);
	pServerDE->WriteToMessageFloat(hMessage, m_fMinimumVelocity);
	pServerDE->WriteToMessageFloat(hMessage, m_fMaximumVelocity);
	pServerDE->WriteToMessageFloat(hMessage, m_fVelocityOffset);
	pServerDE->WriteToMessageFloat(hMessage, m_fParticleLifetime);
	pServerDE->WriteToMessageFloat(hMessage, m_fRadius);
	pServerDE->WriteToMessageFloat(hMessage, m_fGravity);
	pServerDE->WriteToMessageFloat(hMessage, m_fRotationVelocity);
	pServerDE->WriteToMessageHString(hMessage, m_hstrTextureName);
	pServerDE->EndMessage(hMessage);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:27,代码来源:ParticleSystem.cpp

示例14: ObjectTouch

void ItemPickup::ObjectTouch(HOBJECT hObject)
{
	DBYTE nValue;
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE) return;

	// Always at least one object...
	nValue = ( DBYTE )DCLAMP( m_fValue * m_fValueMult, 0, 255 );
	if( nValue == 0 && m_fValueMult > 0.0f )
		nValue = 1;

	HMESSAGEWRITE hMessage = pServerDE->StartMessageToObject(this, hObject, MID_INVENTORYITEMTOUCH);
	pServerDE->WriteToMessageByte(hMessage, (DBYTE)m_nType);
	pServerDE->WriteToMessageByte( hMessage, nValue );
	pServerDE->EndMessage(hMessage);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:16,代码来源:ItemPickups.cpp

示例15: Save

void Powerup::Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags)
{
	CServerDE* pServerDE = GetServerDE();
	if (!pServerDE || !hWrite) return;

	pServerDE->WriteToMessageFloat(hWrite, m_fTimeLimit);
	pServerDE->WriteToMessageByte(hWrite, m_bTimed);
}
开发者ID:Arc0re,项目名称:lithtech,代码行数:8,代码来源:Powerup.cpp


注:本文中的CServerDE::WriteToMessageByte方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。