mirror of
https://github.com/Jous99/F4MP.git
synced 2026-01-13 00:20:54 +01:00
57 lines
1.9 KiB
C
57 lines
1.9 KiB
C
|
|
#pragma once
|
||
|
|
|
||
|
|
#include "Message.h"
|
||
|
|
|
||
|
|
#include <Structs/GameId.h>
|
||
|
|
|
||
|
|
struct ProjectileLaunchRequest final : ClientMessage
|
||
|
|
{
|
||
|
|
static constexpr ClientOpcode Opcode = kProjectileLaunchRequest;
|
||
|
|
|
||
|
|
ProjectileLaunchRequest()
|
||
|
|
: ClientMessage(Opcode)
|
||
|
|
{
|
||
|
|
}
|
||
|
|
|
||
|
|
virtual ~ProjectileLaunchRequest() = default;
|
||
|
|
|
||
|
|
void SerializeRaw(TiltedPhoques::Buffer::Writer& aWriter) const noexcept override;
|
||
|
|
void DeserializeRaw(TiltedPhoques::Buffer::Reader& aReader) noexcept override;
|
||
|
|
|
||
|
|
bool operator==(const ProjectileLaunchRequest& acRhs) const noexcept
|
||
|
|
{
|
||
|
|
return ShooterID == acRhs.ShooterID && OriginX == acRhs.OriginX && OriginY == acRhs.OriginY &&
|
||
|
|
OriginZ == acRhs.OriginZ && ProjectileBaseID == acRhs.ProjectileBaseID && WeaponID == acRhs.WeaponID &&
|
||
|
|
AmmoID == acRhs.AmmoID && ZAngle == acRhs.ZAngle && XAngle == acRhs.XAngle && YAngle == acRhs.YAngle &&
|
||
|
|
ParentCellID == acRhs.ParentCellID && SpellID == acRhs.SpellID && CastingSource == acRhs.CastingSource &&
|
||
|
|
Area == acRhs.Area && Power == acRhs.Power && Scale == acRhs.Scale && AlwaysHit == acRhs.AlwaysHit &&
|
||
|
|
NoDamageOutsideCombat == acRhs.NoDamageOutsideCombat && AutoAim == acRhs.AutoAim &&
|
||
|
|
DeferInitialization == acRhs.DeferInitialization && ForceConeOfFire == acRhs.ForceConeOfFire &&
|
||
|
|
UnkBool1 == acRhs.UnkBool1 && UnkBool2 == acRhs.UnkBool2;
|
||
|
|
}
|
||
|
|
|
||
|
|
uint32_t ShooterID{};
|
||
|
|
float OriginX{};
|
||
|
|
float OriginY{};
|
||
|
|
float OriginZ{};
|
||
|
|
GameId ProjectileBaseID{};
|
||
|
|
GameId WeaponID{};
|
||
|
|
GameId AmmoID{};
|
||
|
|
float ZAngle{};
|
||
|
|
float XAngle{};
|
||
|
|
float YAngle{};
|
||
|
|
GameId ParentCellID{};
|
||
|
|
GameId SpellID{};
|
||
|
|
int32_t CastingSource{};
|
||
|
|
int32_t Area{};
|
||
|
|
float Power{};
|
||
|
|
float Scale{};
|
||
|
|
bool AlwaysHit{};
|
||
|
|
bool NoDamageOutsideCombat{};
|
||
|
|
bool AutoAim{};
|
||
|
|
bool DeferInitialization{};
|
||
|
|
bool ForceConeOfFire{};
|
||
|
|
bool UnkBool1{};
|
||
|
|
bool UnkBool2{};
|
||
|
|
};
|