diff --git a/OpenTaiko/System/Open-World Memories/DaniSelectConfig.ini b/OpenTaiko/System/Open-World Memories/DaniSelectConfig.ini index 6a3d0893..a5a057f9 100644 --- a/OpenTaiko/System/Open-World Memories/DaniSelectConfig.ini +++ b/OpenTaiko/System/Open-World Memories/DaniSelectConfig.ini @@ -16,8 +16,8 @@ DaniSelect_Title_X=602,602,602 DaniSelect_Title_Y=260,369,478 DaniSelect_Difficulty_Cymbol_X=565,565,565 DaniSelect_Difficulty_Cymbol_Y=270,380,489 -DaniSelect_Level_Number_X=574,574,574 -DaniSelect_Level_Number_Y=310,420,530 +DaniSelect_Level_Number_X=600,600,600 +DaniSelect_Level_Number_Y=285,395,505 DaniSelect_Level_Number_Interval=15,0 DaniSelect_Soul_Number_Interval=24,0 DaniSelect_Soul_Number_Text_Width=120 diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In.png index 93658157..7300c87c 100644 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In.png and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In_Shadow.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In_Shadow.png new file mode 100644 index 00000000..e8a747ea Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Dan_In_Shadow.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Foxes.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Foxes.png new file mode 100644 index 00000000..dc44abad Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Foxes.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Message.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Message.png index 8b77e42a..4d2e234f 100644 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Message.png and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Message.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Script.lua b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Script.lua index f5fd0bcb..eceef442 100644 --- a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Script.lua +++ b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Script.lua @@ -6,6 +6,44 @@ --func:SetScale(xscale, yscale, "filename"); --func:SetColor(r, g, b, "filename"); +--Speech tex rects: (0,33,607,220)(608,0,630,253) +--Speech positions (center pos): (329.5,812)(1566,935.5) +--Tsubaki tex rects (body+arms): (692,0,884,1017)(692,1018,253,334)(946,1018,174,345)(1122,1018,377,320) +--Tsubaki positions (body): (1461,63)(1565,63)(1730,63) +--Tsubaki positions (arms): (1574,717)(1670,715)(1569,646) +--Ume tex rects (body+arms): (0,0,691,819)(0,979,248,243)(77,820,105,158)(249,820,322,300) +--Ume positions (body): (-178,297)(-346,297)(-473,297) +--Ume positions (arms): (93,750)(77,750)(-40,717) +--Star position: (1430,427.5)(489,571) +--Star rect: () + +local speech_rect = {0,33,607,220,608,0,630,253} +local speech_pos = {329.5,812,1566,935.5} + +-- x,y,w,h +local tsubaki_body_rect = {692,0,884,1017} +local tsubaki_arm1_rect = {692,1018,253,334} +local tsubaki_arm2_rect = {946,1018,174,345} +local tsubaki_arm3_rect = {1122,1018,377,320} +local ume_body_rect = {0,0,691,819} +local ume_arm1_rect = {0,979,248,243} +local ume_arm2_rect = {77,820,105,158} +local ume_arm3_rect = {249,820,322,300} +local star_red_rect = {1759,0,50,98} +local star_blue_rect = {1761,98,48,93} +local light_red_rect = {1577,192,232,240} +local light_blue_rect = {1577,433,232,228} + +-- x,y,x,y,x,y +local tsubaki_body_pos = {1461,63,1565,63,1730,63} +local tsubaki_arm_pos = {1574,717,1670,715,1569,646} +local ume_body_pos = {-178,297,-346,297,-473,297} +local ume_arm_pos = {93,750,77,750,-40,717} +local star_pos = {1430,427.5,489,571} +local light_pos = {1436,430,496,573} + +--Slam time: 1.142s + local animeCounter = 0 local bg_width = 1920 @@ -19,6 +57,8 @@ local dan_first_in_move = 0 local dan_second_in_move = 0 local dan_in_slam = 0 +local speech_text = "Speech/en/0.png" + function playEndAnime(player) end @@ -29,15 +69,27 @@ function clearOut(player) end function init() - func:AddGraph("l_back.png") - func:AddGraph("l_front_1.png") - func:AddGraph("l_front_2.png") - func:AddGraph("r_back.png") - func:AddGraph("r_front_1.png") - func:AddGraph("r_front_2.png") func:AddGraph("Dan_In.png") + func:AddGraph("Dan_In_Shadow.png") func:AddGraph("Slam.png") func:AddGraph("Message.png") + func:AddGraph("Foxes.png") + + math.randomseed(os.time()) + local special_chance = math.random(1, 100) + + if special_chance == 1 then + speech_text = "Speech/special/0.png" + elseif lang == "ja" then + speech_text = "Speech/ja/"..tostring(math.random(0, 4))..".png" + elseif lang == "zh" then + speech_text = "Speech/zh/"..tostring(math.random(0, 4))..".png" + else + speech_text = "Speech/en/"..tostring(math.random(0, 4))..".png" + end + + func:AddGraph(speech_text) + func:AddGraph("Speech/Speech.png") end function update(player) @@ -45,7 +97,7 @@ function update(player) animeCounter = animeCounter + deltaTime dan_first_in_move = math.min(960 * animeCounter, 140) - dan_second_in_move = math.min(math.max(2880 * (animeCounter - 1.5), 0), 820) + dan_second_in_move = math.min(math.max(2880 * (animeCounter - 1.14), 0), 820) dan_in_move = dan_first_in_move + dan_second_in_move @@ -58,18 +110,27 @@ end function draw(player) -- Foxes (back) - if animeCounter >= 0.3 and 0.4 >= animeCounter then - func:DrawGraph(-40, 267, "l_back.png") - func:DrawGraph(1624, 267, "r_back.png") - elseif animeCounter >= 0.4 and 1.3 >= animeCounter then - func:DrawGraph(20, 267, "l_back.png") - func:DrawGraph(1564, 267, "r_back.png") - elseif animeCounter >= 1.3 and 1.4 >= animeCounter then - func:DrawGraph(-40, 267, "l_back.png") - func:DrawGraph(1624, 267, "r_back.png") - elseif animeCounter >= 1.4 and 1.5 >= animeCounter then - func:DrawGraph(-100, 267, "l_back.png") - func:DrawGraph(1684, 267, "r_back.png") + if animeCounter >= 0.2 and 0.275 >= animeCounter then + func:DrawRectGraph(tsubaki_body_pos[5], tsubaki_body_pos[6], tsubaki_body_rect[1], tsubaki_body_rect[2], tsubaki_body_rect[3], tsubaki_body_rect[4], "Foxes.png") + func:DrawRectGraph(ume_body_pos[5], ume_body_pos[6], ume_body_rect[1], ume_body_rect[2], ume_body_rect[3], ume_body_rect[4], "Foxes.png") + -- Draw these arms behind the wall + func:DrawRectGraph(tsubaki_arm_pos[5], tsubaki_arm_pos[6], tsubaki_arm3_rect[1], tsubaki_arm3_rect[2], tsubaki_arm3_rect[3], tsubaki_arm3_rect[4], "Foxes.png") + func:DrawRectGraph(ume_arm_pos[5], ume_arm_pos[6], ume_arm3_rect[1], ume_arm3_rect[2], ume_arm3_rect[3], ume_arm3_rect[4], "Foxes.png") + elseif animeCounter >= 0.275 and 0.35 >= animeCounter then + func:DrawRectGraph(tsubaki_body_pos[3], tsubaki_body_pos[4], tsubaki_body_rect[1], tsubaki_body_rect[2], tsubaki_body_rect[3], tsubaki_body_rect[4], "Foxes.png") + func:DrawRectGraph(ume_body_pos[3], ume_body_pos[4], ume_body_rect[1], ume_body_rect[2], ume_body_rect[3], ume_body_rect[4], "Foxes.png") + elseif animeCounter >= 0.35 and 0.95 >= animeCounter then + func:DrawRectGraph(tsubaki_body_pos[1], tsubaki_body_pos[2], tsubaki_body_rect[1], tsubaki_body_rect[2], tsubaki_body_rect[3], tsubaki_body_rect[4], "Foxes.png") + func:DrawRectGraph(ume_body_pos[1], ume_body_pos[2], ume_body_rect[1], ume_body_rect[2], ume_body_rect[3], ume_body_rect[4], "Foxes.png") + elseif animeCounter >= 0.95 and 1.025 >= animeCounter then + func:DrawRectGraph(tsubaki_body_pos[3], tsubaki_body_pos[4], tsubaki_body_rect[1], tsubaki_body_rect[2], tsubaki_body_rect[3], tsubaki_body_rect[4], "Foxes.png") + func:DrawRectGraph(ume_body_pos[3], ume_body_pos[4], ume_body_rect[1], ume_body_rect[2], ume_body_rect[3], ume_body_rect[4], "Foxes.png") + elseif animeCounter >= 1.025 and 1.1 >= animeCounter then + func:DrawRectGraph(tsubaki_body_pos[5], tsubaki_body_pos[6], tsubaki_body_rect[1], tsubaki_body_rect[2], tsubaki_body_rect[3], tsubaki_body_rect[4], "Foxes.png") + func:DrawRectGraph(ume_body_pos[5], ume_body_pos[6], ume_body_rect[1], ume_body_rect[2], ume_body_rect[3], ume_body_rect[4], "Foxes.png") + -- Draw these arms behind the wall + func:DrawRectGraph(tsubaki_arm_pos[5], tsubaki_arm_pos[6], tsubaki_arm3_rect[1], tsubaki_arm3_rect[2], tsubaki_arm3_rect[3], tsubaki_arm3_rect[4], "Foxes.png") + func:DrawRectGraph(ume_arm_pos[5], ume_arm_pos[6], ume_arm3_rect[1], ume_arm3_rect[2], ume_arm3_rect[3], ume_arm3_rect[4], "Foxes.png") end -- The Gates @@ -77,15 +138,19 @@ function draw(player) func:DrawRectGraph(bg_width - dan_in_move, 0, dan_in_width, 0, dan_in_width, dan_in_height, "Dan_In.png") -- Foxes (front) - if animeCounter >= 0.3 and 0.4 >= animeCounter then - func:DrawGraph(133, 695, "l_front_2.png") - func:DrawGraph(1728, 695, "r_front_2.png") - elseif animeCounter >= 0.4 and 1.4 >= animeCounter then - func:DrawGraph(23, 695, "l_front_1.png") - func:DrawGraph(1653, 695, "r_front_1.png") - elseif animeCounter >= 1.4 and 1.5 >= animeCounter then - func:DrawGraph(133, 695, "l_front_2.png") - func:DrawGraph(1728, 695, "r_front_2.png") + if animeCounter >= 0.2 and 0.275 >= animeCounter then + -- none + elseif animeCounter >= 0.275 and 0.35 >= animeCounter then + func:DrawRectGraph(tsubaki_arm_pos[3], tsubaki_arm_pos[4], tsubaki_arm2_rect[1], tsubaki_arm2_rect[2], tsubaki_arm2_rect[3], tsubaki_arm2_rect[4], "Foxes.png") + func:DrawRectGraph(ume_arm_pos[3], ume_arm_pos[4], ume_arm2_rect[1], ume_arm2_rect[2], ume_arm2_rect[3], ume_arm2_rect[4], "Foxes.png") + elseif animeCounter >= 0.35 and 0.95 >= animeCounter then + func:DrawRectGraph(tsubaki_arm_pos[1], tsubaki_arm_pos[2], tsubaki_arm1_rect[1], tsubaki_arm1_rect[2], tsubaki_arm1_rect[3], tsubaki_arm1_rect[4], "Foxes.png") + func:DrawRectGraph(ume_arm_pos[1], ume_arm_pos[2], ume_arm1_rect[1], ume_arm1_rect[2], ume_arm1_rect[3], ume_arm1_rect[4], "Foxes.png") + elseif animeCounter >= 0.95 and 1.025 >= animeCounter then + func:DrawRectGraph(tsubaki_arm_pos[3], tsubaki_arm_pos[4], tsubaki_arm2_rect[1], tsubaki_arm2_rect[2], tsubaki_arm2_rect[3], tsubaki_arm2_rect[4], "Foxes.png") + func:DrawRectGraph(ume_arm_pos[3], ume_arm_pos[4], ume_arm2_rect[1], ume_arm2_rect[2], ume_arm2_rect[3], ume_arm2_rect[4], "Foxes.png") + elseif animeCounter >= 1.025 and 1.1 >= animeCounter then + -- none end -- Gates Slam @@ -94,12 +159,30 @@ function draw(player) func:DrawRectGraph(760 - (dan_in_slam * 400), 0, 0, 0, 200, dan_in_height, "Slam.png") func:DrawRectGraph(960 + (dan_in_slam * 400), 0, 200, 0, 200, dan_in_height, "Slam.png") + func:SetOpacity(math.max(math.min((math.min(dan_in_slam - 0.7, 0.25) - math.max(0, dan_in_slam - 0.95)) * 1020, 255), 0), "Foxes.png") + func:DrawGraphRectCenter(light_pos[1], light_pos[2], light_blue_rect[1], light_blue_rect[2], light_blue_rect[3], light_blue_rect[4], "Foxes.png") + func:DrawGraphRectCenter(light_pos[3], light_pos[4], light_red_rect[1], light_red_rect[2], light_red_rect[3], light_red_rect[4], "Foxes.png") + func:SetRotation(dan_in_slam * 720, "Foxes.png") + func:DrawGraphRectCenter(star_pos[1], star_pos[2], star_blue_rect[1], star_blue_rect[2], star_blue_rect[3], star_blue_rect[4], "Foxes.png") + func:SetRotation(dan_in_slam * -720, "Foxes.png") + func:DrawGraphRectCenter(star_pos[3], star_pos[4], star_red_rect[1], star_red_rect[2], star_red_rect[3], star_red_rect[4], "Foxes.png") + func:SetRotation(0, "Foxes.png") + + func:SetOpacity(math.max(math.min((dan_in_slam - 1.2) * 510, 255), 0), "Dan_In_Shadow.png") func:SetOpacity(math.max(math.min((dan_in_slam - 0.2) * 1020, 255), 0), "Message.png") + func:DrawGraph(0, 0, "Dan_In_Shadow.png") func:DrawGraph(0, 0, "Message.png") end - --if animeCounter >= 1.133 then - --func:DrawGraph(0, 0, "Message.png") - --end + -- Speech Bubble + if dan_in_slam > 1.2 then + local speech_fadein = math.max(math.min((dan_in_slam - 1.7) * 1020, 255), 0) + func:SetOpacity(speech_fadein, "Speech/Speech.png") + func:SetOpacity(speech_fadein, speech_text) + func:DrawGraphRectCenter(speech_pos[1], speech_pos[2], speech_rect[1], speech_rect[2], speech_rect[3], speech_rect[4], "Speech/Speech.png") + func:DrawGraphRectCenter(speech_pos[3], speech_pos[4], speech_rect[5], speech_rect[6], speech_rect[7], speech_rect[8], "Speech/Speech.png") + func:DrawGraphRectCenter(speech_pos[1], speech_pos[2], speech_rect[1], speech_rect[2], speech_rect[3], speech_rect[4], speech_text) + func:DrawGraphRectCenter(speech_pos[3], speech_pos[4], speech_rect[5], speech_rect[6], speech_rect[7], speech_rect[8], speech_text) + end end diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/Speech.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/Speech.png new file mode 100644 index 00000000..0a1da213 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/Speech.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/0.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/0.png new file mode 100644 index 00000000..3a1663bb Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/1.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/1.png new file mode 100644 index 00000000..ff7ff124 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/2.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/2.png new file mode 100644 index 00000000..7d2d8421 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/2.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/3.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/3.png new file mode 100644 index 00000000..5d9b9bae Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/3.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/4.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/4.png new file mode 100644 index 00000000..635ea97c Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/en/4.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/0.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/0.png new file mode 100644 index 00000000..3345e434 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/1.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/1.png new file mode 100644 index 00000000..1e2ae9ec Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/2.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/2.png new file mode 100644 index 00000000..fcf58193 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/2.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/3.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/3.png new file mode 100644 index 00000000..888afc49 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/3.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/4.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/4.png new file mode 100644 index 00000000..b4407bcf Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/ja/4.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/special/0.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/special/0.png new file mode 100644 index 00000000..3cb8cff8 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/special/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/0.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/0.png new file mode 100644 index 00000000..e4e38c9e Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/1.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/1.png new file mode 100644 index 00000000..f26f7ef4 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/2.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/2.png new file mode 100644 index 00000000..679ee4f7 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/2.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/3.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/3.png new file mode 100644 index 00000000..18c739ea Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/3.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/4.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/4.png new file mode 100644 index 00000000..fea68b6f Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/Speech/zh/4.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_back.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_back.png deleted file mode 100644 index f831916c..00000000 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_back.png and /dev/null differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_front_1.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_front_1.png deleted file mode 100644 index 54ec0801..00000000 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_front_1.png and /dev/null differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_front_2.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_front_2.png deleted file mode 100644 index bb7c48b9..00000000 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/l_front_2.png and /dev/null differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_back.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_back.png deleted file mode 100644 index 7f13a354..00000000 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_back.png and /dev/null differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_front_1.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_front_1.png deleted file mode 100644 index 94a2aeb8..00000000 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_front_1.png and /dev/null differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_front_2.png b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_front_2.png deleted file mode 100644 index 3da54ea2..00000000 Binary files a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Dan_Fail/r_front_2.png and /dev/null differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Tower_Dropout/Script.lua b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Tower_Dropout/Script.lua index c104b20e..13bafd7b 100644 --- a/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Tower_Dropout/Script.lua +++ b/OpenTaiko/System/Open-World Memories/Graphics/5_Game/9_End/Tower_Dropout/Script.lua @@ -6,21 +6,17 @@ --func:SetScale(xscale, yscale, "filename"); --func:SetColor(r, g, b, "filename"); -local x = { 758, 758, 758, 758, 758 } local y = { 218, 482, 0, 0, 0 } local animeCounter = { 0, 0, 0, 0, 0 } local nowFrame = { 0, 0, 0, 0, 0 } -local textureCount = 25 +local slideInFrame = { 0, 0, 0, 0, 0 } +local fallFrame = { 0, 0, 0, 0, 0 } +local slideToFallFrameCount = 5 +local textureCount = 32 -local useExtraAnime = true - -function clearIn(player) -end - -function clearOut(player) -end +local frameRate = 24 function playEndAnime(player) animeCounter = { 0, 0, 0, 0, 0 } @@ -30,37 +26,29 @@ end function init() if playerCount <= 2 then - y = { 217, 481, 0, 0, 0 } + y = { 216, 480, 0, 0, 0 } elseif playerCount == 5 then - y = { 34, 181, 397, 613, 829 } + y = { -5, 196, 412, 628, 844 } else - y = { -1, 262, 526, 790, 0 } + y = { -24, 240, 504, 768, 0 } end for i = 0 , textureCount do - func:AddGraph(tostring(i)..".png") + func:AddGraph(tostring(i) .. ".png") end - if useExtraAnime then - func:AddGraph("Clear_Failed.png") - func:AddGraph("Clear_Failed1.png") - func:AddGraph("Clear_Failed2.png") - end end function update(player) - animeCounter[player + 1] = animeCounter[player + 1] + (33.3 * deltaTime) - nowFrame[player + 1] = math.floor(animeCounter[player + 1] + 0.5) + + animeCounter[player + 1] = animeCounter[player + 1] + deltaTime + slideInFrame[player + 1] = math.min(math.floor(animeCounter[player + 1] * frameRate), 23) + fallFrame[player + 1] = math.max(math.min(math.floor(((animeCounter[player + 1] - 1.133) * frameRate) + slideToFallFrameCount), 9), 0) + + nowFrame[player + 1] = slideInFrame[player + 1] + fallFrame[player + 1] + end function draw(player) - if nowFrame[player + 1] <= 20 or not(useExtraAnime) then - func:DrawGraph(x[player + 1], y[player + 1], tostring(math.min(nowFrame[player + 1], textureCount))..".png") - elseif nowFrame[player + 1] >= 20 and nowFrame[player + 1] <= 67 then - func:DrawGraph(x[player + 1] - 5, y[player + 1] + 71, "Clear_Failed.png") - elseif nowFrame[player + 1] == 68 then - func:DrawGraph(x[player + 1] - 5, y[player + 1] + 71, "Clear_Failed1.png") - elseif nowFrame[player + 1] >= 69 then - func:DrawGraph(x[player + 1] - 5, y[player + 1] + 71, "Clear_Failed2.png") - end -end \ No newline at end of file + func:DrawGraph(500, y[player + 1] - 10, tostring(nowFrame[player + 1]) .. ".png") +end diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/0.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/0.png new file mode 100644 index 00000000..b6f62646 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/1.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/1.png new file mode 100644 index 00000000..c777e732 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/2.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/2.png new file mode 100644 index 00000000..9bc9b63c Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/2.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/3.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/3.png new file mode 100644 index 00000000..b7418d1e Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/3.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/4.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/4.png new file mode 100644 index 00000000..7f5f9ed2 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/4.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/5.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/5.png new file mode 100644 index 00000000..e3ac0c4a Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Idle/zh/5.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/0.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/0.png new file mode 100644 index 00000000..d0e685ce Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/1.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/1.png new file mode 100644 index 00000000..7a9eaca0 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/2.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/2.png new file mode 100644 index 00000000..ae4c4d36 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/2.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/3.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/3.png new file mode 100644 index 00000000..ac975fa4 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/3.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/4.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/4.png new file mode 100644 index 00000000..5e16e482 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Bad/zh/4.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Good/zh/0.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Good/zh/0.png new file mode 100644 index 00000000..4733a3f6 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Good/zh/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Good/zh/1.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Good/zh/1.png new file mode 100644 index 00000000..58c5d1e9 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Good/zh/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Great/zh/0.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Great/zh/0.png new file mode 100644 index 00000000..70a1deda Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Great/zh/0.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Great/zh/1.png b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Great/zh/1.png new file mode 100644 index 00000000..99f2bad1 Binary files /dev/null and b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Background/Nokon/Result_Great/zh/1.png differ diff --git a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Script.lua b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Script.lua index 23a8f064..1241619d 100644 --- a/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Script.lua +++ b/OpenTaiko/System/Open-World Memories/Graphics/6_Result/Script.lua @@ -282,6 +282,8 @@ function init() if lang == "ja" then nokonFrames = {"Background/Nokon/Idle/ja/","Background/Nokon/Result_Bad/ja/","Background/Nokon/Result_Good/ja/","Background/Nokon/Result_Great/ja/"} + elseif lang == "zh" then + nokonFrames = {"Background/Nokon/Idle/zh/","Background/Nokon/Result_Bad/zh/","Background/Nokon/Result_Good/zh/","Background/Nokon/Result_Great/zh/"} elseif lang == "fr" then nokonFrames = {"Background/Nokon/Idle/fr/","Background/Nokon/Result_Bad/fr/","Background/Nokon/Result_Good/fr/","Background/Nokon/Result_Great/fr/"} end diff --git a/OpenTaiko/System/Open-World Memories/README.txt b/OpenTaiko/System/Open-World Memories/README.txt new file mode 100644 index 00000000..78e5ba7a --- /dev/null +++ b/OpenTaiko/System/Open-World Memories/README.txt @@ -0,0 +1,11 @@ +Menu SFX : + +- Hitrison - https://hitrison.itch.io/menu-sfx-pack + +In-Game textures : + +- TJAPlayer3 Default skin +- Freepik (starline / vector_corp / Harryarts) (Patterns) +- cien (@CienpixeL) (Nameplates, Rainbox result screen gauge, Drum textures) +- Waldo - https://pressstart.vip/assets (Tower result screen background and skyboxes) +- PNG Egg (Fireworks) (Non-commercial) \ No newline at end of file