Пример #1
0
    // Update is called once per frame
    void Update()
    {
        James_AlienScript jas = gameObject.GetComponentInParent <James_AlienScript>();


        religionbar.fillAmount = jas.rel_Influence / 100;
        politicsbar.fillAmount = jas.pol_Influence / 100;
        culturebar.fillAmount  = jas.cul_Influence / 100;
        techbar.fillAmount     = jas.tech_Influence / 100;


        Debug.Log(jas.tech_Influence);
    }
Пример #2
0
    // 根据影响力长小点点
    public void GenerateDots(GameObject alien)
    {
        James_AlienScript aS = alien.GetComponent <James_AlienScript>();
        // calculate total influence
        float influence_Total = aS.pol_Influence + aS.rel_Influence + aS.cul_Influence + aS.tech_Influence;

        // calculate radius based on total influence
        radius = influence_Total / 100;
        // roll which type of dot to spawn
        float rnd = Random.Range(0, influence_Total + 1);

        if (rnd <= aS.pol_Influence)
        {
            // pol dot
            GameObject dot = Instantiate(politicDotPrefab);
            SetParent(dot);
            dot.transform.position = transform.position + Random.insideUnitSphere * radius;
            dot.transform.position = new Vector3(dot.transform.position.x, dot.transform.position.y, 0);
        }
        else if (rnd > aS.pol_Influence && rnd <= aS.pol_Influence + aS.rel_Influence)
        {
            // rel dot
            GameObject dot = Instantiate(religionDotPrefab);
            SetParent(dot);
            dot.transform.position = transform.position + Random.insideUnitSphere * radius;
            dot.transform.position = new Vector3(dot.transform.position.x, dot.transform.position.y, 0);
        }
        else if (rnd > aS.pol_Influence + aS.rel_Influence && rnd <= influence_Total - aS.tech_Influence)
        {
            // cul dot
            GameObject dot = Instantiate(cultureDotPrefab);
            SetParent(dot);
            dot.transform.position = transform.position + Random.insideUnitSphere * radius;
            dot.transform.position = new Vector3(dot.transform.position.x, dot.transform.position.y, 0);
        }
        else if (rnd > influence_Total - aS.tech_Influence)
        {
            // tech dot
            GameObject dot = Instantiate(techDotPrefab);
            SetParent(dot);
            dot.transform.position = transform.position + Random.insideUnitSphere * radius;
            dot.transform.position = new Vector3(dot.transform.position.x, dot.transform.position.y, 0);
        }
        else
        {
            Debug.LogError("没随机到点点");
        }
    }