static bool LoadShipTiles () { if (!Directory.Exists(pathShipTiles)) return false; string[] dirs = Directory.GetDirectories(pathShipTiles); for (int i = 0; i < dirs.Length; i++) { string path = Helpers.CorrectPath(dirs[i]); FileParser.Parsers.ShipTileParser parser = new FileParser.Parsers.ShipTileParser(path); parser.StartParse(); ShipTilePrefab tile = (ShipTilePrefab)parser.Generate(); Debug.Log(tile); } return true; }
internal override void ProcessProperty(int index, LineTypes.Property line, IParentObject obj, Stack <GameObject> objectStack, ParserContext context) { if (objectStack.Count > 0) { base.ObjectProcessProperty(index, line, obj, objectStack, context); return; } if (context == this.context) { ShipTilePrefab tile = (ShipTilePrefab)obj; switch (index) { case 0: tile.ID = line.argumentsData[0].ToString(); break; case 1: tile.EditorName = line.argumentsData[0].ToString(); break; case 2: tile.EditorDescription = line.argumentsData[0].ToString(); break; case 3: tile.EditorThumbnail = (Texture2D)line.argumentsData[0]; break; case 4: tile.Mass = (float)line.argumentsData[0]; break; case 5: tile.HP = (int)line.argumentsData[0]; break; } return; } throw new Exception("Invalid member in parsed lines list"); }