2018-10-07 03:42:33 +00:00
|
|
|
#pragma once
|
2016-12-22 19:57:21 +00:00
|
|
|
|
|
|
|
#include "Weapon/CBeamProjectile.hpp"
|
|
|
|
#include "Weapon/CBeamInfo.hpp"
|
|
|
|
#include "World/CDamageInfo.hpp"
|
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
namespace urde {
|
|
|
|
class CPlasmaProjectile : public CBeamProjectile {
|
2016-12-22 19:57:21 +00:00
|
|
|
public:
|
2018-12-08 05:30:43 +00:00
|
|
|
CPlasmaProjectile(const TToken<CWeaponDescription>& wDesc, std::string_view name, EWeaponType wType,
|
|
|
|
const CBeamInfo& bInfo, const zeus::CTransform& xf, EMaterialTypes matType,
|
|
|
|
const CDamageInfo& dInfo, TUniqueId uid, TAreaId aid, TUniqueId owner, u32 w1, bool b1,
|
|
|
|
EProjectileAttrib attribs);
|
2017-01-15 03:07:01 +00:00
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
void Accept(IVisitor& visitor);
|
2017-08-13 05:26:14 +00:00
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
void UpdateFx(const zeus::CTransform&, float, CStateManager&) {}
|
|
|
|
void Fire(const zeus::CTransform&, CStateManager&, bool);
|
2016-12-22 19:57:21 +00:00
|
|
|
};
|
2018-12-08 05:30:43 +00:00
|
|
|
} // namespace urde
|