#pragma once #include "CActor.hpp" #include "Weapon/CBeamInfo.hpp" #include "CDamageInfo.hpp" namespace urde { class CWeaponDescription; class CScriptBeam : public CActor { TCachedToken xe8_weaponDescription; CBeamInfo xf4_beamInfo; CDamageInfo x138_damageInfo; TUniqueId x154_projectileId; public: CScriptBeam(TUniqueId, std::string_view, const CEntityInfo&, const zeus::CTransform&, bool, const TToken&, const CBeamInfo&, const CDamageInfo&); void Accept(IVisitor& visitor); void Think(float, CStateManager &); void AcceptScriptMsg(EScriptObjectMessage, TUniqueId, CStateManager &); }; }