本网站可以出售:只需60000元直接拥有。QQ:939804642
您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ ADDWORD函数代码示例

51自学网 2021-06-01 19:33:32
  C++
这篇教程C++ ADDWORD函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中ADDWORD函数的典型用法代码示例。如果您正苦于以下问题:C++ ADDWORD函数的具体用法?C++ ADDWORD怎么用?C++ ADDWORD使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

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

示例1: GETDWORD

// Send server listbool CLoginServer::pakGetServers( CLoginClient* thisclient, CPacket* P ){	if( !thisclient->isLoggedIn ) return false;	MYSQL_ROW row;	DWORD servernum = GETDWORD( (*P), 0 );	MYSQL_RES *result = DB->QStore( "SELECT id,name,connected,maxconnections FROM channels WHERE owner=%i and type=2", servernum );	if(result==NULL) return false;	BEGINPACKET( pak, 0x704 );	ADDDWORD   ( pak, servernum );	ADDBYTE    ( pak, (BYTE)mysql_num_rows( result ) );	while(row = mysql_fetch_row(result))    {    	unsigned int status = (atoi(row[2]) * 100) / atoi(row[3]);		ADDWORD( pak, atoi( row[0]));		ADDBYTE( pak, 0 );		ADDWORD( pak, status );		ADDSTRING( pak, row[1]);		ADDBYTE( pak, 0 );	}	DB->QFree( );	thisclient->SendPacket ( &pak );    return true;}
开发者ID:randybatiquin,项目名称:freerose,代码行数:26,


示例2: GetLevelEXP

// check if player can level upbool CPlayer::CheckPlayerLevelUP( ){	if (CharInfo->Exp >= GetLevelEXP())    {	    CharInfo->Exp -= GetLevelEXP();	    Stats->Level++;	    Stats->HP = GetMaxHP( );	    Stats->MP = GetMaxMP( );	    CharInfo->StatPoints += int((Stats->Level * 0.8) + 10);	    //if(Stats->Level>=10)        CharInfo->SkillPoints += ((Stats->Level + 2) / 2);		BEGINPACKET( pak, 0x79e );		ADDWORD( pak, clientid );		ADDWORD( pak, Stats->Level );		ADDDWORD( pak, CharInfo->Exp );		ADDWORD( pak, CharInfo->StatPoints );		ADDWORD( pak, CharInfo->SkillPoints );		client->SendPacket( &pak );		RESETPACKET( pak, 0x79e );		ADDWORD( pak, clientid );		GServer->SendToVisible( &pak, this );		SetStats( );        //SendLevelUPtoChar(this);        return true;	}	return false;}
开发者ID:L3nn0x,项目名称:osirosenew,代码行数:31,


示例3: GETDWORD

// Send server listbool CLoginServer::pakGetServers( CLoginClient* thisclient, CPacket* P ){	if( !thisclient->isLoggedIn ) return false;	MYSQL_ROW row;	DWORD servernum = GETDWORD( (*P), 0 );	MYSQL_RES *result = DB->QStore( "SELECT id,name,connected,maxconnections FROM channels WHERE owner=%i and type=2", servernum );	if(result==NULL) return false;	BEGINPACKET( pak, 0x704 );	ADDDWORD   ( pak, servernum );	ADDBYTE    ( pak, (BYTE)mysql_num_rows( result ) );	while(row = mysql_fetch_row(result))    {    	UINT connected = atoi(row[2]);    	UINT maxconnections = atoi(row[3]);    	BYTE id = atoi( row[0] );    	string name = row[1];    	//BYTE status = (((100 * connected) / maxconnections==0?1:maxconnections) / 5) & 0xff;    	unsigned int status = (connected * 100) / maxconnections;		ADDWORD( pak, id );		ADDBYTE( pak, 0 );		ADDWORD( pak, status );		ADDSTRING( pak, name.c_str() );		ADDBYTE( pak, 0 );	}	DB->QFree( );	thisclient->SendPacket ( &pak );    return true;}
开发者ID:boermansjo,项目名称:KTRose_Server,代码行数:29,


