コード例 #1
0
ファイル: ParallaxCamera.cs プロジェクト: cemizm/MiniJam63
 private void Awake()
 {
     if (OnCameraMove == null)
     {
         OnCameraMove = new CameraMoveEvent();
     }
 }
コード例 #2
0
    public override void Trigger()
    {
        Beast attacker = Singleton <BeastManager> .singleton.GetBeastById(AttackerId);

        if (attacker != null && this.BeAttackIdList != null)
        {
            float disTemp = 0;
            foreach (var current in this.BeAttackIdList)
            {
                Beast beast = Singleton <BeastManager> .singleton.GetBeastById(current);

                if (beast != null)
                {
                    float dis = Vector3.Magnitude(attacker.MovingPos - beast.MovingPos);
                    if (dis > disTemp)
                    {
                        disTemp = dis;
                    }
                }
            }
            int distance = (int)(disTemp / 1.4721999943256379f);
            if (this.record != null)
            {
                DataCameraDist data = DataCameraDist.GetDataByDistance(distance);
                if (data != null)
                {
                    this.OffDis = data.CameraDist;
                }
                this.record.RecoverScale                = CameraManager.Instance.Scale;
                this.record.RecoverLookAtPos            = CameraManager.Instance.LookAtPos;
                this.record.RecoverCameraPos            = CameraManager.Instance.GameNode.position;
                this.record.RecoverDist                 = CameraManager.Instance.Distance;
                this.record.RecorverDir                 = CameraManager.Instance.GameNode.forward;
                CameraManager.Instance.CameraMoveEffect = false;
                Vector3         recoverCameraPos = this.record.RecoverCameraPos;
                Vector3         recoverLookAtPos = this.record.RecoverLookAtPos;
                Vector3         destPos          = attacker.MovingPos - this.OffDis * this.record.RecorverDir;
                Vector3         movingPos        = attacker.MovingPos;
                float           duration         = this.Duration;
                CameraMoveEvent work             = new CameraMoveEvent(recoverCameraPos, destPos, recoverLookAtPos, movingPos, Time.time, duration);
                attacker.AddWork(work);
                CameraManager.Instance.Lock = true;
            }
        }
    }
コード例 #3
0
        public override void createUI(ISkillEvent value, EditorUI p)
        {
            base.createUI(value, p);

            ev = value as CameraMoveEvent;

            formItem       = new EditorVector3("偏移:");
            formItem.value = ev.position;
            formItem.addEventListener(EventX.CHANGE, formHandle);

            checkRadio          = new EditorRadio("获取焦点");
            checkRadio.selected = ev.focusGet;
            checkRadio.addEventListener(EventX.CHANGE, checkRadioHandle);

            if (checkRadio.selected)
            {
                forceRadio          = new EditorRadio("强转");
                forceRadio.selected = ev.forceChange;
                forceRadio.addEventListener(EventX.CHANGE, checkRadioHandle);
            }

            p.addChild(formItem);
            p.addChild(checkRadio);
        }
コード例 #4
0
 public void OnRotateCamera(InputAction.CallbackContext context)
 {
     CameraMoveEvent.Invoke(context.ReadValue <Vector2>());
 }