Add more locations from *Style Savvy: Styling Star*

This commit is contained in:
RocketRobz 2020-08-25 01:30:05 -06:00
parent a863c3388c
commit 02f4c73776
37 changed files with 154 additions and 68 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 545 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_cakeShop4.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 608 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_charityStage.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_concertHall.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 669 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_florist.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_girlyStage_0.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_girlyStage_1.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_lifestyleShop4.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 463 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_livelyStage_0.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_livelyStage_1.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 463 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_livelyStage_2.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 KiB

View File

@ -0,0 +1 @@
-f rgba -z auto "bg_livelyStage_3.png"

View File

@ -84,6 +84,7 @@ void GFX::loadBgSprite(void) {
if (bgSpriteLoaded) return;
timeOutside = 2; // Default is Nighttime
int aniFrames = 0;
const char* bgPath;
time_t t = time(0);
@ -143,8 +144,10 @@ void GFX::loadBgSprite(void) {
case 12:
if (isDaytime(hour, minutes)) {
bgPath = "romfs:/gfx/bgDay_tropicaBeach_0.t3x";
aniFrames = 2;
} else if (isEvening(hour, minutes)) {
bgPath = "romfs:/gfx/bgSunset_tropicaBeach_0.t3x";
aniFrames = 2;
} else {
bgPath = "romfs:/gfx/bgNight_tropicaBeach.t3x";
}
@ -287,6 +290,7 @@ void GFX::loadBgSprite(void) {
break;
case 51:
bgPath = "romfs:/gfx/bg_liveMusicClub3_0.t3x";
aniFrames = 3;
break;
case 52:
if (isDaytime(hour, minutes)) {
@ -326,40 +330,63 @@ void GFX::loadBgSprite(void) {
break;
case 56:
if (isDaytime(hour, minutes)) {
bgPath = "romfs:/gfx/bgDay_countrysideSpring.png";
bgPath = "romfs:/gfx/bgDay_countrysideSpring.t3x";
} else if (isEvening(hour, minutes)) {
bgPath = "romfs:/gfx/bgSunset_countrysideSpring.png";
bgPath = "romfs:/gfx/bgSunset_countrysideSpring.t3x";
} else {
bgPath = "romfs:/gfx/bgNight_countrysideSpring.png";
bgPath = "romfs:/gfx/bgNight_countrysideSpring.t3x";
}
break;
case 57:
if (isDaytime(hour, minutes)) {
bgPath = "romfs:/gfx/bgDay_countrysideSummer.png";
bgPath = "romfs:/gfx/bgDay_countrysideSummer.t3x";
} else if (isEvening(hour, minutes)) {
bgPath = "romfs:/gfx/bgSunset_countrysideSummer.png";
bgPath = "romfs:/gfx/bgSunset_countrysideSummer.t3x";
} else {
bgPath = "romfs:/gfx/bgNight_countrysideSummer.png";
bgPath = "romfs:/gfx/bgNight_countrysideSummer.t3x";
}
break;
case 58:
if (isDaytime(hour, minutes)) {
bgPath = "romfs:/gfx/bgDay_countrysideFall.png";
bgPath = "romfs:/gfx/bgDay_countrysideFall.t3x";
} else if (isEvening(hour, minutes)) {
bgPath = "romfs:/gfx/bgSunset_countrysideFall.png";
bgPath = "romfs:/gfx/bgSunset_countrysideFall.t3x";
} else {
bgPath = "romfs:/gfx/bgNight_countrysideFall.png";
bgPath = "romfs:/gfx/bgNight_countrysideFall.t3x";
}
break;
case 59:
if (isDaytime(hour, minutes)) {
bgPath = "romfs:/gfx/bgDay_countrysideWinter.png";
bgPath = "romfs:/gfx/bgDay_countrysideWinter.t3x";
} else if (isEvening(hour, minutes)) {
bgPath = "romfs:/gfx/bgSunset_countrysideWinter.png";
bgPath = "romfs:/gfx/bgSunset_countrysideWinter.t3x";
} else {
bgPath = "romfs:/gfx/bgNight_countrysideWinter.png";
bgPath = "romfs:/gfx/bgNight_countrysideWinter.t3x";
}
break;
case 60:
bgPath = "romfs:/gfx/bg_lifestyleShop4.t3x";
break;
case 61:
bgPath = "romfs:/gfx/bg_florist.t3x";
break;
case 62:
bgPath = "romfs:/gfx/bg_cakeShop4.t3x";
break;
case 63:
bgPath = "romfs:/gfx/bg_livelyStage_0.t3x";
aniFrames = 3;
break;
case 64:
bgPath = "romfs:/gfx/bg_girlyStage_0.t3x";
aniFrames = 1;
break;
case 65:
bgPath = "romfs:/gfx/bg_concertHall.t3x";
break;
case 66:
bgPath = "romfs:/gfx/bg_charityStage.t3x";
break;
}
FILE* bgFile = fopen(bgPath, "rb");
fread((void*)bgSpriteMem[0], 1, 0x200000, bgFile);
@ -373,32 +400,38 @@ void GFX::loadBgSprite(void) {
bgCanAnimate = false;
// Load animated parts
if ((studioBg == 12 || studioBg == 51) && (timeOutside == 0 || timeOutside == 1 || studioBg == 51)) {
if (studioBg == 51) {
bgPath = "romfs:/gfx/bg_liveMusicClub3_1.t3x";
} else if (timeOutside == 0) {
bgPath = "romfs:/gfx/bgDay_tropicaBeach_1.t3x";
} else {
bgPath = "romfs:/gfx/bgSunset_tropicaBeach_1.t3x";
if (aniFrames > 0) {
switch (studioBg) {
case 12:
if (timeOutside == 0) {
bgPath = "romfs:/gfx/bgDay_tropicaBeach_%i.t3x";
} else {
bgPath = "romfs:/gfx/bgSunset_tropicaBeach_%i.t3x";
}
break;
case 51:
bgPath = "romfs:/gfx/bg_liveMusicClub3_%i.t3x";
break;
case 63:
bgPath = "romfs:/gfx/bg_livelyStage_%i.t3x";
break;
case 64:
bgPath = "romfs:/gfx/bg_girlyStage_%i.t3x";
break;
}
bgFile = fopen(bgPath, "rb");
fread((void*)bgSpriteMem[1], 1, 0x200000, bgFile);
fclose(bgFile);
if (studioBg == 51) {
bgPath = "romfs:/gfx/bg_liveMusicClub3_2.t3x";
} else if (timeOutside == 0) {
bgPath = "romfs:/gfx/bgDay_tropicaBeach_2.t3x";
} else {
bgPath = "romfs:/gfx/bgSunset_tropicaBeach_2.t3x";
}
bgFile = fopen(bgPath, "rb");
fread((void*)bgSpriteMem[2], 1, 0x200000, bgFile);
fclose(bgFile);
if (studioBg == 51) {
bgPath = "romfs:/gfx/bg_liveMusicClub3_3.t3x";
bgFile = fopen(bgPath, "rb");
fread((void*)bgSpriteMem[3], 1, 0x200000, bgFile);
char bgAniPath[64];
for (int i = 1; i <= aniFrames; i++) {
sprintf(bgAniPath, bgPath, i);
bgFile = fopen(bgAniPath, "rb");
fread((void*)bgSpriteMem[i], 1, 0x200000, bgFile);
fclose(bgFile);
}
if (studioBg == 64) {
bgAnimationDelay = iFps/2;
bgAnimation[0] = 0;
bgAnimation[1] = 1;
bgAnimation[2] = 100;
} else if (studioBg == 51 || studioBg == 63) {
bgAnimationDelay = iFps/2;
bgAnimation[0] = 0;
bgAnimation[1] = 1;

View File

@ -15,10 +15,17 @@ const char* import_ss4BgNames[] {
"Beautician",
"Hair Salon",
"Live Music Club",
"Lifestyle Shop",
"Florist",
"Cake Shop",
"Menswear Shop",
"VIP Room",
"Restauraunt",
"Lively Stage",
"Girly Stage",
"Concert Hall",
"Cinema",
"Charity Stage"
};
int import_ss4BgNums[] {
@ -38,8 +45,15 @@ int import_ss4BgNums[] {
4,
5,
7,
60,
61,
62,
8,
9,
10,
11
63,
64,
65,
11,
66
};

View File

@ -178,6 +178,7 @@ void GFX::loadBgSprite(void) {
dmaFillWords(0xFFFFFFFF, bgGetGfxPtr(bg3Sub), 0x18000);
timeOutside = 2; // Default is Nighttime
int aniFrames = 0;
const char* bgPath;
time_t t = time(0);
@ -237,8 +238,10 @@ void GFX::loadBgSprite(void) {
case 12:
if (isDaytime(hour, minutes)) {
bgPath = "nitro:/graphics/bg/Day_tropicaBeach_0.png";
aniFrames = 2;
} else if (isEvening(hour, minutes)) {
bgPath = "nitro:/graphics/bg/Sunset_tropicaBeach_0.png";
aniFrames = 2;
} else {
bgPath = "nitro:/graphics/bg/Night_tropicaBeach.png";
}
@ -381,6 +384,7 @@ void GFX::loadBgSprite(void) {
break;
case 51:
bgPath = "nitro:/graphics/bg/liveMusicClub3_0.png";
aniFrames = 3;
break;
case 52:
if (isDaytime(hour, minutes)) {
@ -454,6 +458,29 @@ void GFX::loadBgSprite(void) {
bgPath = "nitro:/graphics/bg/Night_countrysideWinter.png";
}
break;
case 60:
bgPath = "nitro:/graphics/bg/lifestyleShop4.png";
break;
case 61:
bgPath = "nitro:/graphics/bg/florist.png";
break;
case 62:
bgPath = "nitro:/graphics/bg/cakeShop4.png";
break;
case 63:
bgPath = "nitro:/graphics/bg/livelyStage_0.png";
aniFrames = 3;
break;
case 64:
bgPath = "nitro:/graphics/bg/girlyStage_0.png";
aniFrames = 1;
break;
case 65:
bgPath = "nitro:/graphics/bg/concertHall.png";
break;
case 66:
bgPath = "nitro:/graphics/bg/charityStage.png";
break;
}
std::vector<unsigned char> image;
unsigned width, height;
@ -469,39 +496,40 @@ void GFX::loadBgSprite(void) {
animateBg = false;
// Load animated parts
if (*(vu32*)(0x0279FFFC) == 1 && (studioBg == 12 || studioBg == 51)
&& (timeOutside == 0 || timeOutside == 1 || studioBg == 51)) {
image.clear();
if (studioBg == 51) {
bgPath = "nitro:/graphics/bg/liveMusicClub3_1.png";
} else if (timeOutside == 0) {
bgPath = "nitro:/graphics/bg/Day_tropicaBeach_1.png";
} else {
bgPath = "nitro:/graphics/bg/Sunset_tropicaBeach_1.png";
if (*(vu32*)(0x0279FFFC) == 1 && aniFrames > 0) {
switch (studioBg) {
case 12:
if (timeOutside == 0) {
bgPath = "nitro:/graphics/bg/Day_tropicaBeach_%i.png";
} else {
bgPath = "nitro:/graphics/bg/Sunset_tropicaBeach_%i.png";
}
break;
case 51:
bgPath = "nitro:/graphics/bg/liveMusicClub3_%i.png";
break;
case 63:
bgPath = "nitro:/graphics/bg/livelyStage_%i.png";
break;
case 64:
bgPath = "nitro:/graphics/bg/girlyStage_%i.png";
break;
}
lodepng::decode(image, width, height, bgPath);
for(unsigned i=0;i<image.size()/4;i++) {
bgSpriteMemExt[0][i] = image[i*4]>>3 | (image[(i*4)+1]>>3)<<5 | (image[(i*4)+2]>>3)<<10 | BIT(15);
}
image.clear();
if (studioBg == 51) {
bgPath = "nitro:/graphics/bg/liveMusicClub3_2.png";
} else if (timeOutside == 0) {
bgPath = "nitro:/graphics/bg/Day_tropicaBeach_2.png";
} else {
bgPath = "nitro:/graphics/bg/Sunset_tropicaBeach_2.png";
}
lodepng::decode(image, width, height, bgPath);
for(unsigned i=0;i<image.size()/4;i++) {
bgSpriteMemExt[1][i] = image[i*4]>>3 | (image[(i*4)+1]>>3)<<5 | (image[(i*4)+2]>>3)<<10 | BIT(15);
}
if (studioBg == 51) {
char bgAniPath[64];
for (int i = 1; i <= aniFrames; i++) {
sprintf(bgAniPath, bgPath, i);
image.clear();
bgPath = "nitro:/graphics/bg/liveMusicClub3_3.png";
lodepng::decode(image, width, height, bgPath);
for(unsigned i=0;i<image.size()/4;i++) {
bgSpriteMemExt[2][i] = image[i*4]>>3 | (image[(i*4)+1]>>3)<<5 | (image[(i*4)+2]>>3)<<10 | BIT(15);
lodepng::decode(image, width, height, bgAniPath);
for(unsigned p=0;p<image.size()/4;p++) {
bgSpriteMemExt[i-1][p] = image[p*4]>>3 | (image[(p*4)+1]>>3)<<5 | (image[(p*4)+2]>>3)<<10 | BIT(15);
}
}
if (studioBg == 64) {
bgAnimationDelay = iFps/2;
bgAnimation[0] = 0;
bgAnimation[1] = 1;
bgAnimation[2] = 100;
} else if (studioBg == 51 || studioBg == 63) {
bgAnimationDelay = iFps/2;
bgAnimation[0] = 0;
bgAnimation[1] = 1;

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

View File

@ -108,7 +108,7 @@ void PhotoStudio::getMaxChars() {
import_totalCharacters = 9;
break;
case 3:
import_totalCharacters = 19;
import_totalCharacters = 26;
break;
case 4:
case 5: