本文整理汇总了C++中buf_t::WriteLong方法的典型用法代码示例。如果您正苦于以下问题:C++ buf_t::WriteLong方法的具体用法?C++ buf_t::WriteLong怎么用?C++ buf_t::WriteLong使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类buf_t
的用法示例。
在下文中一共展示了buf_t::WriteLong方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Go
void Go(buf_t &in, buf_t &out)
{
while(in.BytesLeftToRead())
{
byte cmd = in.NextByte();
//std::cout << cmd << " " << (int)cmd << std::endl;
switch(cmd)
{
case svc_loadmap:
{
Copy(in, out, 1);
map = in.ReadString();
out.WriteString(map.c_str());
std::cout<< "map " << map << std::endl; // todo unsafe
}
break;
case svc_playerinfo:
Copy(in, out, 1+ 9 + 4*4 + 5);
break;
case svc_consoleplayer:
Copy(in, out, 1);
consoleplayer = in.ReadByte();
out.WriteByte(consoleplayer);
digest = in.ReadString();
out.WriteString(digest.c_str());
break;
case svc_updatefrags:
Copy(in, out, 1+ 7);
break;
case svc_moveplayer:
Copy(in, out, 1+ 37);
break;
case svc_updatelocalplayer:
//in.ReadChunk(28);
Copy(in, out, 1+ 28);
break;
case svc_userinfo:
Copy(in, out, 1+ 1);
CopyString(in, out);
Copy(in, out, 9);
CopyString(in, out);
Copy(in, out, 2);
break;
case svc_teampoints:
Copy(in, out, 1+ 3*2);
break;
case svc_svgametic:
Copy(in, out, 1+ 4);
break;
case svc_updateping:
Copy(in, out, 1+ 5);
break;
case svc_spawnmobj:
{
Copy(in, out, 1+ 16);
unsigned short type = in.ReadShort();
out.WriteShort(type); // todo: if this line is missing, odamex client crashes
Copy(in, out, 5);
if(type == 0x10000/*MF_MISSILE*/)
{
out.WriteShort(type);
Copy(in, out, 16); //SpeedAndAngle
}
}
break;
case svc_mobjspeedangle:
Copy(in, out, 1+ 18);
break;
case svc_mobjinfo:
Copy(in, out, 1+ 6);
break;
case svc_explodemissile:
Copy(in, out, 1+ 2);
break;
case svc_removemobj:
Copy(in, out, 1+ 2);
break;
case svc_killmobj:
Copy(in, out, 1+ 13);
break;
case svc_movemobj:
Copy(in, out, 1+ 15);
break;
case svc_damagemobj:
Copy(in, out, 1+ 5);
break;
case svc_corpse:
Copy(in, out, 1+ 4);
break;
case svc_spawnplayer:
{
Copy(in, out, 1);
byte player = in.ReadByte();
out.WriteByte(player);
unsigned short netid = in.ReadShort();
if(player == consoleplayer)
playermobj = netid;
out.WriteShort(netid);
spawnang = in.ReadLong();
out.WriteLong(spawnang);
//.........这里部分代码省略.........