public static ContentConfiguration <T> GetFromRootElement(XElement elemRoot, XName name) { ContentConfiguration <T> output; if (elemRoot.Element(name).Elements().Count() == 0) { output = new MaterialConfiguration <T>(); output.nodeName = name.LocalName; return(output); } switch (elemRoot.Element(name).Elements().First().Name.LocalName) { case "material": output = new MaterialConfiguration <T>(); break; case "tiletype": output = new TileConfiguration <T>(); break; case "random": output = new RandomConfiguration <T>(); break; case "ramp": output = new RampConfiguration <T>(); break; case "item": output = new ItemConfiguration <T>(); break; default: Debug.LogError("Found unknown matching method \"" + elemRoot.Element(name).Elements().First().Name.LocalName + "\", assuming material."); output = new MaterialConfiguration <T>(); break; } output.nodeName = name.LocalName; return(output); }
public static TileConfiguration <T> GetFromRootElement(XElement elemRoot, XName name) { TileConfiguration <T> output; if (elemRoot.Element(name).Elements().Count() == 0) { output = new TileMaterialConfiguration <T>(); output.nodeName = name.LocalName; return(output); } string matchType = "NoMatch"; XElement matchElement = elemRoot.Element(name).Elements().First(); foreach (var element in elemRoot.Element(name).Elements()) { if (element.Name.LocalName == "subObject") { continue; } matchType = element.Name.LocalName; matchElement = element; break; } switch (matchType) { case "material": output = new TileMaterialConfiguration <T>(); break; case "tiletype": output = new TileTypeConfiguration <T>(); break; case "random": output = new RandomConfiguration <T>(); break; case "ramp": output = new RampConfiguration <T>(); break; case "item": if (ItemTokenList.IsValid) { output = new ItemConfiguration <T>(); } else { Debug.LogError("Item Types not available in this version of Remotefortressreader. Please upgrade."); output = new TileMaterialConfiguration <T>(); } break; case "growth": output = new PlantGrowthConfiguration <T>(); break; case "designation": output = new TileDesignationConfiguration <T>(); break; case "coverage": output = new CoverageConfiguration <T>(); break; default: IXmlLineInfo lineinfo = matchElement; Debug.LogError("Found unknown matching method \"" + matchType + "\" int " + elemRoot.BaseUri + ":" + lineinfo.LineNumber + "," + lineinfo.LinePosition + ", assuming material."); output = new TileMaterialConfiguration <T>(); break; } output.nodeName = name.LocalName; return(output); }
public override string Populate(RandomConfiguration config) { string reg1 = config.RandomWriteRegister(); return(Get(new[] { config.RandomReadRegister(), reg1 })); }
public override string Populate(RandomConfiguration config) { string reg = config.RandomWriteRegister(); string ins1 = Instruction.Get("andi", new[]
public override string Populate(RandomConfiguration config) { return(Get(new[] { config.RandomReadRegister(), config.RandomLabel() })); }
public override string Populate(RandomConfiguration config) { return(Get(new[] { config.RandomWriteRegister(), config.RandomReadRegister(), _signed ? config.RandomSignedImmediate() : config.Random16BitImmediate(max) })); }
public override string Populate(RandomConfiguration config) { return(Get(new[] { config.RandomWriteRegister() })); }