Example #1
0
	}//OnGUI

	Texture ControllerVarEnum_to_Texture(ControllerVarEnum cve)
	{
		//Return related texture for each respective ControllerVarEnum 
		Texture image = new Texture();
		switch(cve)
		{
		case ControllerVarEnum.ThumbLeft_x:
			image = texThumbLeft_x;
			break;
		case ControllerVarEnum.ThumbLeft_y:
			image = texThumbLeft_y;
			break;
		case ControllerVarEnum.ThumbLeft:
			image = texThumbLeft;
			break;
		case ControllerVarEnum.ThumbRight_x:
			image = texThumbRight_x;
			break;
		case ControllerVarEnum.ThumbRight_y:
			image = texThumbRight_y;
			break;
		case ControllerVarEnum.ThumbRight:
			image = texThumbRight;
			break;
		case ControllerVarEnum.dpad_up:
			image = texdpad_up;
			break;
		case ControllerVarEnum.dpad_down:
			image = texdpad_down;
			break;
		case ControllerVarEnum.dpad_left:
			image = texdpad_left;
			break;
		case ControllerVarEnum.dpad_right:
			image = texdpad_right;
			break;
		case ControllerVarEnum.FP_top:
			image = texFP_top;
			break;
		case ControllerVarEnum.FP_bottom:
			image = texFP_bottom;
			break;
		case ControllerVarEnum.FP_left:
			image = texFP_left;
			break;
		case ControllerVarEnum.FP_right:
			image = texFP_right;
			break;
		case ControllerVarEnum.Interface_left:
			image = texInterface_left;
			break;
		case ControllerVarEnum.Interface_right:
			image = texInterface_right;
			break;
		case ControllerVarEnum.ShoulderTop_left:
			image = texShoulderTop_left;
			break;
		case ControllerVarEnum.ShoulderTop_right:
			image = texShoulderTop_right;
			break;
		case ControllerVarEnum.ShoulderBottom_left:
			image = texShoulderBottom_left;
			break;
		case ControllerVarEnum.ShoulderBottom_right:
			image = texShoulderBottom_right;
			break;
		}
		return image;
	}//ControllerVarEnum_to_Texture
Example #2
0
    }     //OnGUI

    Texture ControllerVarEnum_to_Texture(ControllerVarEnum cve)
    {
        //Return related texture for each respective ControllerVarEnum
        Texture image = new Texture();

        switch (cve)
        {
        case ControllerVarEnum.ThumbLeft_x:
            image = texThumbLeft_x;
            break;

        case ControllerVarEnum.ThumbLeft_y:
            image = texThumbLeft_y;
            break;

        case ControllerVarEnum.ThumbLeft:
            image = texThumbLeft;
            break;

        case ControllerVarEnum.ThumbRight_x:
            image = texThumbRight_x;
            break;

        case ControllerVarEnum.ThumbRight_y:
            image = texThumbRight_y;
            break;

        case ControllerVarEnum.ThumbRight:
            image = texThumbRight;
            break;

        case ControllerVarEnum.dpad_up:
            image = texdpad_up;
            break;

        case ControllerVarEnum.dpad_down:
            image = texdpad_down;
            break;

        case ControllerVarEnum.dpad_left:
            image = texdpad_left;
            break;

        case ControllerVarEnum.dpad_right:
            image = texdpad_right;
            break;

        case ControllerVarEnum.FP_top:
            image = texFP_top;
            break;

        case ControllerVarEnum.FP_bottom:
            image = texFP_bottom;
            break;

        case ControllerVarEnum.FP_left:
            image = texFP_left;
            break;

        case ControllerVarEnum.FP_right:
            image = texFP_right;
            break;

        case ControllerVarEnum.Interface_left:
            image = texInterface_left;
            break;

        case ControllerVarEnum.Interface_right:
            image = texInterface_right;
            break;

        case ControllerVarEnum.ShoulderTop_left:
            image = texShoulderTop_left;
            break;

        case ControllerVarEnum.ShoulderTop_right:
            image = texShoulderTop_right;
            break;

        case ControllerVarEnum.ShoulderBottom_left:
            image = texShoulderBottom_left;
            break;

        case ControllerVarEnum.ShoulderBottom_right:
            image = texShoulderBottom_right;
            break;
        }
        return(image);
    }    //ControllerVarEnum_to_Texture