示例4: hwmp_add_meshpreq

/* * Add a Mesh Path Request IE to a frame. */static uint8_t *hwmp_add_meshpreq(uint8_t *frm, const struct ieee80211_meshpreq_ie *preq){	int i;	*frm++ = IEEE80211_ELEMID_MESHPREQ;	*frm++ = sizeof(struct ieee80211_meshpreq_ie) - 2 +	    (preq->preq_tcount - 1) * sizeof(*preq->preq_targets);	*frm++ = preq->preq_flags;	*frm++ = preq->preq_hopcount;	*frm++ = preq->preq_ttl;	ADDWORD(frm, preq->preq_id);	IEEE80211_ADDR_COPY(frm, preq->preq_origaddr); frm += 6;	ADDWORD(frm, preq->preq_origseq);	ADDWORD(frm, preq->preq_lifetime);	ADDWORD(frm, preq->preq_metric);	*frm++ = preq->preq_tcount;	for (i = 0; i < preq->preq_tcount; i++) {		*frm++ = preq->preq_targets[i].target_flags;		IEEE80211_ADDR_COPY(frm, preq->preq_targets[i].target_addr);		frm += 6;		ADDWORD(frm, preq->preq_targets[i].target_seq);	}	return frm;}
开发者ID:Gwenio,项目名称:DragonFlyBSD,代码行数:28,


示例5: GETWORD

// Messenger Chatbool CCharServer::pakMessengerChat ( CCharClient* thisclient, CPacket* P ){    WORD id = GETWORD((*P),0);    char* message = new char[P->Size-41];    if(message==NULL)    {        Log(MSG_ERROR, "Error allocing memory: pakMessengerChat" );        return false;    }    memcpy( message, &P->Buffer[35], P->Size-41 );    CCharClient* otherclient = (CCharClient*) GetClientByID(id);    if(otherclient!=NULL)    {        BEGINPACKET( pak, 0x7e2 );        ADDWORD    ( pak, thisclient->charid );        ADDWORD    ( pak, 0x0000 );        ADDSTRING  ( pak, thisclient->charname );        UINT namesize = strlen(thisclient->charname);        for (int i=0;i<30-namesize;i++)            ADDBYTE    ( pak, 0x00 );        ADDBYTE    ( pak, 0x00 );        ADDSTRING  ( pak, message );        ADDBYTE    ( pak, 0x00 );        otherclient->SendPacket(&pak);    }    delete []message;    return true;}
开发者ID:TheDgtl,项目名称:osrose,代码行数:29,


示例6: BEGINPACKET

// Send Levelup To charserverbool CWorldServer::SendLevelUPtoChar(CPlayer *thisclient){	BEGINPACKET( pak, 0x79e );	ADDWORD( pak, thisclient->CharInfo->charid );	ADDWORD( pak, thisclient->Stats->Level );	cryptPacket( (char*)&pak, NULL );	send( csock, (char*)&pak, pak.Size, 0 );    return true;}
开发者ID:TheDgtl,项目名称:osrose,代码行数:10,


示例7: Log

