Space Engineers
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Properties | List of all members
Sandbox.Game.Weapons.MyGunBase Class Reference
Inheritance diagram for Sandbox.Game.Weapons.MyGunBase:
Sandbox.Game.Weapons.MyDeviceBase

Classes

class  DummyContainer
 

Public Member Functions

 MyGunBase ()
 
MyObjectBuilder_GunBase GetObjectBuilder ()
 
void Init (MyObjectBuilder_GunBase objectBuilder, MyCubeBlockDefinition cubeBlockDefinition, IMyGunBaseUser gunBaseUser)
 
void Init (MyObjectBuilder_GunBase objectBuilder, MyDefinitionId weaponDefinitionId, IMyGunBaseUser gunBaseUser)
 
Vector3 GetDeviatedVector (float deviateAngle, Vector3 direction)
 
Vector3 GetDeviatedVector (int hash, float deviateAngle, Vector3 direction)
 
void Shoot (Vector3 initialVelocity, MyEntity owner=null)
 
void Shoot (Vector3 initialVelocity, Vector3 direction, MyEntity owner=null)
 
void ShootWithOffset (Vector3 initialVelocity, Vector3 direction, float offset, MyEntity owner=null)
 This function changes default shooting position (muzzle flash) with an offset. (allow us to shoot at close objects) More...
 
void Shoot (Vector3D initialPosition, Vector3 initialVelocity, Vector3 direction, MyEntity owner=null)
 
void UpdateEffects ()
 
void RemoveOldEffects (MyWeaponDefinition.WeaponEffectAction action=MyWeaponDefinition.WeaponEffectAction.Shoot)
 
MyInventoryConstraint CreateAmmoInventoryConstraints (String displayName)
 
bool IsAmmoMagazineCompatible (MyDefinitionId ammoMagazineId)
 
override bool CanSwitchAmmoMagazine ()
 
bool SwitchAmmoMagazine (MyDefinitionId ammoMagazineId)
 
override bool SwitchAmmoMagazineToNextAvailable ()
 
override bool SwitchToNextAmmoMagazine ()
 
bool SwitchAmmoMagazineToFirstAvailable ()
 
bool HasEnoughAmmunition ()
 
void ConsumeAmmo ()
 
void StopShoot ()
 
int GetTotalAmmunitionAmount ()
 
int GetInventoryAmmoMagazinesCount ()
 
void RefreshAmmunitionAmount ()
 
void AddMuzzleMatrix (MyAmmoType ammoType, Matrix localMatrix)
 
void LoadDummies (Dictionary< string, MyModelDummy > dummies)
 
override Vector3D GetMuzzleLocalPosition ()
 
override Vector3D GetMuzzleWorldPosition ()
 
MatrixD GetMuzzleWorldMatrix ()
 
void StartShootSound (MyEntity3DSoundEmitter soundEmitter)
 
- Public Member Functions inherited from Sandbox.Game.Weapons.MyDeviceBase
void Init (MyObjectBuilder_DeviceBase objectBuilder)
 

Public Attributes

const int AMMO_PER_SHOOT = 1
 
Matrix m_holdingDummyMatrix
 

Protected Member Functions

void CreateEffects (MyWeaponDefinition.WeaponEffectAction action)
 

Protected Attributes

MyWeaponPropertiesWrapper m_weaponProperties
 
Dictionary< MyDefinitionId, int > m_remainingAmmos
 
readonly Sync< int > m_cachedAmmunitionAmount
 
Dictionary< int, DummyContainerm_dummiesByAmmoType
 
MatrixD m_worldMatrix
 
IMyGunBaseUser m_user
 

Properties

int CurrentAmmo [get, set]
 
MyWeaponPropertiesWrapper WeaponProperties [get]
 
MyAmmoMagazineDefinition CurrentAmmoMagazineDefinition [get]
 
MyDefinitionId CurrentAmmoMagazineId [get]
 
MyAmmoDefinition CurrentAmmoDefinition [get]
 
float BackkickForcePerSecond [get]
 
bool HasMissileAmmoDefined [get]
 
bool HasProjectileAmmoDefined [get]
 
int MuzzleFlashLifeSpan [get]
 
int ShootIntervalInMiliseconds [get]
 
float ShootIntervalModifier [get, set]
 
float ReleaseTimeAfterFire [get]
 
MySoundPair ShootSound [get]
 
MySoundPair NoAmmoSound [get]
 
MySoundPair ReloadSound [get]
 
MySoundPair SecondarySound [get]
 
bool UseDefaultMuzzleFlash [get]
 
float MechanicalDamage [get]
 
float DeviateAngle [get]
 
bool HasAmmoMagazines [get]
 
bool IsAmmoProjectile [get]
 
bool IsAmmoMissile [get]
 
int ShotsInBurst [get]
 
int ReloadTime [get]
 
bool HasDummies [get]
 
MatrixD WorldMatrix [get, set]
 
DateTime LastShootTime [get]
 
int RemainingAmmo [set]
 
