public static JSONTech FromTech(Tank tech) { var jTech = new JSONTech { Name = tech.name, Blocks = new List <JSONBlock>() }; foreach (var block in tech.blockman.IterateBlocks()) { jTech.Blocks.Add(JSONBlock.FromBlock(block)); } return(jTech); }
public static JSONBlock FromBlock(TankBlock block) { var jBlock = new JSONBlock() { Type = block.BlockType, OrthoRotation = block.cachedLocalRotation.rot, Position = block.cachedLocalPosition, localPosition = block.trans.localPosition, localEulerAngles = block.trans.localEulerAngles, localScale = block.trans.localScale }; if (block.tank) { jBlock.IsRootBlock = block.tank.blockman.IsRootBlock(block); } return(jBlock); }