コード例 #1
0
 private void Awake()
 {
     mainCam         = Camera.main;
     toolSelect      = FindObjectOfType <ToolSelect>();
     placementAudio  = FindObjectOfType <PlacementAudio>();
     _terrainPainter = FindObjectOfType <TerrainPainter>();
 }
コード例 #2
0
ファイル: TerrainPainter.cs プロジェクト: NightAngel47/Nebula
 private void Awake()
 {
     planet         = FindObjectOfType <TerrestrialRotation>().transform;
     mainCam        = Camera.main;
     ts             = GetComponent <TerrainSelect>();
     toolSelect     = FindObjectOfType <ToolSelect>();
     placementAudio = FindObjectOfType <PlacementAudio>();
 }
コード例 #3
0
    public void SaveTools(StreamWriter writer)
    {
        for (int i = 0; i < 6; i++)
        {
            ToolSelect ts       = toolSelects[i];
            string     toolName = ts.GetToolType();
            string     toolVal  = ts.GetColorVal();

            string toolText = toolName + ":" + toolVal;
            writer.WriteLine(toolText);
        }
        Debug.Log(TAG + "tools saved.");
    }
コード例 #4
0
    //Konin Test
    public int ConvertLine(int ink_available)
    {
        bool fuckyouFlag = true;

        if (points.Count == 1)
        {
            Instantiate(baseDot[ToolSelect.getTool()], points[0], baseDot[ToolSelect.getTool()].rotation);
            return(1);
        }
        while ((ink_available - ink_used) > 0 && fuckyouFlag)
        {
            for (int i = 0; i < points.Count; i++)
            {
                ink_used += 1;
                if ((ink_available - ink_used) <= 0)
                {
                    i = points.Count + 1;
                }
                else
                {
                    Instantiate(baseDot[ToolSelect.getTool()], points[i], baseDot[ToolSelect.getTool()].rotation);
                }
                if (i < points.Count - 1)
                {
                    float distance        = Vector3.Distance(points[i], points[i + 1]);
                    float distanceCovered = interpolationQuality / distance;
                    while (distanceCovered <= 1 && (ink_available - ink_used) > 0)
                    {
                        Instantiate(baseDot[ToolSelect.getTool()], Vector3.Lerp(points[i], points[i + 1], distanceCovered), baseDot[ToolSelect.getTool()].rotation);
                        ink_used        += 1;
                        distanceCovered += interpolationQuality / distance;
                    }
                }
                if (i == points.Count - 1)
                {
                    fuckyouFlag = false;
                }
            }
        }
        return(ink_used);
    }
コード例 #5
0
    public void CreateToolSelects()
    {
        Debug.Log(TAG + "creating tool selects");
        toolSelects = new ToolSelect[6];
        RectTransform toolCon = tools.GetComponent <RectTransform>();

        float totalWidth = toolCon.rect.width;
        float tsWidth    = totalWidth / 6.0f;
        float tsHeight   = 30.0f;
        float padR       = 10.0f;

        for (int i = 0; i < 6; i++)
        {
            GameObject g = Instantiate(ToolSelectPrefab);
            g.transform.SetParent(tools.transform, false);
            RectTransform r = g.GetComponent <RectTransform>();


            float x1 = tsWidth * i;
            float y1 = 0;
            float x2 = x1 + tsWidth - padR;
            float y2 = y1 + tsHeight;
            r.offsetMin = new Vector2(x1, y1);
            r.offsetMax = new Vector2(x2, y2);
            Debug.Log(TAG + x1 + " " + y1 + " " + x2 + " " + y2);

            ToolSelect ts = g.GetComponentInChildren <ToolSelect>();
            toolSelects[i] = ts;
            ts.SetUp(i);

            ts.SetVal("none");
            ts.colorSelect.SetVal(7);
            //close all the menus
            ts.colorSelect.SetColorMenu(false);
            ts.SetToolMenu(false);
        }
    }
コード例 #6
0
    public void LoadTools(Level level)
    {
        Debug.Log(TAG + "loading the tools");
        Level.LevelTool[] levelTools = level.GetTools();

        for (int i = 0; i < 6; i++)
        {
            ToolSelect      t         = toolSelects[i];
            Level.LevelTool levelTool = levelTools[i];

            string toolType = levelTool.GetToolType();
            int    val      = levelTool.GetVal();

            if (toolType == "none")
            {
                val = 7;
            }

            t.SetVal(toolType);
            t.colorSelect.SetVal(val);
            t.colorSelect.SetColorMenu(false);
            t.SetToolMenu(false);
        }
    }
コード例 #7
0
    // Use this for initialization
    void Start()
    {
        player = GameObject.FindGameObjectWithTag("Player").GetComponent <ToolSelect>();

        img = GetComponent <Image>();
    }
コード例 #8
0
    public override void handUpdate(GameObject handOb, bool pinch, bool startButton)
    {
        if (tool2 != null && tool1 != null)
        {
            tool2 = tool1;
        }
        if (tool1 == null)
        {
            tool1 = this;
        }
        else if (tool1 != this)
        {
            tool2 = this;
        }
        sel.select(handOb, ignored: propObject);
        Color color = Color.red;

        if (propObject == null)
        {
            if (sel.getSelected() != null)
            {
                color = Color.green;
                if (pinch)
                {
                    propObject     = sel.getSelected().gameObject;
                    initPosition   = propObject.transform.position;
                    initRotation   = propObject.transform.rotation;
                    initLocalScale = propObject.transform.localScale;
                }
            }
        }
        else if (propObject != null)
        {
            color = Color.green;
            if (tool1 != null && tool2 != null && tool1.propObject == tool2.propObject)
            {
                Vector3 newScale = tool1.transform.position - tool2.transform.position;
                tool1.propObject.transform.localScale += newScale - lastScale;
                lastScale = newScale;
            }
            else
            {
                lastScale = new Vector3(0, 0, 0);
                if (snapCool != 0)
                {
                    snapCool--;
                }
                else if (sel.hitObject())
                {
                    propObject.transform.position = sel.getEnd();
                    if (PropHandler.snap(propObject))
                    {
                        snapCool = 2;
                    }
                }
            }
            if (pinch)
            {
                ToolRemote.SetAllCollision(propObject, true);
                //PropHandler.track(propObject);
                addUndo();
                propObject = null;
            }
        }
        sel.drawLine(color);
    }
コード例 #9
0
 // Start is called before the first frame update
 void Start()
 {
     toolSelect = FindObjectOfType <ToolSelect>();
     rend       = GetComponent <Renderer>();
     source     = GetComponent <AudioSource>();
 }