public static Block?GetSavedBlock(BlockPos pos) { if (playerData == null) { playerData = new PlayerData(); } if (playerData.blocks == null) { return(null); } else { var index = 0; while (index < playerData.blocks.Count) { SavedBlock existingBlock = playerData.blocks[index]; if (existingBlock.blockPos.Equals(pos)) { Block block = new Block((BlockType)existingBlock.type, existingBlock.level); return(block); } index++; } return(null); } }
public static void SaveBlock(Block block, BlockPos pos) { if (playerData == null) { playerData = new PlayerData(); } SavedBlock blockData = new SavedBlock(block, pos); if (playerData.blocks == null) { playerData.blocks = new List <SavedBlock>(); playerData.blocks.Add(blockData); } else { var index = 0; bool found = false; while (index < playerData.blocks.Count) { SavedBlock existingBlock = playerData.blocks[index]; if (existingBlock.blockPos.Equals(pos)) { playerData.blocks[index] = blockData; found = true; break; } index++; } if (!found) { playerData.blocks.Add(blockData); } } }