- -- Export binary file 32bit 
- -- Thanks to Jerzy Kut for the num_to_char function 
-   
- function num_to_char ( number ) 
-  return ( string.char ( math.mod ( math.mod ( number, 256 ) + 256, 256 ) ) ) 
- end 
-   
- function writeIntLSB ( file, number ) 
-  file:write ( num_to_char( number )) -- x>>0 
-  file:write ( num_to_char( number / 256 )) -- x>>8 
-  file:write ( num_to_char( number / 65536 )) -- x>>16 
-  file:write ( num_to_char( number / 16777216 )) -- x>>24 
- end 
-   
- function main () 
-  if mappy.msgBox ("Export binary file", "This example script will export the current layer as a binary file (CDXMap format) (anims are replaced with block 0)\nThis is the same as the default .map format when you save a .map file\n\nRun the script (you will be prompted for a filename to save as)?", mappy.MMB_OKCANCEL, mappy.MMB_ICONQUESTION) == mappy.MMB_OK then 
-   
-   local w = mappy.getValue(mappy.MAPWIDTH) 
-   local h = mappy.getValue(mappy.MAPHEIGHT) 
-   
-   if (w == 0) then 
-    mappy.msgBox ("Export binary file", "You need to load or create a map first", mappy.MMB_OK, mappy.MMB_ICONINFO) 
-   else 
-   
-    local isok,asname = mappy.fileRequester (".", "CDXMap files (*.map)", "*.map", mappy.MMB_SAVE) 
-    if isok == mappy.MMB_OK then 
-   
-     if (not (string.sub (string.lower (asname), -4) == ".map")) then 
-      asname = asname .. ".map" 
-     end 
-   
-     local isok,adjust = mappy.doDialogue ("Export binary file", "Adjust exported values by:", "-1", mappy.MMB_DIALOGUE1) 
-     if isok == mappy.MMB_OK then 
-   
-      adjust = tonumber (adjust) 
- -- open file as binary 
-      outas = io.open (asname, "wb") 
-      writeIntLSB (outas, w) 
-      writeIntLSB (outas, h) 
-      local y = 0 
-      while y < h do 
-       local x = 0 
-       while x < w do 
-        local mapval = mappy.getBlockValue (mappy.getBlock (x, y), mappy.BLKBG) 
-        mapval = mapval + adjust 
-        if mapval < 0 then 
-         mapval = 0 
-        end 
-        writeIntLSB (outas, mapval) 
-        x = x + 1 
-       end 
-       y = y + 1 
-      end 
-      outas:close () 
-   
-     end 
-    end 
-   end 
-  end 
- end 
-   
- test, errormsg = pcall( main ) 
- if not test then 
-     mappy.msgBox("Error ...", errormsg, mappy.MMB_OK, mappy.MMB_ICONEXCLAMATION) 
- end 
-