
; HIT PUZZLE Installer script (for registered users)
; $VER: HIT PUZZLE Install 1.3a
; written by HITMAN


; Spazio richiesto su disco da HIT PUZZLE
(set size_of_hp 560000)


; Lunghezza high-score file
(set size_of_hg 272)


(set #hitpuzzle-location
(cat "Where I should install HIT PUZZLE?\n(A directory will be created)\n"
))


; Chiede destinazione
(set @new-dest
(askdir
(prompt #hitpuzzle-location)
(help @askdir-help)
(default "SYS:")))


; Controlla se copia su se stesso
(set @SeStesso
(cat @new-dest"HitPuzzle/HitPuzzle_Installer"
))

(if (= @icon @SeStesso)
  (abort
    "You can't copy these files over themselves\n"
  )
)


; Controlla spazio su disco
(set disk-space(getdiskspace @new-dest))

(if (< disk-space size_of_hp)
  (abort
    "Insufficient disk space in\n"
    @new-dest "\n\n"
    "HIT PUZZLE requires at least\n"
    size_of_hp " bytes of empty disk space\n"
  )
)


; Assegna destinazione
(makeassign "assigns" @new-dest)


; Controlla se è già presente una directory "HitPuzzle"
(if (exists "assigns:HitPuzzle")
  (

    (message "\nDirectory already exists!\n\n"
             "The old files will be updated")
  )
)


; Crea directory
(makedir "assigns:HitPuzzle")
(makedir "assigns:HitPuzzle/Docs")
(makedir "assigns:HitPuzzle/Gfx")
(makedir "assigns:HitPuzzle/Music")
(makedir "assigns:HitPuzzle/Sfx")


; Controlla HitPuzzle.HP
(if (exists "assigns:HitPuzzle/HighScore.HP")
  (
    (set hg-len(getsize "assigns:HitPuzzle/HighScore.HP"))
    (if (<> hg-len size_of_hg)
      (
        (message "\nThere is an old version of the\n"
                 "high-score file called 'HighScore.HP'.\n"
                 "Convert it with the program called\n"
                 "'HighScoreConverter' before to play the game")
      )
    )
  )
  (
    (copyfiles
    (source "HighScore.HP")
    (dest "assigns:HitPuzzle")
    (optional "force"))
  )
)


; Copia files
(copyfiles
(source "GFX/Dest.icon")
(dest "assigns:")
(newname "HitPuzzle.info")
(optional "force"))

(copyfiles
(source "Docs.info")
(dest "assigns:HitPuzzle")
(optional "force"))


(copyfiles
(source "HitPuzzle")
(dest "assigns:HitPuzzle")
(optional "force"))

(copyfiles
(source "HitPuzzle.info")
(dest "assigns:HitPuzzle")
(optional "force"))

(copyfiles
(source "HighScoreConverter")
(dest "assigns:HitPuzzle")
(optional "force"))

(copyfiles
(source "HighScoreConverter.info")
(dest "assigns:HitPuzzle")
(optional "force"))

(copyfiles
(source "Docs")
(dest "assigns:HitPuzzle/Docs")
(optional "force")
(all))

(copyfiles
(source "Gfx")
(dest "assigns:HitPuzzle/Gfx")
(optional "force")
(all))

(copyfiles
(source "Music")
(dest "assigns:HitPuzzle/Music")
(optional "force")
(all))

(copyfiles
(source "Sfx")
(dest "assigns:HitPuzzle/Sfx")
(optional "force")
(all))


; Copia KEY
(copyfiles
(source "HitPuzzle.key")
(dest "assigns:HitPuzzle")
(optional "force"))


; Cancella Dest.icon
(delete "assigns:HitPuzzle/Gfx/Dest.icon" (safe) (optional "force"))


; Ciao ciao
(set @default-dest @new-dest)
