Exemple #1
0
    // Update is called once per frame
    void Update()
    {
        if (camscript.GetText() != null)
        {
            //message.text = "scanned QR is " + camscript.GetText();
            if (string.Equals("ID", camscript.GetText().Substring(0, 2)) && !cart)
            {
                error.text = "";

                welcome.alpha = 1f;
                open.alpha    = 0f;

                instruction.alpha = 1f;
                user.text         = "Welcome, " + camscript.GetText().Substring(5, camscript.GetText().Length - 5);
                logtxt.text       = "LOG:\n" + camscript.GetText();
                cart          = true;
                scantext.text = "Scan cart to begin";
                audioSource.PlayOneShot(scanCarttobegin);
                camscript.ResetText();
            }
            else if (!cart)
            {
                error.text = "Must scan valid ID";
            }
            else if (string.Equals("Cart", camscript.GetText().Substring(0, 4)) && !bins)
            {
                logtxt.text += "\nCart : " + camscript.GetText();

                instrText.text = "Set up Cart Bins";
                audioSource.PlayOneShot(scanbins);
                error.text    = "";
                user.text     = "Scan and Place Bins";
                scantext.text = "";
                scan1.alpha   = 1f;
                scan2.alpha   = 1f;
                bins          = true;
                camscript.ResetText();
            }
            else if (!bins)
            {
                error.text = "Must scan valid cart ID";
            }
            else if (string.Equals("Bin", camscript.GetText().Substring(0, 3)) && !bin2)
            {
                error.text = "";

                if (!bin1)
                {
                    scan1.alpha  = 0f;
                    done1.alpha  = 1f;
                    bin1         = true;
                    logtxt.text += "\nBin One : " + camscript.GetText();
                    bin1string   = camscript.GetText();
                    if (string.Equals(bin1string, "Bin002"))
                    {
                        CanvasGroup temp = bin1highlight;
                        bin1highlight = bin2highlight;
                        bin2highlight = temp;
                        GameObject temp1 = bin1o;
                        bin1o = bin2o;
                        bin2o = temp1;
                    }
                }
                else
                {
                    if (string.Equals(bin1string, camscript.GetText()))
                    {
                        error.text = "Bin already in use";
                    }
                    else
                    {
                        scan2.alpha  = 0f;
                        done2.alpha  = 1f;
                        bin2         = true;
                        logtxt.text += "\nBin Two : " + camscript.GetText();
                    }
                }
                camscript.ResetText();
                if (bin2)
                {
                    done1.alpha               = 0f;
                    done2.alpha               = 0f;
                    instrText.text            = "Go to";
                    user.resizeTextForBestFit = true;
                    user.text     = items.GetTask1Locations()[numitems - 1];
                    scantext.text = "Scan Location";
                    if (ControllerGrabObject.cartgrabbed)
                    {
                        message.text = "";
                    }
                    else if (!ControllerGrabObject.cartgrabbed)
                    {
                        message.text = "Be sure to attach the cart to yourself by pressing the trigger button on it";
                    }
                    if (!item1)
                    {
                        loc2highlight.alpha = 1f;
                        arrow2.SetActive(true);
                        audioSource.PlayOneShot(golocation1);
                    }
                    else
                    {
                        audioSource.PlayOneShot(golocation2);
                    }
                }
            }
            else if (!bin2)
            {
                error.text = "Must scan valid bin";
            }

            else if (string.Equals(user.text, camscript.GetText()) && !item && numitems > 0)
            {
                if (!item1)
                {
                    audioSource.PlayOneShot(threetimes);
                    loc2highlight.alpha = 0f;
                    loc2arrow.SetActive(false);
                }
                else
                {
                    audioSource.PlayOneShot(twotimes);
                    loc1highlight.alpha = 0f;
                    loc1arrow.SetActive(false);
                }
                if (ControllerGrabObject.cartgrabbed)
                {
                    message.text = "Be sure to detach yourself from the cart and that the cart is not colliding with anything";
                }
                else if (!ControllerGrabObject.cartgrabbed)
                {
                    message.text = "";
                }

                loc1arrow.SetActive(false);
                loc2arrow.SetActive(false);
                currname       = items.GetTask1Keys()[numitems - 1];
                currnum        = items.GetTask1Values()[numitems - 1];
                error.text     = "";
                item           = true;
                instrText.text = currnum + " Units";

                user.text     = currname + "\nItem ID: 10003";
                scantext.text = "Scan item 0/" + currnum;
                logtxt.text  += "\nLocation : " + camscript.GetText();
                camscript.ResetText();
            }
            else if (!item)
            {
                error.text = "Must scan correct location.";
            }
            else if (string.Equals(currname, camscript.GetText()) && !put)
            {
                if (ControllerGrabObject.cartgrabbed)
                {
                    message.text = "Be sure to detach yourself from the cart and that the cart is not colliding with anything";
                }
                else if (!ControllerGrabObject.cartgrabbed)
                {
                    message.text = "";
                }
                slow.alpha = 0f;
                error.text = "";
                itemcount++;
                if (itemcount == currnum)
                {
                    audioSource.PlayOneShot(placeinbins);
                    put            = true;
                    logtxt.text   += "\nItem : " + currname + " (" + currnum + ")";
                    instrText.text = "Put in Bins";
                    user.text      = "";
                    scantext.text  = "";
                    unitstxt.text  = currnum + "\nUnits";
                    graphic.alpha  = 1f;
                    if (items.GetUnits()[numitems - 1, 0] != 0)
                    {
                        bin1txt.text   = items.GetUnits()[numitems - 1, 0] + "";
                        needfill.alpha = 1f;
                    }
                    else
                    {
                        notneed.alpha = 1f;
                    }
                    if (items.GetUnits()[numitems - 1, 1] != 0)
                    {
                        bin2txt.text    = items.GetUnits()[numitems - 1, 1] + "";
                        needfill2.alpha = 1f;
                    }
                    else
                    {
                        notneed2.alpha = 1f;
                    }
                }
                else
                {
                    scantext.text = "Scan item " + itemcount + "/" + currnum;
                }

                camscript.ResetText();
            }
            else if (!put)
            {
                error.text = "Must scan correct item.";
            }
        }
        else if (put && !end)
        {
            //figure out why you have to scan something before you get here!
            //if (string.Equals("ID : Shannon Ke", camscript.GetText())) {
            //Debug.Log("end reached");
            if (!donebins)
            {
                if (needfill.alpha == 1f)
                {
                    bin1highlight.alpha = 1f;
                    ball1.SetActive(true);
                    ball2.SetActive(true);

                    if (bincount == items.GetUnits()[numitems - 1, 0])
                    {
                        needfill.alpha      = 0f;
                        donebin.alpha       = 1f;
                        bincount            = 0;
                        bin1highlight.alpha = 0f;
                        ball1.SetActive(false);
                        ball2.SetActive(false);
                    }
                }
                else
                {
                    if (needfill2.alpha == 1f)
                    {
                        bin2highlight.alpha = 1f; //use currnum variable
                        ball3.SetActive(true);
                        box1.SetActive(true);
                        box2.SetActive(true);

                        if (bincount == items.GetUnits()[numitems - 1, 1])
                        {
                            ball3.SetActive(false);
                            box1.SetActive(false);
                            box2.SetActive(false);
                            needfill2.alpha     = 0f;
                            donebin2.alpha      = 1f;
                            bincount            = 0;
                            bin2highlight.alpha = 0f;
                            donebins            = true;
                        }
                    }
                    else if (notneed2.alpha == 1f)
                    {
                        donebins = true;
                    }
                }
            }
            else
            {
                ResetBins();
                end           = true;
                unitstxt.text = "";
                if (numitems > 0)
                {
                    numitems--;
                    if (numitems == 0)
                    {
                        audioSource.PlayOneShot(complete);
                        instrText.text = "Tote Complete";
                        user.text      = "Take bins to conveyor belts";
                        convey.SetActive(true);
                    }
                    else
                    {
                        item1          = true;
                        end            = false;
                        item           = false;
                        put            = false;
                        donebins       = false;
                        itemcount      = 0;
                        instrText.text = "Go to";
                        user.text      = items.GetTask1Locations()[numitems - 1];
                        scantext.text  = "Scan Location";
                        if (ControllerGrabObject.cartgrabbed)
                        {
                            message.text = "";
                        }
                        else if (!ControllerGrabObject.cartgrabbed)
                        {
                            message.text = "Be sure to attach the cart to yourself by pressing the trigger button on it";
                        }
                        loc1highlight.alpha = 1f;
                        arrow.SetActive(true);
                    }
                }
            }
        }
    }