예제 #1
0
    // 2. PlayerManager has found scrap
    public void ShowScrap(ScrapObject newScrap)
    {
        //Debug.Log("Showing: " + newScrap.scrapName);
        newScrap.GetComponent <SpriteRenderer>().enabled = true;
        // newScrap.GetComponent<SpriteRenderer>().color = new Vector4 (0.5764706f,0.2431373f,0,1);
        scrapToTake = newScrap;


        if (newScrap.isBuried == true) // they have not yet scanned this piece
        {
            recentScrap = newScrap.gameObject;
            recentScrap.transform.position = newScrap.transform.position;
            //newScrap.isBuried = false;
            foreach (OnScrapPanelController liveOnScrapPanel in onScrapPanelParent.GetComponentsInChildren <OnScrapPanelController>())
            {
                if (newScrap.ID == liveOnScrapPanel.ID)
                {
                    liveOnScrapPanel.StartActivate();
                    return;
                }
            }
            Vector3    scrapPos     = Camera.main.WorldToScreenPoint(newScrap.transform.position);
            GameObject onScrapPanel = (Instantiate(onScrapPanelPrefab, scrapPos, Quaternion.identity));
            onScrapPanel.GetComponent <OnScrapPanelController>().ID = newScrap.ID;
            onScrapPanel.transform.SetParent(onScrapPanelParent.transform, false);
            onScrapPanel.GetComponent <OnScrapPanelController>().panelScrap   = newScrap;
            onScrapPanel.GetComponent <OnScrapPanelController>().panelScrapGO = newScrap.gameObject;
            Debug.Log("made panel");
        }
        //return newScrap;
    }
예제 #2
0
    public void SpawnDroppedScrap(ScrapObject droppedScrap)
    {
        Debug.Log("Dropping a " + droppedScrap.scrapName);
        GameObject droppedScrapObj = sampleScrap;

        droppedScrapObj.GetComponent <ScrapObject>().scrapName         = droppedScrap.scrapName;
        droppedScrapObj.GetComponent <ScrapObject>().scrapName         = droppedScrap.scrapName;
        droppedScrapObj.GetComponent <ScrapObject>().description       = droppedScrap.description;
        droppedScrapObj.GetComponent <ScrapObject>().image             = droppedScrap.image;
        droppedScrapObj.GetComponent <ScrapObject>().size              = droppedScrap.size;
        droppedScrapObj.GetComponent <ScrapObject>().value             = droppedScrap.value;
        droppedScrapObj.GetComponent <ScrapObject>().material          = droppedScrap.material;
        droppedScrapObj.GetComponent <ScrapObject>().zoneA_rarity      = droppedScrap.zoneA_rarity;
        droppedScrapObj.GetComponent <ScrapObject>().zoneB_rarity      = droppedScrap.zoneB_rarity;
        droppedScrapObj.GetComponent <ScrapObject>().zoneC_rarity      = droppedScrap.zoneC_rarity;
        droppedScrapObj.GetComponent <ScrapObject>().ID                = droppedScrap.ID;
        droppedScrapObj.GetComponent <ScrapObject>().carriesComponents = droppedScrap.carriesComponents;
        droppedScrapObj.GetComponent <ScrapObject>().isBuried          = false;
        droppedScrapObj.SetActive(true);
        Instantiate(droppedScrapObj, PlayerManager.PM.gameObject.transform.position, Quaternion.identity);
        //droppedScrap.transform.parent = PlayerManager.PM.gameObject.transform;
        droppedScrap.transform.parent = gameObject.transform;

        droppedScrap.gameObject.name = droppedScrap.GetComponent <ScrapObject>().scrapName;
        droppedScrap.ID = GenerateScrapID();
        // scale and swap the shadow sprite
        float scrapScale = droppedScrap.size / scrapShadowScaler;

        if (scrapScale > 5)
        {
            scrapScale = 5;
        }
        droppedScrap.gameObject.transform.localScale = new Vector3(scrapScale, scrapScale, scrapScale);
        int blobIndex = Random.Range(0, scrapShadows.Count());

        droppedScrap.gameObject.GetComponent <SpriteRenderer>().sprite = (Sprite)scrapShadows[blobIndex];
    }