fCraft.Map.GetFallbackMap C# (CSharp) Method

GetFallbackMap() public method

public GetFallbackMap ( ) : byte[]
return byte[]
        public unsafe byte[] GetFallbackMap()
        {
            byte[] translatedBlocks = ( byte[] )Blocks.Clone();
            int volume = translatedBlocks.Length;
            fixed ( byte* ptr = translatedBlocks ) {
                for ( int i = 0; i < volume; i++ ) {
                    byte block = ptr[i];
                    if ( block > ( byte )MaxLegalBlockType ) {
                        ptr[i] = ( byte )FallbackBlocks[block];
                    }
                }
            }
            return translatedBlocks;
        }

Usage Example

Example #1
0
 byte[] GetCompressedBlocks(Map map) {
 	bool customBlocks = Supports(CpeExtension.CustomBlocks);
 	if (customBlocks && Supports(CpeExtension.BlockDefinitions))
 		return map.GetCompressedCopy(map.Blocks);
 	
 	byte[] blocks = customBlocks ? 
 		map.GetCPEFallbackMap() : map.GetFallbackMap();
 	return Map.MakeCompressedMap(blocks);
 }