| 336 | ResultType MsgListenerWrapper::InterceptUserMessage(int msg_id, protobuf::Message *msg, IRecipientFilter *pFilter) |
| 337 | #else |
| 338 | ResultType MsgListenerWrapper::InterceptUserMessage(int msg_id, bf_write *bf, IRecipientFilter *pFilter) |
| 339 | #endif |
| 340 | { |
| 341 | Handle_t hndl; |
| 342 | cell_t res = static_cast<cell_t>(Pl_Continue); |
| 343 | size_t size = _FillInPlayers(g_MsgPlayers, pFilter); |
| 344 | |
| 345 | #ifdef USE_PROTOBUF_USERMESSAGES |
| 346 | hndl = handlesys->CreateHandle(g_ProtobufType, new SMProtobufMessage(msg), NULL, g_pCoreIdent, NULL); |
| 347 | #else |
| 348 | g_ReadBitBuf.StartReading(bf->GetBasePointer(), bf->GetNumBytesWritten()); |
| 349 | hndl = g_ReadBufHandle; |
| 350 | #endif |
| 351 | |
| 352 | m_Intercept->PushCell(msg_id); |
| 353 | m_Intercept->PushCell(hndl); |
| 354 | m_Intercept->PushArray(g_MsgPlayers, size); |
| 355 | m_Intercept->PushCell(size); |
| 356 | m_Intercept->PushCell(pFilter->IsReliable()); |
| 357 | m_Intercept->PushCell(pFilter->IsInitMessage()); |
| 358 | m_Intercept->Execute(&res); |
| 359 | |
| 360 | #ifdef USE_PROTOBUF_USERMESSAGES |
| 361 | HandleSecurity sec; |
| 362 | sec.pIdentity = g_pCoreIdent; |
| 363 | handlesys->FreeHandle(hndl, &sec); |
| 364 | #endif |
| 365 | |
| 366 | return static_cast<ResultType>(res); |
| 367 | } |
| 368 | |
| 369 | void MsgListenerWrapper::OnPostUserMessage(int msg_id, bool sent) |
| 370 | { |
no test coverage detected