Example #1
0
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);

}
Example #2
0
/*!
 * @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);
}
Example #3
0
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));
}
Example #4
0
/*!
 * @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);
}