Compare commits

...
Author SHA1 Message Date
TaikoZhongandClaude Opus 5.5 9ab9c3d395 Notes: drumroll and balloon tails start at their first column
An empty column at the joint was filtered into a thin dark line on the drumroll body.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 20:14:41 +08:00
TaikoZhongandClaude Opus 5.5 6e297895d2 Notes: arcade note and label sprites
Same 1080p cell layout, so texture.json is unchanged. The empty pixels are kept black
so no light fringe shows at the dark outlines.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 01:01:15 +08:00
Yonokid 86d2066d6f Merge pull request 'Big-note judgment rings and rays' (#86) from GanYiZhong/YataiDONNijiiro:feat/big-note-rays into main
Reviewed-on: Yonokid/YataiDONNijiiro#86
2026-11-06 17:52:46 +01:00
TaikoZhongandClaude Opus 5.5 62d9444d90 Big-note judgment rings and rays
Hitting a big note now draws the outer ring flipbook and the ray rings
(engine animation ids 68-74 with hit_effect/outer_effect_good and
outer_effect_ok at the big outer ring's spot). The ids 68, 70 and 71
held animations nothing used any more; they now hold the big-judgment
ones.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 00:46:12 +08:00
Yonokid 6026caf4cb disable new features 2026-11-04 19:53:47 -05:00
TaikoZhongandClaude Opus 5.5 9a754e23d8 Update checksums.sha256
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 03:44:32 +08:00
GanYiZhong 09da9166b9 Merge pull request 'Background: require a collab's script the first time a song uses it' (#85) from GanYiZhong/YataiDONNijiiro:perf/lazy-collab-backgrounds into main 2026-11-02 20:44:00 +01:00
TaikoZhongandClaude Opus 5.5 8ffea9a18e Background: require a collab's script the first time a song uses it
Requiring all 37 when background.lua loaded took 250-300 ms of the first game load.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 03:43:05 +08:00
Yonokid 8e82171e28 Update checksums.sha256 2026-11-02 08:35:57 -05:00
TaikoZhong b9101960de Update checksums.sha256 2026-11-02 15:46:15 +08:00
GanYiZhong bbd6724c27 Merge pull request 'Song select: no parent ura switch overlay' (#84) from GanYiZhong/YataiDONNijiiro:fix/no-green-ura-switch into main 2026-11-02 08:45:53 +01:00
TaikoZhongandClaude Opus 5.5 1fc1fe5b54 Song select: no parent ura switch overlay
The blank ura_switch frames were removed (f37375e), so the engine's ura switch
overlay fell back to the parent skin's art over the difficulty board. Nijiiro
plays its own oni/ura change on the board, so the overlay now draws nothing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 15:45:22 +08:00
TaikoZhong 4828bb777a Update checksums.sha256 2026-11-02 14:43:02 +08:00
GanYiZhong 9d365f7ceb Merge pull request 'Tutorial: crisp wave rows' (#83) from GanYiZhong/YataiDONNijiiro:fix/tutorial-wave-crisp into main 2026-11-02 07:42:44 +01:00
TaikoZhongandClaude Opus 5.5 68e07f3c22 Tutorial: crisp wave rows
- Pixels tinted by the green filler take the nearest clean pixel's colour and
  keep their own coverage (the neighbourhood average smeared the joints)
- The background layers are drawn at whole pixels: between pixels, filtering
  softened them and darkened their edges

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:42:02 +08:00
TaikoZhong 4acb5411c7 Update checksums.sha256 2026-11-02 14:22:58 +08:00
GanYiZhong b8dcef4fe0 Merge pull request 'Tutorial: fill the wave rows' joints' (#82) from GanYiZhong/YataiDONNijiiro:fix/tutorial-wave-joints into main 2026-11-02 07:22:37 +01:00
TaikoZhongandClaude Opus 5.5 32aa418dc5 Tutorial: fill the wave rows' joints
The green filler pixels were cut out, leaving small holes where the fans
meet; they are now repainted from the neighbouring colours.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:22:00 +08:00
TaikoZhong 8d7218769e Update checksums.sha256 2026-11-02 13:33:37 +08:00
GanYiZhong be5df5662c Merge pull request 'Song select: a howto board for the tutorial folder' (#81) from GanYiZhong/YataiDONNijiiro:feat/howto-box into main 2026-11-02 06:33:02 +01:00
GanYiZhong cd577573ba Merge pull request 'Tutorial: Chinese captions, narration, background and sounds' (#80) from GanYiZhong/YataiDONNijiiro:feat/tutorial into main 2026-11-02 06:32:51 +01:00
TaikoZhongandClaude Opus 5.5 ef06a424e4 Song select: a howto board for the tutorial folder
The tutorial folder (GENRE:TUTORIAL) uses the recent board's colours with its
own characters (box_chara frame 10).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 13:31:14 +08:00
TaikoZhongandClaude Opus 5.5 e3e2ef9903 Tutorial: Chinese captions, narration, background and sounds
- Japanese narration in scene order, Chinese (zh) captions, skip and clear text
- New tutorial background: pattern, mountains, clouds and four wave rows on
  their own scroll/bob timelines, still floor
- Tutorial music and sound effects (side hit, balloon, clear, burn)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 13:30:48 +08:00
TaikoZhongandClaude Opus 5.5 5edb380f2a Update checksums.sha256
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 10:11:05 +08:00
GanYiZhong eed50218de Merge pull request 'GOGO fireworks: arcade placement and fan-out' (#79) from GanYiZhong/YataiDONNijiiro:fix/gogo-explosion into main 2026-11-02 03:10:44 +01:00
TaikoZhongandClaude Opus 5.5 bcb986f401 GOGO fireworks: arcade placement and fan-out
The six gogo_time/explosion fountains used the arcade's splash positions
as absolute screen coordinates. Those positions are relative to the lane
(+276), so the fountains stood 657 px too high and covered the lane. They
are now centred where the arcade puts them, rising from the bottom of the
screen, and game_gogo_explosion_tilt fans them out by the arcade's angles
(+-5.89 / +-11.78 deg, the outer pairs mirrored).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 10:08:11 +08:00
TaikoZhongandClaude Opus 5.5 20dc837442 Update checksums.sha256
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 09:46:11 +08:00
GanYiZhong 930160395a Merge pull request 'Loading transition: glow without additive blend, curtains open on the game' (#78) from GanYiZhong/YataiDONNijiiro:fix/loading-transition into main 2026-11-02 02:45:36 +01:00
40 changed files with 454 additions and 267 deletions

No files matched your search

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,10 @@
{
"pat": {},
"mtn": {},
"cloud": {},
"w13": {},
"w16": {},
"w21": {},
"w24": {},
"floor": {}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+59 -82
View File
@@ -1084,108 +1084,85 @@
{
"id": 68,
"type": "texture_change",
"duration": 266.72,
"duration": 250,
"textures": [
[
0.0,
33.34,
0,
40,
0
],
[
33.34,
66.68,
40,
60,
1
],
[
66.68,
100.02,
60,
80,
2
],
[
100.02,
133.36,
80,
100,
3
],
[
133.36,
166.7,
4
],
[
166.7,
200.04,
5
],
[
200.04,
233.38,
6
],
[
233.38,
266.72,
7
]
],
"loop": true,
"comment": "gogo fire flipbook (arcade lane_hit MC37 = 2 engine frames per cel = 266.72 ms; id 25 stays the tamashii fire pace)"
"comment": "big judgment outer texture change"
},
{
"id": 69,
"type": "fade",
"duration": 100,
"initial_opacity": 1.0,
"final_opacity": 0.0,
"delay": 150,
"comment": "big judgment outer fade"
},
{
"id": 70,
"type": "fade",
"duration": 450,
"initial_opacity": 0.0,
"final_opacity": 1.0,
"comment": "r57: result-gauge fade-in (replaces the id-17 renda-MOVE collision; see gauge.cpp make_result)"
"type": "texture_resize",
"duration": 50,
"initial_size": 0.4,
"final_size": 1.0,
"comment": "big judgment outer scale in"
},
{
"id": 71,
"type": "texture_change",
"duration": 400,
"textures": [
[
0.0,
49.989999999999995,
0
],
[
49.989999999999995,
99.97999999999999,
1
],
[
99.97999999999999,
149.96999999999997,
2
],
[
149.96999999999997,
199.95999999999998,
3
],
[
199.95999999999998,
249.95,
4
],
[
249.95,
299.93999999999994,
5
],
[
299.93999999999994,
349.92999999999995,
6
],
[
349.92999999999995,
399.91999999999996,
7
]
],
"loop": true,
"comment": "r57: result-gauge tamashii fire cels (replaces the id-20 kusudama-FADE collision; body = id 25, the real 8-cel 400 ms fire cycle)"
"type": "texture_resize",
"duration": 116.7,
"initial_size": 0.575,
"final_size": 1.0,
"ease_out": "quadratic",
"comment": "big ray ring scale"
},
{
"id": 72,
"type": "fade",
"duration": 50,
"initial_opacity": 1.0,
"final_opacity": 0.0,
"delay": 66.7,
"comment": "big ray ring fade"
},
{
"id": 73,
"type": "texture_resize",
"duration": 200,
"initial_size": 0.247,
"final_size": 0.856,
"delay": 100,
"ease_out": "quadratic",
"comment": "big good second ray ring scale"
},
{
"id": 74,
"type": "fade",
"duration": 100,
"initial_opacity": 0.0,
"final_opacity": 1.0,
"delay": 100,
"reverse_delay": 0,
"comment": "big good second ray ring fade in/out"
},
{
"id": 76,
+12 -12
View File
@@ -1,8 +1,8 @@
{
"explosion": [
{
"x": -46,
"y": 336,
"x": 150,
"y": 993,
"crop": [
[
0,
@@ -187,24 +187,24 @@
]
},
{
"x": 276,
"y": 333
"x": 472,
"y": 990
},
{
"x": 599,
"y": 333
"x": 795,
"y": 990
},
{
"x": 921,
"y": 333
"x": 1117,
"y": 990
},
{
"x": 1244,
"y": 333
"x": 1440,
"y": 990
},
{
"x": 1566,
"y": 336
"x": 1762,
"y": 993
}
],
"fire": {
Binary file not shown.
Binary file not shown.
+8
View File
@@ -228,5 +228,13 @@
256
]
]
},
"outer_effect_good": {
"x": 450,
"y": -58
},
"outer_effect_ok": {
"x": 450,
"y": -58
}
}
Binary file not shown.
Binary file not shown.
+99 -2
View File
@@ -31,7 +31,7 @@
"text": {
"ja": "フチを5回叩くと説明がおわるよ",
"en": "Hit the rim 5 times to skip",
"zh": "敲击鼓边5次即可跳过说明",
"zh": "敲击5次鼓边即可结束说明",
"ko": "테두리를 5번 치면 설명이 끝나"
}
},
@@ -40,15 +40,109 @@
"text": {
"ja": "ココをこえれば\nクリア",
"en": "Get past here\nto clear",
"zh": "超过这里\n就能通关",
"zh": "超过这个位置\n就算通关了!",
"ko": "여기를 넘으면\n클리어"
}
},
"tutorial_caption_1": {
"font_size": 38,
"text": {
"ja": "このゲームのあそびかたをおしえるよ",
"en": "This is how to play!",
"zh": "现在开始讲解游戏的玩法",
"ko": "이 게임의 플레이 방법을 알려줄게"
}
},
"tutorial_caption_2": {
"font_size": 38,
"text": {
"ja": "流れてくる音符が\nワクにかさなったら\nバチで太鼓をたたこう",
"en": "When a note flows in\nand reaches the frame,\nhit the drum with your sticks!",
"zh": "注意画面\n当音符移动至与敲击框重合\n便敲击太鼓吧!",
"ko": "흘러오는 음표가\n틀에 겹쳐지면\n북채로 북을 치자"
}
},
"tutorial_caption_3": {
"font_size": 38,
"text": {
"ja": "太鼓のどうの部分は\nキケンだからたたかないでね",
"en": "Don't hit the side of the drum,\nit's dangerous!",
"zh": "为避免危险\n请不要敲击鼓身",
"ko": "북의 몸통 부분은\n위험하니까 치지 마"
}
},
"tutorial_caption_4": {
"font_size": 38,
"text": {
"ja": "赤い音符{don}は面をたたこう",
"en": "Red notes {don} : hit the face!",
"zh": "{don} 敲打鼓面吧",
"ko": "빨간 음표{don}는 면을 치자"
}
},
"tutorial_caption_5": {
"font_size": 38,
"text": {
"ja": "青い音符{kat}はフチをたたこう",
"en": "Blue notes {kat} : hit the rim!",
"zh": "{kat} 敲打鼓边吧",
"ko": "파란 음표{kat}는 테를 치자"
}
},
"tutorial_caption_6": {
"font_size": 38,
"text": {
"ja": "大きな音符{big_don}{big_kat}は\n強くたたくと高得点!",
"en": "Big notes {big_don}{big_kat}\nscore more when hit hard!",
"zh": "{big_don}{big_kat} 用双手用力敲打!",
"ko": "큰 음표{big_don}{big_kat}는\n세게 치면 고득점!"
}
},
"tutorial_caption_7": {
"font_size": 38,
"text": {
"ja": "黄色い音符{roll}は\nひたすら連打!",
"en": "Yellow notes {roll}\nhit them as fast as you can!",
"zh": "{roll} 不停连续敲打!",
"ko": "노란 음표{roll}는\n계속 연타!"
}
},
"tutorial_caption_8": {
"font_size": 38,
"text": {
"ja": "ふうせん音符{balloon}と\nくすだま音符{kusudama}もとにかく連打ー!",
"en": "Balloon notes {balloon} and\nkusudama notes {kusudama}: keep drumming!",
"zh": "{balloon}{kusudama} 总之连续敲打吧!",
"ko": "풍선 음표{balloon}와\n쿠스다마 음표{kusudama}도 무조건 연타!"
}
},
"tutorial_caption_9": {
"font_size": 38,
"text": {
"ja": "タイミングよくたたけば\n魂(たましい)ゲージがアップ!",
"en": "Hit with good timing\nto fill the soul gauge!",
"zh": "时机把握得好,\n就能积累魂槽哦!",
"ko": "타이밍 좋게 치면\n혼 게이지가 올라가!"
}
},
"tutorial_caption_10": {
"font_size": 38,
"text": {
"ja": "うまくたたいてクリアをめざそう!",
"en": "Play well and aim for a clear!",
"zh": "尽情击打,争取过关吧!",
"ko": "잘 쳐서 클리어를 노리자!"
}
},
"screen": {
"parent": "PyTaikoGreen",
"width": 1920,
"height": 1080,
"options": {
"disable_campaigns": true,
"disable_reward_shop": true,
"disable_total_result": true,
"disable_waiwai": true,
"disable_retry_game": true,
"horizontal_song_select": true,
"one_menu_sort": true,
@@ -523,6 +617,9 @@
"game_gogo_fire_anim": {
"x": 68
},
"game_gogo_explosion_tilt": {
"x": 5.8875
},
"game_gogo_explosion_slots": {
"x": 6,
"y": 4
Binary file not shown.
+42 -78
View File
@@ -67,85 +67,49 @@ end
function DaiAnim:draw() self.anim:draw(1.0) end
function DaiAnim:destroy() self.anim:destroy() end
local PracticeBackground = require("background/bg_collabs/practice")
local TutorialBackground = require("background/bg_collabs/tutorial")
local A3Background = require("background/bg_collabs/a3")
local AnimalBackground = require("background/bg_collabs/animal")
local ButtoBackground = require("background/bg_collabs/buttoburst")
local DanBackground = require("background/bg_collabs/dan")
local FunassyiBackground = require("background/bg_collabs/funassyi")
local ImasBackground = require("background/bg_collabs/imas")
local ImasSidemBackground = require("background/bg_collabs/imas_sidem")
local OshiriBackground = require("background/bg_collabs/oshiri")
-- the collabs PyTaikoGreen added after this file was forked (2026-09-07/09): Green's modules
local DQ10Background = require("background/bg_collabs/dq10")
local GbBackground = require("background/bg_collabs/gb")
local GmtBackground = require("background/bg_collabs/gmt")
local GumiBackground = require("background/bg_collabs/gumi")
local I7id7Background = require("background/bg_collabs/i7id7")
local I7natsuBackground = require("background/bg_collabs/i7natsu")
local I7revBackground = require("background/bg_collabs/i7rev")
local I7triBackground = require("background/bg_collabs/i7tri")
local IaBackground = require("background/bg_collabs/ia")
local KobayashiBackground = require("background/bg_collabs/kobayashi")
local KumamonBackground = require("background/bg_collabs/kumamon")
local LoveliveBackground = require("background/bg_collabs/lovelive")
local MarioBackground = require("background/bg_collabs/mario")
local Mh3GBackground = require("background/bg_collabs/mh3G")
local Mh3rdBackground = require("background/bg_collabs/mh3rd")
local MikuBackground = require("background/bg_collabs/miku")
local MomocloBackground = require("background/bg_collabs/momoclo")
local PzdBackground = require("background/bg_collabs/pzd")
local TohoBackground = require("background/bg_collabs/toho")
local TonkatsudjBackground = require("background/bg_collabs/tonkatsudj")
local ToukenBackground = require("background/bg_collabs/touken")
local YmckBackground = require("background/bg_collabs/ymck")
local YokaiBackground = require("background/bg_collabs/yokai")
local YokaiHatsukoiBackground = require("background/bg_collabs/yokai_hatsukoi")
local YokaiMatsuriBackground = require("background/bg_collabs/yokai_matsuri")
local YokaiTokorotenBackground = require("background/bg_collabs/yokai_tokoroten")
local YokaiYougotaBackground = require("background/bg_collabs/yokai_yougota")
-- a collab's script by its module, required the first time a song uses it (requiring all 37 when
-- background.lua loaded took 250-300 ms of the first game load)
local COLLABS = {
PRACTICE = { PracticeBackground.new, nil, 1 },
TUTORIAL = { TutorialBackground.new, nil, 1 },
A3 = { A3Background.new, "background/collab/a3", 4 },
ANIMAL = { AnimalBackground.new, "background/collab/animal", 5 },
BUTTOBURST = { ButtoBackground.new, "background/collab/buttoburst", 4 },
DAN = { DanBackground.new, "background/collab/dan", 1 },
FUNASSYI = { FunassyiBackground.new, "background/collab/funassyi", 5 },
IMAS = { ImasBackground.new, "background/collab/imas", 5 },
IMAS_CG = { ImasBackground.new, "background/collab/imas_cg", 3 },
IMAS_ML = { ImasBackground.new, "background/collab/imas_ml", 3 },
IMAS_SIDEM = { ImasSidemBackground.new, "background/collab/imas_sidem", 3 },
OSHIRI = { OshiriBackground.new, "background/collab/oshiri", 5 },
DQ10 = { DQ10Background.new, "background/collab/dq10", 5 },
GB = { GbBackground.new, "background/collab/gb", 5 },
GMT = { GmtBackground.new, "background/collab/gmt", 5 },
GUMI = { GumiBackground.new, "background/collab/gumi", 5 },
I7ID7 = { I7id7Background.new, "background/collab/i7id7", 5 },
I7NATSU = { I7natsuBackground.new, "background/collab/i7natsu", 5 },
I7REV = { I7revBackground.new, "background/collab/i7rev", 5 },
I7TRI = { I7triBackground.new, "background/collab/i7tri", 5 },
IA = { IaBackground.new, "background/collab/ia", 5 },
KOBAYASHI = { KobayashiBackground.new, "background/collab/kobayashi", 5 },
KUMAMON = { KumamonBackground.new, "background/collab/kumamon", 5 },
LOVELIVE = { LoveliveBackground.new, "background/collab/lovelive", 5 },
MARIO = { MarioBackground.new, "background/collab/mario", 5 },
MH3G = { Mh3GBackground.new, "background/collab/mh3G", 5 },
MH3RD = { Mh3rdBackground.new, "background/collab/mh3rd", 5 },
MIKU = { MikuBackground.new, "background/collab/miku", 5 },
MOMOCLO = { MomocloBackground.new, "background/collab/momoclo", 5 },
PZD = { PzdBackground.new, "background/collab/pzd", 5 },
TOHO = { TohoBackground.new, "background/collab/toho", 5 },
TONKATSUDJ = { TonkatsudjBackground.new, "background/collab/tonkatsudj", 1 },
TOUKEN = { ToukenBackground.new, "background/collab/touken", 5 },
YMCK = { YmckBackground.new, "background/collab/ymck", 5 },
YOKAI = { YokaiBackground.new, "background/collab/yokai", 5 },
YOKAI_HATSUKOI = { YokaiHatsukoiBackground.new, "background/collab/yokai_hatsukoi", 5 },
YOKAI_MATSURI = { YokaiMatsuriBackground.new, "background/collab/yokai_matsuri", 5 },
YOKAI_TOKOROTEN = { YokaiTokorotenBackground.new, "background/collab/yokai_tokoroten", 5 },
YOKAI_YOUGOTA = { YokaiYougotaBackground.new, "background/collab/yokai_yougota", 5 },
PRACTICE = { "background/bg_collabs/practice", nil, 1 },
TUTORIAL = { "background/bg_collabs/tutorial", nil, 1 },
A3 = { "background/bg_collabs/a3", "background/collab/a3", 4 },
ANIMAL = { "background/bg_collabs/animal", "background/collab/animal", 5 },
BUTTOBURST = { "background/bg_collabs/buttoburst", "background/collab/buttoburst", 4 },
DAN = { "background/bg_collabs/dan", "background/collab/dan", 1 },
FUNASSYI = { "background/bg_collabs/funassyi", "background/collab/funassyi", 5 },
IMAS = { "background/bg_collabs/imas", "background/collab/imas", 5 },
IMAS_CG = { "background/bg_collabs/imas", "background/collab/imas_cg", 3 },
IMAS_ML = { "background/bg_collabs/imas", "background/collab/imas_ml", 3 },
IMAS_SIDEM = { "background/bg_collabs/imas_sidem", "background/collab/imas_sidem", 3 },
OSHIRI = { "background/bg_collabs/oshiri", "background/collab/oshiri", 5 },
DQ10 = { "background/bg_collabs/dq10", "background/collab/dq10", 5 },
GB = { "background/bg_collabs/gb", "background/collab/gb", 5 },
GMT = { "background/bg_collabs/gmt", "background/collab/gmt", 5 },
GUMI = { "background/bg_collabs/gumi", "background/collab/gumi", 5 },
I7ID7 = { "background/bg_collabs/i7id7", "background/collab/i7id7", 5 },
I7NATSU = { "background/bg_collabs/i7natsu", "background/collab/i7natsu", 5 },
I7REV = { "background/bg_collabs/i7rev", "background/collab/i7rev", 5 },
I7TRI = { "background/bg_collabs/i7tri", "background/collab/i7tri", 5 },
IA = { "background/bg_collabs/ia", "background/collab/ia", 5 },
KOBAYASHI = { "background/bg_collabs/kobayashi", "background/collab/kobayashi", 5 },
KUMAMON = { "background/bg_collabs/kumamon", "background/collab/kumamon", 5 },
LOVELIVE = { "background/bg_collabs/lovelive", "background/collab/lovelive", 5 },
MARIO = { "background/bg_collabs/mario", "background/collab/mario", 5 },
MH3G = { "background/bg_collabs/mh3G", "background/collab/mh3G", 5 },
MH3RD = { "background/bg_collabs/mh3rd", "background/collab/mh3rd", 5 },
MIKU = { "background/bg_collabs/miku", "background/collab/miku", 5 },
MOMOCLO = { "background/bg_collabs/momoclo", "background/collab/momoclo", 5 },
PZD = { "background/bg_collabs/pzd", "background/collab/pzd", 5 },
TOHO = { "background/bg_collabs/toho", "background/collab/toho", 5 },
TONKATSUDJ = { "background/bg_collabs/tonkatsudj", "background/collab/tonkatsudj", 1 },
TOUKEN = { "background/bg_collabs/touken", "background/collab/touken", 5 },
YMCK = { "background/bg_collabs/ymck", "background/collab/ymck", 5 },
YOKAI = { "background/bg_collabs/yokai", "background/collab/yokai", 5 },
YOKAI_HATSUKOI = { "background/bg_collabs/yokai_hatsukoi", "background/collab/yokai_hatsukoi", 5 },
YOKAI_MATSURI = { "background/bg_collabs/yokai_matsuri", "background/collab/yokai_matsuri", 5 },
YOKAI_TOKOROTEN = { "background/bg_collabs/yokai_tokoroten", "background/collab/yokai_tokoroten", 5 },
YOKAI_YOUGOTA = { "background/bg_collabs/yokai_yougota", "background/collab/yokai_yougota", 5 },
}
Background = {}
@@ -171,7 +135,7 @@ function Background.new(player_num, bpm, scene_preset)
self.pack = pack
local entry = (not pack) and (not self.is_2p) and scene_preset and COLLABS[scene_preset] or nil
if entry then
local ctor, path, max_dancers = entry[1], entry[2], entry[3]
local ctor, path, max_dancers = require(entry[1]).new, entry[2], entry[3]
if path then
self.collab = ctor(player_num, bpm, path, max_dancers)
else
+57 -81
View File
@@ -1,92 +1,58 @@
-- YataiDON-HSS override of PyTaikoGreen/background/bg_collabs/tutorial.lua: tile steps/scroll period use x2[1]; +40/-80/+30 px literals *sc
local DonBG = require("background/bg_objects/donbg")
local DonBGBase = require("background/bg_objects/donbg/base")
-- YataiDONNijiiro tutorial background: the layers in Graphics/background/tutorial_ac on their
-- own timelines (bg_data/tutorial_ac): pattern, mountains, clouds and four wave rows scroll left
-- (loop 320 frames), the clouds and waves bob (120 frames), the floor stands still. The screen
-- keeps a black band above (y < 60) and below (y >= 1020) the art.
local TutorialDonBG = setmetatable({}, { __index = DonBGBase })
TutorialDonBG.__index = TutorialDonBG
local TRACKS = require("background/bg_data/tutorial_ac")
local L = TRACKS.layers
function TutorialDonBG.new(index, player_num, path)
local self = setmetatable({}, TutorialDonBG)
local base = DonBGBase.new(index, player_num, path)
for k, v in pairs(base) do
self[k] = v
end
self.move = anim.move(6000, { total_distance = -self.bg_texture.x2[1], loop = true })
self.move:start()
self.overlay_move = tex.get_animation(2, "background")
self.overlay_texture = tex.get_texture_info(self.name, "overlay")
self.footer_texture = tex.get_texture_info(self.name, "footer")
self._id_overlay = tex.get_texture(self.path .. "/" .. self.name .. "/overlay") or 0
self._id_footer = tex.get_texture(self.path .. "/" .. self.name .. "/footer") or 0
return self
end
function TutorialDonBG:update(current_time_ms)
DonBGBase.update(self, current_time_ms)
self.overlay_move:update(current_time_ms)
end
function TutorialDonBG:draw_textures(fade, y, frame)
local sc = tex.get_screen_scale()
y = y + 40 * sc
for i = 0, 4 do
tex.draw_texture(self._id_bg, {
frame = 0,
fade = fade,
x = (i * self.bg_texture.x2[1]) + self.move.attribute,
y = y
})
tex.draw_texture(self._id_bg, {
frame = 1,
fade = fade,
x = (i * self.bg_texture.x2[1]) + self.move.attribute,
y = y
})
end
for i = 0, 5 do
tex.draw_texture(self._id_overlay, {
frame = frame,
fade = fade,
x = (i * self.overlay_texture.x2[1]) +
self.move.attribute * (self.overlay_texture.width / self.bg_texture.width),
y = y + self.overlay_move.attribute
})
end
for i = 0, 4 do
tex.draw_texture(self._id_footer, {
frame = 0,
fade = fade,
x = (i * self.footer_texture.x2[1]) +
self.move.attribute * (self.footer_texture.width / self.bg_texture.width),
y = y + self.overlay_move.attribute
})
tex.draw_texture(self._id_footer, {
frame = 1,
fade = fade,
x = (i * (self.footer_texture.x2[1] - 80 * sc)) +
self.move.attribute * (self.footer_texture.width / self.bg_texture.width),
y = (y + 30 * sc) + self.overlay_move.attribute
})
end
end
local FOLDER = "tutorial_ac"
local PATH = "background/" .. FOLDER
local FRAME_MS = 1000.0 / 60.0
local BAND_TOP = 60
local CLOUD_X0, CLOUD_PITCH, CLOUD_COUNT = 600, 744, 5 -- the clouds' places inside their strip
local CLOUD_Y0 = 30 -- the cloud's own offset in its exported frame
TutorialBackground = {}
TutorialBackground.__index = TutorialBackground
local COLLAB_PATH = "background/collab/tutorial"
function TutorialBackground.new(player_num, bpm)
local self = setmetatable({}, TutorialBackground)
tex.load_folder(COLLAB_PATH, "bg_normal/bg_0")
self.donbg = TutorialDonBG.new(1, player_num, COLLAB_PATH)
self._id_bg_0 = tex.get_texture(COLLAB_PATH .. "/bg_0/background") or 0
tex.load_folder("background", FOLDER)
self.id = {}
for _, name in ipairs({ "pat", "mtn", "cloud", "w13", "w16", "w21", "w24", "floor" }) do
self.id[name] = tex.get_texture(PATH .. "/" .. name) or 0
end
self.t0 = nil
self.f = 0
return self
end
function TutorialBackground:update(current_ms, bpm)
self.donbg:update(current_ms)
if not self.t0 then self.t0 = current_ms end
self.f = math.max(0, math.floor((current_ms - self.t0) / FRAME_MS))
end
local function at(track, list, f, n)
return track[list][(f % n) + 1]
end
-- whole pixels: drawn between pixels, the filtered layers came out soft
local function px(v)
return math.floor(v + 0.5)
end
-- a strip whose x / y follow its track; rows above the top band are cut off
function TutorialBackground:strip(name, track_name, f)
local tr = TRACKS[track_name]
local x = px(at(tr, "x", f, tr.n))
local y = name == "pat" and 0 or (name == "mtn" and 0 or at(tr, "y", f, 120))
local top = px(y + L[name].ytop)
local cut = math.max(0, BAND_TOP - top)
tex.draw_texture(self.id[name], {
x = x, y = top + cut, y2 = -cut,
src = { x = 0, y = cut, width = L[name].w, height = L[name].h - cut },
})
end
function TutorialBackground:handle_good(player_num) end
@@ -102,15 +68,25 @@ function TutorialBackground:handle_balloon(player_num) end
function TutorialBackground:handle_gauge(player_num, progress, is_clear, is_rainbow) end
function TutorialBackground:draw_back()
self.donbg:draw()
tex.draw_texture(self._id_bg_0)
local f = self.f
tex.draw_texture(self.id.floor, { y = L.floor.y })
self:strip("pat", "pat", f)
self:strip("mtn", "mtn", f)
local cx = at(TRACKS.cloud, "x", f, TRACKS.cloud.n)
local cy = at(TRACKS.c9, "y", f, 120) - CLOUD_Y0
for k = 0, CLOUD_COUNT - 1 do
tex.draw_texture(self.id.cloud, { x = px(cx + CLOUD_X0 + CLOUD_PITCH * k + L.cloud.dx), y = px(cy + L.cloud.dy) })
end
self:strip("w13", "w13", f)
self:strip("w16", "w16", f)
self:strip("w21", "w21", f)
self:strip("w24", "w24", f)
end
function TutorialBackground:draw_fore() end
function TutorialBackground:destroy()
self.donbg:destroy()
tex.unload_folder(COLLAB_PATH, "bg_normal/bg_0")
tex.unload_folder("background", FOLDER)
end
return TutorialBackground
@@ -0,0 +1,21 @@
-- GENERATED: the tutorial background's layer tracks.
-- x/y per 60 fps frame; x tracks loop at their wrap.
return {
pat = { n = 320, x = { 0, -2.3, -4.65, -6.95, -9.25, -11.55, -13.9, -16.2, -18.5, -20.85, -23.15, -25.45, -27.75, -30.1, -32.4, -34.7, -37, -39.35, -41.65, -43.95, -46.3, -48.6, -50.9, -53.2, -55.55, -57.85, -60.15, -62.45, -64.75, -67.1, -69.4, -71.7, -74.05, -76.35, -78.65, -80.95, -83.3, -85.6, -87.9, -90.2, -92.55, -94.85, -97.15, -99.5, -101.8, -104.1, -106.4, -108.75, -111.05, -113.35, -115.65, -118, -120.3, -122.6, -124.95, -127.25, -129.55, -131.85, -134.2, -136.5, -138.8, -141.1, -143.45, -145.75, -148.05, -150.4, -152.7, -155, -157.3, -159.6, -161.95, -164.25, -166.55, -168.9, -171.2, -173.5, -175.85, -178.15, -180.45, -182.75, -185.05, -187.4, -189.7, -192, -194.35, -196.65, -198.95, -201.25, -203.6, -205.9, -208.2, -210.5, -212.85, -215.15, -217.5, -219.8, -222.1, -224.4, -226.7, -229.05, -231.35, -233.65, -235.95, -238.3, -240.6, -242.9, -245.25, -247.55, -249.85, -252.15, -254.5, -256.8, -259.1, -261.4, -263.75, -266.05, -268.35, -270.7, -273, -275.3, -277.6, -279.95, -282.25, -284.55, -286.85, -289.2, -291.5, -293.8, -296.15, -298.45, -300.75, -303.05, -305.35, -307.7, -310, -312.35, -314.65, -316.95, -319.25, -321.55, -323.9, -326.2, -328.5, -330.85, -333.15, -335.45, -337.75, -340.1, -342.4, -344.7, -347, -349.35, -351.65, -353.95, -356.25, -358.6, -360.9, -363.2, -365.55, -367.85, -370.15, -372.45, -374.8, -377.1, -379.4, -381.75, -384.05, -386.35, -388.65, -391, -393.3, -395.6, -397.9, -400.25, -402.55, -404.85, -407.15, -409.5, -411.8, -414.1, -416.45, -418.75, -421.05, -423.35, -425.7, -428, -430.3, -432.6, -434.95, -437.25, -439.55, -441.85, -444.2, -446.5, -448.8, -451.1, -453.45, -455.75, -458.1, -460.4, -462.7, -465, -467.3, -469.65, -471.95, -474.25, -476.6, -478.9, -481.2, -483.5, -485.85, -488.15, -490.45, -492.75, -495.1, -497.4, -499.7, -502.05, -504.35, -506.65, -508.95, -511.3, -513.6, -515.9, -518.2, -520.55, -522.85, -525.15, -527.45, -529.8, -532.1, -534.4, -536.75, -539.05, -541.35, -543.65, -546, -548.3, -550.6, -552.95, -555.25, -557.55, -559.85, -562.15, -564.5, -566.8, -569.1, -571.45, -573.75, -576.05, -578.4, -580.7, -583, -585.3, -587.6, -589.95, -592.25, -594.55, -596.9, -599.2, -601.5, -603.8, -606.15, -608.45, -610.75, -613.05, -615.4, -617.7, -620, -622.35, -624.65, -626.95, -629.25, -631.6, -633.9, -636.2, -638.5, -640.85, -643.15, -645.45, -647.8, -650.1, -652.4, -654.7, -657.05, -659.35, -661.65, -663.95, -666.3, -668.6, -670.9, -673.25, -675.55, -677.85, -680.15, -682.45, -684.8, -687.1, -689.4, -691.75, -694.05, -696.35, -698.65, -701, -703.3, -705.6, -707.9, -710.25, -712.55, -714.85, -717.2, -719.5, -721.8, -724.1, -726.45, -728.75, -731.05, -733.35, -735.7, -738 },
y = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
mtn = { n = 320, x = { 0, -2.35, -4.65, -7, -9.35, -11.65, -14, -16.35, -18.65, -21, -23.3, -25.65, -28, -30.35, -32.65, -35, -37.3, -39.65, -42, -44.3, -46.65, -48.95, -51.3, -53.65, -56, -58.3, -60.65, -62.95, -65.3, -67.65, -69.95, -72.3, -74.65, -76.95, -79.3, -81.6, -83.95, -86.3, -88.65, -90.95, -93.3, -95.65, -97.95, -100.3, -102.6, -104.95, -107.3, -109.6, -111.95, -114.3, -116.6, -118.95, -121.3, -123.6, -125.95, -128.25, -130.6, -132.95, -135.3, -137.6, -139.95, -142.25, -144.6, -146.95, -149.25, -151.6, -153.95, -156.25, -158.6, -160.9, -163.25, -165.6, -167.95, -170.25, -172.6, -174.9, -177.25, -179.6, -181.9, -184.25, -186.6, -188.9, -191.25, -193.6, -195.9, -198.25, -200.6, -202.9, -205.25, -207.55, -209.9, -212.25, -214.55, -216.9, -219.25, -221.55, -223.9, -226.25, -228.55, -230.9, -233.2, -235.55, -237.9, -240.25, -242.55, -244.9, -247.2, -249.55, -251.9, -254.2, -256.55, -258.9, -261.2, -263.55, -265.85, -268.2, -270.55, -272.9, -275.2, -277.55, -279.9, -282.2, -284.55, -286.85, -289.2, -291.55, -293.85, -296.2, -298.55, -300.85, -303.2, -305.55, -307.85, -310.2, -312.55, -314.85, -317.2, -319.55, -321.85, -324.2, -326.5, -328.85, -331.2, -333.5, -335.85, -338.2, -340.5, -342.85, -345.15, -347.5, -349.85, -352.2, -354.5, -356.85, -359.15, -361.5, -363.85, -366.15, -368.5, -370.85, -373.15, -375.5, -377.85, -380.15, -382.5, -384.85, -387.15, -389.5, -391.8, -394.15, -396.5, -398.85, -401.15, -403.5, -405.8, -408.15, -410.5, -412.8, -415.15, -417.5, -419.8, -422.15, -424.45, -426.8, -429.15, -431.5, -433.8, -436.15, -438.45, -440.8, -443.15, -445.45, -447.8, -450.15, -452.45, -454.8, -457.15, -459.45, -461.8, -464.15, -466.45, -468.8, -471.1, -473.45, -475.8, -478.1, -480.45, -482.8, -485.1, -487.45, -489.8, -492.1, -494.45, -496.8, -499.1, -501.45, -503.75, -506.1, -508.45, -510.75, -513.1, -515.45, -517.75, -520.1, -522.45, -524.75, -527.1, -529.45, -531.75, -534.1, -536.45, -538.75, -541.1, -543.4, -545.75, -548.1, -550.4, -552.75, -555.1, -557.4, -559.75, -562.1, -564.4, -566.75, -569.1, -571.4, -573.75, -576.05, -578.4, -580.75, -583.1, -585.4, -587.75, -590.05, -592.4, -594.75, -597.05, -599.4, -601.75, -604.05, -606.4, -608.7, -611.05, -613.4, -615.75, -618.05, -620.4, -622.7, -625.05, -627.4, -629.7, -632.05, -634.4, -636.7, -639.05, -641.4, -643.7, -646.05, -648.4, -650.7, -653.05, -655.35, -657.7, -660.05, -662.4, -664.7, -667.05, -669.35, -671.7, -674.05, -676.35, -678.7, -681.05, -683.35, -685.7, -688, -690.35, -692.7, -695.05, -697.35, -699.7, -702, -704.35, -706.7, -709, -711.35, -713.7, -716, -718.35, -720.7, -723, -725.35, -727.65, -730, -732.35, -734.65, -737, -739.35, -741.65, -744 },
y = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
cloud = { n = 320, x = { -744, -746.35, -748.65, -751, -753.35, -755.65, -758, -760.35, -762.65, -765, -767.3, -769.65, -772, -774.35, -776.65, -779, -781.3, -783.65, -786, -788.3, -790.65, -792.95, -795.3, -797.65, -800, -802.3, -804.65, -806.95, -809.3, -811.65, -813.95, -816.3, -818.65, -820.95, -823.3, -825.6, -827.95, -830.3, -832.65, -834.95, -837.3, -839.65, -841.95, -844.3, -846.6, -848.95, -851.3, -853.6, -855.95, -858.3, -860.6, -862.95, -865.3, -867.6, -869.95, -872.25, -874.6, -876.95, -879.3, -881.6, -883.95, -886.25, -888.6, -890.95, -893.25, -895.6, -897.95, -900.25, -902.6, -904.9, -907.25, -909.6, -911.95, -914.25, -916.6, -918.9, -921.25, -923.6, -925.9, -928.25, -930.6, -932.9, -935.25, -937.6, -939.9, -942.25, -944.6, -946.9, -949.25, -951.55, -953.9, -956.25, -958.55, -960.9, -963.25, -965.55, -967.9, -970.25, -972.55, -974.9, -977.2, -979.55, -981.9, -984.25, -986.55, -988.9, -991.2, -993.55, -995.9, -998.2, -1000.5, -1002.9, -1005.2, -1007.5, -1009.8, -1012.2, -1014.5, -1016.9, -1019.2, -1021.5, -1023.9, -1026.2, -1028.6, -1030.8, -1033.2, -1035.6, -1037.8, -1040.2, -1042.6, -1044.8, -1047.2, -1049.6, -1051.8, -1054.2, -1056.6, -1058.8, -1061.2, -1063.6, -1065.8, -1068.2, -1070.5, -1072.8, -1075.2, -1077.5, -1079.8, -1082.2, -1084.5, -1086.8, -1089.2, -1091.5, -1093.8, -1096.2, -1098.5, -1100.8, -1103.2, -1105.5, -1107.8, -1110.2, -1112.5, -1114.8, -1117.2, -1119.5, -1121.8, -1124.2, -1126.5, -1128.8, -1131.2, -1133.5, -1135.8, -1138.2, -1140.5, -1142.8, -1145.2, -1147.5, -1149.8, -1152.2, -1154.5, -1156.8, -1159.2, -1161.5, -1163.8, -1166.2, -1168.4, -1170.8, -1173.2, -1175.5, -1177.8, -1180.2, -1182.4, -1184.8, -1187.2, -1189.4, -1191.8, -1194.2, -1196.4, -1198.8, -1201.2, -1203.4, -1205.8, -1208.2, -1210.4, -1212.8, -1215.1, -1217.4, -1219.8, -1222.1, -1224.4, -1226.8, -1229.1, -1231.4, -1233.8, -1236.1, -1238.4, -1240.8, -1243.1, -1245.4, -1247.8, -1250.1, -1252.4, -1254.8, -1257.1, -1259.4, -1261.8, -1264.1, -1266.4, -1268.8, -1271.1, -1273.4, -1275.8, -1278.1, -1280.4, -1282.8, -1285.1, -1287.4, -1289.8, -1292.1, -1294.4, -1296.8, -1299.1, -1301.4, -1303.8, -1306.1, -1308.4, -1310.8, -1313.1, -1315.4, -1317.8, -1320.1, -1322.4, -1324.8, -1327.1, -1329.4, -1331.8, -1334.1, -1336.4, -1338.8, -1341.1, -1343.4, -1345.8, -1348.1, -1350.4, -1352.7, -1355.1, -1357.4, -1359.8, -1362.1, -1364.4, -1366.7, -1369.1, -1371.4, -1373.7, -1376.1, -1378.4, -1380.7, -1383.1, -1385.4, -1387.7, -1390.1, -1392.4, -1394.7, -1397.1, -1399.3, -1401.7, -1404.1, -1406.4, -1408.7, -1411.1, -1413.3, -1415.7, -1418.1, -1420.3, -1422.7, -1425.1, -1427.3, -1429.7, -1432, -1434.3, -1436.7, -1439.1, -1441.3, -1443.7, -1446, -1448.3, -1450.7, -1453, -1455.3, -1457.7, -1460, -1462.3, -1464.7, -1467, -1469.3, -1471.7, -1474, -1476.3, -1478.7, -1481, -1483.3, -1485.7, -1488 },
y = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
w13 = { n = 320, x = { 0, -2.35, -4.65, -7, -9.35, -11.65, -14, -16.35, -18.65, -21, -23.3, -25.65, -28, -30.35, -32.65, -35, -37.3, -39.65, -42, -44.3, -46.65, -48.95, -51.3, -53.65, -56, -58.3, -60.65, -62.95, -65.3, -67.65, -69.95, -72.3, -74.65, -76.95, -79.3, -81.6, -83.95, -86.3, -88.65, -90.95, -93.3, -95.65, -97.95, -100.3, -102.6, -104.95, -107.3, -109.6, -111.95, -114.3, -116.6, -118.95, -121.3, -123.6, -125.95, -128.25, -130.6, -132.95, -135.3, -137.6, -139.95, -142.25, -144.6, -146.95, -149.25, -151.6, -153.95, -156.25, -158.6, -160.9, -163.25, -165.6, -167.95, -170.25, -172.6, -174.9, -177.25, -179.6, -181.9, -184.25, -186.6, -188.9, -191.25, -193.6, -195.9, -198.25, -200.6, -202.9, -205.25, -207.55, -209.9, -212.25, -214.55, -216.9, -219.25, -221.55, -223.9, -226.25, -228.55, -230.9, -233.2, -235.55, -237.9, -240.25, -242.55, -244.9, -247.2, -249.55, -251.9, -254.2, -256.55, -258.9, -261.2, -263.55, -265.85, -268.2, -270.55, -272.9, -275.2, -277.55, -279.9, -282.2, -284.55, -286.85, -289.2, -291.55, -293.85, -296.2, -298.55, -300.85, -303.2, -305.55, -307.85, -310.2, -312.55, -314.85, -317.2, -319.55, -321.85, -324.2, -326.5, -328.85, -331.2, -333.5, -335.85, -338.2, -340.5, -342.85, -345.15, -347.5, -349.85, -352.2, -354.5, -356.85, -359.15, -361.5, -363.85, -366.15, -368.5, -370.85, -373.15, -375.5, -377.85, -380.15, -382.5, -384.85, -387.15, -389.5, -391.8, -394.15, -396.5, -398.85, -401.15, -403.5, -405.8, -408.15, -410.5, -412.8, -415.15, -417.5, -419.8, -422.15, -424.45, -426.8, -429.15, -431.5, -433.8, -436.15, -438.45, -440.8, -443.15, -445.45, -447.8, -450.15, -452.45, -454.8, -457.15, -459.45, -461.8, -464.15, -466.45, -468.8, -471.1, -473.45, -475.8, -478.1, -480.45, -482.8, -485.1, -487.45, -489.8, -492.1, -494.45, -496.8, -499.1, -501.45, -503.75, -506.1, -508.45, -510.75, -513.1, -515.45, -517.75, -520.1, -522.45, -524.75, -527.1, -529.45, -531.75, -534.1, -536.45, -538.75, -541.1, -543.4, -545.75, -548.1, -550.4, -552.75, -555.1, -557.4, -559.75, -562.1, -564.4, -566.75, -569.1, -571.4, -573.75, -576.05, -578.4, -580.75, -583.1, -585.4, -587.75, -590.05, -592.4, -594.75, -597.05, -599.4, -601.75, -604.05, -606.4, -608.7, -611.05, -613.4, -615.75, -618.05, -620.4, -622.7, -625.05, -627.4, -629.7, -632.05, -634.4, -636.7, -639.05, -641.4, -643.7, -646.05, -648.4, -650.7, -653.05, -655.35, -657.7, -660.05, -662.4, -664.7, -667.05, -669.35, -671.7, -674.05, -676.35, -678.7, -681.05, -683.35, -685.7, -688, -690.35, -692.7, -695.05, -697.35, -699.7, -702, -704.35, -706.7, -709, -711.35, -713.7, -716, -718.35, -720.7, -723, -725.35, -727.65, -730, -732.35, -734.65, -737, -739.35, -741.65, -744 },
y = { 339, 338.8, 338.6, 338.4, 338.2, 338, 337.8, 337.6, 337.35, 337.15, 336.95, 336.75, 336.55, 336.35, 336.15, 335.95, 335.75, 335.55, 335.35, 335.15, 334.95, 334.75, 334.55, 334.3, 334.1, 333.9, 333.7, 333.5, 333.3, 333.1, 332.9, 332.7, 332.5, 332.3, 332.1, 331.9, 331.7, 331.45, 331.25, 331.05, 330.85, 330.65, 330.45, 330.25, 330.05, 329.85, 329.65, 329.45, 329.25, 329.05, 328.85, 328.65, 328.4, 328.2, 328, 327.8, 327.6, 327.4, 327.2, 327, 327.2, 327.4, 327.6, 327.8, 328, 328.2, 328.4, 328.6, 328.8, 329, 329.2, 329.4, 329.6, 329.8, 330, 330.2, 330.4, 330.6, 330.8, 331, 331.2, 331.4, 331.6, 331.8, 332, 332.2, 332.4, 332.6, 332.8, 333, 333.2, 333.4, 333.6, 333.8, 334, 334.2, 334.4, 334.6, 334.8, 335, 335.2, 335.4, 335.6, 335.8, 336, 336.2, 336.4, 336.6, 336.8, 337, 337.2, 337.4, 337.6, 337.8, 338, 338.2, 338.4, 338.6, 338.8, 339 } },
w16 = { n = 320, x = { 0, -2.35, -4.65, -7, -9.35, -11.65, -14, -16.35, -18.65, -21, -23.3, -25.65, -28, -30.35, -32.65, -35, -37.3, -39.65, -42, -44.3, -46.65, -48.95, -51.3, -53.65, -56, -58.3, -60.65, -62.95, -65.3, -67.65, -69.95, -72.3, -74.65, -76.95, -79.3, -81.6, -83.95, -86.3, -88.65, -90.95, -93.3, -95.65, -97.95, -100.3, -102.6, -104.95, -107.3, -109.6, -111.95, -114.3, -116.6, -118.95, -121.3, -123.6, -125.95, -128.25, -130.6, -132.95, -135.3, -137.6, -139.95, -142.25, -144.6, -146.95, -149.25, -151.6, -153.95, -156.25, -158.6, -160.9, -163.25, -165.6, -167.95, -170.25, -172.6, -174.9, -177.25, -179.6, -181.9, -184.25, -186.6, -188.9, -191.25, -193.6, -195.9, -198.25, -200.6, -202.9, -205.25, -207.55, -209.9, -212.25, -214.55, -216.9, -219.25, -221.55, -223.9, -226.25, -228.55, -230.9, -233.2, -235.55, -237.9, -240.25, -242.55, -244.9, -247.2, -249.55, -251.9, -254.2, -256.55, -258.9, -261.2, -263.55, -265.85, -268.2, -270.55, -272.9, -275.2, -277.55, -279.9, -282.2, -284.55, -286.85, -289.2, -291.55, -293.85, -296.2, -298.55, -300.85, -303.2, -305.55, -307.85, -310.2, -312.55, -314.85, -317.2, -319.55, -321.85, -324.2, -326.5, -328.85, -331.2, -333.5, -335.85, -338.2, -340.5, -342.85, -345.15, -347.5, -349.85, -352.2, -354.5, -356.85, -359.15, -361.5, -363.85, -366.15, -368.5, -370.85, -373.15, -375.5, -377.85, -380.15, -382.5, -384.85, -387.15, -389.5, -391.8, -394.15, -396.5, -398.85, -401.15, -403.5, -405.8, -408.15, -410.5, -412.8, -415.15, -417.5, -419.8, -422.15, -424.45, -426.8, -429.15, -431.5, -433.8, -436.15, -438.45, -440.8, -443.15, -445.45, -447.8, -450.15, -452.45, -454.8, -457.15, -459.45, -461.8, -464.15, -466.45, -468.8, -471.1, -473.45, -475.8, -478.1, -480.45, -482.8, -485.1, -487.45, -489.8, -492.1, -494.45, -496.8, -499.1, -501.45, -503.75, -506.1, -508.45, -510.75, -513.1, -515.45, -517.75, -520.1, -522.45, -524.75, -527.1, -529.45, -531.75, -534.1, -536.45, -538.75, -541.1, -543.4, -545.75, -548.1, -550.4, -552.75, -555.1, -557.4, -559.75, -562.1, -564.4, -566.75, -569.1, -571.4, -573.75, -576.05, -578.4, -580.75, -583.1, -585.4, -587.75, -590.05, -592.4, -594.75, -597.05, -599.4, -601.75, -604.05, -606.4, -608.7, -611.05, -613.4, -615.75, -618.05, -620.4, -622.7, -625.05, -627.4, -629.7, -632.05, -634.4, -636.7, -639.05, -641.4, -643.7, -646.05, -648.4, -650.7, -653.05, -655.35, -657.7, -660.05, -662.4, -664.7, -667.05, -669.35, -671.7, -674.05, -676.35, -678.7, -681.05, -683.35, -685.7, -688, -690.35, -692.7, -695.05, -697.35, -699.7, -702, -704.35, -706.7, -709, -711.35, -713.7, -716, -718.35, -720.7, -723, -725.35, -727.65, -730, -732.35, -734.65, -737, -739.35, -741.65, -744 },
y = { 345, 345.5, 346, 346.55, 347.05, 347.55, 348.05, 348.55, 349.05, 349.6, 350.1, 350.6, 351.1, 351.6, 352.1, 352.65, 353.15, 353.65, 354.15, 354.65, 355.15, 355.7, 356.2, 356.7, 357.2, 357.7, 358.2, 358.75, 359.25, 359.75, 360.25, 360.75, 361.25, 361.8, 362.3, 362.8, 363.3, 363.8, 364.3, 364.85, 365.35, 365.85, 366.35, 366.85, 367.35, 367.9, 368.4, 368.9, 369.4, 369.9, 370.4, 370.95, 371.45, 371.95, 372.45, 372.95, 373.45, 374, 374.5, 375, 374.5, 374, 373.5, 373, 372.5, 372, 371.5, 371, 370.5, 370, 369.5, 369, 368.5, 368, 367.5, 367, 366.5, 366, 365.5, 365, 364.5, 364, 363.5, 363, 362.5, 362, 361.5, 361, 360.5, 360, 359.5, 359, 358.5, 358, 357.5, 357, 356.5, 356, 355.5, 355, 354.5, 354, 353.5, 353, 352.5, 352, 351.5, 351, 350.5, 350, 349.5, 349, 348.5, 348, 347.5, 347, 346.5, 346, 345.5, 345 } },
w21 = { n = 320, x = { 0, -2.35, -4.65, -7, -9.35, -11.65, -14, -16.35, -18.65, -21, -23.3, -25.65, -28, -30.35, -32.65, -35, -37.3, -39.65, -42, -44.3, -46.65, -48.95, -51.3, -53.65, -56, -58.3, -60.65, -62.95, -65.3, -67.65, -69.95, -72.3, -74.65, -76.95, -79.3, -81.6, -83.95, -86.3, -88.65, -90.95, -93.3, -95.65, -97.95, -100.3, -102.6, -104.95, -107.3, -109.6, -111.95, -114.3, -116.6, -118.95, -121.3, -123.6, -125.95, -128.25, -130.6, -132.95, -135.3, -137.6, -139.95, -142.25, -144.6, -146.95, -149.25, -151.6, -153.95, -156.25, -158.6, -160.9, -163.25, -165.6, -167.95, -170.25, -172.6, -174.9, -177.25, -179.6, -181.9, -184.25, -186.6, -188.9, -191.25, -193.6, -195.9, -198.25, -200.6, -202.9, -205.25, -207.55, -209.9, -212.25, -214.55, -216.9, -219.25, -221.55, -223.9, -226.25, -228.55, -230.9, -233.2, -235.55, -237.9, -240.25, -242.55, -244.9, -247.2, -249.55, -251.9, -254.2, -256.55, -258.9, -261.2, -263.55, -265.85, -268.2, -270.55, -272.9, -275.2, -277.55, -279.9, -282.2, -284.55, -286.85, -289.2, -291.55, -293.85, -296.2, -298.55, -300.85, -303.2, -305.55, -307.85, -310.2, -312.55, -314.85, -317.2, -319.55, -321.85, -324.2, -326.5, -328.85, -331.2, -333.5, -335.85, -338.2, -340.5, -342.85, -345.15, -347.5, -349.85, -352.2, -354.5, -356.85, -359.15, -361.5, -363.85, -366.15, -368.5, -370.85, -373.15, -375.5, -377.85, -380.15, -382.5, -384.85, -387.15, -389.5, -391.8, -394.15, -396.5, -398.85, -401.15, -403.5, -405.8, -408.15, -410.5, -412.8, -415.15, -417.5, -419.8, -422.15, -424.45, -426.8, -429.15, -431.5, -433.8, -436.15, -438.45, -440.8, -443.15, -445.45, -447.8, -450.15, -452.45, -454.8, -457.15, -459.45, -461.8, -464.15, -466.45, -468.8, -471.1, -473.45, -475.8, -478.1, -480.45, -482.8, -485.1, -487.45, -489.8, -492.1, -494.45, -496.8, -499.1, -501.45, -503.75, -506.1, -508.45, -510.75, -513.1, -515.45, -517.75, -520.1, -522.45, -524.75, -527.1, -529.45, -531.75, -534.1, -536.45, -538.75, -541.1, -543.4, -545.75, -548.1, -550.4, -552.75, -555.1, -557.4, -559.75, -562.1, -564.4, -566.75, -569.1, -571.4, -573.75, -576.05, -578.4, -580.75, -583.1, -585.4, -587.75, -590.05, -592.4, -594.75, -597.05, -599.4, -601.75, -604.05, -606.4, -608.7, -611.05, -613.4, -615.75, -618.05, -620.4, -622.7, -625.05, -627.4, -629.7, -632.05, -634.4, -636.7, -639.05, -641.4, -643.7, -646.05, -648.4, -650.7, -653.05, -655.35, -657.7, -660.05, -662.4, -664.7, -667.05, -669.35, -671.7, -674.05, -676.35, -678.7, -681.05, -683.35, -685.7, -688, -690.35, -692.7, -695.05, -697.35, -699.7, -702, -704.35, -706.7, -709, -711.35, -713.7, -716, -718.35, -720.7, -723, -725.35, -727.65, -730, -732.35, -734.65, -737, -739.35, -741.65, -744 },
y = { 384, 383.85, 383.75, 383.6, 383.45, 383.3, 383.2, 383.05, 382.9, 382.8, 382.65, 382.5, 382.35, 382.25, 382.1, 381.95, 381.85, 381.7, 381.55, 381.4, 381.3, 381.15, 381, 380.9, 380.75, 380.6, 380.45, 380.35, 380.2, 380.05, 379.95, 379.8, 379.65, 379.55, 379.4, 379.25, 379.1, 379, 378.85, 378.7, 378.6, 378.45, 378.3, 378.15, 378.05, 377.9, 377.75, 377.65, 377.5, 377.35, 377.2, 377.1, 376.95, 376.8, 376.7, 376.55, 376.4, 376.25, 376.15, 376, 376.15, 376.25, 376.4, 376.55, 376.65, 376.8, 376.95, 377.05, 377.2, 377.35, 377.45, 377.6, 377.75, 377.85, 378, 378.15, 378.25, 378.4, 378.55, 378.65, 378.8, 378.95, 379.05, 379.2, 379.35, 379.45, 379.6, 379.75, 379.85, 380, 380.15, 380.25, 380.4, 380.55, 380.65, 380.8, 380.95, 381.05, 381.2, 381.35, 381.45, 381.6, 381.75, 381.85, 382, 382.15, 382.25, 382.4, 382.55, 382.65, 382.8, 382.95, 383.05, 383.2, 383.35, 383.45, 383.6, 383.75, 383.85, 384 } },
w24 = { n = 320, x = { 0, -2.35, -4.65, -7, -9.35, -11.65, -14, -16.35, -18.65, -21, -23.3, -25.65, -28, -30.35, -32.65, -35, -37.3, -39.65, -42, -44.3, -46.65, -48.95, -51.3, -53.65, -56, -58.3, -60.65, -62.95, -65.3, -67.65, -69.95, -72.3, -74.65, -76.95, -79.3, -81.6, -83.95, -86.3, -88.65, -90.95, -93.3, -95.65, -97.95, -100.3, -102.6, -104.95, -107.3, -109.6, -111.95, -114.3, -116.6, -118.95, -121.3, -123.6, -125.95, -128.25, -130.6, -132.95, -135.3, -137.6, -139.95, -142.25, -144.6, -146.95, -149.25, -151.6, -153.95, -156.25, -158.6, -160.9, -163.25, -165.6, -167.95, -170.25, -172.6, -174.9, -177.25, -179.6, -181.9, -184.25, -186.6, -188.9, -191.25, -193.6, -195.9, -198.25, -200.6, -202.9, -205.25, -207.55, -209.9, -212.25, -214.55, -216.9, -219.25, -221.55, -223.9, -226.25, -228.55, -230.9, -233.2, -235.55, -237.9, -240.25, -242.55, -244.9, -247.2, -249.55, -251.9, -254.2, -256.55, -258.9, -261.2, -263.55, -265.85, -268.2, -270.55, -272.9, -275.2, -277.55, -279.9, -282.2, -284.55, -286.85, -289.2, -291.55, -293.85, -296.2, -298.55, -300.85, -303.2, -305.55, -307.85, -310.2, -312.55, -314.85, -317.2, -319.55, -321.85, -324.2, -326.5, -328.85, -331.2, -333.5, -335.85, -338.2, -340.5, -342.85, -345.15, -347.5, -349.85, -352.2, -354.5, -356.85, -359.15, -361.5, -363.85, -366.15, -368.5, -370.85, -373.15, -375.5, -377.85, -380.15, -382.5, -384.85, -387.15, -389.5, -391.8, -394.15, -396.5, -398.85, -401.15, -403.5, -405.8, -408.15, -410.5, -412.8, -415.15, -417.5, -419.8, -422.15, -424.45, -426.8, -429.15, -431.5, -433.8, -436.15, -438.45, -440.8, -443.15, -445.45, -447.8, -450.15, -452.45, -454.8, -457.15, -459.45, -461.8, -464.15, -466.45, -468.8, -471.1, -473.45, -475.8, -478.1, -480.45, -482.8, -485.1, -487.45, -489.8, -492.1, -494.45, -496.8, -499.1, -501.45, -503.75, -506.1, -508.45, -510.75, -513.1, -515.45, -517.75, -520.1, -522.45, -524.75, -527.1, -529.45, -531.75, -534.1, -536.45, -538.75, -541.1, -543.4, -545.75, -548.1, -550.4, -552.75, -555.1, -557.4, -559.75, -562.1, -564.4, -566.75, -569.1, -571.4, -573.75, -576.05, -578.4, -580.75, -583.1, -585.4, -587.75, -590.05, -592.4, -594.75, -597.05, -599.4, -601.75, -604.05, -606.4, -608.7, -611.05, -613.4, -615.75, -618.05, -620.4, -622.7, -625.05, -627.4, -629.7, -632.05, -634.4, -636.7, -639.05, -641.4, -643.7, -646.05, -648.4, -650.7, -653.05, -655.35, -657.7, -660.05, -662.4, -664.7, -667.05, -669.35, -671.7, -674.05, -676.35, -678.7, -681.05, -683.35, -685.7, -688, -690.35, -692.7, -695.05, -697.35, -699.7, -702, -704.35, -706.7, -709, -711.35, -713.7, -716, -718.35, -720.7, -723, -725.35, -727.65, -730, -732.35, -734.65, -737, -739.35, -741.65, -744 },
y = { 401, 401.5, 402, 402.55, 403.05, 403.55, 404.05, 404.55, 405.05, 405.6, 406.1, 406.6, 407.1, 407.6, 408.1, 408.65, 409.15, 409.65, 410.15, 410.65, 411.15, 411.7, 412.2, 412.7, 413.2, 413.7, 414.2, 414.75, 415.25, 415.75, 416.25, 416.75, 417.25, 417.8, 418.3, 418.8, 419.3, 419.8, 420.3, 420.85, 421.35, 421.85, 422.35, 422.85, 423.35, 423.9, 424.4, 424.9, 425.4, 425.9, 426.4, 426.95, 427.45, 427.95, 428.45, 428.95, 429.45, 430, 430.5, 431, 430.5, 430, 429.5, 429, 428.5, 428, 427.5, 427, 426.5, 426, 425.5, 425, 424.5, 424, 423.5, 423, 422.5, 422, 421.5, 421, 420.5, 420, 419.5, 419, 418.5, 418, 417.5, 417, 416.5, 416, 415.5, 415, 414.5, 414, 413.5, 413, 412.5, 412, 411.5, 411, 410.5, 410, 409.5, 409, 408.5, 408, 407.5, 407, 406.5, 406, 405.5, 405, 404.5, 404, 403.5, 403, 402.5, 402, 401.5, 401 } },
c9 = { n = 120, x = { -144, -146.35, -148.65, -151, -153.35, -155.65, -158, -160.35, -162.65, -165, -167.3, -169.65, -172, -174.35, -176.65, -179, -181.3, -183.65, -186, -188.3, -190.65, -192.95, -195.3, -197.65, -200, -202.3, -204.65, -206.95, -209.3, -211.65, -213.95, -216.3, -218.65, -220.95, -223.3, -225.6, -227.95, -230.3, -232.65, -234.95, -237.3, -239.65, -241.95, -244.3, -246.6, -248.95, -251.3, -253.6, -255.95, -258.3, -260.6, -262.95, -265.3, -267.6, -269.95, -272.25, -274.6, -276.95, -279.3, -281.6, -283.95, -286.25, -288.6, -290.95, -293.25, -295.6, -297.95, -300.25, -302.6, -304.9, -307.25, -309.6, -311.95, -314.25, -316.6, -318.9, -321.25, -323.6, -325.9, -328.25, -330.6, -332.9, -335.25, -337.6, -339.9, -342.25, -344.6, -346.9, -349.25, -351.55, -353.9, -356.25, -358.55, -360.9, -363.25, -365.55, -367.9, -370.25, -372.55, -374.9, -377.2, -379.55, -381.9, -384.25, -386.55, -388.9, -391.2, -393.55, -395.9, -398.2, -400.55, -402.9, -405.2, -407.55, -409.85, -412.2, -414.55, -416.9, -419.2, -421.55 },
y = { 282, 280.8, 279.65, 278.5, 277.35, 276.25, 275.2, 274.1, 273.05, 272.05, 271.05, 270.05, 269.1, 268.15, 267.2, 266.3, 265.45, 264.55, 263.7, 262.9, 262.1, 261.3, 260.55, 259.8, 259.1, 258.4, 257.7, 257.05, 256.4, 255.8, 255.2, 254.6, 254.05, 253.5, 253, 252.5, 252, 251.6, 251.2, 250.75, 250.35, 250, 249.65, 249.3, 249, 248.7, 248.4, 248.15, 247.95, 247.7, 247.5, 247.35, 247.2, 247.05, 246.95, 246.85, 246.8, 246.75, 246.7, 246.7, 246.75, 246.8, 246.85, 246.9, 247, 247.1, 247.25, 247.4, 247.55, 247.75, 247.95, 248.15, 248.4, 248.65, 248.95, 249.25, 249.6, 249.95, 250.3, 250.7, 251.1, 251.5, 251.95, 252.4, 252.9, 253.4, 253.9, 254.45, 255, 255.6, 256.2, 256.8, 257.45, 258.1, 258.8, 259.5, 260.2, 260.95, 261.7, 262.45, 263.25, 264.05, 264.8, 265.65, 266.55, 267.45, 268.35, 269.25, 270.25, 271.2, 272.2, 273.2, 274.25, 275.3, 276.35, 277.45, 278.55, 279.7, 280.85, 282 } },
layers = {pat = {ytop = 0, w = 2664, h = 416}, mtn = {ytop = 148, w = 2664, h = 202}, w13 = {ytop = -44, w = 2664, h = 96}, w16 = {ytop = -44, w = 2664, h = 96}, w21 = {ytop = -44, w = 2664, h = 96}, w24 = {ytop = -44, w = 2664, h = 96}, cloud = {dx = -288, dy = -161, w = 575, h = 383}, floor = {y = 668, h = 352}},
}
@@ -26,6 +26,15 @@ local SORT_FOLDER_NAMES = { ["曲検索"] = true, ["Search Song"] = true, ["搜
["むずかしさからえらぶ"] = true, ["Diff Sort"] = true }
local FOLDER_FRAME_EVENT, FOLDER_FRAME_SORT, FOLDER_FRAME_DANI = 11, 12, 10
-- The tutorial folder (GENRE:TUTORIAL, genre index 0) is a howto board: the recent
-- board's colours with its own characters (box_chara frame 10).
local GENRE_TUTORIAL = 0
local FOLDER_FRAME_HOWTO, CHARA_FRAME_HOWTO = 9, 10
local function is_tutorial(box)
return box.genre_index ~= nil and box:genre_index() == GENRE_TUTORIAL
end
local SORT_COLLECTIONS = { SEARCH = true, DIFFICULTY = true }
local EVENT_COLLECTIONS = { NEW = true, RECOMMENDED = true }
@@ -39,6 +48,7 @@ local function folder_frame(box)
end
if box.kind and box:kind() == "dan" then return FOLDER_FRAME_DANI, false end
if n and SORT_FOLDER_NAMES[n] then return FOLDER_FRAME_SORT, false end
if is_tutorial(box) then return FOLDER_FRAME_HOWTO, false end
return box:genre_frame(), false
end
@@ -115,7 +125,7 @@ function SongSelect:draw_folder_board(box, pb, ch_alpha, ch_off, ta, glow_a)
-- characters: texture has L at x=510 and R at x=1410
if ch_alpha > 0 then
local slide = 450.0 - ch_off
local gframe = box:genre_frame()
local gframe = is_tutorial(box) and CHARA_FRAME_HOWTO or box:genre_frame()
tex.draw_texture(self._id_box_chara, { frame = gframe, x = bx - 960 + slide, y = by - 240, x2 = 960 - 1920, fade = fade * ch_alpha,
src = { x = 0, y = 0, width = 960, height = 480 } })
tex.draw_texture(self._id_box_chara, { frame = gframe, x = bx - slide, y = by - 240, x2 = 960 - 1920, fade = fade * ch_alpha,
+14
View File
@@ -0,0 +1,14 @@
-- YataiDONNijiiro: the oni <-> ura change plays on the difficulty board (song_select.lua), so the
-- engine's ura switch overlay draws nothing here (without this override the parent skin's art showed).
UraSwitchAnimation = {}
UraSwitchAnimation.__index = UraSwitchAnimation
function UraSwitchAnimation.new()
return setmetatable({}, UraSwitchAnimation)
end
function UraSwitchAnimation:start(is_backwards) end
function UraSwitchAnimation:update(current_ms) end
function UraSwitchAnimation:draw() end
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+36 -7
View File
@@ -2784,6 +2784,15 @@ a1671a51159af679d1cf5b7b76fa589d1feedf3b80585926321f811eea63a5b4 *./Graphics/bac
8943448cbd586d77411f01d81275f75ae12c5b991e147b0eb3ddff52d7059179 *./Graphics/background/renda/renda_1/5.png
a2701d6ddd876dbc3f8dc2c9d54a79d4451dfb2da56c1fae855bf6212d600e1d *./Graphics/background/renda/renda_2.png
2421a27612fa51e8af70ea10698b6ab2616bdc1e623e996327e11901cb652ba3 *./Graphics/background/renda/texture.json
7dae02df0392ce513668e4929dee0362f3e3279c097b74dbcbac2a3ef36f706b *./Graphics/background/tutorial_ac/cloud.png
d6b007e4fdb3e8dfe259ce8a591956bd3a8073dbfb8eded5c28a6d02b8dba4c9 *./Graphics/background/tutorial_ac/floor.png
f8a44f4dc7386da694b3749f1a7b77c88b79bec584bc0cf48bc93a12742be8ab *./Graphics/background/tutorial_ac/mtn.png
ff76783f5f03ca095e12b005cad93ef1c91748ddcf27755f16ff53c899851d15 *./Graphics/background/tutorial_ac/pat.png
7c4957cbb71eb25e0b09964af536be1ed6d20c673cf4bb2c8e6452dd3b2ae879 *./Graphics/background/tutorial_ac/texture.json
f75f0cf748c8dc1b9a4064bf52e49cc4f576db7be12521e0b4faca69bc3c7c26 *./Graphics/background/tutorial_ac/w13.png
5c769eef89b09eb7c8393b6a5e83a7aa37ad8807a91791613ad1276d3985c7ae *./Graphics/background/tutorial_ac/w16.png
f75f0cf748c8dc1b9a4064bf52e49cc4f576db7be12521e0b4faca69bc3c7c26 *./Graphics/background/tutorial_ac/w21.png
9c87d21983b605b12ab7799948a47700488bf8f9d213aae754c18eef1e67b958 *./Graphics/background/tutorial_ac/w24.png
205c62076d642767b84b4f4a2497f7ab48503135d76f48968fd6d0d4215acd66 *./Graphics/dan_loading/loading_dan/night.png
7b909968ea0d233cf79a95a506e76d63256a4dc2aa85f72819fc44403f7f6417 *./Graphics/dan_loading/loading_dan/plaque/0.png
6f544c0be29ff943b3913ca7a699a348a14e2d210e90b6cc1ad2a592ef7d4cbd *./Graphics/dan_loading/loading_dan/plaque/1.png
@@ -3884,7 +3893,7 @@ a6dea25ec50ac8784fe096c717f91d24807a8a22b16082541e9b915a9b31bc7d *./Graphics/gam
b3f3073a122e5b731f262489db6adbf7d9ffaefab5afefd370e8bd18cc510cc4 *./Graphics/game/gogo_time/explosion.png
eca6c501cbfd81c7b33b46ab81db554626ff2be54c1dd183e3493276dcaaccbf *./Graphics/game/gogo_time/fire.png
797528e413b3427959312db5d8537fdce6331ba43a5b49903da0670211ebf2fa *./Graphics/game/gogo_time/lane_effect.png
e3fb796cacd9ad7bf0769e8f6d19f55c9c61742b8a59a854fb45acdd406efc5e *./Graphics/game/gogo_time/texture.json
cad8ea0282b4ec6d53c2b88e4094ec82c23fa235a466f4c20ea896ff0cfd0778 *./Graphics/game/gogo_time/texture.json
72a272b7ec8c5efec469401cab07a43f9dcbcae81d1e2092c3e49078cdfd36a1 *./Graphics/game/hit_effect/firework.png
3fc1ee33edfb7e99a61dae79d2abd0e018dbc1719a80c6834dcf697998b81c1e *./Graphics/game/hit_effect/hit_effect_good_big.png
ffc4d9da64b8075ba6534644b97a8bb7cf3bac1a42d1703549bb236f60592956 *./Graphics/game/hit_effect/hit_effect_good.png
@@ -4090,8 +4099,9 @@ c475bf01b6ea96c1492c0fe36e288b730e435fd13e08ea4f094d558b9830e35b *./Graphics/glo
f4e6929412e834eec85242488ef833e8cff6b00e5ccde229c1f2184716fa69a7 *./Graphics/global/rainbow_transition/rainbow_bg_bottom.png
f46030ebe3247b49b4dfb7ec802812da33572de002989063b3585c2b75bcdbc7 *./Graphics/global/rainbow_transition/rainbow_bg.png
f86a7ffaafc3038e1b14080c151c5703366a66707d250be9bea9359db6586f81 *./Graphics/global/rainbow_transition/rainbow_bg_top.png
311b9d56a813d76e2f1885d640f5f497af9c7e58740f55f591150567cca85a9c *./Graphics/global/rainbow_transition/rainbow_glow.png
e0f89dc98bc3cd5e36fe43afbf3d9ce142f69be881931e0a9733700e0df30628 *./Graphics/global/rainbow_transition/text_bg.png
88d30f57a386ecd80881e8663a558ff6aba444fc9a08d92c793992b44c574877 *./Graphics/global/rainbow_transition/texture.json
f48a123f5649930323140601000702a5aae53e0e9399b6fd217e82e4f5b1a33e *./Graphics/global/rainbow_transition/texture.json
8ba0a29f03932b94c47a5155f7ec96ae605e4195c60dea7df2d5391cf7bb8070 *./Graphics/global/result_transition/1p_shutter.png
8ba0a29f03932b94c47a5155f7ec96ae605e4195c60dea7df2d5391cf7bb8070 *./Graphics/global/result_transition/2p_shutter.png
8ba0a29f03932b94c47a5155f7ec96ae605e4195c60dea7df2d5391cf7bb8070 *./Graphics/global/result_transition/4p_shutter.png
@@ -4209,7 +4219,7 @@ d21dc53600bab83b80352bad38cd598d216c6e1279a4d54a0a085ad82ad1430d *./Graphics/res
684c22481d2a0e4bb2d6dd67b5df87650e081edfeadffcc70c377c393334c06d *./Graphics/result/score/score_shinuchi_en.png
1c160a1a14016ea3a5f761b040db433420476363224011d615613af660e7d0e1 *./Graphics/result/score/score_shinuchi_ja.png
89c4d6afafb8010ec4da0b9f72f10f677ec8c87677fcb3d2c9edde923a5b5f9f *./Graphics/result/score/texture.json
368236cf9d2049a0cfe98de0b823608904beae31b3b2ed2c1521a8c0864c01b7 *./Graphics/skin_config.json
b7a1f9d973059177df8ea52436086264236a62d3c818f4ed76530c9f555328f7 *./Graphics/skin_config.json
a05d23f0997446d4db2b745602bff7fc3d2cdce968a1c24e078684d41cf2982c *./Graphics/song_select/animation.json
b74432db46ec6d7ec080fbee6df6029c1451e243d30813fcf597a21704de4e74 *./Graphics/song_select/box/background/0.png
c6514d44a9bc8e15e8523c5ede7663be3f7ab34f370ea364263ebf73998d0ab8 *./Graphics/song_select/box/background/1.png
@@ -4237,6 +4247,7 @@ acffeed13a3180a16913c5b8d3ab6ee7b39ede5c81903996ad55620795257722 *./Graphics/son
62b66b98e1f76c6eb5b9f808917cf59b495019c2da8e42381e42c16e9e2af7dd *./Graphics/song_select/box/bar_genre_back.png
e140045d5450609e3eb3a950b89a85587db3bdffcd2a0f5bd931f5c8893a60cf *./Graphics/song_select/box/bar_genre_overlay.png
a3f1743f5bf84c24096fe00a8e80bc1e87325479934bc538e677fb740a606872 *./Graphics/song_select/box/box_chara/0.png
8bcf5446e8bee1b1e13e7778a875b27771d736b55bc616434e7bc9668f504084 *./Graphics/song_select/box/box_chara/10.png
652d938ef01b9a7548f4626055e5f51d4d87cf380e8cf8989e410b86586dcd69 *./Graphics/song_select/box/box_chara/1.png
9cf5b0db1450e5ef30ade0e21ef0a98f69665cf0ef6be74e343372dbcfd580c9 *./Graphics/song_select/box/box_chara/2.png
1fbc88980a954337b00b08b95aac7e6c7cbef49bb1f8626f10db4e1a60b7cdba *./Graphics/song_select/box/box_chara/3.png
@@ -4585,7 +4596,7 @@ eb2bb15e87cc83d66b320e0e4cbcbd2d5385881f36eca27fe73740439055ef6c *./Scripts/anim
5789c13c7958010f2878f9a0b119a50af4f362e754dc06ca3683ce742d507d25 *./Scripts/anim/title_idle.lua
34df97052c186c9588ff6a3c339501318c5e30ab9eecb97d1271c400ab9cfba1 *./Scripts/anim/title_idle_map.lua
66797bb60d6bacde5d882136a7dee9cda2f3e02282dd2ebaf2ee37346db14f70 *./Scripts/anim/wheel_decide.lua
c7d27db9d4fcacba0e70d27f1abc8b31c109cb2877c15d93ed71ea850b4825b6 *./Scripts/background/background.lua
0dc582a0666d3d75d5e7023cad3629f92e97694a96fa89e5bf92568c74c77390 *./Scripts/background/background.lua
8736233c8c570fb4c1870248b07b616b4cf48528ebe269c9f06f8257edd7c9e3 *./Scripts/background/bg_collabs/a3.lua
e4ff773b74b780eb310a43053399f33a34b16885627d42c5255bafaf05d53734 *./Scripts/background/bg_collabs/animal.lua
60c12b294fff74b15c7f54001374434d3f88572129336de622a809130b1fa73d *./Scripts/background/bg_collabs/buttoburst.lua
@@ -4595,7 +4606,7 @@ e514657c28c18d6b913e24b416694cd9e0dc4f61d229b42e423ea62ac5ff69a3 *./Scripts/back
d6a27cd79db76d7cdb3fcf70134fadae0679e728f2b2bd615ce4b8c465b44c28 *./Scripts/background/bg_collabs/imas_sidem.lua
faf1051b2de0e879b03bf27ceb4241b7536f92571ce8ed828c318089895fda35 *./Scripts/background/bg_collabs/oshiri.lua
ea6d17fba190ecd605106d9b12e6fa79311ee637a00c0345f9c425f4286c1b27 *./Scripts/background/bg_collabs/practice.lua
db1861b6bd344a022b11e1865104ae76b762e8c8b81cfc7b424c3ab6d2584e47 *./Scripts/background/bg_collabs/tutorial.lua
86f16b488ae8df9ce7495329688d122b2e7f4bdb728b27d7aa4ab668701e3571 *./Scripts/background/bg_collabs/tutorial.lua
08d45ec56e2c7fd5e0842d3fda7997c843ac1a1971a3d41255d618799899a508 *./Scripts/background/bg_data/bg_anim/b_001_dai.lua
e2f18975cf78f3de351f8459be4c4f6b7b6db54f5efd4589991672c7daf1fa6d *./Scripts/background/bg_data/bg_anim/b_001_f.lua
f3b7b0c83c369de1e7cf81aed87354e282819324f12340b612661abbed455d45 *./Scripts/background/bg_data/bg_anim/b_001_n.lua
@@ -4701,6 +4712,7 @@ f0691b7a6fe1596b81f116c01ce11e556d599729905e380d1c98b3f5cf76d833 *./Scripts/back
f1abac2a469adf39ab62d4155279502382138c293159a7c89974dddba626af3c *./Scripts/background/bg_data/renda_anim/b_014.lua
067705d55473ade03acf4f47ecc4769bea60e372b12e66daabee74f0a634a2b5 *./Scripts/background/bg_data/renda_anim/b_019.lua
09713d7b67e8100d57b19de6b4d914b6f8f565badd9ae17b7285360c8a4e708c *./Scripts/background/bg_data/renda_anim/b_020.lua
393113431aefde1f2ca5c580295cd15fc744fb8190c0b28ffce57379889616db *./Scripts/background/bg_data/tutorial_ac.lua
9673322142f4e11eb092e047830c56e9a9ec3e64dae8e0e1e0393c11b3b40ef1 *./Scripts/background/bg_objects/arcade_gauge.lua
62a45059c20d22137bffb6f9f72882a56c14ef0dec4e295098cfb6ccc047697d *./Scripts/background/bg_objects/bg_anim.lua
fb9ec8d460861278976befcf2d8f523d4068cdfd1fafd9adce9ab4bc0b5816ff *./Scripts/background/bg_objects/bg_fever.lua
@@ -4791,7 +4803,7 @@ de52279393c43fd2b1f880919597ae6d8802174e0ab6d0db06126b2b090a77b9 *./Scripts/glob
92c9865f21ff18185b60011f12bd97d30fa0a4c3145b4f71347e68ccb5e24a87 *./Scripts/global/network_msg.lua
34645d4c05dcb582ddaad6e3d2e1075c476471c81e0ce68e33f7b0bbfa3c0f2b *./Scripts/global/result_transition.lua
1eb98ab1463795c77e2f80aa49eaa1aa73e2e4509b739f00ac53d07cbf40fed7 *./Scripts/global/timer.lua
e0841261cc4dc5bd22c42392708819e9c8d3e25ef1a153d5b7fcae1328347d55 *./Scripts/global/transition.lua
a116d115e2330ed953ef7d5dd3d32ad8f17f969a891a2ed5aa0b6f124c0f9281 *./Scripts/global/transition.lua
b458c0c88c2544c93f1402b7506e51c0ca47b67aee2573e130d57c20079c7260 *./Scripts/result/bottom_characters.lua
63056cb46b73fcdfcbfb0b51b3afedc3131913935705c6c5d15655db83dde850 *./Scripts/result/dan_result_draw.lua
5100bbdacb2464227ad50262c5c9daf56ca4ca17dc0aa121fd64bc72946dab8a *./Scripts/result/high_score_indicator.lua
@@ -4806,13 +4818,14 @@ dcc7b7d655cf5d2ea0fc95764bacf7f08f40a35942f8fd5329303a2c11589a3c *./Scripts/resu
49d6b0e063c3afbeb304a1f60d228c2bf7229d4604f08f50ba1382049259592e *./Scripts/song_select/file_navigator/box_back.lua
47b10e73852684884a19efecce94fbfd066b90bedbe4251495da3f1759d0abb4 *./Scripts/song_select/file_navigator/box_base.lua
6bf1a5c3117ae2cdb62add55f1848ffef0b5f3969ae4ea3aa4bd708039c0bf9a *./Scripts/song_select/file_navigator/box_dan.lua
26d5bcde2e33a29d2d88728cdcccd13ec299f235e1cfb759d9d109e4a0a7678b *./Scripts/song_select/file_navigator/box_folder.lua
efcfa8c68806bd443c8e64209c77f0af558d2e2956b141b780019171c66441af *./Scripts/song_select/file_navigator/box_folder.lua
db062d44c9b1b15e66f23c525bd2bc68262c0b4db11a2dc9532bf99a721fd848 *./Scripts/song_select/file_navigator/box_song.lua
6df8f4fc78403635889409829d681dae340df45423f019d717d4d8c72aa39c2b *./Scripts/song_select/modifier.lua
e7867c13a618c6f970eaee2826ac6d0efb5539f8b13488dfe5d1c2ece5a81b49 *./Scripts/song_select/option_panel.lua
8f1459f85bed2ff0bf2919a9928955dc07f5cfe574215d01672d6ecdb2779dbf *./Scripts/song_select/score_history.lua
ff4a21f751fee4ea71232f810e4082ead1dedec5ab0f08862a6804ef0685aec2 *./Scripts/song_select/selector.lua
77493aea918df535a9d547dafb764b59152da782ee60ce1f87f88bd1c6e46f9c *./Scripts/song_select/song_select.lua
9887ca85f8aa0725ccb55aa6feb38430dd64fda49d0fe59059ee3ec17fdb1553 *./Scripts/song_select/ura_switch.lua
a80bb097985d39c80ce07e2121d060648ebbfad0fae62ffacdb69a0180c9c954 *./Scripts/title/attract_camera.lua
508cce139869b7a9604c6db483faedb2bbb57d8b127dbeacefff8f0320dc4233 *./Scripts/title/attract_scene.lua
6f39ec09eb0b0658e89ac114c7af2fb916f89ca6df558417388dabd28cb5a7e2 *./Scripts/title/warning_screen.lua
@@ -4971,6 +4984,22 @@ eb0dfe8ada1ec4bba8a909c2aa0085da80ad8e5831e7d3d589d4bd4d741e3da4 *./Sounds/game/
3ee28e6cfe4ae5892f69ed1b930c5eaeea694d82141f334af39c8277b80d349c *./Sounds/game_over/voice.ogg
e8582eb135c41d10c8fb4dffe4f8683903572b0d5f36b3d3d1ebc53d444af08c *./Sounds/game/restart.ogg
7b6db0bc1bcd900635a721983f9d1d4a3708a7c94dc84f92e9395468b14a7a64 *./Sounds/game/result_transition.ogg
7a438cb70361275daed4356d23a504ab38d4ac105bf09bd8c1db0e0577dce775 *./Sounds/game/tutorial/balloon.ogg
a8c29f3995ecd5b17d0c2fa15f3109d5bae9b9a6c1dbeecf68fa3503beafd94e *./Sounds/game/tutorial/bgm.ogg
394eb2c302cc05b99c5f429d6577f766e70bd0dc5b8d3e42cdfbe5b09cc43adf *./Sounds/game/tutorial/burn.ogg
7e9aa96b627d633b4d4fc6c82895154626e6a887389c9996cf794967ea3c33d3 *./Sounds/game/tutorial/clear.ogg
feb85dd227f4163a0d52aff2c24055b05180a12e21b131a67672dbed5242f4a1 *./Sounds/game/tutorial/sidebody.ogg
8b8c89e385b77e63c47526a80c8ddb49d189dadf37cedbaeb04149134e7184d0 *./Sounds/game/tutorial/voice_10.ogg
03944a76a6df43a6884de10de3600befd1e1681d2190cde9f2b1db1fa808f0c3 *./Sounds/game/tutorial/voice_11.ogg
985cead13844bee272d8ca4fa553c71e8a9ea71bf96cb5ed00521767ff5916a9 *./Sounds/game/tutorial/voice_1.ogg
833e6631c8d0eed92b70dbc72d7b5ad4ac17cd23a32177043709e4a48e0f29b0 *./Sounds/game/tutorial/voice_2.ogg
2c3e69994a23ac11a234a58395ec8519235cfaa8a92750ac501fc73af8207ab3 *./Sounds/game/tutorial/voice_3.ogg
b957627819e2dd9a7b67c47ade85db6e0a6fd7b0842f948b2c5be71ab023e258 *./Sounds/game/tutorial/voice_4.ogg
c2a7a67d8a34d56c2dd637272914eb18f74b146dce5f37d1db6835682c2123b7 *./Sounds/game/tutorial/voice_5.ogg
a4046d2db366818ac35714ce87f07a6585dc0dcccff6f39657e289abd371e388 *./Sounds/game/tutorial/voice_6.ogg
66e028dc414e630b7a81d71c2d8945d4a94a32d8412dedeeb9da08635312ab3f *./Sounds/game/tutorial/voice_7.ogg
1ab675193468d54873225537c4cdcbee633c719196f11b88ba97c32358f4def6 *./Sounds/game/tutorial/voice_8.ogg
dece64f0558b78944e1df7151ba82d4cf64c19c756eef75852d5b64276c5ba49 *./Sounds/game/tutorial/voice_9.ogg
951871e5c378407638a8fb6a7b894e17d17f317c3ca83fd7916dad2e978c93b2 *./Sounds/global/timer_blip.ogg
c66a5e6382037116e6eb1151d1d5eafd0a166197870a7e50fd29c48769cc7e43 *./Sounds/global/voice_timer_10.ogg
621e9b740b7059df59959a721ef93992e55487dee5534f85af1fed4af0ee1a0d *./Sounds/global/voice_timer_30.ogg