// ----------------------------------------------------------------------- // // // ROUTINE: LightFX::ObjectMessageFn // // PURPOSE: Handle object-to-object messages // // ----------------------------------------------------------------------- // DDWORD LightFX::ObjectMessageFn(HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead) { switch(messageID) { case MID_TRIGGER: { HandleTrigger(hSender, hRead); break; } case MID_DAMAGE: { DDWORD dwRet = BaseClass::ObjectMessageFn (hSender, messageID, hRead); if (m_damage.IsDead()) { g_pServerDE->RemoveObject(m_hObject); } return dwRet; break; } default : break; } return BaseClass::ObjectMessageFn (hSender, messageID, hRead); }
DDWORD CDestructable::ObjectMessageFn(LPBASECLASS pObject, HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead) { switch(messageID) { case MID_DAMAGE: { HandleDamage(hSender, hRead); break; } case MID_REPAIR: { HandleRepair(hSender, hRead); break; } case MID_HEAL: { HandleHeal(hSender, hRead); break; } case MID_TRIGGER: { HandleTrigger(hSender, hRead); break; } default : break; } return Aggregate::ObjectMessageFn(pObject, hSender, messageID, hRead); }
// ----------------------------------------------------------------------- // // // ROUTINE: ClientLightFX::ObjectMessageFn // // PURPOSE: Handle object-to-object messages // // ----------------------------------------------------------------------- // uint32 ClientLightFX::ObjectMessageFn(HOBJECT hSender, uint32 messageID, HMESSAGEREAD hRead) { switch(messageID) { case MID_TRIGGER: { HandleTrigger(hSender, hRead); } break; case MID_DAMAGE: { uint32 dwRet = GameBase::ObjectMessageFn (hSender, messageID, hRead); if (m_damage.IsDead()) { g_pLTServer->RemoveObject(m_hObject); } return dwRet; } break; default : break; } return GameBase::ObjectMessageFn (hSender, messageID, hRead); }
uint32 RotatingWorldModel::ObjectMessageFn(HOBJECT hSender, uint32 messageID, HMESSAGEREAD hRead) { switch (messageID) { case MID_TRIGGER: { const char* szMsg = (const char*)g_pLTServer->ReadFromMessageDWord(hRead); HandleTrigger(hSender, szMsg); } break; } return GameBase::ObjectMessageFn(hSender, messageID, hRead); }
DDWORD CClientExplosionSFX::ObjectMessageFn(HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead) { switch(messageID) { case MID_TRIGGER: { HandleTrigger(hSender, hRead); break; } default : break; } return CClientSFX::ObjectMessageFn(hSender, messageID, hRead); }
uint32 SoundFX::ObjectMessageFn(HOBJECT hSender, uint32 messageID, HMESSAGEREAD hRead) { switch(messageID) { case MID_TRIGGER: { const char* szMsg = (const char*)g_pLTServer->ReadFromMessageDWord(hRead); HandleTrigger(hSender, szMsg); break; } default : break; } return BaseClass::ObjectMessageFn(hSender, messageID, hRead); }
uint32 LightGroup::ObjectMessageFn(HOBJECT hSender, ILTMessage_Read *pMsg) { pMsg->SeekTo(0); uint32 messageID = pMsg->Readuint32(); switch(messageID) { case MID_TRIGGER: { HandleTrigger(hSender, pMsg); } break; default : break; } return Engine_LightGroup::ObjectMessageFn (hSender, pMsg); }
DDWORD Rotating::ObjectMessageFn(LPBASECLASS pObject, HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead) { CServerDE* pServerDE = BaseClass::GetServerDE(); if (!pServerDE) return 0; switch (messageID) { case MID_TRIGGER: { HSTRING hMsg = pServerDE->ReadFromMessageHString(hRead); HandleTrigger(hSender, hMsg); pServerDE->FreeString(hMsg); } break; } return Aggregate::ObjectMessageFn(pObject, hSender, messageID, hRead); }
DDWORD CameraObj::ObjectMessageFn(HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead) { CServerDE* pServerDE = GetServerDE(); switch (messageID) { case MID_TRIGGER: { HSTRING hMsg = pServerDE->ReadFromMessageHString(hRead); if (hMsg) { HandleTrigger(hSender, hMsg); pServerDE->FreeString(hMsg); } } break; } return B2BaseClass::ObjectMessageFn(hSender, messageID, hRead); }
DDWORD VolumeBrush::ObjectMessageFn(HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead) { CServerDE* pServerDE = GetServerDE(); switch (messageID) { case MID_TRIGGER: { HSTRING hMsg = pServerDE->ReadFromMessageHString(hRead); HandleTrigger(hSender, hMsg); pServerDE->FreeString(hMsg); break; } case MID_KEYQUERYRESPONSE: { HSTRING hItemName = pServerDE->ReadFromMessageHString(hRead); DBOOL bHaveItem = (DBOOL)pServerDE->ReadFromMessageByte(hRead); // Check the key & locked status if (m_bLocked && bHaveItem && pServerDE->CompareStringsUpper(hItemName, m_hstrKeyName)) { m_bLocked = DFALSE; // Key is no longer needed, tell the sender to remove it // if (m_bUnlockKeyRemove) // { // HMESSAGEWRITE hMessage = pServerDE->StartMessageToObject((LPBASECLASS)this, hSender, MID_KEYREMOVE); // pServerDE->WriteToMessageHString(hMessage, m_hstrKeyName); // pServerDE->EndMessage(hMessage); // } } pServerDE->FreeString(hItemName); break; } break; } return B2BaseClass::ObjectMessageFn(hSender, messageID, hRead); }