class WeaponFireGun;
class KD_FireGun		: WeaponFireGun
{
	cloudletDuration	= 0;
	cloudletAlpha		= 0.75;
	cloudletGrowUp		= 0.06;
	cloudletFadeIn		= 0;
	cloudletFadeOut		= 0.1;
	interval		= 0.05;
	size			= 2;
	sourceSize		= 0.01;
	timeToLive		= 0;
	initT			= 30;
	deltaT			=-30;
};
class WeaponFireMGun;
class Coaxial_FireMGun		: WeaponFireMGun
{
	cloudletDuration	= 0;
	cloudletAlpha		= 0.75;
	cloudletGrowUp		= 0.06;
	cloudletFadeIn		= 0;
	cloudletFadeOut		= 0.1;
	interval		= 0.05;
	size			= 2;
	sourceSize		= 0.01;
	timeToLive		= 0;
	initT			= 30;
	deltaT			=-30;
};
class WeaponCloudsGun;
class KD_CloudsGun		: WeaponCloudsGun
{
	access 			= ReadAndWrite;
	cloudletGrowUp 		= 0.05;	// grow-up time
	cloudletFadeIn 		= 0;	// fade-in time
	cloudletFadeOut 	= 0.1;	// fade-out time
	cloudletDuration 	= 0.05;	// time to live (not including fades)
	cloudletAlpha 		= 0.3;
	cloudletAccY 		= 0;	// vertical acceleration
	cloudletMinYSpeed 	= -100;	// vertical speed range
	cloudletMaxYSpeed 	= 100;
	interval 		= 0.02;
	size 			= 0.3;
	sourceSize 		= 0.02;
};
class WeaponCloudsMGun;
class Coaxial_CloudsMGun	: WeaponCloudsMGun
{
	access			= ReadAndWrite;
	cloudletGrowUp		= 0.05;	///0.05// grow-up time
	cloudletFadeIn		= 0;	///0// fade-in time
	cloudletFadeOut		= 4.1;	///0.1// fade-out time
	cloudletDuration	= 5.0;	///0.05// time to live (not including fades)
	cloudletAlpha		= 0.3;
	cloudletAccY		= 0;	// vertical acceleration
	cloudletMinYSpeed	=-10;	// vertical speed range
	cloudletMaxYSpeed	= 10;
	interval		= 0.2;  ///0.02
	size			= 1.3;	///0.3
	sourceSize		= 0.7;	///0.02
};