Subversion Repositories duke3d_hrp

Rev

Rev 407 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 407 Rev 408
Line 1... Line 1...
1
#!/bin/sh
1
#!/bin/sh
2
 
2
 
3
# Duke Nukem 3D High Resolution Pack Extractor  v0.4.1  2012-07-29
3
# Duke Nukem 3D High Resolution Pack Extractor  v0.4.2  2012-10-19
4
#
4
#
5
# Author: LeoD
5
# Author: LeoD
6
# License: ISC license : http://opensource.org/licenses/isc-license.txt
6
# License: ISC license : http://opensource.org/licenses/isc-license.txt
7
#
7
#
8
# This script extracts a PolyMER or PolyMOST only HRP from your working copy
8
# This script extracts a working copy of your local Duke Nukem 3D High
9
# of the Duke Nukem 3D High Resolution Pack's Subversion repository.
9
# Resolution Pack's Subversion repository, ready for zipping and distribution.
-
 
10
# This is mostly done by hierarchically parsing the *.def files.
-
 
11
# PolyMER or PolyMOST only versions can be chosen.
10
# On Windows you might want MSYS' zip to create package files.
12
# On Windows you might want MSYS' zip to create package files.
11
# ("mingw-get install msys-zip")
13
# ("mingw-get install msys-zip")
12
# MinGW/MSYS performance is horrible, better go Linux. Even my virtual Debian
14
# MinGW/MSYS performance is horrible, better go Linux. Even my virtual Debian
13
# machine accessing the Windows drive is 5 to 10 times faster.
15
# machine accessing the Windows drive is 5 to 10 times faster.
14
# But it still sucks. This needs to become a Perl script one day.
16
# But it still sucks. This needs to become a Perl script one day.
Line 152... Line 154...
152
    cp -p  *.mhk                        "${EXTRACTDIR}"
154
    cp -p  *.mhk                        "${EXTRACTDIR}"
153
    #cp -pv highres/screen/menu/2492.png "${EXTRACTDIR}/highres/screen/menu"
155
    #cp -pv highres/screen/menu/2492.png "${EXTRACTDIR}/highres/screen/menu"
154
 
156
 
155
    #cp -pv highres/common/black.png                          "${EXTRACTDIR}/highres/common"
157
    #cp -pv highres/common/black.png                          "${EXTRACTDIR}/highres/common"
156
    #cp -pv highres/screen/fonts/digital/digital_minus.png    "${EXTRACTDIR}/highres/screen/fonts/digital"
158
    #cp -pv highres/screen/fonts/digital/digital_minus.png    "${EXTRACTDIR}/highres/screen/fonts/digital"
157
    #cp -pv highres/screen/menu/2493_old.png                  "${EXTRACTDIR}/highres/screen/menu"
-
 
158
    #cp -pv highres/screen/menu/widescreen/*_wide.png         "${EXTRACTDIR}/highres/screen/menu"
159
    #cp -pv highres/screen/menu/widescreen/*_wide.png         "${EXTRACTDIR}/highres/screen/menu"
159
    #cp -pv highres/sprites/characters/1357_terminarm.md3     "${EXTRACTDIR}/highres/sprites/characters"
160
    #cp -pv highres/sprites/characters/1357_terminarm.md3     "${EXTRACTDIR}/highres/sprites/characters"
160
    #cp -pv highres/sprites/firstperson/2510_devastator_n.png "${EXTRACTDIR}/highres/sprites/firstperson"
161
    #cp -pv highres/sprites/firstperson/2510_devastator_n.png "${EXTRACTDIR}/highres/sprites/firstperson"
161
    #cp -pv highres/sprites/monsters/1960_reconcar_s.png      "${EXTRACTDIR}/highres/sprites/monsters"
162
    #cp -pv highres/sprites/monsters/1960_reconcar_s.png      "${EXTRACTDIR}/highres/sprites/monsters"
162
    #cp -pv highres/sprites/props/4387.png                    "${EXTRACTDIR}/highres/sprites/props"
163
    #cp -pv highres/sprites/props/4387.png                    "${EXTRACTDIR}/highres/sprites/props"
163
    #cp -pv highres/sprites/signs/4378.png                    "${EXTRACTDIR}/highres/sprites/signs"
-
 
164
    #cp -pv highres/sprites/signs/4379.png                    "${EXTRACTDIR}/highres/sprites/signs"
164
    #cp -pv highres/sprites/signs/4378-79.png                 "${EXTRACTDIR}/highres/sprites/signs"
165
    #cp -pv highres/sprites/signs/4381-85.png                 "${EXTRACTDIR}/highres/sprites/signs"
165
    #cp -pv highres/sprites/signs/4381-85.png                 "${EXTRACTDIR}/highres/sprites/signs"
166
  fi
166
  fi
167
 
167
 
168
  if [ "${HRPTYPE}" = "voxel" ] ; then
168
  if [ "${HRPTYPE}" = "voxel" ] ; then
169
    cp -pv readme.txt             "${EXTRACTDIR}"
169
    cp -pv readme.txt             "${EXTRACTDIR}"
Line 197... Line 197...
197
    cd "${WORKDIR}"
197
    cd "${WORKDIR}"
198
  fi
198
  fi
199
 
199
 
