-#!/usr/bin/scm
-; !#
+;
;
; $Id$
;
;
; The rest of this file may seem like a Long Irritating Series of Parentheses,
-; but it's actually a program. Install a Scheme interpreter, e.g. scm, to run
+; but it's actually a program. Install a Scheme interpreter, e.g. scm, to run
; it.
;
-; This program aids in the conversion of SuperTux levels from 0.1.3 level
+; This program aids in the conversion of SuperTux levels from 0.1.3 level
; format to the one used by SuperTux 0.2.x.
;
; Usage:
; levelconverter-0.1.3_0.2.0.scm < oldformat.stl > newformat.stl
;
+; Bugs:
+; Some things (like what background image to use) are not converted:
+; they will need manual adjustment afterwards.
; ---------------------------------------------------------------------------
; return SuperTux 0.1.3 level in SuperTux 0.2.x form
(define (convert-level level)
- (let
+ (let
(
(type (car level))
(version (find-sublist level 'version))
(if (not background-tm) (error "No background tilemap given"))
(if (not foreground-tm) (error "No foreground tilemap given"))
(if (not objects) (error "No objects list given"))
- (quasiquote
+ (quasiquote
(supertux-level
(version 2)
(name (_ ,(car name)))
(author ,(car author))
- ,(append
+ ,(append
(quasiquote
(sector
(name "main")
)
)
)
-
+
; run conversion on stdin, output to stdout
(write (convert-level (read)))
(newline)