Пример #1
0
        public void Initialize(SkyscraperManager skyscraper)
        {
            this.skyscraper = skyscraper;

            var ids = skyscraper.CityArea.Roads.Keys;

            this.roadID   = ids.ElementAt(Random.Range(0, ids.Count));
            this.progress = Random.Range(0f, this.road.Magnitude);

            this.rotateRate = 1f;
            this.timer      = this.autotime;
            this.fov        = Camera.main.fieldOfView;

            transform.rotation = this.Auto();
        }
Пример #2
0
        public void Initialize(SkyscraperManager skyscraper)
        {
            this.cam    = this.cam ?? GetComponentInParent <Camera>();
            this.render = this.render ?? GetComponent <MeshRenderer>();

            var p = this.cam.ViewportToWorldPoint(new Vector3(1f - this.margin, 1f - this.margin, 0f)).XY();
            var s = transform.localScale.XY() * 0.5f;

            transform.position = new Vector3(p.x, p.y, transform.position.z) - new Vector3(s.x, s.y, 0f);

            var center = transform.position.XY();
            var size   = transform.localScale.XY();

            this.field  = new Rect(center - 0.5f * size, size);
            this.height = skyscraper.Builder.SpecialRate / (this.range.y - this.range.x);

            this.material = new Material(this.material);
            this.SetProps(this.height);

            this.render.material = this.material;
            this.render.enabled  = false;
        }