void CMap::UpdateArena( CPlayer* thisclient ){    if(thisclient== NULL || thisclient->Groupga->Groupga == NULL) return;    GAGroup* thisgroup = thisclient->Groupga->Groupga;    int fragments = -1;    for( UINT i=0; i< MonsterList.size();i++)    {        CMonster* thismon = MonsterList.at(i);        if(thismon->team == thisgroup->GroupId && thismon->montype == 3708)            fragments++;    }    Log(MSG_INFO,"called updatearena fragments = %i",fragments);    if(fragments == 7)    {        for(UINT i=0;i<NPCList.size();i++)        {            CNPC* thisnpc = NPCList.at(i);            if(thisnpc->thisnpc->id == 3704 && thisnpc->pos.x > 5160 && thisnpc->pos.x < 5170 && thisnpc->pos.y > 4915 && thisnpc->pos.y < 4925 && thisnpc->team == thisgroup->GroupId)            {                    Log(MSG_INFO,"remove wall");                DeleteNPC(thisnpc);                BEGINPACKET( pak, 0x794 );                ADDWORD( pak, thisnpc->clientid );                GServer->SendToVisible( &pak, thisclient );                RESETPACKET( pak, 0x799 );                ADDWORD    ( pak, thisnpc->clientid );                ADDWORD    ( pak, thisnpc->clientid );                ADDDWORD   ( pak, 0 );                ADDDWORD   ( pak, 16 );                GServer->SendToVisible( &pak, thisclient );                break;            }        }        BEGINPACKET( pak, 0x7f8 );        ADDSTRING    ( pak, "HUD_DawnSea_Destroyed_Gate1" );        ADDBYTE    ( pak, 0x00 );        thisgroup->SendToMembers(&pak);    }    if(fragments == 0)    {        for(UINT i=0;i<NPCList.size();i++)        {            CNPC* thisnpc = NPCList.at(i);            if(thisnpc->npctype == 3704 && thisnpc->pos.x == 5167 && thisnpc->pos.x == 4920 && thisnpc->team == thisgroup->GroupId)                DeleteNPC(thisnpc);                break;        }        BEGINPACKET( pak, 0x7f8 );        ADDSTRING    ( pak, "HUD_DawnSea_Destroyed_Gate2" );        ADDBYTE    ( pak, 0x00 );        thisgroup->SendToMembers(&pak);    }}
开发者ID:karlseven,项目名称:ROED,代码行数:56,


示例8: BEGINPACKET

// Change messenger status 07 - online | 08 - offlinebool CCharServer::ChangeMessengerStatus (CCharClient* thisclient, CCharClient* otherclient, int status){        BEGINPACKET( pak, 0x7e1 );        ADDBYTE    ( pak, 0x08 );        ADDWORD    ( pak, thisclient->charid );        ADDWORD    ( pak, 0x0000 );        ADDBYTE    ( pak, status );        otherclient->SendPacket(&pak);        return true;}
开发者ID:TheDgtl,项目名称:osrose,代码行数:11,


示例9: hwmp_add_meshrann

/* * Add a Root Annoucement IE to a frame. */static uint8_t *hwmp_add_meshrann(uint8_t *frm, const struct ieee80211_meshrann_ie *rann){	*frm++ = IEEE80211_ELEMID_MESHRANN;	*frm++ = sizeof(struct ieee80211_meshrann_ie) - 2;	*frm++ = rann->rann_flags;	*frm++ = rann->rann_hopcount;	*frm++ = rann->rann_ttl;	IEEE80211_ADDR_COPY(frm, rann->rann_addr); frm += 6;	ADDWORD(frm, rann->rann_seq);	ADDWORD(frm, rann->rann_metric);	return frm;}
开发者ID:Gwenio,项目名称:DragonFlyBSD,代码行数:16,


示例10: clock

// Delete a monsterbool CMap::DeleteMonster( CMonster* monster, bool clearobject, UINT i ){    if(monster==NULL) return false;    GServer->ClearClientID( monster->clientid );    if(monster->Position->respawn!=0)    {        CMobGroup* thisgroup = GServer->GetMobGroup( monster->Position->respawn, monster->Position->Map );        if(thisgroup!=NULL)        {            /*if(thisgroup->active >= thisgroup->limit)// reset spawn timer if the spawn is full                thisgroup->lastRespawnTime = clock();*/            //LMA: only if the monster isn't tactical...            if(!monster->is_tactical)            {                thisgroup->active--;                thisgroup->basicKills++;                thisgroup->lastKills++;            }        }    }    if(clearobject)    {        BEGINPACKET( pak, 0x799 );        ADDWORD    ( pak, monster->clientid );        ADDWORD    ( pak, monster->clientid );        ADDDWORD   ( pak, monster->Stats->HP );        ADDDWORD   ( pak, 16 );        GServer->SendToVisible( &pak, monster );    }    if(i!=0)    {        MonsterList.erase( MonsterList.begin()+i );        delete monster;        return true;    }    for(UINT i=0;i<MonsterList.size();i++)    {        CMonster* othermon = MonsterList.at(i);        if(othermon==monster)        {            MonsterList.erase( MonsterList.begin()+i );            delete monster;            return true;        }    }    delete monster;    return false;}
开发者ID:TheDgtl,项目名称:osrose,代码行数:52,


