123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214 |
- using System;
- using UnityEngine;
- public abstract class AVRController : MonoBehaviour
- {
- public bool IsControllerTypeNew
- {
- get
- {
- return this.m_bControllerModeNew;
- }
- }
- public AVRControllerButtons VRControllerButtons
- {
- get
- {
- return this.m_CtrlBtn;
- }
- }
- public OvrMgr.OvrObject.Controller VRControllerObj
- {
- get
- {
- return this.m_obj_controller;
- }
- }
- public bool HandEnable
- {
- get
- {
- return this.m_bHandEnable;
- }
- set
- {
- this.m_bHandEnable = value;
- }
- }
- public Transform UIRayTrans
- {
- get
- {
- return this.m_trUIRayTrans;
- }
- }
- public bool UIRayEnable
- {
- get
- {
- return this.m_bUIRayEnable;
- }
- set
- {
- this.m_bUIRayEnable = value;
- }
- }
- public abstract bool IsHandCameraMode { get; }
- public abstract bool HandCameraMode { get; set; }
- public abstract bool IsHandPenMode { get; }
- public abstract AVRControllerBehavior.LIMIT_MODE HandLimitMode { get; set; }
- public abstract bool HandModelVisible { get; set; }
- public abstract bool HandDanceMode { get; set; }
- public abstract bool HandVRIKMode { get; set; }
- public abstract bool HandYotogiMode { get; set; }
- public virtual void Init()
- {
- this.m_CtrlBtn = base.GetComponent<AVRControllerButtons>();
- OvrMgr.OvrObject ovr_obj = GameMain.Instance.OvrMgr.ovr_obj;
- if (base.gameObject.name.ToLower().Contains("left"))
- {
- this.m_bHandL = true;
- this.m_obj_controller = ovr_obj.left_controller;
- }
- else if (base.gameObject.name.ToLower().Contains("right"))
- {
- this.m_bHandL = false;
- this.m_obj_controller = ovr_obj.right_controller;
- }
- this.m_obj_controller.hand_trans = base.transform;
- this.m_obj_controller.controller = this;
- this.m_obj_controller.controller_buttons = this.m_CtrlBtn;
- Transform transform = base.transform.Find("Grab");
- this.m_obj_controller.grip_collider = transform.GetComponent<OvrGripCollider>();
- this.m_obj_controller.grip_collider.Init(this.m_CtrlBtn);
- this.m_trHandHit = base.transform.Find("HandHit");
- NDebug.Assert(this.m_trHandHit != null);
- this.m_obj_controller.hand_trans_hit = this.m_trHandHit;
- this.m_trUIRayTrans = base.transform.Find("UIRay");
- NDebug.Assert(this.m_trUIRayTrans != null, "UIRayがみつかりません。");
- this.m_VREventGrab = base.GetComponent<VREventNotifierGrab>();
- if (this.m_VREventGrab != null)
- {
- this.m_VREventGrab.Init(this.m_obj_controller);
- }
- }
- public virtual void ChangeControllerNew(bool f_bNew)
- {
- if (f_bNew)
- {
- this.m_CtrlBehOld.enabled = false;
- this.m_CtrlBehNew.enabled = true;
- this.m_CtrlBehNow = this.m_CtrlBehNew;
- }
- else
- {
- this.m_CtrlBehNew.enabled = false;
- this.m_CtrlBehOld.enabled = true;
- this.m_CtrlBehNow = this.m_CtrlBehOld;
- }
- this.m_CtrlBehNow.HandCameraMode = false;
- this.m_CtrlBehNow.HandLimitMode = AVRControllerBehavior.LIMIT_MODE.NORMAL;
- this.m_bControllerModeNew = f_bNew;
- }
- public virtual void DefaultControllerMode(bool f_bEnable)
- {
- if (f_bEnable)
- {
- this.ChangeControllerNew(this.m_bControllerModeNew);
- }
- else
- {
- this.m_CtrlBehOld.enabled = false;
- this.m_CtrlBehNew.enabled = false;
- }
- }
- public virtual void OnEnable()
- {
- this.HandHitReset();
- }
- private void HandHitReset()
- {
- if (this.m_trHandHit == null)
- {
- return;
- }
- int maidCount = GameMain.Instance.CharacterMgr.GetMaidCount();
- for (int i = 0; i < maidCount; i++)
- {
- Maid maid = GameMain.Instance.CharacterMgr.GetMaid(i);
- if (maid != null && maid.body0)
- {
- if (this.m_bHandL)
- {
- maid.body0.m_trHandHitL = this.m_trHandHit;
- }
- else
- {
- maid.body0.m_trHandHitR = this.m_trHandHit;
- }
- }
- }
- }
- public Vector3 GetHandMoveVelocity()
- {
- return this.m_CtrlBehNow.GetVelocityHand();
- }
- public float GetHandRotVelocityY()
- {
- return this.m_CtrlBehNow.GetRotHandY();
- }
- public Vector3 GetCamMoveVelocity()
- {
- return this.m_CtrlBehNow.m_vMoveCam;
- }
- public float GetCamRotVelocityY()
- {
- return this.m_CtrlBehNow.m_fRotCam;
- }
- public bool m_bHandL = true;
- protected bool m_bHandEnable = true;
- protected bool m_bControllerModeNew;
- protected AVRControllerBehavior m_CtrlBehNow;
- protected AVRControllerBehavior m_CtrlBehOld;
- protected AVRControllerBehavior m_CtrlBehNew;
- protected AVRControllerButtons m_CtrlBtn;
- protected VREventNotifierGrab m_VREventGrab;
- protected OvrMgr.OvrObject.Controller m_obj_controller;
- protected Transform m_trUIRayTrans;
- protected bool m_bUIRayEnable = true;
- protected Transform m_trHandHit;
- }
|