Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Test Game shared code (client and server)
- Copyright © 2016, The Network Protocol Company, Inc.
- Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer
- in the documentation and/or other materials provided with the distribution.
- 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
- USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
- #ifndef SHARED_H
- #define SHARED_H
- #include "yojimbo.h"
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdint.h>
- #include <inttypes.h>
- #include <time.h>
- #include <string>
- using namespace yojimbo;
- const uint64_t ProtocolId = 0x11223344556677ULL;
- const uint8_t MAX_TEAM_NUMBER = 16;
- struct JoinMessage : public Message
- {
- enum { MsgType = 0x00 };
- uint8_t teamId;
- template <typename Stream> bool Serialize(Stream & stream)
- {
- serialize_int(stream, teamId, 0, 15);
- return true;
- }
- YOJIMBO_VIRTUAL_SERIALIZE_FUNCTIONS();
- };
- enum OgameMessageType
- {
- JOIN_MESSAGE,
- NUM_TEST_MESSAGE_TYPES
- };
- YOJIMBO_MESSAGE_FACTORY_START(OgameMessageFactory, NUM_TEST_MESSAGE_TYPES );
- YOJIMBO_DECLARE_MESSAGE_TYPE( JOIN_MESSAGE, JoinMessage );
- YOJIMBO_MESSAGE_FACTORY_FINISH();
- class OgameAdapter : public Adapter
- {
- public:
- MessageFactory * CreateMessageFactory( Allocator & allocator )
- {
- return YOJIMBO_NEW( allocator, OgameMessageFactory, allocator );
- }
- };
- static OgameAdapter adapter;
- #endif // #ifndef SHARED_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement