void Start() { m_pickUpSystemLeft = LeftController.GetComponent <PickupSystem>(); m_pickUpSystemRight = RightController.GetComponent <PickupSystem>(); m_jetpackMovementLeft = LeftController.GetComponent <JetpackMovement>(); m_jetpackMovementRight = RightController.GetComponent <JetpackMovement>(); m_upwardMultiplier = m_jetpackMovementLeft.upwardMultiplier; }
void Start() { trackedObj = GetComponent <SteamVR_TrackedObject>(); m_otherDeviceGameObject = transform.parent.GetComponent <SteamVR_ControllerManager>().left; if (m_otherDeviceGameObject == gameObject) { m_otherDeviceGameObject = transform.parent.GetComponent <SteamVR_ControllerManager>().right; } // Cache Variables m_rigidBody = transform.parent.GetComponent <Rigidbody>(); m_pickupSystem = GetComponent <PickupSystem>(); m_device = SteamVR_Controller.Input((int)trackedObj.index); m_otherDeviceJetpackMovement = m_otherDeviceGameObject.GetComponent <JetpackMovement>(); triggerX = 0.0f; otherTriggerX = 0.0f; m_downwardMultiplier = transform.parent.GetComponent <JetpackMovementDownwardMultiplier>().downwardMultiplier; }
public void AddGadget(MonoBehaviour gadget) { if (gadgets.Count < maxGadgets) { switch (gadget.GetType().ToString()) { case "JetpackMovement": JetpackMovement gadgetJM = gadget.GetComponent <JetpackMovement>(); JetpackMovement newGadgetJM = gameObject.AddComponent <JetpackMovement>(); newGadgetJM.upwardMultiplier = gadgetJM.upwardMultiplier; newGadgetJM.gadgetPreviewPrefab = gadgetJM.gadgetPreviewPrefab; gadgets.Add(newGadgetJM); newGadgetJM.enabled = false; break; case "ProjectileGun": ProjectileGun gadgetPG = gadget.GetComponent <ProjectileGun>(); ProjectileGun newGadgetPG = gameObject.AddComponent <ProjectileGun>(); newGadgetPG.cooldown = gadgetPG.cooldown; newGadgetPG.projectilePrefab = gadgetPG.projectilePrefab; newGadgetPG.gadgetPreviewPrefab = gadgetPG.gadgetPreviewPrefab; newGadgetPG.angleMultiplier = gadgetPG.angleMultiplier; newGadgetPG.pointerModel = gadgetPG.pointerModel; gadgets.Add(newGadgetPG); newGadgetPG.enabled = false; break; case "RaycastGun": RaycastGun gadgetRG = gadget.GetComponent <RaycastGun>(); RaycastGun newGadgetRG = gameObject.AddComponent <RaycastGun>(); newGadgetRG.cooldown = gadgetRG.cooldown; newGadgetRG.damage = gadgetRG.damage; newGadgetRG.impactForce = gadgetRG.impactForce; newGadgetRG.range = gadgetRG.range; newGadgetRG.impactParticleSystem = gadgetRG.impactParticleSystem; newGadgetRG.gadgetPreviewPrefab = gadgetRG.gadgetPreviewPrefab; newGadgetRG.angleMultiplier = gadgetRG.angleMultiplier; newGadgetRG.pointerModel = GetComponent <GadgetReferences>().raycastGunPointer; gadgets.Add(newGadgetRG); newGadgetRG.enabled = false; break; case "Shield": Shield gadgetSh = gadget.GetComponent <Shield>(); Shield newGadgetSh = gameObject.AddComponent <Shield>(); newGadgetSh.maxEnergy = gadgetSh.maxEnergy; newGadgetSh.startWithFullEnergy = gadgetSh.startWithFullEnergy; newGadgetSh.loseEnergyOnHit = gadgetSh.loseEnergyOnHit; newGadgetSh.loseEnergyOverTime = gadgetSh.loseEnergyOverTime; newGadgetSh.energyRegeneration = gadgetSh.energyRegeneration; newGadgetSh.shieldObject = GetComponent <GadgetReferences>().shield; newGadgetSh.shieldActiveMaterial = gadgetSh.shieldActiveMaterial; newGadgetSh.shieldDeactivatedMaterial = gadgetSh.shieldDeactivatedMaterial; newGadgetSh.gadgetPreviewPrefab = gadgetSh.gadgetPreviewPrefab; break; default: Debug.LogError("Gadget not listed, unable to add"); break; } Initialize(); } }