Changing String Not Working

Hi, I am trying to write a script that saves various data about a level so it can be used to change things in the next levels. Everything works except changing a string variable at runtime for some reason. Here is the script:

var VolumeData:float;
var MusicVolumeData:float;
var HideMouseData:boolean;
var ImageEffectsData:boolean;

var Door1Data:String;
var Door2Data:String;
var Door3Data:String;
var Door4Data:String;
var Door5Data:String;
var Door6Data:String;
var Door7Data:String;
var Door8Data:String;
var Door9Data:String;
var Door10Data:String;

DontDestroyOnLoad(gameObject);

function AdvanceLevel(Level:int)
{
	print(Level);
	
	if(Level == 1)
		Door1Data == "Open";
	if(Level == 2)
		Door2Data == "Open";
	if(Level == 3)
		Door3Data == "Open";
	if(Level == 4)
		Door4Data == "Open";
	if(Level == 5)
		Door5Data == "Open";
	if(Level == 6)
		Door6Data == "Open";
	if(Level == 7)
		Door7Data == "Open";
	if(Level == 8)
		Door8Data == "Open";
	if(Level == 9)
		Door9Data == "Open";
	if(Level == 10)
		Door10Data == "Open";
}

function CurrentLevel(Lvl:int)
{
	print(Lvl);
	
	if(Lvl == 1)
		Door1Data == "Complete";
	if(Lvl == 2)
		Door2Data == "Complete";
	if(Lvl == 3)
		Door3Data == "Complete";
	if(Lvl == 4)
		Door4Data == "Complete";
	if(Lvl == 5)
		Door5Data == "Complete";
	if(Lvl == 6)
		Door6Data == "Complete";
	if(Lvl == 7)
		Door7Data == "Complete";
	if(Lvl == 8)
		Door8Data == "Complete";
	if(Lvl == 9)
		Door9Data == "Complete";
	if(Lvl == 10)
		Door10Data == "Complete";
}

However the print(Level); works and shows the level number, but it doesn’t change the string and I cant work out why. Thanks

== operator is equality operator, not assignment operator. You have to use

DoorXData = "Complete"

Btw - I suggest using boolean variables instead of string. Instead of keeping “Complete” string for each level, you can just have a bunch of isLevelXCompleted variables, which would be false at the beginning, and then you can set them to true. Or you can use array of boolean variables.