Ejemplo n.º 1
0
        /// <summary>
        /// Add Force to  the panel.
        /// </summary>
        /// <param name="force"></param>
        /// <param name="axis"></param>
        public void AddForce(float force, JCS_Axis axis)
        {
            if (force == 0.0f)
            {
                return;
            }

            Vector3 tempPos = Vector3.zero;

            switch (axis)
            {
            case JCS_Axis.AXIS_X:
                tempPos.x = force;
                break;

            case JCS_Axis.AXIS_Y:
                tempPos.y = force;
                break;

            case JCS_Axis.AXIS_Z:
                tempPos.z = force;
                break;
            }

            AddForce(tempPos);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Do the movement.
        /// </summary>
        /// <param name="ax"></param>
        /// <param name="speed"></param>
        private void DoMovement(JCS_Axis ax, float speed)
        {
            switch (ax)
            {
            case JCS_Axis.AXIS_X:
                this.transform.position += new Vector3(speed, 0, 0) * Time.deltaTime;
                break;

            case JCS_Axis.AXIS_Y:
                this.transform.position += new Vector3(0, speed, 0) * Time.deltaTime;
                break;

            case JCS_Axis.AXIS_Z:
                this.transform.position += new Vector3(0, 0, speed) * Time.deltaTime;
                break;
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Find the point on the circle line base on the degree.
        /// </summary>
        /// <param name="objPos"> Current effect object's position. </param>
        /// <param name="origin"> origin point. </param>
        /// <param name="deg"> degree </param>
        /// <param name="radius"> radius from the origin. </param>
        /// <param name="axis"> Around which axis? </param>
        /// <returns> Vector3 : point on the circle. </returns>
        public static Vector3 CirclePosition(Vector3 origin, float deg, float radius, Vector3 objPos, JCS_Axis axis)
        {
            deg = deg % 360.0f;

            float rad = DegreeToRadian(deg);

            Vector3 circlePos = origin;

            // add offset to current distance (hyp)
            float hyp = radius;
            float opp = Mathf.Sin(rad) * hyp;
            float adj = Mathf.Cos(rad) * hyp;

            switch (axis)
            {
            case JCS_Axis.AXIS_X:
                circlePos.x  = objPos.x;
                circlePos.y += adj;
                circlePos.z += opp;
                break;

            case JCS_Axis.AXIS_Y:
                circlePos.x += adj;
                circlePos.y  = objPos.y;
                circlePos.z += opp;
                break;

            case JCS_Axis.AXIS_Z:
                circlePos.x += adj;
                circlePos.y += opp;
                circlePos.z  = objPos.z;
                break;
            }

            return(circlePos);
        }