コード例 #1
0
 public CineEventValues SetValues(GameObject[] obj, CineCircle.EventType eventType)
 {
     this.focalPoint = obj[0];
     this.obj        = obj;
     this.eventType  = eventType;
     return(this);
 }
コード例 #2
0
    //Spawns a new CineCam popup
    public static void NotifyCinematic(float zoom, CineCircle.EventType eventType, params GameObject[] focalObjects)
    {
        if (cineCamCount >= cineCamMax || markerDelay > 0 || self == null || Player.host == null)
        {
            return;
        }
        if (!Player.host.playerPrefs.playerSettings.showMarkers)
        {
            return;
        }
        var focalPoint = focalObjects[0];

        if (eventType == CineCircle.ATTACK)
        {
            foreach (KeyValuePair <GameObject, CineEventValues> value in self.cineCircleValues)
            {
                if (value.Value.focalPoint == focalObjects[0])
                {
                    return;
                }
            }
        }

        var cineCam = Instantiate(self.cineCirclePrefab, new Vector2(Screen.width / 2, Screen.height / 3), Quaternion.identity);

        cineCam.transform.SetParent(GameObject.FindGameObjectWithTag("Canvas").transform);
        cineCam.transform.SetSiblingIndex(0);

        var texture    = new RenderTexture(512, 512, 16, RenderTextureFormat.ARGB32);
        var cineCircle = cineCam.GetComponent <CineCircle>();

        cineCircle.Init(texture, focalPoint, zoom, new CineEventValues().SetValues(focalObjects, eventType));

        cineCamCount++;
        markerDelay = 1;
    }