// Add new projectile to the list public static void Add(MyAmmoProperties ammoProperties, MyEntity ignorePhysObject, Vector3 origin, Vector3 initialVelocity, Vector3 directionNormalized, bool groupStart, float thicknessMultiplier, MyEntity weapon, MyEntity ownerEntity = null) { MyProjectile newProjectile = m_projectiles.Allocate(); if (newProjectile != null) { newProjectile.Start( ammoProperties, ignorePhysObject, origin, initialVelocity, directionNormalized, groupStart, thicknessMultiplier, weapon ); newProjectile.OwnerEntity = ownerEntity != null ? ownerEntity : ignorePhysObject; } }
// Add new projectile to the list public static void AddShotgun(MyAmmoProperties ammoProperties, MyEntity ignorePhysObject, Vector3 origin, Vector3 initialVelocity, Vector3 directionNormalized, bool groupStart, float thicknessMultiplier, MyEntity weapon, float frontBillboardSize, MyEntity ownerEntity = null) { MyProjectile newProjectile = m_projectiles.Allocate(); if (newProjectile != null) { newProjectile.Start( ammoProperties, ignorePhysObject, origin, initialVelocity, directionNormalized, groupStart, thicknessMultiplier, weapon ); newProjectile.BlendByCameraDirection = true; newProjectile.FrontBillboardMaterial = MyTransparentMaterialEnum.ShotgunParticle; newProjectile.LengthMultiplier = 2; newProjectile.FrontBillboardSize = frontBillboardSize; newProjectile.OwnerEntity = ownerEntity != null ? ownerEntity : ignorePhysObject; } }