200
  if [ "${HRPTYPE}" = "default" ] ; then
200
  if [ "${HRPTYPE}" = "default" ] ; then
201
    cp -pv  "${DEF_TOP}"          "${EXTRACTDIR}/${DEF_TOP}"
201
    cp -pv  "${DEF_TOP}"          "${EXTRACTDIR}/${DEF_TOP}"
-
 
202
    echo            "\`*.mhk' -> \`${EXTRACTDIR}/*.mhk'"
-
 
203
    cp -p  *.mhk                  "${EXTRACTDIR}"
202
    echo            "\`*.txt' -> \`${EXTRACTDIR}/*.txt'"
204
    echo            "\`*.txt' -> \`${EXTRACTDIR}/*.txt'"
203
    cp -p  *.txt                  "${EXTRACTDIR}"
205
    cp -p  *.txt                  "${EXTRACTDIR}"
204
  fi
206
  fi
205
 
207
 
206
} # copy_known_files()
208
} # copy_known_files()
Line 511... Line 513...
511
 
513
 
512
  if [ "${HRPTYPE}" = "polymost" ] || [ "${HRPTYPE}" = "polymost_override" ] ; then
514
  if [ "${HRPTYPE}" = "polymost" ] || [ "${HRPTYPE}" = "polymost_override" ] ; then
513
    echo "### Creating Polymost maphacks ... ###"
515
    echo "### Creating Polymost maphacks ... ###"
514
    create_polymost_mhk
516
    create_polymost_mhk
515
 
517
 
516
    #echo "### DukePlus<>Polymost HRP compatibility patch ... ###"
518
    echo "### DukePlus<>Polymost HRP compatibility patch ... ###"
517
    dukeplus_polymost_compatibility $DUKEPLUS_POLYMOST_COMPATIBILTY_APPROACH
519
    dukeplus_polymost_compatibility $DUKEPLUS_POLYMOST_COMPATIBILTY_APPROACH
518
  fi
520
  fi
519
 
521
 
520
  echo "### Parsing DEF file hierarchy ... ###"
522
  echo "### Parsing DEF file hierarchy ... ###"
521
  if [ "$EXTRACT_COMMENTED_FILES" = "YES" ] ; then
523
  if [ "$EXTRACT_COMMENTED_FILES" = "YES" ] ; then
Line 565... Line 567...
565
 
567
 
566
cd               "${HRPROOT}"
568
cd               "${HRPROOT}"
567
echo  "PWD     :  ${WORKDIR}"
569
echo  "PWD     :  ${WORKDIR}"
568
echo  "HRPROOT :  ${HRPROOT}"
570
echo  "HRPROOT :  ${HRPROOT}"
569
 
571
 
570
#if [ ! -f "./duke3d.def" ] && [ ! "${HRPTYPE}" = "default" ] ; then
-
 
571
#  echo "ERROR : ./duke3d.def not found. This is no HRP root directory. Exit."
-
 
572
#  exit 1
-
 
573
#fi
-
 
574
 
-
 
575
case "$HRPTYPE" in
572
case "$HRPTYPE" in
576
  polymer|polymost_override|polymost)
573
  polymer|polymost_override|polymost)
577
    main $HRPTYPE
574
    main $HRPTYPE
578
    ;;
575
    ;;
579
  full)
576
  full)
Line 621... Line 618...
621
    ;;
618
    ;;
622
  debug)
619
  debug)
623
    echo "Nothing to debug."
620
    echo "Nothing to debug."
624
    ;;
621
    ;;
625
  *)
622
  *)
626
    #if [ ! -f "./${HRPTYPE}.def" ] ; then
-
 
627
    #  echo "ERROR : ./${HRPTYPE}.def not found. This is no HRP root directory. Exit."
-
 
628
    #  exit 1
-
 
629
    #fi
-
 
630
    if [ -f "${HRPTYPE}.def" ] ; then
623
    if [ -f "${HRPTYPE}" ] && [ "${HRPTYPE##*.}" = "def" ] ; then
631
      DEF_TOP="${HRPTYPE}.def"
624
      DEF_TOP="${HRPTYPE}"
632
      HRPTYPE=default
625
      HRPTYPE=default
633
      SET_VERSION=NO
626
      SET_VERSION=NO
634
      EXTRACT_COMMENTED_FILES=NO
627
      EXTRACT_COMMENTED_FILES=NO
635
      main $HRPTYPE
628
      main $HRPTYPE
636
    else
629
    else
637
      echo "Usage: ${0} {HRPTYPE|TOP_DEF} [v VERSION]"
630
      echo "Usage: ${0} {HRPTYPE|TOP_DEF_FILE} [v VERSION]"
638
      echo "HRPTYPEs: {full|polymer|polymost_override|polymost|both|all}"
631
      echo "HRPTYPEs: {full|polymer|polymost_override|polymost|both|all}"
639
      echo "HRPTYPEs: {sw_highres|sw_lowres|sw_both}"
632
      echo "HRPTYPEs: {sw_highres|sw_lowres|sw_both}"
640
      echo "TOP_DEF:  {Filename without extension}"
-
 
641
      exit 1
633
      exit 1
642
    fi
634
    fi
643
    ;;
635
    ;;
644
esac
636
esac
645
 
637