示例11: BEGINPACKET

// Move a mob (specified point)void CMonster::MoveTo( fPoint nPos, bool randcircle ){                              if(randcircle) Position->destiny  = GServer->RandInCircle( nPos, 5 );    else Position->destiny  = nPos;//    Position->lastMoveTime = clock();      BEGINPACKET( pak, 0x797 );	ADDWORD    ( pak, clientid );	ADDWORD    ( pak, 0x0000 ); // ???	ADDWORD    ( pak, Stats->Move_Speed );		ADDFLOAT   ( pak, Position->destiny.x*100 );	ADDFLOAT   ( pak, Position->destiny.y*100 );	ADDWORD    ( pak, 0xcdcd );	ADDBYTE    ( pak, 0x01 );	GServer->SendToVisible(&pak, this );}
开发者ID:osROSE,项目名称:osrose,代码行数:16,


示例12: ClearBattle

// Move a mob (random place)void CMonster::Move( ){                     Position->destiny  = GServer->RandInCircle( Position->source, 10 );//    Position->lastMoveTime = clock();      ClearBattle( Battle );    BEGINPACKET( pak, 0x797 );	ADDWORD    ( pak, clientid );	ADDWORD    ( pak, 0x0000 );//???		ADDWORD    ( pak, Stats->Move_Speed ); //speed	ADDFLOAT   ( pak, Position->destiny.x*100 );	ADDFLOAT   ( pak, Position->destiny.y*100 );	ADDWORD    ( pak, 0xcdcd );	ADDBYTE    ( pak, 0x01 );	GServer->SendToVisible(&pak, this);}
开发者ID:osROSE,项目名称:osrose,代码行数:16,


示例13: hwmp_add_meshprep

/* * Add a Mesh Path Reply IE to a frame. */static uint8_t *hwmp_add_meshprep(uint8_t *frm, const struct ieee80211_meshprep_ie *prep){	*frm++ = IEEE80211_ELEMID_MESHPREP;	*frm++ = sizeof(struct ieee80211_meshprep_ie) - 2;	*frm++ = prep->prep_flags;	*frm++ = prep->prep_hopcount;	*frm++ = prep->prep_ttl;	IEEE80211_ADDR_COPY(frm, prep->prep_targetaddr); frm += 6;	ADDWORD(frm, prep->prep_targetseq);	ADDWORD(frm, prep->prep_lifetime);	ADDWORD(frm, prep->prep_metric);	IEEE80211_ADDR_COPY(frm, prep->prep_origaddr); frm += 6;	ADDWORD(frm, prep->prep_origseq);	return frm;}
开发者ID:Gwenio,项目名称:DragonFlyBSD,代码行数:19,


示例14: BEGINPACKET

//add / remove a Fairyvoid CWorldServer::DoFairyStuff(CPlayer* targetclient, int action){    BEGINPACKET( pak, 0x7dc );	ADDBYTE( pak, action );	ADDWORD( pak, targetclient->clientid);	SendToVisible( &pak, targetclient );}
开发者ID:TheDgtl,项目名称:osrose,代码行数:8,


示例15: BEGINPACKET

// Erase a object from the userbool CPlayer::ClearObject( unsigned int otherclientid ){	BEGINPACKET( pak, 0x794 );	ADDWORD( pak, otherclientid );	client->SendPacket( &pak );	return true;}
开发者ID:L3nn0x,项目名称:osirosenew,代码行数:8,


示例16: GETDWORD

