int Net_SendStartMessagePacket(SOCKET *s) { char packet_size=2; int data_idx=Net_GeneratePacketHeader(gbuf,packet_size,PACKET_MODE_START_MESSAGE); return Net_SendPacket(s,gbuf,packet_size); }
/*! * @brief サーバに送った入力が文法エラーだった時用。 * なにも処理をしないパケットを返す。 * @param [] */ int Net_SendEmptyPacket(SOCKET *s) { char packet_size=2; int data_idx=Net_GeneratePacketHeader(gbuf,packet_size,PACKET_MODE_EMPTY); /*if(SOCKET_ERROR==send(*s, gbuf, packet_size, 0)) { printf("socket_error send\n"); return SOCKET_SEND_ERROR; } return SOCKET_NO_ERROR;*/ return Net_SendPacket(s,gbuf,packet_size); }
static void NetSv_SendFinaleState(fi_state_t* s) { Writer* writer = D_NetWrite(); // First the flags. Writer_WriteByte(writer, s->mode); Writer_WriteUInt32(writer, s->finaleId); // Then the conditions. Writer_WriteByte(writer, 2); // Number of conditions. Writer_WriteByte(writer, s->conditions.secret); Writer_WriteByte(writer, s->conditions.leave_hub); Net_SendPacket(DDSP_ALL_PLAYERS, GPT_FINALE_STATE, Writer_Data(writer), Writer_Size(writer)); }
/*! * @brief 入力情報を送信 * データ部 |0|1|2|3|4|5| * mode_l-----------| | | | | | * mode_m-------------| | | | | * CatanInput-----------|-----| * @param [] */ int Net_SendInputPacket(CatanInput input,SOCKET *s) { //char buf[MAX_BUF_SIZE]; char packet_size=8; int data_idx=Net_GeneratePacketHeader(gbuf,packet_size,PACKET_MODE_INPUT); //buf[0]=5;//size /* Process_PacketData内のM_PacketModeとリンク */ //buf[1]=0; gbuf[data_idx+0]=St_GetModeL(); gbuf[data_idx+1]=St_GetModeM(); gbuf[data_idx+2]=input.player; gbuf[data_idx+3]=input.obj.typeObj; gbuf[data_idx+4]=input.obj.id; gbuf[data_idx+5]=input.but_num; DPRINTF("send packet\n"); return Net_SendPacket(s,gbuf,packet_size); }