本文整理汇总了C++中RFIFOL函数的典型用法代码示例。如果您正苦于以下问题:C++ RFIFOL函数的具体用法?C++ RFIFOL怎么用?C++ RFIFOL使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了RFIFOL函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: mapif_parse_GMmessage
// GM message sending
int mapif_parse_GMmessage(int fd)
{
mapif_GMmessage(RFIFOP(fd, 8), RFIFOW(fd, 2), RFIFOL(fd, 4), fd);
return 0;
}
开发者ID:AxlSckay,项目名称:Ragnarok-OldTimes,代码行数:6,代码来源:inter.c
示例2: intif_parse_GuildBroken
// ギルド解散通知
static
int intif_parse_GuildBroken (int fd)
{
guild_broken (RFIFOL (fd, 2), RFIFOB (fd, 6));
return 0;
}
开发者ID:Cloudxtreme,项目名称:tmwa,代码行数:7,代码来源:intif.cpp
示例3: inter_party_parse_frommap
// Communication from the map server
//-Analysis that only one packet
// Data packet length is set to inter.c that you
// Do NOT go and check the packet length, RFIFOSKIP is done by the caller
// Return :
// 0 : error
// 1 : ok
int inter_party_parse_frommap(int fd)
{
RFIFOHEAD(fd);
switch(RFIFOW(fd,0)) {
case 0x3020: mapif->parse_CreateParty(fd, (char*)RFIFOP(fd,4), RFIFOB(fd,28), RFIFOB(fd,29), (struct party_member*)RFIFOP(fd,30)); break;
case 0x3021: mapif->parse_PartyInfo(fd, RFIFOL(fd,2), RFIFOL(fd,6)); break;
case 0x3022: mapif->parse_PartyAddMember(fd, RFIFOL(fd,4), (struct party_member*)RFIFOP(fd,8)); break;
case 0x3023: mapif->parse_PartyChangeOption(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOW(fd,10), RFIFOW(fd,12)); break;
case 0x3024: mapif->parse_PartyLeave(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10)); break;
case 0x3025: mapif->parse_PartyChangeMap(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOW(fd,14), RFIFOB(fd,16), RFIFOW(fd,17)); break;
case 0x3026: mapif->parse_BreakParty(fd, RFIFOL(fd,2)); break;
case 0x3027: mapif->parse_PartyMessage(fd, RFIFOL(fd,4), RFIFOL(fd,8), (char*)RFIFOP(fd,12), RFIFOW(fd,2)-12); break;
case 0x3029: mapif->parse_PartyLeaderChange(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10)); break;
default:
return 0;
}
return 1;
}
开发者ID:Mateuus,项目名称:Cronus,代码行数:25,代码来源:int_party.c
示例4: intif_parse_GuildCastleDataSave
// ギルド城データ変更通知
static
int intif_parse_GuildCastleDataSave (int fd)
{
return guild_castledatasaveack (RFIFOW (fd, 2), RFIFOB (fd, 4),
RFIFOL (fd, 5));
}
开发者ID:Cloudxtreme,项目名称:tmwa,代码行数:7,代码来源:intif.cpp
示例5: intif_parse_PartyBroken
// パーティ解散通知
static
int intif_parse_PartyBroken (int fd)
{
party_broken (RFIFOL (fd, 2));
return 0;
}
开发者ID:Cloudxtreme,项目名称:tmwa,代码行数:7,代码来源:intif.cpp
示例6: mapif_parse_DeletePet
int mapif_parse_DeletePet (int fd)
{
RFIFOHEAD (fd);
mapif_delete_pet (fd, RFIFOL (fd, 2));
return 0;
}
开发者ID:Celso1415,项目名称:Fusion,代码行数:6,代码来源:int_pet.c
示例7: intif_parse_GuildNotice
// ギルド告知変更通知
static
int intif_parse_GuildNotice (int fd)
{
guild_notice_changed (RFIFOL (fd, 2), (const char *)RFIFOP (fd, 6), (const char *)RFIFOP (fd, 66));
return 0;
}
开发者ID:Cloudxtreme,项目名称:tmwa,代码行数:7,代码来源:intif.cpp
示例8: mapif_parse_Mail_return
static void mapif_parse_Mail_return(int fd)
{
mapif_Mail_return(fd, RFIFOL(fd,2), RFIFOL(fd,6));
}
开发者ID:Alexalvesgyn,项目名称:Cronus,代码行数:4,代码来源:int_mail.c
示例9: intif_parse_PartyOptionChanged
// パーティ設定変更通知
static
void intif_parse_PartyOptionChanged(int fd)
{
party_optionchanged(RFIFOL(fd, 2), RFIFOL(fd, 6), RFIFOW(fd, 10),
RFIFOW(fd, 12), RFIFOB(fd, 14));
}
开发者ID:cinderweb,项目名称:tmwa,代码行数:7,代码来源:intif.cpp
示例10: mapif_parse_Mail_getattach
static void mapif_parse_Mail_getattach(int fd)
{
mapif_Mail_getattach(fd, RFIFOL(fd,2), RFIFOL(fd,6));
}
开发者ID:Alexalvesgyn,项目名称:Cronus,代码行数:4,代码来源:int_mail.c
示例11: mapif_parse_Mail_delete
static void mapif_parse_Mail_delete(int fd)
{
mapif_Mail_delete(fd, RFIFOL(fd,2), RFIFOL(fd,6));
}
开发者ID:Alexalvesgyn,项目名称:Cronus,代码行数:4,代码来源:int_mail.c
示例12: mapif_parse_Mail_read
/*==========================================
* Mark mail as 'Read'
*------------------------------------------*/
static void mapif_parse_Mail_read(int fd)
{
int mail_id = RFIFOL(fd,2);
if( SQL_ERROR == SQL->Query(sql_handle, "UPDATE `%s` SET `status` = '%d' WHERE `id` = '%d'", mail_db, MAIL_READ, mail_id) )
Sql_ShowDebug(sql_handle);
}
开发者ID:Alexalvesgyn,项目名称:Cronus,代码行数:9,代码来源:int_mail.c
示例13: mapif_parse_Mail_requestinbox
static void mapif_parse_Mail_requestinbox(int fd)
{
mapif_Mail_sendinbox(fd, RFIFOL(fd,2), RFIFOB(fd,6));
}
开发者ID:Alexalvesgyn,项目名称:Cronus,代码行数:4,代码来源:int_mail.c
示例14: mapif_parse_AccRegRequest
// Request the value of account_reg
int mapif_parse_AccRegRequest(int fd)
{
// printf("mapif: accreg request\n");
return mapif_account_reg_reply(fd,RFIFOL(fd,2));
}
开发者ID:AxlSckay,项目名称:Ragnarok-OldTimes,代码行数:6,代码来源:inter.c
示例15: mapif_parse_LoadPet
int mapif_parse_LoadPet (int fd)
{
RFIFOHEAD (fd);
mapif_load_pet (fd, RFIFOL (fd, 2), RFIFOL (fd, 6), RFIFOL (fd, 10));
return 0;
}
开发者ID:Celso1415,项目名称:Fusion,代码行数:6,代码来源:int_pet.c
示例16: intif_parse_PartyBroken
// パーティ解散通知
static
void intif_parse_PartyBroken(int fd)
{
party_broken(RFIFOL(fd, 2));
}
开发者ID:cinderweb,项目名称:tmwa,代码行数:6,代码来源:intif.cpp
示例17: mapif_parse_SavePet
int mapif_parse_SavePet (int fd)
{
RFIFOHEAD (fd);
mapif_save_pet (fd, RFIFOL (fd, 4), (struct s_pet *) RFIFOP (fd, 8));
return 0;
}
开发者ID:Celso1415,项目名称:Fusion,代码行数:6,代码来源:int_pet.c
示例18: chrif_parse
/*==========================================
*
*------------------------------------------*/
int chrif_parse(int fd)
{
int packet_len, cmd;
// only process data from the char-server
if (fd != char_fd)
{
ShowDebug("chrif_parse: Disconnecting invalid session #%d (is not the char-server)\n", fd);
do_close(fd);
return 0;
}
if (session[fd]->flag.eof)
{
if (chrif_connected == 1)
chrif_disconnect(fd);
do_close(fd);
return 0;
}
while (RFIFOREST(fd) >= 2)
{
cmd = RFIFOW(fd,0);
if (cmd < 0x2af8 || cmd >= 0x2af8 + ARRAYLENGTH(packet_len_table) || packet_len_table[cmd-0x2af8] == 0)
{
int r = intif_parse(fd); // intifに渡す
if (r == 1) continue; // intifで処理した
if (r == 2) return 0; // intifで処理したが、データが足りない
ShowWarning("chrif_parse: session #%d, intif_parse failed (unrecognized command 0x%.4x).\n", fd, cmd);
set_eof(fd);
return 0;
}
packet_len = packet_len_table[cmd-0x2af8];
if (packet_len == -1)
{ // dynamic-length packet, second WORD holds the length
if (RFIFOREST(fd) < 4)
return 0;
packet_len = RFIFOW(fd,2);
}
if ((int)RFIFOREST(fd) < packet_len)
return 0;
//ShowDebug("Received packet 0x%4x (%d bytes) from char-server (connection %d)\n", RFIFOW(fd,0), packet_len, fd);
switch(cmd)
{
case 0x2af9: chrif_connectack(fd); break;
case 0x2afb: chrif_sendmapack(fd); break;
case 0x2afd: chrif_authok(fd); break;
case 0x2b00: map_setusers(RFIFOL(fd,2)); chrif_keepalive(fd); break;
case 0x2b03: clif_charselectok(RFIFOL(fd,2)); break;
case 0x2b04: chrif_recvmap(fd); break;
case 0x2b06: chrif_changemapserverack(RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOL(fd,14), RFIFOW(fd,18), RFIFOW(fd,20), RFIFOW(fd,22), RFIFOL(fd,24), RFIFOW(fd,28)); break;
case 0x2b07: clif_updatemaxid(RFIFOL(fd,2), RFIFOL(fd,6)); break;
case 0x2b09: map_addnickdb(RFIFOL(fd,2), (char*)RFIFOP(fd,6)); break;
case 0x2b0b: chrif_changedgm(fd); break;
case 0x2b0d: chrif_changedsex(fd); break;
case 0x2b0f: chrif_char_ask_name_answer(RFIFOL(fd,2), (char*)RFIFOP(fd,6), RFIFOW(fd,30), RFIFOW(fd,32)); break;
case 0x2b12: chrif_divorce(RFIFOL(fd,2), RFIFOL(fd,6)); break;
case 0x2b13: chrif_accountdeletion(fd); break;
case 0x2b14: chrif_accountban(fd); break;
case 0x2b15: chrif_recvgmaccounts(fd); break;
case 0x2b1b: chrif_recvfamelist(fd); break;
case 0x2b1d: chrif_load_scdata(fd); break;
case 0x2b1e: chrif_update_ip(fd); break;
case 0x2b1f: chrif_disconnectplayer(fd); break;
case 0x2b20: chrif_removemap(fd); break;
case 0x2b21: chrif_save_ack(fd); break;
case 0x2b22: chrif_updatefamelist_ack(fd); break;
case 0x2b24: chrif_keepalive_ack(fd); break;
default:
ShowError("chrif_parse : unknown packet (session #%d): 0x%x. Disconnecting.\n", fd, cmd);
set_eof(fd);
return 0;
}
if (fd == char_fd) //There's the slight chance we lost the connection during parse, in which case this would segfault if not checked [Skotlex]
RFIFOSKIP(fd, packet_len);
}
return 0;
}
开发者ID:AxlSckay,项目名称:Ragnarok-OldTimes,代码行数:89,代码来源:chrif.c
示例19: intif_parse_GuildSkillUp
// ギルドスキル割り振り通知
static
int intif_parse_GuildSkillUp (int fd)
{
guild_skillupack (RFIFOL (fd, 2), RFIFOL (fd, 6), RFIFOL (fd, 10));
return 0;
}
开发者ID:Cloudxtreme,项目名称:tmwa,代码行数:7,代码来源:intif.cpp
示例20: chrif_save_ack
// received after a character has been "final saved" on the char-server
static void chrif_save_ack(int fd)
{
chrif_auth_delete(RFIFOL(fd,2), RFIFOL(fd,6), ST_LOGOUT);
}
开发者ID:AxlSckay,项目名称:Ragnarok-OldTimes,代码行数:5,代码来源:chrif.c
注:本文中的RFIFOL函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论