//===========================================================================// // File: projtile.cpp // // Project: BattleTech Brick: Mech weapons // // Contents: Projectile -- the flying-round entity base (Missile derives) // //---------------------------------------------------------------------------// // Copyright (C) 1995, Virtual World Entertainment, Inc. // // All Rights reserved worldwide // // This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL // //===========================================================================// // // PARTIAL (binary ctor @004be1bc, vtable @00512a5c, 0x340 bytes): the base // chains the Mover make path -- the MakeMessage's resourceID is the // projectile GameModel, so the Mover ctor streams the authored mass / drag / // inertia. The tracer/ballistic body (the unguided MoveAndCollide, smoke // trail, PROJTILE.TCP surface) joins the autocannon wave; the Missile // subclass carries the only flying rounds in the 4.10 pod content. // #include #pragma hdrstop #if !defined(PROJTILE_HPP) # include #endif Derivation Projectile::ClassDerivations( Mover::ClassDerivations, "Projectile" ); Projectile::SharedData Projectile::DefaultData( Projectile::ClassDerivations, Mover::MessageHandlers, Mover::AttributeIndex, 1, (Entity::MakeHandler)Projectile::Make ); Projectile* Projectile::Make(MakeMessage *creation_message) { return new Projectile(creation_message); } Projectile::Projectile( MakeMessage *creation_message, SharedData &shared_data ): Mover(creation_message, shared_data) { Check(creation_message); Check_Fpu(); } Projectile::~Projectile() { } Logical Projectile::TestInstance() const { return IsDerivedFrom(ClassDerivations); }