Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
42 lines
1.3 KiB
C++
42 lines
1.3 KiB
C++
|
|
#pragma once
|
|
#ifndef AI_SQUADORDERS_HPP
|
|
#define AI_SQUADORDERS_HPP
|
|
|
|
#include <Stuff\Point3D.hpp>
|
|
#include <Stuff\Auto_Ptr.hpp>
|
|
#include "AI_LancemateCommands.hpp"
|
|
|
|
|
|
|
|
namespace MechWarrior4
|
|
{
|
|
class MWObject;
|
|
};
|
|
|
|
|
|
namespace MW4AI
|
|
{
|
|
class SquadOrders
|
|
{
|
|
public:
|
|
virtual ~SquadOrders();
|
|
virtual void Update() = 0;
|
|
virtual bool PointIsValid(const Stuff::Point3D& point) const = 0;
|
|
virtual void IssueCommand(Stuff::Auto_Ptr<LancemateCommands::LancemateCommand>& command) = 0;
|
|
virtual void NotifyShotFired() = 0;
|
|
virtual void NotifyFriendlyFire(Adept::Entity& who) {};
|
|
virtual bool CanExecuteCommands() const { return (true); }
|
|
virtual MWObject* GetAutoTarget() const { return (0); }
|
|
virtual bool GetExtendedSensorData(std::vector<MWObject*>& sensor_data_list) const { return (false); }
|
|
virtual Stuff::Scalar GetLeastSquaredSensorDistance(const Stuff::Point3D& point) const { return (0); }
|
|
virtual Stuff::Auto_Ptr<LancemateCommands::LancemateCommand> CreateCommand(LancemateCommands::ID command_id,Adept::Entity* pTarget2 = NULL) { return (0); }
|
|
virtual bool ShouldRunScript() const { return (true); }
|
|
virtual bool GetLeaderAlignment(int& alignment) { return (false); }
|
|
virtual void NotifyNoPath() { };
|
|
};
|
|
};
|
|
|
|
|
|
|
|
#endif // AI_SQUADORDERS_HPP
|