bool CCharServer::pakDownloadCM ( CCharClient* thisclient, CPacket* P ){    unsigned int clanid = GETDWORD((*P), 0 );    MYSQL_RES* result = DB->QStore("SELECT logo FROM list_clan WHERE id=%i",clanid );    if(result==NULL) return true;    if(mysql_num_rows(result)!=1) return true;    MYSQL_ROW row = mysql_fetch_row(result);    unsigned int cmid = atoi(row[0]);    DB->QFree( );              char filename[30];    sprintf( filename, "clanmark/%u.cm", cmid );     FILE* fh = fopen( filename, "rb" );    if(fh==NULL)    {        Log( MSG_WARNING, "Invalid clanmark ID %i", cmid );        return true;    }    CClans* thisclan = GetClanByID(thisclient->clanid);    BEGINPACKET( pak, 0x7e7 );    ADDDWORD   ( pak, clanid );    while(!feof(fh))    {        unsigned char charvalue = '/0';        fread( &charvalue, 1 , 1, fh );        ADDBYTE( pak, charvalue );    }    ADDWORD( pak,0);    thisclient->SendPacket( &pak );    fclose(fh);    return true;}
开发者ID:L3nn0x,项目名称:osirosenew,代码行数:31,


示例17: clock

// Teleport player to this map and this coord.bool CMap::TeleportPlayer( CPlayer* player, fPoint coord, bool TelePassenger ){    GServer->MapList.Index[player->Position->Map]->RemovePlayer( player, false );    player->Position->Map = id;    player->Position->current = coord;    player->Position->destiny = coord;    player->Session->inGame = false;    player->Position->lastMoveTime = clock();    if(player->Stats->HP<1)player->Stats->HP=player->Stats->MaxHP * 10 / 100;    if(!allowpat || !TelePassenger)    {        if(!allowpat)            player->Status->Stance=0x03;        player->Ride->Drive = false;        player->Ride->charid= 0;        player->Ride->Ride = false;    }    AddPlayer( player );	BEGINPACKET( pak, 0x07a8 );	ADDWORD    ( pak, player->clientid );	ADDWORD    ( pak, player->Position->Map );	ADDFLOAT   ( pak, player->Position->current.x*100 );	ADDFLOAT   ( pak, player->Position->current.y*100 );    ADDWORD    ( pak, (player->Status->Stance==0x04?0x0201:0x0001) );	player->client->SendPacket( &pak );    if( player->Ride->Drive && player->Ride->charid!=0 )    {            CPlayer* otherclient = GServer->GetClientByCID( player->Ride->charid );            if( otherclient!=NULL )            {                if(TelePassenger)                {                    TeleportPlayer( otherclient, coord );                }                else                {                    otherclient->Ride->Drive = false;                    otherclient->Ride->charid= 0;                    otherclient->Ride->Ride = false;                }            }    }    GServer->pakClearUser( player );    GServer->ClearClientID( player->clientid );    player->RestartPlayerVal( );    return true;}
开发者ID:RavenX8,项目名称:osirose,代码行数:48,


示例18: GetLevelEXP

// check if player can level upbool CPlayer::CheckPlayerLevelUP( ){	if (CharInfo->Exp >= GetLevelEXP())    {	    CharInfo->Exp -= GetLevelEXP();	    Stats->Level++;	    Stats->HP = GetMaxHP( );	    Stats->MP = GetMaxMP( );	    CharInfo->StatPoints += int((Stats->Level*0.8)+10);      // Proper skill point distribution for Pre-Evo      switch (Stats->Level) {        case 10:        case 14:          CharInfo->SkillPoints += 2;        break;        case 18:          CharInfo->SkillPoints += 3;        break;        case 22:          CharInfo->SkillPoints += 4;        break;      }      // 5 skill points every 4 levels from 22      if (Stats->Level > 22 && Stats->Level < 99 && ((Stats->Level - 22) % 4) == 0)        CharInfo->SkillPoints += 5;      // 5 skill points every 2 levels from 98      if (Stats->Level > 98 && (Stats->Level % 2) == 0)        CharInfo->SkillPoints += 5;		BEGINPACKET( pak, 0x79e );		ADDWORD( pak, clientid );		ADDWORD( pak, Stats->Level );		ADDDWORD( pak, CharInfo->Exp );		ADDWORD( pak, CharInfo->StatPoints );		ADDWORD( pak, CharInfo->SkillPoints );		client->SendPacket( &pak );		RESETPACKET( pak, 0x79e );		ADDWORD( pak, clientid );		GServer->SendToVisible( &pak, this );		SetStats( );        //SendLevelUPtoChar(this);        return true;	}	return false;}
开发者ID:osROSE,项目名称:osprose,代码行数:47,


