virtual void unpack(NetConnection* /*con*/, BitStream *bstream) { char buf[256]; mIndex = bstream->readInt(ConnectionStringTable::EntryBitSize); bstream->readString(buf); mString = NetStringHandle(buf); }
void TSStatic::setSkinName( const char *name ) { if ( !isGhost() ) { if ( name[0] != '\0' ) { // Use tags for better network performance // Should be a tag, but we'll convert to one if it isn't. if ( name[0] == StringTagPrefixByte ) mSkinNameHandle = NetStringHandle( U32(dAtoi(name + 1)) ); else mSkinNameHandle = NetStringHandle( name ); } else mSkinNameHandle = NetStringHandle(); setMaskBits( SkinMask ); } }
void ConnectionStringTable::readDemoStartBlock(BitStream *stream) { // ok, reading the demo start block for(U32 i = 0; i < EntryCount; i++) { if(stream->readFlag()) { char buffer[256]; stream->readString(buffer); mRemoteStringTable[i] = NetStringHandle(buffer); } } }
RemoteCommandEvent::RemoteCommandEvent(S32 argc, const char **argv, NetConnection *conn) { mArgc = argc; for(S32 i = 0; i < argc; i++) { if(argv[i][0] == StringTagPrefixByte) { char buffer[256]; mTagv[i+1] = NetStringHandle(dAtoi(argv[i]+1)); if(conn) { dSprintf(buffer + 1, sizeof(buffer) - 1, "%d", conn->getNetSendId(mTagv[i+1])); buffer[0] = StringTagPrefixByte; mArgv[i+1] = dStrdup(buffer); } } else mArgv[i+1] = dStrdup(argv[i]); } }
NetStringEvent(U32 index = 0, NetStringHandle string = NetStringHandle()) { mIndex = index; mString = string; }