Files
TeslaRel410/CODE/RP/MUNGA/ENTITYID.HPP
T
CydandClaude Fable 5 fdd9ac9d97 Initial import: Tesla Release 4.10 (Tesla:BattleTech & Tesla:Red Planet)
Archival snapshot of the Virtual World Entertainment Tesla cockpit
software, 1994-1996: MUNGA engine and L4 pod layer source (Borland
C++ 5.0), BT/RP game code, and game content (models, audio, maps,
gauges, Division renderer data). Includes third-party libraries:
Division dVS/DPL graphics, HMI SOS audio, WATTCP networking.

Files are preserved byte-for-byte (.gitattributes disables all
line-ending conversion). README.md documents the layout, target
hardware, and toolchain.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 13:21:58 -05:00

102 lines
2.7 KiB
C++

//===========================================================================//
// File: entity2.hh //
// Project: MUNGA Brick: Entity Manager //
// Contents: Interface specification for entity class //
//---------------------------------------------------------------------------//
// Date Who Modification //
// -------- --- ---------------------------------------------------------- //
// 11/29/94 JMA Initial coding. //
//---------------------------------------------------------------------------//
// Copyright (C) 1994, Virtual World Entertainment, Inc. //
// All Rights reserved worldwide //
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL //
//===========================================================================//
#if !defined(ENTITYID_HPP)
#define ENTITYID_HPP
#if !defined(NETWORK_HPP)
#include <network.hpp>
#endif
//##########################################################################
//########################## EntityID ################################
//##########################################################################
class EntityID
{
public:
#if defined(USE_SIGNATURE)
friend int
Is_Signature_Bad(const volatile EntityID *);
#endif
typedef Enumeration LocalID;
EntityID();
EntityID(const EntityID&);
EntityID(HostID);
EntityID(HostID, LocalID);
Logical
TestInstance() const;
HostID
GetHostID()
{return hostID;}
Logical
operator!() const
{Check(this); return operator==(Null);}
EntityID&
operator=(const EntityID&);
EntityID
operator-(const EntityID&) const;
EntityID&
operator+=(const EntityID&);
EntityID&
operator-=(const EntityID&);
EntityID&
operator+=(LocalID);
EntityID&
operator-=(LocalID);
Logical
operator<(const EntityID&) const;
Logical
operator<=(const EntityID&) const;
Logical
operator>(const EntityID&) const;
Logical
operator>=(const EntityID&) const;
Logical
operator==(const EntityID&) const;
Logical
operator!=(const EntityID&) const;
operator int() const;
static EntityID
Null;
static LocalID
LocalNull;
friend ostream&
operator<<(
ostream& stream,
const EntityID& v
)
{return stream << v.hostID << ':' << v.localID;}
private:
HostID
hostID;
LocalID
localID;
};
#endif