示例19: BEGINPACKET

// convert a monster to otherCMonster* CMap::ConverToMonster( CMonster* monster, UINT newmontype, bool heal ){    CNPCData* thisnpc = GServer->GetNPCDataByID( newmontype );    if(thisnpc==NULL)// invalid type        return NULL;    monster->montype = newmontype;    monster->thisnpc = thisnpc;    monster->SetStats( );    if(heal)        monster->Stats->HP = monster->Stats->MaxHP;    BEGINPACKET( pak, 0x774 );    ADDWORD    ( pak, monster->clientid );    ADDWORD    ( pak, newmontype );    GServer->SendToVisible( &pak, monster );    monster->OnSpawn( false );    return monster;}
开发者ID:PurpleYouko,项目名称:KTRose_Server,代码行数:18,


示例20: GetClanByID

// Send Clan informationbool CCharServer::SendClanInfo (CCharClient* thisclient){    if( thisclient->clanid > 0 )    {        CClans *thisclan = GetClanByID(thisclient->clanid);        if(thisclan!=NULL)        {            BEGINPACKET( pak, 0x7e0);            ADDBYTE    ( pak, 0x33);//0x33 you have invited to clan            ADDWORD    ( pak, thisclan->id);// clan id            ADDBYTE    ( pak, 0x00);//            ADDBYTE    ( pak, 0x00);            ADDWORD    ( pak, thisclan->back);//Clan Background            ADDWORD    ( pak, thisclan->logo);//Clan logo            ADDBYTE    ( pak, thisclan->grade);//Clan grade            ADDBYTE    ( pak, thisclient->clan_rank);// Clan rank (0 = red rokie / 6 = master)            ADDDWORD    ( pak, thisclan->cp);//Clan Points            ADDDWORD   ( pak, 0x00000064);            ADDDWORD   ( pak, 0x00000000); //Clan found            ADDDWORD   ( pak, 0x00000000);            ADDBYTE    ( pak, 0x01);            for(int i=34;i<156;i++)                ADDBYTE ( pak, 0x00);            ADDWORD    ( pak, 0x0000);            ADDBYTE    ( pak, 0x00);            ADDSTRING  ( pak, thisclan->name);//Clan Name                        ADDBYTE    ( pak, 0x00);                        ADDSTRING  ( pak, thisclan->slogan);//Clan slogan            ADDBYTE    ( pak, 0x00);            ADDSTRING  ( pak, thisclan->news);//Clan news            ADDBYTE    ( pak, 0x00);            thisclient->SendPacket(&pak);	                        //Put the player online in clan            for(UINT i=0;i<thisclan->ClanMembers.size();i++)        	{		                CClanMembers*	ClanMember = thisclan->ClanMembers.at( i );;                CCharClient* otherclient = GetClientByID( ClanMember->id );                if(otherclient!=NULL)                    ChangeClanStatus (thisclient, otherclient, thisclient->channel);//send channel here        	}                              }    }         return true;}
开发者ID:L3nn0x,项目名称:osirosenew,代码行数:46,


示例21: BEGINPACKET

// Change player status in clan ((channel) = online/ 0xff = offline)bool CCharServer::ChangeClanStatus (CCharClient* thisclient, CCharClient* otherclient, int channel){     if (thisclient->charid !=otherclient->charid)     {        BEGINPACKET( pak, 0x7e0 );        ADDBYTE    ( pak, 0x73 );//Change player status        ADDBYTE    ( pak, 0x00 );        ADDBYTE    ( pak, channel );//CANAL        ADDWORD    ( pak, 0x0000 );        ADDWORD    ( pak, 0x0000 );        ADDWORD    ( pak, thisclient->level );        ADDWORD    ( pak, thisclient->job );        ADDSTRING  ( pak, thisclient->charname );        ADDBYTE    ( pak, 0x00 );        otherclient->SendPacket(&pak);     }     return true;}
开发者ID:L3nn0x,项目名称:osirosenew,代码行数:19,


