Example #1
0
 // Start is called before the first frame update
 public DiceDot(DICETYPE d)
 {
     type = d;
 }
Example #2
0
    public void Change(int num, Transform t = null)
    {
        int tmpNum = number;

        number = num;
        if (number == 0)
        {
            foreach (Transform dd in dots)
            {
                dd.GetComponent <DiceDot>().Destroy();
            }
            dots.RemoveRange(0, tmpNum);
            image.color = new Color(255, 255, 255);
            type        = DICETYPE.DEFAULT;
            return;
        }
        Transform newDot;

        type = RandomDiceEnum <DICETYPE>();
        switch (type)
        {
        case DICETYPE.FIRE:
            image.color = new Color(255, 0, 0, 255);
            newDot      = Instantiate(dicedotPrefab, transform.position, Quaternion.identity);
            newDot.SetParent(gameObject.transform);
            newDot.localScale = new Vector3(1, 1, 1);
            dots.Add(newDot);
            foreach (Transform dd in dots)
            {
                dd.GetComponent <DiceDot>().SetDot();
            }
            break;

        case DICETYPE.METAL:
            image.color = new Color(0, 0, 0, 255);
            newDot      = Instantiate(dicedotPrefab, transform.position, Quaternion.identity);
            newDot.SetParent(gameObject.transform);
            newDot.localScale = new Vector3(1, 1, 1);
            dots.Add(newDot);
            foreach (Transform dd in dots)
            {
                dd.GetComponent <DiceDot>().SetDot();
            }
            break;

        case DICETYPE.POISON:
            image.color = new Color(0, 255, 0, 255);
            newDot      = Instantiate(dicedotPrefab, transform.position, Quaternion.identity);
            newDot.SetParent(gameObject.transform);
            newDot.localScale = new Vector3(1, 1, 1);
            dots.Add(newDot);
            foreach (Transform dd in dots)
            {
                dd.GetComponent <DiceDot>().SetDot();
            }
            break;

        case DICETYPE.THUNDER:
            image.color = new Color(185, 185, 0, 255);
            newDot      = Instantiate(dicedotPrefab, transform.position, Quaternion.identity);
            newDot.SetParent(gameObject.transform);
            newDot.localScale = new Vector3(1, 1, 1);
            dots.Add(newDot);
            foreach (Transform dd in dots)
            {
                dd.GetComponent <DiceDot>().SetDot();
            }
            break;

        case DICETYPE.WIND:
            image.color = new Color(0, 230, 255, 255);
            newDot      = Instantiate(dicedotPrefab, transform.position, Quaternion.identity);
            newDot.SetParent(gameObject.transform);
            newDot.localScale = new Vector3(1, 1, 1);
            dots.Add(newDot);
            foreach (Transform dd in dots)
            {
                dd.GetComponent <DiceDot>().SetDot();
            }
            break;
        }

        switch (number)
        {
        case 1:
            dots[0].transform.position = transform.position;
            break;

        case 2:
            dots[0].transform.position = (transform.position + new Vector3(7.5f, 7.5f, 0f));
            dots[1].transform.position = (transform.position + new Vector3(-7.5f, -7.5f, 0f));
            break;

        case 3:
            dots[0].transform.position = (transform.position + new Vector3(7.5f, 7.5f, 0f));
            dots[1].transform.position = (transform.position + new Vector3(-7.5f, -7.5f, 0f));
            dots[2].transform.position = (transform.position);
            break;

        case 4:
            dots[0].transform.position = (transform.position + new Vector3(7.5f, 7.5f, 0f));
            dots[1].transform.position = (transform.position + new Vector3(-7.5f, -7.5f, 0f));
            dots[2].transform.position = (transform.position + new Vector3(-7.5f, 7.5f, 0f));
            dots[3].transform.position = (transform.position + new Vector3(7.5f, -7.5f, 0f));
            break;

        case 5:
            dots[0].transform.position = (transform.position + new Vector3(7.5f, 7.5f, 0f));
            dots[1].transform.position = (transform.position + new Vector3(-7.5f, -7.5f, 0f));
            dots[2].transform.position = (transform.position + new Vector3(-7.5f, 7.5f, 0f));
            dots[3].transform.position = (transform.position + new Vector3(7.5f, -7.5f, 0f));
            dots[4].transform.position = (transform.position);
            break;

        case 6:
            dots[0].transform.position = (transform.position + new Vector3(-5.0f, 5.0f, 0f));
            dots[1].transform.position = (transform.position + new Vector3(-5.0f, 0.0f, 0f));
            dots[2].transform.position = (transform.position + new Vector3(-5.0f, -5.0f, 0f));
            dots[3].transform.position = (transform.position + new Vector3(5.0f, 5.0f, 0f));
            dots[4].transform.position = (transform.position + new Vector3(5.0f, 0.0f, 0f));
            dots[5].transform.position = (transform.position + new Vector3(5.0f, -5.0f, 0f));
            break;
        }
    }