예제 #1
0
 public void Throw(BoomerangThrower inThrower, Vector3 inEndPosition, float inSpeedUnitsPerSecond, float inRotationSpeedAnglePerSecond, float inHangTimeSeconds)
 {
     myThrower                     = inThrower;
     myStartPosition               = transform.position;
     myEndPosition                 = inEndPosition;
     mySpeedUnitsPerSecond         = inSpeedUnitsPerSecond;
     myRotationSpeedAnglePerSecond = inRotationSpeedAnglePerSecond;
     myHangTimeSeconds             = inHangTimeSeconds;
     startTime                     = Time.time;
     toAwardPoints                 = inThrower.gameObject.transform.root.GetComponent <Score>();
     audio = GetComponent <AudioSource>();
     PlayAudio(throwClip);
 }
예제 #2
0
    // Start is called before the first frame update
    void Start()
    {
        GameObject b = GameObject.FindGameObjectWithTag("Throw Point");

        bThrower = b.GetComponent <BoomerangThrower>();

        movingToSecondTarget = false;
        movingToFinalTarget  = false;
        hitGround            = false;
        canBeDestroyed       = false;
        rb = GetComponent <Rigidbody2D>();

        throwPoint   = GameObject.FindGameObjectWithTag("Throw Point").transform;
        maxRange     = GameObject.FindGameObjectWithTag("Max Range").transform;
        returnTarget = GameObject.FindGameObjectWithTag("Return Target").transform;
        firstTarget  = new Vector2(maxRange.position.x, maxRange.position.y);
        secondTarget = new Vector2(returnTarget.position.x, returnTarget.position.y);
        finalTarget  = new Vector2(throwPoint.position.x, throwPoint.position.y);
    }