- Properties inherited from Sandbox.Game.Weapons.MyDeviceBase
uint InventoryItemId [get, set]
 Reference to the inventory item that this device originated from. Can be used to update the inventory item (when ammo changes etc...) More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Sandbox.Game.Weapons.MyDeviceBase
static string GetGunNotificationName (MyDefinitionId gunId)
 

Detailed Description

Definition at line 32 of file MyGunBase.cs.

Constructor & Destructor Documentation

Sandbox.Game.Weapons.MyGunBase.MyGunBase ( )
inline

Definition at line 157 of file MyGunBase.cs.

Member Function Documentation

void Sandbox.Game.Weapons.MyGunBase.AddMuzzleMatrix ( MyAmmoType  ammoType,
Matrix  localMatrix 
)
inline

Definition at line 681 of file MyGunBase.cs.

override bool Sandbox.Game.Weapons.MyGunBase.CanSwitchAmmoMagazine ( )
inlinevirtual

Implements Sandbox.Game.Weapons.MyDeviceBase.

Definition at line 452 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.ConsumeAmmo ( )
inline

Definition at line 565 of file MyGunBase.cs.

MyInventoryConstraint Sandbox.Game.Weapons.MyGunBase.CreateAmmoInventoryConstraints ( String  displayName)
inline

Definition at line 435 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.CreateEffects ( MyWeaponDefinition.WeaponEffectAction  action)
inlineprotected

Definition at line 363 of file MyGunBase.cs.

Vector3 Sandbox.Game.Weapons.MyGunBase.GetDeviatedVector ( float  deviateAngle,
Vector3  direction 
)
inline

Definition at line 275 of file MyGunBase.cs.

Vector3 Sandbox.Game.Weapons.MyGunBase.GetDeviatedVector ( int  hash,
float  deviateAngle,
Vector3  direction 
)
inline

Definition at line 280 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.GetInventoryAmmoMagazinesCount ( )
inline

Definition at line 632 of file MyGunBase.cs.

override Vector3D Sandbox.Game.Weapons.MyGunBase.GetMuzzleLocalPosition ( )
inlinevirtual

Implements Sandbox.Game.Weapons.MyDeviceBase.

Definition at line 720 of file MyGunBase.cs.

MatrixD Sandbox.Game.Weapons.MyGunBase.GetMuzzleWorldMatrix ( )
inline

Definition at line 757 of file MyGunBase.cs.

override Vector3D Sandbox.Game.Weapons.MyGunBase.GetMuzzleWorldPosition ( )
inlinevirtual

Implements Sandbox.Game.Weapons.MyDeviceBase.

Definition at line 736 of file MyGunBase.cs.

MyObjectBuilder_GunBase Sandbox.Game.Weapons.MyGunBase.GetObjectBuilder ( )
inline

Definition at line 168 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.GetTotalAmmunitionAmount ( )
inline

Definition at line 627 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.HasEnoughAmmunition ( )
inline

Definition at line 548 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.Init ( MyObjectBuilder_GunBase  objectBuilder,
MyCubeBlockDefinition  cubeBlockDefinition,
IMyGunBaseUser  gunBaseUser 
)
inline

Definition at line 186 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.Init ( MyObjectBuilder_GunBase  objectBuilder,
MyDefinitionId  weaponDefinitionId,
IMyGunBaseUser  gunBaseUser 
)
inline

Definition at line 201 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.IsAmmoMagazineCompatible ( MyDefinitionId  ammoMagazineId)
inline

Definition at line 447 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.LoadDummies ( Dictionary< string, MyModelDummy dummies)
inline

Definition at line 692 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.RefreshAmmunitionAmount ( )
inline

Definition at line 637 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.RemoveOldEffects ( MyWeaponDefinition.WeaponEffectAction  action = MyWeaponDefinition.WeaponEffectAction.Shoot)
inline

Definition at line 421 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.Shoot ( Vector3  initialVelocity,
MyEntity  owner = null 
)
inline

Definition at line 318 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.Shoot ( Vector3  initialVelocity,
Vector3  direction,
MyEntity  owner = null 
)
inline

Definition at line 324 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.Shoot ( Vector3D  initialPosition,
Vector3  initialVelocity,
Vector3  direction,
MyEntity  owner = null 
)
inline

Definition at line 340 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.ShootWithOffset ( Vector3  initialVelocity,
Vector3  direction,
float  offset,
MyEntity  owner = null 
)
inline

This function changes default shooting position (muzzle flash) with an offset. (allow us to shoot at close objects)

Definition at line 334 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.StartShootSound ( MyEntity3DSoundEmitter  soundEmitter)
inline

Definition at line 804 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.StopShoot ( )
inline

Definition at line 622 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.SwitchAmmoMagazine ( MyDefinitionId  ammoMagazineId)
inline

Definition at line 457 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.SwitchAmmoMagazineToFirstAvailable ( )
inline

Definition at line 527 of file MyGunBase.cs.

override bool Sandbox.Game.Weapons.MyGunBase.SwitchAmmoMagazineToNextAvailable ( )
inlinevirtual

