/** * <summary> * Adjust weapon position when switching new weapons or new frames. * </summary> * * <returns> * void * </returns> */ public void AdjustWeaponPosition() { HelicopterUnitWeaponPart helicopterWeapon = this.GetWeapon().GetComponent <HelicopterUnitWeaponPart>(); HelicopterUnitBodyPart helicopterBody = this.GetBody().GetComponent <HelicopterUnitBodyPart>(); Vector3 newLocalPosition = Vector3.zero; /** * Medium light single barrel machine gun and light frame */ if ( helicopterWeapon.GetID() == HelicopterUnitPartID.Weapon.LightSingleBarrelMachineGun && helicopterBody.GetID() == HelicopterUnitPartID.Body.LightFrame || helicopterWeapon.GetID() == HelicopterUnitPartID.Weapon.LightDoubleBarrelMachineGun && helicopterBody.GetID() == HelicopterUnitPartID.Body.LightFrame ) { newLocalPosition = new Vector3(0f, -2.15f, 5.45f); } /** * Rocket launcher and light frame */ else if ( helicopterWeapon.GetID() == HelicopterUnitPartID.Weapon.RocketLauncher && helicopterBody.GetID() == HelicopterUnitPartID.Body.LightFrame ) { newLocalPosition = new Vector3(0f, -2.05f, 4.55f); } this.weapon.transform.localPosition = newLocalPosition; }
/** * <summary> * Initialize parts * </summary> * * <returns> * void * </returns> */ protected void InitializeParts() { HelicopterUnitWeaponPart currentWeapon = this.weapon.GetComponent <HelicopterUnitWeaponPart>(); HelicopterUnitBodyPart currentBodyFrame = this.body.GetComponent <HelicopterUnitBodyPart>(); List <HelicopterUnitPart> newParts = new List <HelicopterUnitPart>(); newParts.Add(currentWeapon); newParts.Add(currentBodyFrame); this.SetHelicopterParts(newParts); }