} //stops the phase ability //!check to see if the player is in phase strike mode public bool CheckTackle() { if (StateInfo.IsName("Tackle")) { //we might have Tackled during a jump so stop the jump animation if (PlayerJumpState == JumpingState.IsJumping) { StopJump(); } if (hit == true && StateInfo.normalizedTime > .30f) { X8Animator.SetBool("Tackle", false); } if (StateInfo.normalizedTime > .65) { if (hit == true) { hit = false; //reset the hit } } if (StateInfo.normalizedTime > .01f && StateInfo.normalizedTime < .65 && X8Animator.GetBool("Tackle") == true) {//&& StateInfo.normalizedTime < .65 ) FaceMe(p_fCameraAngleTheta); // Debug.Log("hit is" + hit.ToString()); //player is in tackle mode //the Direction of attack is the same as the direction of fire without the vertical direction Vector3 TackleDirection = Vector3.zero; if (hit == false) { if (EnemyAI == null) //if this is a real player an not an Enemy AI { TackleDirection = Controls.ShootDirection.normalized * .45f; } else { //with enemy AI the vector will be from the enemy to the player TackleDirection = (EnemyAI.Player.position - this.transform.position).normalized * .45f; } } //zero out the y direction because the we dont want any vertical movement TackleDirection.y = 0; //add the tackle vector the player position PlayerTackleState = TackleState.IsTackling; // Debug.Log("Tackle: " + TackleDirection.normalized.ToString()); if (StateInfo.normalizedTime > .30f && StateInfo.normalizedTime < .65f) { this.transform.position += (TackleDirection.normalized * .55f); } return(true); } else { PlayerTackleState = TackleState.IsNotTackling; //player is no longer in tackle mode if (StateInfo.normalizedTime > .99f) { X8Animator.SetBool("Tackle", false); } return(false); } } return(false); }
//!checks to see if the player is tackling void StopTackle() { X8Animator.SetBool("Tackle", false); PlayerTackleState = TackleState.IsNotTackling; }
public X8Timer ShootTimer = new X8Timer(.5f); //this will time how longer the player faces the recticle void Start() { innerShield = gameObject.GetComponentInChildren <RaydraShield>(); //!search for the sheild in the children of the parent object _myCamera = this.GetComponentInChildren <Camera>(); //get the camera that is connected to this game object bool ScoreMode = false; //initally we are not in score mode //!the player info that unity will keep tract of p_fCameraAngleTheta = 43f; //!initialize the angle that player if facing p_fCameraAnglePhi = 45f; //!The camera is initially yyyyin this state p_fPlayerToFocusAngleTheta = 43f; //!initialize the angle that player if facing p_fPlayerToFocusAnglePhi = 45f; //!//!initialize the angle that player if facing in the upward direction p_fJumpVelocity = .40f; //!initialize the upward jump force ForceOfGravity = 1f / 60f; //!this will have a unit per second force of gravity, in the downward direction p_fOrientationAngle = 90f; //!Angle that the player is facing in degrees p_v3OrientationVect = new Vector3(0, 0, 1f); //!Direction player is facing represented as an angle p_v3PlayerToFocusVect = new Vector3(0, 0, 0); //!The vector the represents the direction the camera if facing p_v3PlayerToCameraVect = new Vector3(0, 0, 0); //!The Vector Data the represent the player to camera direction PlayerMovementState = MovingState.IsStandingStill; //!Intially the player is not moving PlayerJumpState = JumpingState.NotJumping; //!initlialize the the player is not jumping PlayerTackleHitState = TackeHitState.NoContact; //!Initial the tackle state of the player PlayerTackleState = TackleState.IsNotTackling; //!Initial the tackle state of the player PlayerAttackState = AttackMode.NotFiringAbility; //!Initial the shoot state of the player PlayerRaydraState = RaydraState.NotInRaydraMode; //!initailly the player is not in Raydra Mode PlayerCameraState = CameraPerspective.Normal; //!initially the camera to do nothing PlayerPhaseState = PhaseState.IsNotPhasing; PlayerBallThrowState = BallThrowingState.NotBeingThrown; //!Initial the vertical state of the player PlayerBallPossessionState = BallPossessionState.HasBall; //!Initial the Possession State of the player // PlayerMotionVector = new Vector3 (this.transform.position.x,.transform.position.y,playerData.transform.position.z); p_v3PlayerVectorDirection = Vector3.zero; //! This is direction that te player is headed as a vector _armWeapon = this.GetComponentInChildren <RaydraWeapon>(); //!reference to the arm weapon on the player which is null to begin with p_bFacePlayer = false; //! variable that determines weather or not to face the player, this variable determine weather or not this medthod is recursive p_fMass = 0f; //!initialize the mass of the player p_StateTime = 0f; // Time elasped in current state p_Collider = null; //initialize the first collider connect to this body pRidgidBody = null; Controls = GetComponent <RaydraControls>(); if (CameraFocusOverHead != null) { p_v3PlayerToCameraVect = CameraFocusOverHead.transform.position - _myCamera.transform.position; } p_fCameraAnglePhi = Vector3.Angle(new Vector3(0, 1, 0), p_v3PlayerToCameraVect); p_fCameraAngleTheta = Vector3.Angle(new Vector3(1, 0, 0), p_v3PlayerToCameraVect); p_fPlayerToFocusAnglePhi = Vector3.Angle(new Vector3(0, 1, 0), p_v3PlayerToFocusVect); p_fPlayerToFocusAngleTheta = Vector3.Angle(new Vector3(1, 0, 0), p_v3PlayerToFocusVect); X8Animator = GetComponent <Animator>(); isGrounded = false; if (p_v3PlayerToFocusVect.z < 0) { p_fPlayerToFocusAngleTheta = 360 - p_fPlayerToFocusAngleTheta; //make sure that the angle is at the correct corridinate } if (p_v3PlayerToCameraVect.z < 0) { p_fCameraAngleTheta = 360 - p_fCameraAngleTheta; //make sure that the angle is at the correct corridinate } TheBall = FindObjectOfType <RaydraCellz>(); X8Animator = GetComponent <Animator>(); //get the reference to the animator PlayerMovementState = MovingState.IsStandingStill; EnemyAI = GetComponent <Ai>(); //get the ai script attached to the player (if there is one) if (EnemyAI != null) { Debug.Log("enemy AI" + EnemyAI.ToString()); } }