public void FireAtTarget(GameObject target, TractorFunction type) { switch( type ) { case TractorFunction.HOLD: { targetOriginalDrag = target.GetComponent<Rigidbody>().drag; targetOriginalAngularDrag = target.GetComponent<Rigidbody>().angularDrag; target.GetComponent<Rigidbody>().drag = dragOverride; target.GetComponent<Rigidbody>().angularDrag = dragOverride; tractorDirection = 0; currentTarget = target.gameObject; tractorActive = true; DebugConsole.Log ("Tractor beam activated in Hold mode"); break; } case TractorFunction.PULL: { targetOriginalDrag = target.GetComponent<Rigidbody>().drag; targetOriginalAngularDrag = target.GetComponent<Rigidbody>().angularDrag; target.GetComponent<Rigidbody>().drag = dragOverride; target.GetComponent<Rigidbody>().angularDrag = dragOverride; tractorDirection = -1; currentTarget = target.gameObject; tractorActive = true; DebugConsole.Log ("Tractor beam activated in Pull mode"); break; } case TractorFunction.PUSH: { targetOriginalDrag = target.GetComponent<Rigidbody>().drag; targetOriginalAngularDrag = target.GetComponent<Rigidbody>().angularDrag; target.GetComponent<Rigidbody>().drag = dragOverride; target.GetComponent<Rigidbody>().angularDrag = dragOverride; tractorDirection = 1; currentTarget = target.gameObject; tractorActive = true; DebugConsole.Log ("Tractor beam activated in Push mode"); break; } } }
private void OnGUI() { #if UNITY_EDITOR if ( !this.master.isDummyShip ) #endif { if ( this.GetComponent<NetworkView>().isMine || Network.peerType == NetworkPeerType.Disconnected ) { GUI.Label(tractorStatusLableRect,"Tractor: " + chargePercentage + "%"); if( GUI.Button(tractorPushLableRect, "Engage push")) { tractorUITargetting = true; tractorUITargetType = TractorFunction.PUSH; print("Select target"); } if(GUI.Button(tractorHoldLableRect, "Engage hold")) { tractorUITargetting = true; tractorUITargetType = TractorFunction.HOLD; print("Select target"); } if(GUI.Button(tractorPullLableRect, "Engage pull")) { tractorUITargetting = true; tractorUITargetType = TractorFunction.PULL; print("Select target"); } if(GUI.Button(tractorDisengageLableRect, "Disengage")) { StopTractor(); } } } }