; * $VER: Install Update for MINERVA 1.0
; * Script written by Eckhard Ludwig
;=============================================================================

(complete 0)

(set #Lang    0)
(set #welcome
  (cat
	"\n\nWelcome to the Update for the Adventure\n"
	"MINERVA 1997 by Stephan Stoske (Public-Domain).\n"
	"(See CDROM APC&TCP Vol.5 and AmigaSpecial Spiele Hits.)\n\n"
	"This Update installs a Screenmoderequester and newer programmes.\n\n"
	"The Update is written 1998 by Eckhard Ludwig."
  ))

(set #choose-text
  (cat "Please choose a directory where MINERVA should be installed. A drawer will be created there."
  ))

(set #choose-help
  (cat "In this location a drawer will be created. All files will be installed inside this drawer."
  ))

(set #Lang-text  "What language do you want to install?")

(set #size-text
        (cat
		"Please select Data for HD-Install.\n"
		"(See Help)"
        )
)

(set #size-help
        (cat
		"400kb - Only Programm\n"
		"5Mb   - Sound Data\n"
		"85Mb  - Graphic Data\n"
		"90Mb  - Sound- and Graphic-Data\n"
        )
)

(set #source-text 
	(cat
   		"I need Original CDROM with Minerva-Data .\n"
		"(APC&TCP Vol.5 or AmigaSpecial Spiele Hits)")
)

(set #source-error 
	(cat
         	"\n\nCDROM or Minerva Data not found!?!\n\nInsert CDROM or Select Proceed.")
)

(set #copying     "\n\nCopying graphic and sound files ...\n\nPlease Wait...\n")

(set #fxoff-text
  (cat "Select your Hardware."
  ))

(set #inst-main
  (cat "Copying executables on your hard disk..."
  ))

(set #inst-fonts
  (cat "Installing XEN Fonts ..."
  ))

(set #create-maindir
  (cat "Creating MINERVA directory"
  ))

(set #inst-docs
  (cat "Installing program documentation ..."
  ))

 (SET #exit-Msg 
  (CAT "\n\nMuch fun with MINERVA\n wish you\n\n"
                   "Eckhard Ludwig" 
  ))

; deutsche Texte *****************************

(IF (= @language "deutsch")

(
(set #Lang  1)
(set #welcome
  (cat
	"\n\nWillkommen zu dem Update f�r\n"
	"DAS TOR DER MINERVA 1997 by Stephan Stoske.\n\n"
	"Ver�ffentlicht wurde das Adventure auf den CDROM\n"
	"APC&TCP Vol.5 und AmigaSpecial Spiele Hits.\n"
	"Das Update installiert neben einen Screenmoderequester eine verbesserte Programmversion, "
	"realisiert mit Adventureshop V3.0.\n\n"
	"Update is written 1998 by Eckhard Ludwig."
  ))

(set #choose-text
  (cat "Bitte w�hlen Sie das Verzeichniss wohin MINERVA installiert werden soll. Dieses Installationsscript legt dort selbst eine Schublade an."
  ))

(set #choose-help
  (cat "Bei der Installation werden alle Dateien in dieses Verzeichniss installiert."
  ))

(set #Lang-text  "Welche Sprache soll installiert werden?")

(set #fxoff-text
  (cat "W�hlen Sie die verf�gbare Hardware. Auf langsamer Grafik werden einfachere Bildeffekte benutzt, um Bildst�rungen zu minimieren."
  ))

(set #size-text
        (cat
		"Wie viele Daten m�chten Sie auf Ihrer Festplatte speichern?\n"
		"(Siehe Hilfe)"
        )
)

(set #size-help
        (cat
		"Die Geschwindigkeit, mit der MINERVA Graphiken und Sounds anzeigen kann, "
		"h�ngt von der Geschwindigkeit des CD-ROM Laufwerkes und der CPU ab. Da "
		"CD-ROM's langsamer als Festplatten sind, sollten Sie bei langsameren "
		"Systemen Daten auf Ihrer Festplatte speichern, so das MINERVA schnelleren "
		"Zugriff darauf hat und so schneller anzeigen kann.\n\n"
		"400KB - installiert nur das Programm. Graphiken, Sounds und "
		"Animationen werden von der CDROM geladen.\n"
		" 5MB  - Kopiert alle Sound-Dateien auf die Festplatte.\n"
		"85MB  - Kopiert alle Graphiken.\n"
		"90MB  - Kopiert alle Sound- und Graphik-Dateien.\n"
        )
)

(set #source-text 
	(cat
   		"F�r die weitere Installation ist eine CDROM mit den Minerva-Dateien erforderlich.\n"
		"Bitte w�hlen Sie von dieser CD die Schublade MINERVA, oder 'Weiter'!")
)

(set #source-error 
	(cat
         	"\n\nDie CDROM ist nicht eingelegt, oder die gew�hlte Schublade ist falsch!\n\n"
		"Soll ich die Voreinstellung (APC&TCP CD Vol.5) benutzen, falls sie diese momentan nicht zur Hand haben?\n\n"
		"Mit 'Nein' k�nnen sie erneut ausw�hlen.")
)

(set #create-maindir
  (cat "Erstelle MINERVA Verzeichnisse"
  ))

(set #copying     "\n\nKopiere Dateien ...\n\nBitte warten...\n")

(set #inst-main
  (cat "Installiere MINERVA ..."
  ))

(set #inst-fonts
  (cat "Installiere XEN Fonts ..."
  ))

(set #inst-docs
  (cat "Installiere Programm Dokumentation ..."
  ))

(SET #exit-Msg
  (CAT "\nZum Starten von DAS TOR DER MINERVA doppelklicken sie in der neu angelegten Schublade Minerva-Start.\n\n"
 	"In dem darauf erscheinenden Bildschirmmode Requester w�hlen sie die gew�nschte Aufl�sung, oder Workbench:Window.\n\n"
	"F�r Picasso96 Grafikkartentreiber ist Workbench:Klonen oder Workbench:Window auszuw�hlen!\n"
	"Deaktivieren sie Screenpromoter wie NEWMODE oder CHANGESCREEN!!!"
  ))
))
;*********************************************

(onerror (CLEANUP))

; Cleanup any temporary mess we created
(procedure CLEANUP
    (delete "t:Background")
    (delete "t:Background.prefs")
    (delete "t:Logopic")
    (delete "t:Logopic.prefs")
)

(run "copy Background TO T:Background")
(run "copy Background.prefs TO T:Background.prefs")
(run "copy AShopPic TO T:Logopic")
(run "copy AShopPic.prefs TO T:Logopic.prefs")

(run "run InstallerFX t:background")
(run "wait 1")

;*********************************************
; Greetings & Path ...

(message #welcome)
(welcome)

(if (exists "Games:" (noreq) )
    (set @default-dest "Games:")

    (if (exists "SYS:Games" (noreq) )
        (set @default-dest "SYS:Games")

        (if (exists "Work:Games" (noreq) )
            (set @default-dest "Work:Games")
        )
    )
)

(set default-dest (askdir
    	(prompt #choose-text)
    	(help #choose-help)
    	(default @default-dest)
    	(newpath)
	)
  ) 

(set @default-dest (tackon default-dest "MINERVA"))

(makedir @default-dest
	(prompt #create-maindir)
	(infos)
)
  
(set DEUTSCH
                 (askchoice
                   (help @askchoice-help)
                   (default #Lang)
                   (choices "English" "Deutsch")
                   (prompt #Lang-text)
                 )
  )

(if (= DEUTSCH 1)
	(set LANG "DEUTSCH ")
)

(set install
        (askchoice 
                (prompt #size-text)
                (choices "400KB" "5MB" "85MB" "90MB")
                (help    #size-help)
                (default 2)
        )
)

(set FXOFF
        (askchoice 
                (prompt #fxoff-text)
                (choices "Amiga AGA" "Zorro 2 Graficcard" "Zorro 3 Graficcard")
                (help    @askchoice-help)
                (default 0)
        )
)

(if (<> FXOFF 2)
	(set SETFX "FXOFF")
)

(complete 5)

(run "run InstallerFX t:Logopic")

;*********************************************
; Installation procedure
; 

(set #old-source (expandpath ""))

(if (exists "APC&TCP-CD-Volume-5:" (noreq) )
	(set #old-source "APC&TCP-CD-Volume-5:Tools/Preview/Members/Adventure-Shop/MINERVA/")

	(if (exists "Hits-CD:" (noreq) )
        	(set #old-source "Hits-CD:APC&TCP/Demoversionen/Adventure-Shop/MINERVA/")
	)
)

(if (<> 2 (exists (tackon #old-source "GRAFIK/MINERVA") (noreq)))
	     (until (= flag 1)
	           ((set #old-source (askdir
		        (prompt #source-text)
	        	(help	@askdir-help)
    			(default "APC&TCP-CD-Volume-5:Tools/Preview/Members/Adventure-Shop/MINERVA/")
	    		(newpath)
        	        ))
	           (if (<> 2 (exists (tackon #old-source "GRAFIK/MINERVA") (noreq)))
        	     (if (askbool
                	 (prompt #source-error)
	                 (help " ")
			 )
        	         (
			 (set flag 1)
                	 (set #old-source "APC&TCP-CD-Volume-5:Tools/Preview/Members/Adventure-Shop/MINERVA/")
			 ))
	                 (set flag 1)
			 )
	    )             
	 )
)

(set flag (exists (tackon #old-source "GRAFIK/MINERVA") (noreq)))

(complete 10)

;*********************************************
; copy data

(if (= flag 2)

	(
	(copylib
	     	(prompt "Install CandoGfx.library")
             	(help @copylib-help)
	     	(source (tackon #old-source "LIBS/CandoGfx.library"))
	     	(dest "LIBS:")
	     	(optional "force" "nofail")
	     	(confirm "EXPERT")
	)

	; not used for MINERVA
	;(copylib
	;     	(prompt "Install InovaMusic.library")
        ;     	(help @copylib-help)
	;     	(source (tackon #old-source "LIBS/InovaMusic.library"))
	;     	(dest "LIBS:")
	;     	(optional "force" "nofail")
	;     	(confirm "EXPERT")
	;)

	(copyfiles
	   	(prompt #inst-main)
	   	(help @copyfiles-help)
	   	(source (tackon #old-source "c"))
	   	(dest "C:")
	   	(pattern "#?")
	   	(optional "force" "nofail")
	   	(confirm "EXPERT")
	   	(files)
	)
	
	(complete 13)

	(copyfiles
		(prompt	#inst-fonts)
		(help	@copyfiles-help)
		(source (tackon #old-source "Fonts"))
		(dest	"SYS:Fonts")
	   	(pattern "#?")
	        (optional "force" "nofail")
	   	(confirm "EXPERT")
	   	(files)
	)
	(copyfiles
		(prompt	#inst-fonts)
		(help	@copyfiles-help)
		(source (tackon #old-source "Fonts/XEN"))
		(dest	"SYS:Fonts/XEN")
	   	(pattern "#?")
	        (optional "force" "nofail")
	   	(confirm "EXPERT")
	   	(files)
	)

	(complete 15)
	)
)

(copyfiles
	(prompt	#inst-main)
	(help	@copyfiles-help)
	(source "Advplayer.exe")
	(dest	@default-dest)
        (confirm "EXPERT")
        (optional "force" "nofail")
)

(complete 17)

(copyfiles
	(prompt	#inst-main)
	(help	@copyfiles-help)
	(source "Minerva-Start.info")
	(dest	@default-dest)
        (confirm "EXPERT")
        (optional "force" "nofail")
)

(if  (<> flag 2)
	(set ASSIGNP (cat "Assign LIBS: " (tackon #old-source "LIBS") " ADD\nAssign FONTS: " (tackon #old-source "FONTS") " ADD\nAssign C: " (tackon #old-source "C") " ADD\n"))
)
(if  (or (= install 1) (= install 3))
	(set ASSIGNSND "Assign SND: SOUND\n")
)
(if  (or (= install 2) (= install 3))
	(set ASSIGNGFX "Assign GRA: GFX\n")
)

(textfile 
	(dest (tackon @default-dest "Minerva-Start"))
        (append "; $VER: Minerva-Start 2.0\n\n" ASSIGNP ASSIGNSND ASSIGNGFX "\nstack 20000 >NIL:\nADVPlayer.exe >NIL: DATA=Start.data ADVENTURE=" #old-source " " LANG SETFX "\n")
 )

(complete 18)

(copyfiles
	(prompt	#inst-main)
	(help	@copyfiles-help)
	(source "Minerva.data")
	(dest	@default-dest)
        (confirm "EXPERT")
        (optional "force" "nofail")
)

(complete 19)

(copyfiles
	(prompt	#inst-main)
	(help	@copyfiles-help)
	(source "Start.data")
	(dest	@default-dest)
        (confirm "EXPERT")
        (optional "force" "nofail")
)

(complete 20)

(working #copying)

(if  (or (= install 1) (= install 3))
	(run ("copy \"%s\" TO \"%s\" ALL CLONE" (tackon #old-source "SOUND") (tackon @default-dest "SOUND"))
))

(complete 40)

(if  (or (= install 2) (= install 3))
	(run ("copy \"%s\" TO \"%s\" ALL CLONE" (tackon #old-source "GRAFIK") (tackon @default-dest "GFX"))
))

(complete 90)

(copyfiles
	(prompt	#inst-docs)
	(help	@copyfiles-help)
	(source "readme")
	(dest	@default-dest)
   	(optional "force" "nofail")
   	(confirm "EXPERT")
	(infos)
)

(complete 100)

(CLEANUP)
(EXIT #exit-Msg (quiet))