示例22: BEGINPACKET

// Send Server encryptionbool CLoginServer::pakEncryptionRequest( CLoginClient* thisclient, CPacket* P ){	BEGINPACKET( pak, 0x7ff );	ADDWORD    ( pak, 0xaf02 );	ADDWORD    ( pak, 0xbd46 );	ADDWORD    ( pak, 0x0009 );	ADDWORD    ( pak, 0x0012 );	ADDBYTE    ( pak, 0x0000 );	ADDDWORD   ( pak, 0xcdcdcdcd );	ADDDWORD   ( pak, 0xcdcdcdcd );	ADDDWORD   ( pak, 0xcdcdcdcd );	ADDDWORD   ( pak, 0xcdcdcdcd );	ADDWORD    ( pak, 0xcdcd );	ADDBYTE    ( pak, 0xd3 );	thisclient->SendPacket( &pak );	Log(MSG_DEBUG, "Sent a 0x7ff packet to client");    return true;}
开发者ID:boermansjo,项目名称:KTRose_Server,代码行数:19,


示例23: BEGINPACKET

// Move a mob (specified point)void CMonster::MoveTo( fPoint nPos, bool randcircle ){    if(randcircle) Position->destiny  = GServer->RandInCircle( nPos, 5 );    else Position->destiny  = nPos;//    Position->lastMoveTime = clock();    BEGINPACKET( pak, 0x797 );	ADDWORD    ( pak, clientid );	ADDWORD    ( pak, 0x0000 ); // ???	ADDWORD    ( pak, Stats->Move_Speed );	ADDFLOAT   ( pak, Position->destiny.x*100 );	ADDFLOAT   ( pak, Position->destiny.y*100 );	ADDWORD    ( pak, 0xcdcd );	//ADDBYTE    ( pak, 0x01 );	ADDBYTE    ( pak, thisnpc->stance); //AIP	GServer->SendToVisible(&pak, this );    if(Position->Map==8)        Log(MSG_INFO,"MoveTo (%.2f;%.2f) to (%.2f;%.2f)",Position->current.x,Position->current.y,Position->destiny.x,Position->destiny.y);}
开发者ID:TheDgtl,项目名称:osrose,代码行数:20,


示例24: ClearBattle

// Move a mob (random place)void CMonster::Move( ){    Position->destiny  = GServer->RandInCircle( Position->source, 10 );//    Position->lastMoveTime = clock();    ClearBattle( Battle );    BEGINPACKET( pak, 0x797 );	ADDWORD    ( pak, clientid );	ADDWORD    ( pak, 0x0000 );//???	ADDWORD    ( pak, Stats->Move_Speed ); //speed	ADDFLOAT   ( pak, Position->destiny.x*100 );	ADDFLOAT   ( pak, Position->destiny.y*100 );	ADDWORD    ( pak, 0xcdcd );	//ADDBYTE    ( pak, 0x01 );	ADDBYTE	   ( pak, thisnpc->stance );    //AIP	GServer->SendToVisible(&pak, this);    if(Position->Map==8)        Log(MSG_INFO,"Move (%.2f;%.2f) to (%.2f;%.2f)",Position->current.x,Position->current.y,Position->destiny.x,Position->destiny.y);}
开发者ID:TheDgtl,项目名称:osrose,代码行数:20,


示例25: AddMonster

// convert a npc to other [not working]CMonster* CMap::ConverToMonster( CNPC* npc, UINT newmontype ){    CMonster* monster = AddMonster( newmontype, npc->pos, 0, NULL, NULL, 0, true );    if(monster==NULL) // invalid montype        return NULL;    GServer->ClearClientID( monster->clientid );    monster->clientid = npc->clientid;    for(UINT i=0;i<NPCList.size();i++)    {        if(NPCList.at(i)==npc)            NPCList.erase( NPCList.begin()+i );    }    delete npc;    BEGINPACKET( pak, 0x774 );    ADDWORD    ( pak, npc->clientid );    ADDWORD    ( pak, newmontype );    GServer->SendToVisible( &pak, monster );    return monster;}
开发者ID:karlseven,项目名称:ROED,代码行数:20,


