![]() |
Mortar Pro Plugin
Version 2
Modular Turret Plugin
|
#include <MortarProSemiAutoAimingComponent.h>
Public Member Functions | |
void | Fire () override |
float | GetReloadTimeInSeconds () const |
bool | IsReloading () |
void | ResetAimingRunTimeParameters () override |
void | SetBarrelState () override |
void | SetReloadTimeInSeconds (const float &ReloadTime) |
UMortarProSemiAutoAimingComponent () | |
![]() | |
void | FireAt (const FVector &AimLocation, AActor *TargetActor, TArray< AActor * > SecondaryTargetsRef) |
void | GetAllFiringSocketsName (TArray< FName > &SocketsName) const |
EMortarProFiringState | GetCurrentState () const |
float | GetDirectionThresholdComparision () const |
void | GetFiringCountForAllSockets (TMap< FName, int32 > &PerSocketFireCount) const |
int32 | GetFiringCountForSocket (const FName &SocketName) const |
float | GetInitialIdleEventDelay () const |
void | GetProjectile (TMap< FName, FMortarProGunSocketProperties > &OutProjectiles) const |
float | GetShotsSpreadDegree () const |
bool | HasAmmo () const |
bool | HasUnlimitedAmmo () const |
void | InitializeAiming (class UMortarProTurretMeshComponent *TurretToSet, class UMortarProBarrelMeshComponent *BarrelToSet, AActor *Owner) |
bool | IsGunGravityEnabled () const |
bool | IsPredictTargetPositionEnabled () const |
virtual void | ResetAimingRunTimeParameters () |
void | SetDirectionThresholdComparision (const float &Threshold) |
void | SetFiringLeftForAllSockets (const TMap< FName, int32 > &PerSocketFireCount) |
void | SetFiringLeftForSocket (const FName &SocketName, const int32 &InFiringLeft) |
void | SetGunGravity (const bool &bGunGravity) |
void | SetIdle () |
void | SetInitialIdleEventDelay (const float &Delay) |
void | SetPredictTargetPosition (const bool &bEnable) |
void | SetProjectile (const TMap< FName, FMortarProGunSocketProperties > &ProjectileToSet) |
void | SetShotsSpreadDegree (const float &ShotsSpread) |
void | SetUnlimitedAmmo (const bool &bUnlimited) |
virtual void | StopComponent () |
UMortarProAimingComponent () | |
Protected Member Functions | |
void | BeginPlay () override |
![]() | |
virtual void | BeginPlay () override |
virtual void | Fire () |
virtual void | FireProjectile () |
class UMortarProPoolSubsystem * | GetValidSubSystem () |
bool | IsMoving (const FVector &HitLocation) |
virtual void | SetBarrelState () |
virtual void | StopFiring () |
virtual void | TickComponent (float DeltaTime, ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction) override |
Protected Attributes | |
float | ReloadTimeInSeconds = 1.5f |
![]() | |
uint32 | bAmmoLeft: 1 |
class UMortarProBarrelMeshComponent * | Barrel = nullptr |
uint32 | bEnableGunGravity: 1 |
uint32 | bEnablePredictTargetPosition: 1 |
uint32 | bUnlimitedAmmo: 1 |
FVector | CurrentAimDirection |
EMortarProFiringState | CurrentFiringState |
FVector | CurrentHitTargetLocation |
FVector | DefaultAimLocation |
FName | DefaultSocketName |
class USoundBase * | FireSound |
float | InitialIdleEventDelay = 4.f |
float | LastFireTime = 0 |
class AActor * | OwnerActor |
FString | OwnerName |
TMap< FName, FMortarProGunSocketProperties > | ProjectileSpawnSockets |
float | ShotsSpreadDegree = 2.f |
TWeakObjectPtr< AActor > | TargetActor |
class UMortarProTurretMeshComponent * | Turret = nullptr |
Private Member Functions | |
bool | PreFire () |
Private Attributes | |
float | OriginalReloadTimeInSeconds = 0.5f |
Additional Inherited Members | |
![]() | |
FMortarProBeginAimingMovement | BeginAimingMovementTowardsTarget |
FMortarProBeginFire | BeginFire |
FMortarProBeginIdleState | BeginIdleState |
FMortarProEndAimingMovement | EndAimingMovementTowardsTarget |
FMortarProEndFiring | EndFiring |
FMortarProEndIdleState | EndIdleState |
Aiming Component for shooting target in semi automatic manner that is one after another . After each shot there is reload delay To use this component class of aiming component has to be changed in blueprint
UMortarProSemiAutoAimingComponent::UMortarProSemiAutoAimingComponent | ( | ) |
|
overrideprotectedvirtual |
Function called on play.
Reimplemented from UMortarProAimingComponent.
|
overridevirtual |
This method is called to fire a projectile from AI
Reimplemented from UMortarProAimingComponent.
float UMortarProSemiAutoAimingComponent::GetReloadTimeInSeconds | ( | ) | const |
Gets Reload Time for The Mortar Gun i.e Time Delay between each shot
bool UMortarProSemiAutoAimingComponent::IsReloading | ( | ) |
Checks if Firing can be done by comparing the last fire time with current time and checking with reload time
|
private |
Operations or Checks to perform before Firing
|
overridevirtual |
Resets all Shooting runtime Parameters for Burst Shooting Modes. It will also stop firing and resets cooldown period
Reimplemented from UMortarProAimingComponent.
|
overridevirtual |
Sets Barrel State like whether there is any ammo left,or gun is moving etc.
Reimplemented from UMortarProAimingComponent.
void UMortarProSemiAutoAimingComponent::SetReloadTimeInSeconds | ( | const float & | ReloadTime | ) |
Sets Time Delay between each shots @ param[in] ReloadTime Float variable containing reload Time
|
private |
Original Reload Time In Seconds
|
protected |
Time Delay Between each shots