Question by
KnightRiderGuy · Dec 28, 2015 at 05:49 PM ·
c#error messagestringintarduino
Cannot implicitly convert type `string' to `int'
How do I get this:
// Update is called once per frame
void Update () {
/*string dataFromArduinoString = sp.ReadLine ();
int dFAI = int.Parse (dataFromArduinoString);
print (dFAI);
DirectionArrow (dFAI);*/
try
{
//DirectionArrow(sp.ReadByte());
//print(sp.ReadByte());
string dataFromArduinoString = sp.ReadLine ();
int dFAI = int.Parse (dataFromArduinoString);
print (dFAI);
DirectionArrow (dFAI);
}
catch (System.Exception) {
}
to work with this:
void DirectionArrow(int buttonStatus)
{
switch (buttonStatus)
{
//OFF Buttons States
//case 0:
case "O":
//deactivate Left Direction Arrow
SystemGuidanceManagerScript WAOff = FindObjectOfType<SystemGuidanceManagerScript>();
WAOff.WestArrowOff ();
SystemGuidanceManagerScript EAOff = FindObjectOfType<SystemGuidanceManagerScript>();
EAOff.EastArrowOff();
SystemGuidanceManagerScript SFXOff = FindObjectOfType<SystemGuidanceManagerScript>();
SFXOff.TopIndicatorOff();
SystemGuidanceManagerScript BGSOff = FindObjectOfType<SystemGuidanceManagerScript>();
BGSOff.BarLEDsSounderOff();
break;
//LEFT BUTTON ON STATE
//case 1:
case "W":
//Activate Left Direction Arrow Indicator
SystemGuidanceManagerScript WAOn = FindObjectOfType<SystemGuidanceManagerScript>();
WAOn.WestArrow();
SystemGuidanceManagerScript WBSOn = FindObjectOfType<SystemGuidanceManagerScript>();
WBSOn.BarLEDsSounderOn();
break;
//RIGHT BUTTON ON STATE
//case 2:
case "E":
//Activate Right Direction Arrow Indicator
SystemGuidanceManagerScript EAOn = FindObjectOfType<SystemGuidanceManagerScript> ();
EAOn.EastArrow ();
SystemGuidanceManagerScript EBSOn = FindObjectOfType<SystemGuidanceManagerScript>();
EBSOn.BarLEDsSounderOn();
break;
}
}
Comment
@SoloDeveloper, Thanks I tried that, and It gave me an error, I found out from another post where I worded the question a bit differently that I needed to do this in my Update:
void Update () {
try
{
string message3 = sp.ReadLine(); //get the message...
if(message3 == "") return; //if its empty stop right here
print(message3);
DirectionArrow (message3.Trim());
}
catch (System.Exception ex) {
print (ex.$$anonymous$$essage);
return;
}
//print("BytesToRead" +sp.BytesToRead);
message2 = sp.ReadLine();
string message = sp.ReadLine(); //get the message...
if(message == "") return; //if its empty stop right here
// parse the input to a float and normalize it (range 0..1) (we could do this already in the Arduino)
float input = 1 - float.Parse (message) / 100f;
// set the slider to the value
float oldValue = slider.value; // -------- this is new
slider.value = input;
// after the slider is updated, we can check for the other things for example play sounds:
if (source.isPlaying) return; // if we are playing a sound stop here
// else check if we need to play a sound and do it
if (slider.value > 0.9f && oldValue <= 0.9f) // ---------this has changed
source.PlayOneShot (BrightnessAudioClips [Random.Range (0, BrightnessAudioClips.Length)]);
else if (slider.value < 0.15f && oldValue >= 0.15f) //----------this has changed
source.PlayOneShot (DarknessAudioClips [Random.Range (0, DarknessAudioClips.Length)]);
}
And this in my Switch Statement:
void DirectionArrow(string buttonStatus)
{
switch (buttonStatus)
{
//OFF Buttons States
case "O":
//deactivate Left Direction Arrow
SystemGuidance$$anonymous$$anagerScript WAOff = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
WAOff.WestArrowOff ();
SystemGuidance$$anonymous$$anagerScript EAOff = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
EAOff.EastArrowOff();
SystemGuidance$$anonymous$$anagerScript SFXOff = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
SFXOff.TopIndicatorOff();
SystemGuidance$$anonymous$$anagerScript BGSOff = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
BGSOff.BarLEDsSounderOff();
break;
//LEFT BUTTON ON STATE
case "W":
//Activate Left Direction Arrow Indicator
SystemGuidance$$anonymous$$anagerScript WAOn = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
WAOn.WestArrow();
SystemGuidance$$anonymous$$anagerScript WBSOn = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
WBSOn.BarLEDsSounderOn();
break;
//RIGHT BUTTON ON STATE
case "E":
//Activate Right Direction Arrow Indicator
SystemGuidance$$anonymous$$anagerScript EAOn = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript> ();
EAOn.EastArrow ();
SystemGuidance$$anonymous$$anagerScript EBSOn = FindObjectOfType<SystemGuidance$$anonymous$$anagerScript>();
EBSOn.BarLEDsSounderOn();
break;
}
}