patchimage/scripts/nsmbw/virtualspecial.sh

95 lines
3.2 KiB
Bash
Raw Normal View History

#!/bin/bash
WORKDIR=nsmb.d
DOL=${WORKDIR}/sys/main.dol
DOWNLOAD_LINK="https://fs10n4.sendspace.com/dl/939b01a934c50dcb9d5f739180108e37/57c153d6055d64ea/cky4rn/ChaSMBW_VrS_v0.2.zip"
RIIVOLUTION_ZIP="ChaSMBW_VrS_v0.2.zip"
RIIVOLUTION_DIR="VirtualChallenging"
GAMENAME="Challenging Super Mario Bros. Wii: Virtual Special"
GAME_TYPE=RIIVOLUTION
XML_SOURCE="${RIIVOLUTION_DIR}"
XML_FILE="${RIIVOLUTION_DIR}"/../riivolution/VirtualSpecial.xml
BANNER_LOCATION=${WORKDIR}/files/opening.bnr
WBFS_MASK="SMN[PEJ]01"
show_notes () {
echo -e \
"************************************************
${GAMENAME}
This is a mini hack that has Virtual Day for all those
Computer Lovers who are waiting for Challenging!
Source: http://rvlution.net/thread/2535-challenging-super-mario-bros-wii-virtual-special/
Base Image: New Super Mario Bros. Wii (SMN?01)
Supported Versions: EURv1, EURv2, USAv1, USAv2, JPNv1
************************************************"
}
detect_game_version () {
nsmbw_version
GAMEID=SMN${REG_LETTER}ZC
}
place_files () {
case ${VERSION} in
EUR* )
LANGDIRS=( EngEU FraEU GerEU ItaEU SpaEU )
for dir in "${LANGDIRS[@]}"; do
cp "${RIIVOLUTION_DIR}"/Message/Message.arc "${WORKDIR}"/files/EU/"${dir}"/Message/Message.arc
#cp "${RIIVOLUTION_DIR}"/Layout/wiiStrap.arc "${WORKDIR}"/files/EU/"${dir}"/Layout/wiiStrap/
done
cp -r "${RIIVOLUTION_DIR}"/OpeningP/openingTitle.arc "${WORKDIR}"/files/EU/Layout/openingTitle/
;;
USAv* )
LANGDIRS=( FraUS EngUS SpaUS )
for dir in "${LANGDIRS[@]}"; do
cp "${RIIVOLUTION_DIR}"/Message/Message.arc "${WORKDIR}"/files/US/"${dir}"/Message/Message.arc
cp "${RIIVOLUTION_DIR}"/Layout/wiiStrap.arc "${WORKDIR}"/files/US/"${dir}"/Layout/wiiStrap/
done
cp -r "${RIIVOLUTION_DIR}"/OpeningE/openingTitle.arc "${WORKDIR}"/files/US/Layout/openingTitle/
;;
JPNv1 )
cp "${RIIVOLUTION_DIR}"/Message/Message.arc "${WORKDIR}"/files/JP/Message/Message.arc
#cp "${RIIVOLUTION_DIR}"/Layout/wiiStrap.arc "${WORKDIR}"/files/JP/Layout/wiiStrap/
cp -r "${RIIVOLUTION_DIR}"/OpeningJ/openingTitle.arc "${WORKDIR}"/files/JP/Layout/openingTitle/
;;
esac
cp -r "${RIIVOLUTION_DIR}"/FuncInfo "${WORKDIR}"/files/
cp "${RIIVOLUTION_DIR}"/Sound/stream/*.brstm "${WORKDIR}"/files/Sound/stream/
cp "${RIIVOLUTION_DIR}"/Sound/*.brsar "${WORKDIR}"/files/Sound/
cp "${RIIVOLUTION_DIR}"/Stage/*.arc "${WORKDIR}"/files/Stage/
cp "${RIIVOLUTION_DIR}"/Stage/Texture/* "${WORKDIR}"/files/Stage/Texture/
cp "${RIIVOLUTION_DIR}"/WorldMap/* "${WORKDIR}"/files/WorldMap/
cp "${RIIVOLUTION_DIR}"/Layout/sequenceBGTexture.arc \
"${WORKDIR}"/files/Layout/textures/sequenceBGTexture.arc
for file in charaChangeSelectContents corseSelectUIGuide gameScene \
MultiCourseSelect MultiCourseSelectContents pointResult \
pointResultDateFile pointResultDateFileFree preGame sequenceBG; do
cp "${RIIVOLUTION_DIR}"/Layout/"${file}".arc \
"${WORKDIR}"/files/Layout/"${file}"/"${file}".arc
done
}
dolpatch () {
cp "${XML_FILE}" "${XML_FILE}".new
sed -e 's/80001800/803482C0/g' -i "${XML_FILE}".new
XML_FILE="${XML_FILE}".new
${WIT} dolpatch ${DOL} xml="${XML_FILE}" -s "${XML_SOURCE}" \
xml="${PATCHIMAGE_PATCH_DIR}/NewerSMBW-Loader.xml" -q
${WIT} dolpatch ${DOL} xml="${PATCHIMAGE_PATCH_DIR}/NSMBW_AP.xml" -q
}