Game client codebase including: - CharacterActionControl: Character and creature management - GlobalScript: Network, items, skills, quests, utilities - RYLClient: Main client application with GUI and event handlers - Engine: 3D rendering engine (RYLGL) - MemoryManager: Custom memory allocation - Library: Third-party dependencies (DirectX, boost, etc.) - Tools: Development utilities 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
87 lines
2.4 KiB
C++
87 lines
2.4 KiB
C++
//----------------------------------------------------------------------------
|
|
// File: netabstract.h
|
|
//
|
|
// Desc: see main.cpp
|
|
//
|
|
// Copyright (c) 1999-2001 Microsoft Corp. All rights reserved.
|
|
//-----------------------------------------------------------------------------
|
|
#ifndef _NETABSTRACT_H
|
|
#define _NETABSTRACT_H
|
|
|
|
|
|
#define SERVER_ID 1
|
|
enum { DISCONNNECT_REASON_UNKNOWN = 0, DISCONNNECT_REASON_CLIENT_OUT_OF_DATE };
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Name:
|
|
// Desc:
|
|
//-----------------------------------------------------------------------------
|
|
interface INetServer
|
|
{
|
|
public:
|
|
virtual ~INetServer() {} ;
|
|
|
|
virtual HRESULT OnPacket( DWORD dwFrom, void* dwData, DWORD dwSize ) = 0;
|
|
virtual void OnAddConnection( DWORD dwID ) = 0;
|
|
virtual void OnRemoveConnection( DWORD dwID ) = 0;
|
|
virtual void OnSessionLost( DWORD dwReason ) = 0;
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Name:
|
|
// Desc:
|
|
//-----------------------------------------------------------------------------
|
|
interface INetClient
|
|
{
|
|
public:
|
|
virtual ~INetClient() {} ;
|
|
|
|
virtual HRESULT OnPacket( DWORD dwFrom, void* dwData, DWORD dwSize ) = 0;
|
|
virtual void OnSessionLost( DWORD dwReason ) = 0;
|
|
};
|
|
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Name:
|
|
// Desc:
|
|
//-----------------------------------------------------------------------------
|
|
interface IOutboundServer
|
|
{
|
|
public:
|
|
virtual HRESULT SendPacket( DWORD dwTo, void* dwData, DWORD dwSize,
|
|
BOOL dwGuaranteed, DWORD dwTimeout ) = 0;
|
|
virtual HRESULT GetConnectionInfo( DWORD dwID, TCHAR* strConnectionInfo ) = 0;
|
|
virtual HRESULT RejectClient( DWORD dwID, HRESULT hrReason ) = 0;
|
|
};
|
|
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Name:
|
|
// Desc:
|
|
//-----------------------------------------------------------------------------
|
|
interface IOutboundClient
|
|
{
|
|
public:
|
|
virtual HRESULT SendPacket( void* dwData, DWORD dwSize,
|
|
BOOL dwGuaranteed, DWORD dwTimeout ) = 0;
|
|
virtual DWORD GetThroughputBPS() = 0;
|
|
virtual DWORD GetRoundTripLatencyMS() = 0;
|
|
virtual BOOL IsSessionLost() = 0;
|
|
virtual DWORD GetSessionLostReason() = 0;
|
|
virtual HRESULT GetConnectionInfo( TCHAR* strConnectionInfo ) = 0;
|
|
};
|
|
|
|
|
|
|
|
#endif
|