/* * Kangaroo Punch MultiPlayer Game Server Mark II * Copyright (C) 2020-2021 Scott Duensing * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * */ #ifndef PACKETS_H #define PACKETS_H #include #define PACKET_PROTOCOL_VERSION 1 // This enum is treated as BYTES in the code. Do not go over 255 entries. // Also update array in client.c! typedef enum PacketTypeE { // These packets have to be first and in this order! Do not change them! PACKET_TYPE_NONE = 0, // No packet. PACKET_TYPE_DH_REQUEST, PACKET_TYPE_DH_RESPONSE, PACKET_TYPE_VERSION, PACKET_TYPE_VERSION_BAD, PACKET_TYPE_VERSION_OKAY, // Packets received by only the server: PACKET_TYPE_CLIENT_SHUTDOWN, PACKET_TYPE_LOGIN, PACKET_TYPE_PONG, PACKET_TYPE_SIGNUP, // Packets received by only the client: PACKET_TYPE_LOGIN_RESULT, PACKET_TYPE_NUMBER, PACKET_TYPE_PING, PACKET_TYPE_PROCEED, PACKET_TYPE_SERVER_SHUTDOWN, PACKET_TYPE_SIGNUP_RESULT, PACKET_TYPE_STRING, // How many packet types do we recognize? PACKET_TYPE_COUNT } PacketTypeT; #endif // PACKETS_H