mirror of https://github.com/PrimeDecomp/prime.git
parent
f3656746b6
commit
291515c5ee
|
@ -168,6 +168,10 @@ public:
|
||||||
CPlayerGun* PlayerGun() { return x490_gun.get(); }
|
CPlayerGun* PlayerGun() { return x490_gun.get(); }
|
||||||
const CPlayerGun* GetPlayerGun() const { return x490_gun.get(); }
|
const CPlayerGun* GetPlayerGun() const { return x490_gun.get(); }
|
||||||
|
|
||||||
|
TUniqueId GetOrbitTargetId() const { return x310_orbitTargetId; }
|
||||||
|
TUniqueId GetOrbitNextTargetId() const { return x33c_orbitNextTargetId; }
|
||||||
|
TUniqueId GetScanningObjectId() const { return x3b4_scanningObject; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
struct CVisorSteam {
|
struct CVisorSteam {
|
||||||
f32 x0_curTargetAlpha;
|
f32 x0_curTargetAlpha;
|
||||||
|
|
|
@ -570,7 +570,22 @@ float CPlayerGun::GetBeamVelocity() const {
|
||||||
return 10.f;
|
return 10.f;
|
||||||
}
|
}
|
||||||
|
|
||||||
TUniqueId CPlayerGun::GetTargetId(CStateManager&) { return TUniqueId(0, 0); }
|
TUniqueId CPlayerGun::GetTargetId(CStateManager& mgr) {
|
||||||
|
TUniqueId ret = mgr.GetPlayer()->GetOrbitTargetId();
|
||||||
|
if (x832_26_comboFiring && ret == kInvalidUniqueId && x310_currentBeam == CPlayerState::kBI_Wave)
|
||||||
|
ret = mgr.GetPlayer()->GetOrbitNextTargetId();
|
||||||
|
|
||||||
|
if (ret != kInvalidUniqueId) {
|
||||||
|
const CActor* act = TCastToConstPtr<CActor>(mgr.GetObjectById(ret));
|
||||||
|
if (act != nullptr) {
|
||||||
|
if (!act->GetMaterialList().HasMaterial(kMT_Target)) {
|
||||||
|
ret = kInvalidUniqueId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
CPlayerGun::CGunMorph::CGunMorph(float gunTransformTime, float holoHoldTime)
|
CPlayerGun::CGunMorph::CGunMorph(float gunTransformTime, float holoHoldTime)
|
||||||
: x4_gunTransformTime(gunTransformTime), x10_holoHoldTime(fabs(holoHoldTime)) {}
|
: x4_gunTransformTime(gunTransformTime), x10_holoHoldTime(fabs(holoHoldTime)) {}
|
||||||
|
|
Loading…
Reference in New Issue