Example #3
0
		}//Start
		
		// Update is called once per frame
		void Update () 
		{

			string listen;

			//Handle Joysticks removed.
			if (Input.GetJoystickNames().Length < IPInstance.NumControllers)
			{
				//Controller disconnected
				if (On_EVENT_Disconnect != null) On_EVENT_Disconnect();
			}
			//DONE Handle Joysticks removed.

			UpdateControllers();

			//handle controller mode
			switch(ControllerMode)
			{
				
			case ControllerModeEnum.DISPLAY :
				break;
			case ControllerModeEnum.DISPLAY2 :
				break;	
			case ControllerModeEnum.SET :
				CurrentlyProgramming = true;
				switch(SetMode)
				{
				case SetModeEnum.ENTER:
					SetMode = SetModeEnum.WAIT;
					//("enter mode");
					break;
				case SetModeEnum.WAIT:
					//check to see if key has been released.

					if (!ContinueWait(ic))
					{
						ScanForLocked();
						SetMode = SetModeEnum.LISTEN;
					}
					//Debug.Log("Wait mode");
					break;

				case SetModeEnum.WAIT_DPAD:
					//check to see if key has been released.
					
					if (!ContinueWait_dPad(ic))
					{
						SetMode = SetModeEnum.LISTEN;
					}
					//Debug.Log("Wait dPad mode");
					break;

				case SetModeEnum.LISTEN:
					switch(ListenMode)
					{	
					case ControllerVarEnum.ThumbLeft_x:
						//Debug.Log("Thumbx listen");
						listen = SetModeGetString(ic);
						//Debug.Log("ThumbLeft_x: " + listen);
						if(listen != "")
						{
							ControllerArray[ic].set_sThumbLeft_x(listen);
							ListenMode = ControllerVarEnum.ThumbLeft_y;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ThumbLeft_y:
						listen = SetModeGetString(ic);
						//Debug.Log("ThumbLeft_y");
						if(listen != "")
						{
							ControllerArray[ic].set_sThumbLeft_y(listen);
							ListenMode = ControllerVarEnum.ThumbLeft;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ThumbLeft:
						listen = SetModeGetString(ic);
						//Debug.Log("ThumbLeft");
						if(listen != "")
						{
							ControllerArray[ic].set_sThumbLeft(listen);
							ListenMode = ControllerVarEnum.ThumbRight_x;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ThumbRight_x:
						listen = SetModeGetString(ic);
						//Debug.Log("ThumbRight_x");
						if(listen != "")
						{
							ControllerArray[ic].set_sThumbRight_x(listen);
							ListenMode = ControllerVarEnum.ThumbRight_y;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ThumbRight_y:
						listen = SetModeGetString(ic);
						//Debug.Log("ThumbRight_y");
						if(listen != "")
						{
							ControllerArray[ic].set_sThumbRight_y(listen);
							ListenMode = ControllerVarEnum.ThumbRight;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ThumbRight:
						listen = SetModeGetString(ic);
						//Debug.Log("ThumbRight");
						if(listen != "")
						{
							ControllerArray[ic].set_sThumbRight(listen);
							ListenMode = ControllerVarEnum.ShoulderTop_left;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					
					case ControllerVarEnum.ShoulderTop_left:
						listen = SetModeGetString(ic);
						//Debug.Log("ShoulderTop_left");
						if(listen != "")
						{
							ControllerArray[ic].set_sShoulderTop_left(listen);
							ListenMode = ControllerVarEnum.ShoulderTop_right;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ShoulderTop_right:
						listen = SetModeGetString(ic);
						//Debug.Log("ShoulderTop_right");
						if(listen != "")
						{
							ControllerArray[ic].set_sShoulderTop_right(listen);
							ListenMode = ControllerVarEnum.ShoulderBottom_left;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.ShoulderBottom_left:
						//CheckNegFlags(ic);
						listen = SetModeGetStringTrigger(ic);
						//Debug.Log("ShoulderBottom_left");
						if(listen != "")
						{
							ControllerArray[ic].set_sShoulderBottom_left(listen);
							ListenMode = ControllerVarEnum.ShoulderBottom_right;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
							
						}
						break;

					case ControllerVarEnum.ShoulderBottom_right:
						//CheckNegFlags(ic);
						listen = SetModeGetStringTrigger(ic);
						//Debug.Log("ShoulderBottom_right");
						if(listen != "")
						{
							ControllerArray[ic].set_sShoulderBottom_right(listen);
							ListenMode = ControllerVarEnum.Interface_left;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.Interface_left:
						listen = SetModeGetString(ic);
						//Debug.Log("Interface_left");
						if(listen != "")
						{
							ControllerArray[ic].set_sInterface_left(listen);
							ListenMode = ControllerVarEnum.Interface_right;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;
						
					case ControllerVarEnum.Interface_right:
						listen = SetModeGetString(ic);
						//Debug.Log("Interface_right");
						if(listen != "")
						{
							ControllerArray[ic].set_sInterface_right(listen);
							ListenMode = ControllerVarEnum.dpad_up;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;

					

					case ControllerVarEnum.dpad_up:
						listen = SetModeGetString(ic);
						//Debug.Log("dpad_up");
						if(listen == "")
						{
							listen = SetModeGetStringDPadAxis(ic); //because down can produce negative values
							if(listen != "")
							{
								//Check for a negative axis, if it's negative, the dPad is inverted.
								ControllerArray[ic].dPadInverted = true;
							}
						}
						if(listen != "")
						{
							if( listen[3] == 'A')
							{
								ControllerArray[ic].dPadIsAxis = true; //Need to flag that the dPad is using axis control
							}
							else
							{
								ControllerArray[ic].dPadIsAxis = false; //revert back, in case user made a mistake
							}
							ControllerArray[ic].set_sdpad_up(listen);
							ListenMode = ControllerVarEnum.dpad_down;
							SetMode = SetModeEnum.WAIT_DPAD;
							if (SingleSetMode) EndProgramming();
						}
						break;
					case ControllerVarEnum.dpad_down:
						listen = SetModeGetString(ic);
						if(listen == "")
						{
							listen = SetModeGetStringDPadAxis(ic); //because down can produce negative values
						}
						//Debug.Log("dpad_down");
						if(listen != "")
						{
							if( listen[3] == 'A')
							{
								ControllerArray[ic].dPadIsAxis = true; //Need to flag that the dPad is using axis control
							}
							else
							{
								ControllerArray[ic].dPadIsAxis = false; //revert back, in case user made a mistake
							}
							ControllerArray[ic].set_sdpad_down(listen);
							ListenMode = ControllerVarEnum.dpad_left;
							SetMode = SetModeEnum.WAIT_DPAD;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.dpad_left:
						listen = SetModeGetString(ic);
						if(listen == "")
						{
							listen = SetModeGetStringDPadAxis(ic); //because left can produce negative values
						}
						//Debug.Log("dpad_left");
						if(listen != "")
						{
							if( listen[3] == 'A')
							{
								ControllerArray[ic].dPadIsAxis = true; //Need to flag that the dPad is using axis control
							}
							else
							{
								ControllerArray[ic].dPadIsAxis = false; //revert back, in case user made a mistake
							}
							ControllerArray[ic].set_sdpad_left(listen);
							ListenMode = ControllerVarEnum.dpad_right;
							SetMode = SetModeEnum.WAIT_DPAD;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.dpad_right:
						listen = SetModeGetString(ic);
						//Debug.Log("dpad_right");
						if(listen != "")
						{
							if( listen[3] == 'A')
							{
								ControllerArray[ic].dPadIsAxis = true; //Need to flag that the dPad is using axis control
							}
							else
							{
								ControllerArray[ic].dPadIsAxis = false; //revert back, in case user made a mistake
							}
							ControllerArray[ic].set_sdpad_right(listen);
							ListenMode = ControllerVarEnum.FP_top;
							SetMode = SetModeEnum.WAIT_DPAD;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.FP_top:
						listen = SetModeGetString(ic);
						//Debug.Log("FP_top");
						if(listen != "")
						{
							ControllerArray[ic].set_sFP_top(listen);
							ListenMode = ControllerVarEnum.FP_bottom;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.FP_bottom:
						listen = SetModeGetString(ic);
						//Debug.Log("FP_bottom");
						if(listen != "")
						{
							ControllerArray[ic].set_sFP_bottom(listen);
							ListenMode = ControllerVarEnum.FP_left;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.FP_left:
						listen = SetModeGetString(ic);
						//Debug.Log("FP_left");
						if(listen != "")
						{
							ControllerArray[ic].set_sFP_left(listen);
							ListenMode = ControllerVarEnum.FP_right;
							SetMode = SetModeEnum.WAIT;
							if (SingleSetMode) EndProgramming();
						}
						break;

					case ControllerVarEnum.FP_right:
						listen = SetModeGetString(ic);
						//Debug.Log("FP_right");
						if(listen != "")
						{
							ControllerArray[ic].set_sFP_right(listen);
							//ListenMode = ControllerVarEnum.Interface_left;
							SetMode = SetModeEnum.WAIT;
							EndProgramming();
						}
						break;

					}//switch(ListenMode)
					break;
				case SetModeEnum.EXIT:
					break;
				}//switch(SetMode)
				
				
				break;
			}//switch(ControllerMode)

		}//Update
Example #4
0
		}//Update

		private void EndProgramming()
		{
			//Finish the controller programming cycle
			ControllerMode = ControllerModeEnum.OFF;
			SetMode = SetModeEnum.ENTER;
			ListenMode = ControllerVarEnum.ThumbLeft_x;
			//check for full range triggers
			if(ControllerArray[ic].get_ShoulderBottom_left() < -0.99f)
			{
				ControllerArray[ic].FullRangeTriggers = true;
			}
			SaveController(ic);
			//LoadController(ic);
			CurrentlyProgramming = false;
			SingleSetMode = false;
			ic = 0;
		}//EndProgramming
Example #5
0
		}//LearnController

		static public void LearnControllerSingle(int num, ControllerVarEnum ctrl)
		{
			//learn a single control. ex. dpad_down

			if (num <= IPInstance.NumControllers)
			{
				IPInstance.SingleSetMode = true;
				IPInstance.ControllerMode = ControllerModeEnum.SET;
				IPInstance.SetMode = SetModeEnum.ENTER;
				IPInstance.ListenMode = ctrl;
				IPInstance.ic = num - 1;
				if(IPInstance.ListenMode == ControllerVarEnum.ShoulderBottom_left || 
				   IPInstance.ListenMode == ControllerVarEnum.ShoulderBottom_right)
				{
					//need to reset FullRangeTriggers, will be set again when learning
					IPInstance.ControllerArray[IPInstance.ic].FullRangeTriggers = false;
				}
			}
			
		}//LearnControllerSignle
Example #6
0
		public static float GetData(int ctrlnum, ControllerVarEnum control)
		{
			if ((ctrlnum < 1) || (ctrlnum > Constants.MAX_CTRL_SIZE))
			{
				if (IPInstance.DebugText) Debug.Log("cntrlnum in InputPlus.GetData must be between 1 - " 
				          + Constants.MAX_CTRL_SIZE.ToString() + ", using 1 as default");
				ctrlnum = 1;
			}
			
			switch (control)
			{
			case ControllerVarEnum.dpad_up :
				return IPInstance.ControllerArray[ctrlnum - 1].get_dpad_up();
			case ControllerVarEnum.dpad_down:
				return IPInstance.ControllerArray[ctrlnum - 1].get_dpad_down();
			case ControllerVarEnum.dpad_left :
				return IPInstance.ControllerArray[ctrlnum - 1].get_dpad_left();
			case ControllerVarEnum.dpad_right :
				return IPInstance.ControllerArray[ctrlnum - 1].get_dpad_right();
			case ControllerVarEnum.FP_top :
				return IPInstance.ControllerArray[ctrlnum - 1].get_FP_top();
			case ControllerVarEnum.FP_bottom :
				return IPInstance.ControllerArray[ctrlnum - 1].get_FP_bottom();
			case ControllerVarEnum.FP_left :
				return IPInstance.ControllerArray[ctrlnum - 1].get_FP_left();
			case ControllerVarEnum.FP_right :
				return IPInstance.ControllerArray[ctrlnum - 1].get_FP_right();
			case ControllerVarEnum.Interface_right :
				return IPInstance.ControllerArray[ctrlnum - 1].get_Interface_right();
			case ControllerVarEnum.Interface_left :
				return IPInstance.ControllerArray[ctrlnum - 1].get_Interface_left();
			case ControllerVarEnum.ShoulderTop_right :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ShoulderTop_right();
			case ControllerVarEnum.ShoulderTop_left :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ShoulderTop_left();
			case ControllerVarEnum.ShoulderBottom_right :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ShoulderBottom_right();
			case ControllerVarEnum.ShoulderBottom_left :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ShoulderBottom_left();
			case ControllerVarEnum.ThumbRight_x :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ThumbRight_x();
			case ControllerVarEnum.ThumbRight_y :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ThumbRight_y();
			case ControllerVarEnum.ThumbRight :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ThumbRight();
			case ControllerVarEnum.ThumbLeft_x :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ThumbLeft_x();
			case ControllerVarEnum.ThumbLeft_y :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ThumbLeft_y();
			case ControllerVarEnum.ThumbLeft :
				return IPInstance.ControllerArray[ctrlnum - 1].get_ThumbLeft();
			}//switch (control) 
			
			if (IPInstance.DebugText) Debug.Log("InputPlus.GetData failed to get any data, returning 0");
			return 0;
		}//GetData