public void ChangeWeapon(int WeaponIndex) { if (WeaponIndex == -1)//Unequip weapon { foreach (WeaponBase ActiveWeapon in PrimaryWeapons.ActiveWeapons) { RemovePartialAnimation(ActiveWeapon.GetAnimationName(ActiveMovementStance)); } PrimaryWeapons.RemoveAllActiveWeapons(); PrimaryWeapons.UseWeapon(CurrentStanceAnimations); } else { string WeaponName = PrimaryWeapons.GetWeaponName(WeaponIndex); PrimaryWeapons.RemoveAllActiveWeapons(); PrimaryWeapons.UseWeapon(WeaponName); WeaponBase WeaponToUse = PrimaryWeapons.GetWeapon(WeaponName); WeaponToUse.CurrentAnimation = null; WeaponToUse.ResetAnimation(ActiveMovementStance); WeaponToUse.InitiateFollowingAttack(true, ActiveMovementStance, this); if (WeaponToUse.CurrentAnimation == null) { ActivatePartialWeapon(WeaponToUse, WeaponToUse.GetAnimationName(ActiveMovementStance)); } } }
public void SetRobotAnimation(string ActiveMovementStance) { foreach (WeaponBase ActiveWeapon in PrimaryWeapons.ActiveWeapons) { if (ActiveWeapon.GetAnimationType(ActiveMovementStance) == AnimationTypes.FullAnimation) { ActiveWeapon.CurrentAnimation = SetAnimation(ActiveWeapon.GetAnimationName(ActiveMovementStance)); } else { SetAnimation(CurrentStanceAnimations.GetAnimationName(ActiveMovementStance)); if (ActiveWeapon.CurrentAnimation == null) { ActivatePartialWeapon(ActiveWeapon, ActiveWeapon.GetAnimationName(ActiveMovementStance)); } } } }
public void HolsterAndReplaceWeapon(WeaponBase WeaponToUse) { foreach (WeaponBase ActiveWeapon in PrimaryWeapons.ActiveWeapons) { RemovePartialAnimation(ActiveWeapon.GetAnimationName(ActiveMovementStance)); } PrimaryWeapons.HolsterAllActiveWeapons(); PrimaryWeapons.UseWeapon(WeaponToUse); WeaponToUse.CurrentAnimation = null; WeaponToUse.ResetAnimation(ActiveMovementStance); WeaponToUse.InitiateFollowingAttack(true, ActiveMovementStance, this); if (WeaponToUse.CurrentAnimation == null) { ActivatePartialWeapon(WeaponToUse, WeaponToUse.GetAnimationName(ActiveMovementStance)); } }
public void EquipWeapon(string WeaponToEquipName) { WeaponBase NewWeapon; string WeaponPath = Name + "/Weapons/" + WeaponToEquipName; if (!File.Exists("Content/Triple Thunder/Weapons/" + WeaponPath + ".ttw")) { WeaponPath = Name + "/Grenades/" + WeaponToEquipName; } if (CurrentLayer == null) { NewWeapon = WeaponBase.CreateFromFile(Name, WeaponPath, false, null, null, null); } else { NewWeapon = WeaponBase.CreateFromFile(Name, WeaponPath, false, CurrentLayer.DicRequirement, CurrentLayer.DicEffect, CurrentLayer.DicAutomaticSkillTarget); } NewWeapon.WeaponName = WeaponToEquipName; NewWeapon.Load(Content); PrimaryWeapons.AddWeaponToStash(NewWeapon); ChangeWeapon(0); WeaponBase WeaponToUse = PrimaryWeapons.GetWeapon(WeaponPath); WeaponToUse.CurrentAnimation = null; WeaponToUse.ResetAnimation(ActiveMovementStance); WeaponToUse.InitiateFollowingAttack(true, ActiveMovementStance, this); if (WeaponToUse.CurrentAnimation == null) { ActivatePartialWeapon(WeaponToUse, WeaponToUse.GetAnimationName(ActiveMovementStance)); } }