/// <summary> /// /// </summary> public virtual int InitInput() { // Check number of virtual elements. if (numAxes < 0) { numAxes = axes.Length; } if (numButtons < 0) { numButtons = buttons.Length; } // Register virtual elements. mapInput = new Dictionary <string, EntryString>(numAxes + numButtons); int i; // VirtualAxis _aHandles = new VirtualAxis[numAxes]; for (i = 0; i < numAxes; ++i) { _aHandles[i] = CrossInputManager.VirtualAxisReference(this, axes[i].key, true); mapInput.Add(axes[i].key, axes[i]); } // VirtualButton _bHandles = new VirtualButton[numButtons]; for (i = 0; i < numButtons; ++i) { _bHandles[i] = CrossInputManager.VirtualButtonReference(this, buttons[i].key, true); mapInput.Add(buttons[i].key, buttons[i]); } // Load Setting // Load(); return(0); }
/// <summary> /// /// </summary> public int EnterInputFrame() { if (mapMouse) { Vector3 vec = Input.mousePosition; CrossInputManager.SetVirtualMousePositionX(vec.x); CrossInputManager.SetVirtualMousePositionY(vec.y); CrossInputManager.SetVirtualMousePositionZ(vec.z); } int i; for (i = 0; i < numAxes; ++i) { _aHandles[i].Update(Input.GetAxisRaw(axes[i].value)); } for (i = 0; i < numButtons; ++i) { if (Input.GetButtonDown(buttons[i].value)) { _bHandles[i].Pressed(); } else if (Input.GetButtonUp(buttons[i].value)) { _bHandles[i].Released(); } } return(0); }
/// <summary> /// /// </summary> public virtual void InitInput(Object context, string fmt) { string[] entries; int i, imax; // entries = GetPoseStrings(); i = 0; imax = entries.Length; m_VirtualPoses = new VirtualPose[imax]; for (; i < imax; ++i) { m_VirtualPoses[i] = CrossInputManager.VirtualPoseReference(context, string.Format(fmt, entries[i], true)); } // entries = GetAxisStrings(); i = 0; imax = entries.Length; m_VirtualAxes = new VirtualAxis[imax]; for (; i < imax; ++i) { m_VirtualAxes[i] = CrossInputManager.VirtualAxisReference(context, string.Format(fmt, entries[i], true)); } // entries = GetButtonStrings(); i = 0; imax = entries.Length; m_VirtualButtons = new VirtualButton[imax]; for (; i < imax; ++i) { m_VirtualButtons[i] = CrossInputManager.VirtualButtonReference(context, string.Format(fmt, entries[i], true)); } m_IsPress = new bool[imax]; }
/// <summary> /// /// </summary> protected virtual void Awake() { // if (main != null) { if (main != this) { Object.Destroy(this.gameObject); return; } } // if (!useCrossInput) { // Roll back... CrossInputManager.activeInput = new StandaloneInput(); Object.Destroy(this.gameObject); return; } CrossInputManager.activeInput = new CustomizeInput(); main = this; if (dontDestroyOnLoad) { Object.DontDestroyOnLoad(this.gameObject); } IInputSource source; numSources = 0; int i = 0, imax = m_Sources.Length; sources = new List <IInputSource>(imax); for (; i < imax; ++i) { // Fix gameObject... if (m_Sources[i] == null || !m_Sources[i].gameObject.activeInHierarchy) { continue; } source = m_Sources[i] as IInputSource; if (source != null) { if (source.enabled) { if (source.InitInput() == 0) { sources.Add(source); numSources++; } } } } // PrintLogOnStartup(); // _waitEof = new WaitForEndOfFrame(); StartCoroutine(UpdateOnEof()); }
public virtual void InitInput(string fmtAxis, string[] axes, string fmtButton, string[] buttons, string poseName) { int i, imax; // i = 0; imax = axes.Length; m_Axes = new VirtualAxis[imax]; m_MapAxes = new Dictionary <string, VirtualAxis>(imax); for (; i < imax; ++i) { m_Axes[i] = CrossInputManager.VirtualAxisReference(this, string.Format(fmtAxis, axes[i]), true); m_MapAxes.Add(axes[i], m_Axes[i]); // Add the raw input name. } // i = 0; imax = buttons.Length; m_Buttons = new VirtualButton[imax]; m_MapButtons = new Dictionary <string, VirtualButton>(imax); for (; i < imax; ++i) { m_Buttons[i] = CrossInputManager.VirtualButtonReference(this, string.Format(fmtButton, buttons[i]), true); m_MapButtons.Add(buttons[i], m_Buttons[i]); // Add the raw input name. } // pose = CrossInputManager.VirtualPoseReference(this, poseName, true); }
// removes an axes from the cross platform input system public void Remove() { CrossInputManager.UnRegisterVirtualAxis(name); }
protected void AddButton(string name) { // we have not registered this button yet so add it, happens in the constructor CrossInputManager.RegisterVirtualButton(new VirtualButton(name)); }