Thu, 07 Jun 2018 08:44:17 GMT
So I made this script to change my background, importing images from a file :
"Change the sprite of the background")]
public class ChangeSpriteFungus : Command
public GameObject Background;
public string path;
public override void OnEnter()
Image = ChangeSprite.LoadNewSprite(Application.dataPath + "/Images/" + path);
Background.GetComponent<Image>().sprite = Image;
public override string GetSummary()
string summary = "";
if (path != null)
summary = path;
public override Color GetButtonColor()
return new Color32(221, 184, 169, 255);
It worked perfectly. But when I've restarted Unity. If I had a new one in a block, when I launch the game, the command is deleted and I have this error : "GameObject (named 'Flowchart') references runtime script in scene file. Fixing!" and "The referenced script on this Behaviour (Game Object 'Flowchart') is missing!"
The weird thing is that the same command set before restarting Unity still work. Only the new ones doesn't work.
Thu, 07 Jun 2018 09:18:23 GMT
Yah, this is a weird but normal Unity error. The problem is that the name of the method (ChangeSpriteFungus) has to be exactly the same as the *.cs filename that contains the command. So it too has to be ChangeSpriteFungus.cs. It'll work, but then throw weird errors when you restart/randomly/whenever.
Thu, 07 Jun 2018 11:29:19 GMT
Thanks a lot. For now it seems to work.