//武器使用フリー public void WeaponFree() { if (!CommonDebug()) { return; } foreach (int partsNo in Common.CO.partsNameArray.Keys) { Transform playerTran = GameController.Instance.GetMyTran(); string partsName = Common.Func.GetPartsStructure(Common.CO.partsNameArray[partsNo]); Transform parts = playerTran.FindChild(partsName); if (parts == null) { continue; } WeaponController wepCtrl = parts.GetComponentInChildren <WeaponController>(); if (wepCtrl == null) { continue; } wepCtrl.ReloadFree(); ExtraWeaponController extraCtrl = parts.GetComponentInChildren <ExtraWeaponController>(); if (extraCtrl != null) { extraCtrl.ExtraFree(); } } }
public void SetWeapons() { Transform mainBody = myTran.FindChild(Common.Func.GetBodyStructure()); animator = mainBody.GetComponent <Animator>(); Transform partsJoint = myTran.FindChild(Common.CO.PARTS_JOINT); foreach (Transform parts in partsJoint) { WeaponController wepCtrl = parts.GetComponentInChildren <WeaponController>(); if (wepCtrl != null) { wepCtrl.SetTarget(targetTran); switch (parts.name) { case Common.CO.PARTS_LEFT_HAND: //通常時左武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_LEFT_ATTACK); break; case Common.CO.PARTS_LEFT_HAND_DASH: //ダッシュ時左武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_LEFT_ATTACK); break; case Common.CO.PARTS_RIGHT_HAND: //通常時右武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_RIGHT_ATTACK); break; case Common.CO.PARTS_RIGHT_HAND_DASH: //ダッシュ時右武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_RIGHT_ATTACK); break; case Common.CO.PARTS_SHOULDER: //通常時背中武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_SHOULDER_ATTACK); break; case Common.CO.PARTS_SHOULDER_DASH: //ダッシュ時背中武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_SHOULDER_ATTACK); break; case Common.CO.PARTS_SUB: //サブ武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_USE_SUB); break; case Common.CO.PARTS_EXTRA: //専用武器 extraCtrl = parts.GetComponentInChildren <ExtraWeaponController>(); if (extraCtrl != null) { extraCtrl.SetInit(wepCtrl, animator, status); } continue; } weapons.Add(wepCtrl); } } isSetWeapon = true; }
public void SetWeapon() { //アニメーション Transform mainBody = myTran.FindChild(Common.Func.GetBodyStructure()); animator = mainBody.GetComponent <Animator>(); WeaponController wepCtrl; foreach (int partsNo in Common.CO.partsNameArray.Keys) { string partsName = Common.Func.GetPartsStructure(Common.CO.partsNameArray[partsNo]); Transform parts = myTran.FindChild(partsName); if (parts == null) { continue; } //foreach (Transform child in base.myTran) //{ wepCtrl = parts.GetComponentInChildren <WeaponController>(); if (wepCtrl == null) { continue; } wepCtrl.SetTarget(targetTran); switch (parts.name) { case Common.CO.PARTS_LEFT_HAND: //通常時左武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_LEFT_ATTACK); wepCtrl.SetBtn(leftHandBtn); leftHandCtrls[Common.CO.WEAPON_NORMAL] = wepCtrl; break; case Common.CO.PARTS_LEFT_HAND_DASH: //ダッシュ時左武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_LEFT_ATTACK); wepCtrl.SetBtn(leftHandBtn); leftHandCtrls[Common.CO.WEAPON_DASH] = wepCtrl; break; case Common.CO.PARTS_RIGHT_HAND: //通常時右武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_RIGHT_ATTACK); wepCtrl.SetBtn(rightHandBtn); rightHandCtrls[Common.CO.WEAPON_NORMAL] = wepCtrl; break; case Common.CO.PARTS_RIGHT_HAND_DASH: //ダッシュ時右武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_RIGHT_ATTACK); wepCtrl.SetBtn(rightHandBtn); rightHandCtrls[Common.CO.WEAPON_DASH] = wepCtrl; break; case Common.CO.PARTS_SHOULDER: //通常時背中武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_SHOULDER_ATTACK); wepCtrl.SetBtn(shoulderBtn); shoulderCtrls[Common.CO.WEAPON_NORMAL] = wepCtrl; break; case Common.CO.PARTS_SHOULDER_DASH: //ダッシュ時背中武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_SHOULDER_ATTACK); wepCtrl.SetBtn(shoulderBtn); shoulderCtrls[Common.CO.WEAPON_DASH] = wepCtrl; break; case Common.CO.PARTS_SUB: //サブ武器 wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_USE_SUB); wepCtrl.SetBtn(subBtn); subCtrl = wepCtrl; break; case Common.CO.PARTS_EXTRA: //専用武器 extraCtrl = parts.GetComponentInChildren <ExtraWeaponController>(); if (extraCtrl != null) { //wepCtrl.SetMotionCtrl(animator, Common.CO.MOTION_EXTRA_ATTACK); wepCtrl.SetBtn(extraBtn, true); extraCtrl.SetInit(wepCtrl, animator, status); } break; } } }