-
Create abstract scenecomponent class Weapon.
-
Create scenecomponent class Weapon_Laser inheriting from the former.
-
Add abstract actor class WeaponProjectile.
-
Add actor class WeaponProjectile_Laser inheriting from the former.
-
Add a soft class pointer property to Weapon of type WeaponProjectile with value set to none.
-
Override soft class pointer value in Weapon_Laser with value WeaponProjectile_Laser.
-
Value immediately sets itself to WeaponProjectile instead of WeaponProjectileLaser.
There is no way to set it to the proper value. Works only if you make the property a hard class reference.