示例26: BEGINPACKET

// Party Chatbool CWorldServer::pakPartyChat( CPlayer* thisclient, CPacket* P ){    CParty* party = thisclient->Party->party;    if(party==NULL)        return true;	BEGINPACKET( pak, 0x786 );    ADDWORD    ( pak, thisclient->clientid );	ADDSTRING  ( pak, P->Buffer );	ADDBYTE    ( pak, 0 );    party->SendToMembers( &pak );    return true;}
开发者ID:TheDgtl,项目名称:osrose-droprev,代码行数:13,


示例27: BEGINPACKET

//LMA: disconnect a client from chatroom.bool CCharServer::DisconnectClientFromChat( CCharClient* thisclientwc ){    //LMA: resetting chatroom ID.    if(thisclientwc->chatroom_id!=0)    {        if(chatroom_list.find(thisclientwc->chatroom_id)!=chatroom_list.end())        {            for (int k=0; k<chatroom_list[thisclientwc->chatroom_id]->People_list.size(); k++)            {                if(chatroom_list[thisclientwc->chatroom_id]->People_list.at(k)->charid==thisclientwc->charid)                {                    //Deleting the guy from the chatroom list.                    chatroom_list[thisclientwc->chatroom_id]->People_list.erase(chatroom_list[thisclientwc->chatroom_id]->People_list.begin()+k);                    break;                }            }            if (chatroom_list[thisclientwc->chatroom_id]->People_list.size()==0)            {                chatroom_list.erase(thisclientwc->chatroom_id);            }            else            {                //TODO: send a packet to other people to tell them this guy has deconnected from chatroom.                for (int k=0; k<chatroom_list[thisclientwc->chatroom_id]->People_list.size(); k++)                {                    CCharClient* otherclient=GetClientByID(chatroom_list[thisclientwc->chatroom_id]->People_list.at(k)->charid);                    if(otherclient==NULL)                    {                        continue;                    }                    BEGINPACKET( pak, 0x7e3 );                    ADDBYTE    ( pak, 0x16 );                    ADDWORD    ( pak, thisclientwc->userid );                    ADDDWORD   ( pak, thisclientwc->charid );                    ADDSTRING  ( pak, thisclientwc->charname );                    ADDBYTE    ( pak, 0x00 );                    otherclient->SendPacket( &pak );                }            }        }        thisclientwc->chatroom_id=0;    }    return true;}
开发者ID:karlseven,项目名称:ROED,代码行数:53,


示例28: BEGINPACKET

void CPlayer::UpdateInventory( unsigned int slot1, unsigned int slot2 ){    if(slot1 == 0xffff && slot2 == 0xffff) return;              //neither slot is valid    BEGINPACKET( pak, 0x718 );    if(slot1 != 0xffff && slot2 != 0xffff) {ADDBYTE( pak, 2 );} //both slots are valid    else {ADDBYTE( pak, 1 );}                                   //one of the slots is valid    if(slot1 != 0xffff)    {        ADDBYTE    ( pak, slot1);        ADDWORD    ( pak, GServer->BuildItemHead( items[slot1] ) );        ADDDWORD   ( pak, GServer->BuildItemData( items[slot1] ) );    }    if(slot2 != 0xffff)    {        ADDBYTE    ( pak, slot2 );        ADDWORD    ( pak, GServer->BuildItemHead( items[slot2] ) );        ADDDWORD   ( pak, GServer->BuildItemData( items[slot2] ) );    }    client->SendPacket( &pak );    }
开发者ID:osROSE,项目名称:osprose,代码行数:22,



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


C++ ADD_DATA函数代码示例
C++ ADDTOCALLSTACK函数代码示例
51自学网自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1