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 |