Vehicle Seat interface
struct IVehicleSeat { enum EVehicleTransition { eVT_None = 0, eVT_Entering, eVT_Exiting, eVT_ExitingWarped, eVT_Dying, eVT_SeatIsBorrowed, eVT_RemoteUsage }; };
IVehicleSystem.h
enum EVehicleTransition { eVT_None = 0, eVT_Entering, eVT_Exiting, eVT_ExitingWarped, eVT_Dying, eVT_SeatIsBorrowed, eVT_RemoteUsage };
IVehicleSystem.h
virtual ~IVehicleSeat();
virtual void ChangedNetworkState(NetworkAspectType aspects);
virtual bool Enter(EntityId actorId, bool isTransitionEnabled = true) = 0;
virtual bool Exit(bool isTransitionEnabled, bool force = false, Vec3 exitPos = ZERO) = 0;
virtual void ForceFinishExiting() = 0;
virtual const char* GetActionMap() const = 0;
Returns the name of the action map specified for this vehicle seat in the xml file (can be null if no specific seat actionmap)
virtual IVehiclePart* GetAimPart() const = 0;
virtual IVehicleHelper* GetAIVisionHelper() const = 0;
virtual int GetCurrentTransition() const = 0;
virtual TVehicleViewId GetCurrentView() const = 0;
virtual IVehicleSeatAction* GetISeatActionWeapons() = 0;
virtual const IVehicleSeatAction* GetISeatActionWeapons() const = 0;
virtual EVehicleSeatLockStatus GetLockedStatus() const = 0;
virtual TVehicleViewId GetNextView(TVehicleViewId viewId) const = 0;
virtual EntityId GetPassenger(bool remoteUser = false) const = 0;
Returns the id of the seat
virtual TVehicleSeatId GetSeatId() const = 0;
A seat id
Returns the seat name
virtual const char* GetSeatName() const = 0;
a string with the name
virtual IVehicleHelper* GetSitHelper() const = 0;
virtual const SSeatSoundParams& GetSoundParams() const = 0;
virtual IVehicle* GetVehicle() const = 0;
virtual IVehicleView* GetView(TVehicleViewId viewId) const = 0;
virtual bool Init(IVehicle* pVehicle, TVehicleSeatId seatId, const CVehicleParams& paramsTable) = 0;
virtual bool IsAutoAimEnabled();
virtual bool IsDriver() const = 0;
virtual bool IsGunner() const = 0;
virtual bool IsLocked(IActor* pActor) const = 0;
virtual bool IsPassengerExposed() const = 0;
virtual bool IsPassengerHidden() const = 0;
virtual bool IsRemoteControlled() const = 0;
virtual void OffsetPosition(const Vec3 & delta) = 0;
virtual void OnCameraShake(float& angleAmount, float& shiftAmount, const Vec3& pos, const char* source) const = 0;
virtual void OnPassengerDeath() = 0;
virtual void PostInit(IVehicle* pVehicle) = 0;
virtual void PrePhysUpdate(const float dt) = 0;
virtual bool ProcessPassengerMovementRequest(const CMovementRequest& movementRequest) = 0;
virtual void Release() = 0;
virtual void Reset() = 0;
virtual void SetLocked(EVehicleSeatLockStatus status) = 0;
virtual bool SetView(TVehicleViewId viewId) = 0;
virtual void UnlinkPassenger(bool ragdoll) = 0;