Implements Sandbox.Game.Weapons.MyDeviceBase.

Definition at line 471 of file MyGunBase.cs.

override bool Sandbox.Game.Weapons.MyGunBase.SwitchToNextAmmoMagazine ( )
inlinevirtual

Implements Sandbox.Game.Weapons.MyDeviceBase.

Definition at line 514 of file MyGunBase.cs.

void Sandbox.Game.Weapons.MyGunBase.UpdateEffects ( )
inline

Definition at line 405 of file MyGunBase.cs.

Member Data Documentation

const int Sandbox.Game.Weapons.MyGunBase.AMMO_PER_SHOOT = 1

Definition at line 62 of file MyGunBase.cs.

readonly Sync<int> Sandbox.Game.Weapons.MyGunBase.m_cachedAmmunitionAmount
protected

Definition at line 67 of file MyGunBase.cs.

Dictionary<int, DummyContainer> Sandbox.Game.Weapons.MyGunBase.m_dummiesByAmmoType
protected

Definition at line 68 of file MyGunBase.cs.

Matrix Sandbox.Game.Weapons.MyGunBase.m_holdingDummyMatrix

Definition at line 72 of file MyGunBase.cs.

Dictionary<MyDefinitionId, int> Sandbox.Game.Weapons.MyGunBase.m_remainingAmmos
protected

Definition at line 66 of file MyGunBase.cs.

IMyGunBaseUser Sandbox.Game.Weapons.MyGunBase.m_user
protected

Definition at line 70 of file MyGunBase.cs.

MyWeaponPropertiesWrapper Sandbox.Game.Weapons.MyGunBase.m_weaponProperties
protected

Definition at line 65 of file MyGunBase.cs.

MatrixD Sandbox.Game.Weapons.MyGunBase.m_worldMatrix
protected

Definition at line 69 of file MyGunBase.cs.

Property Documentation

float Sandbox.Game.Weapons.MyGunBase.BackkickForcePerSecond
get

Definition at line 87 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.CurrentAmmo
getset

Definition at line 81 of file MyGunBase.cs.

MyAmmoDefinition Sandbox.Game.Weapons.MyGunBase.CurrentAmmoDefinition
get

Definition at line 85 of file MyGunBase.cs.

MyAmmoMagazineDefinition Sandbox.Game.Weapons.MyGunBase.CurrentAmmoMagazineDefinition
get

Definition at line 83 of file MyGunBase.cs.

MyDefinitionId Sandbox.Game.Weapons.MyGunBase.CurrentAmmoMagazineId
get

Definition at line 84 of file MyGunBase.cs.

float Sandbox.Game.Weapons.MyGunBase.DeviateAngle
get

Definition at line 124 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.HasAmmoMagazines
get

Definition at line 125 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.HasDummies
get

Definition at line 131 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.HasMissileAmmoDefined
get

Definition at line 97 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.HasProjectileAmmoDefined
get

Definition at line 98 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.IsAmmoMissile
get

Definition at line 127 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.IsAmmoProjectile
get

Definition at line 126 of file MyGunBase.cs.

DateTime Sandbox.Game.Weapons.MyGunBase.LastShootTime
get

Definition at line 142 of file MyGunBase.cs.

float Sandbox.Game.Weapons.MyGunBase.MechanicalDamage
get

Definition at line 116 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.MuzzleFlashLifeSpan
get

Definition at line 99 of file MyGunBase.cs.

MySoundPair Sandbox.Game.Weapons.MyGunBase.NoAmmoSound
get

Definition at line 111 of file MyGunBase.cs.

float Sandbox.Game.Weapons.MyGunBase.ReleaseTimeAfterFire
get

Definition at line 109 of file MyGunBase.cs.

MySoundPair Sandbox.Game.Weapons.MyGunBase.ReloadSound
get

Definition at line 112 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.ReloadTime
get

Definition at line 129 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.RemainingAmmo
set

Definition at line 145 of file MyGunBase.cs.

MySoundPair Sandbox.Game.Weapons.MyGunBase.SecondarySound
get

Definition at line 113 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.ShootIntervalInMiliseconds
get

Definition at line 101 of file MyGunBase.cs.

float Sandbox.Game.Weapons.MyGunBase.ShootIntervalModifier
getset

Definition at line 108 of file MyGunBase.cs.

MySoundPair Sandbox.Game.Weapons.MyGunBase.ShootSound
get

Definition at line 110 of file MyGunBase.cs.

int Sandbox.Game.Weapons.MyGunBase.ShotsInBurst
get

Definition at line 128 of file MyGunBase.cs.

bool Sandbox.Game.Weapons.MyGunBase.UseDefaultMuzzleFlash
get

Definition at line 114 of file MyGunBase.cs.

MyWeaponPropertiesWrapper Sandbox.Game.Weapons.MyGunBase.WeaponProperties
get

Definition at line 82 of file MyGunBase.cs.

MatrixD Sandbox.Game.Weapons.MyGunBase.WorldMatrix
getset

Definition at line 133 of file MyGunBase.cs.


The documentation for this class was generated from the following file: