[add] Added new song Cranky - VLSI [short edit].
This commit is contained in:
parent
70f150f820
commit
7af750c131
BIN
.bin/songs/Cranky-VLSI_short.ogg
Normal file
BIN
.bin/songs/Cranky-VLSI_short.ogg
Normal file
Binary file not shown.
0
.bin/songs/Cranky-VLSI_short.sj
Normal file
0
.bin/songs/Cranky-VLSI_short.sj
Normal file
4
.bin/songs/README.md
Normal file
4
.bin/songs/README.md
Normal file
@ -0,0 +1,4 @@
|
||||
SONGS
|
||||
====
|
||||
|
||||
- [Cranky-VLSI_short](https://soundcloud.com/felinegroove/vlsi-short-edit)
|
@ -10,5 +10,17 @@
|
||||
"bg-inner-color": [0.8, 0.8, 0.8, 1],
|
||||
"bg-outer-color": [0.1, 0.1, 0.1, 1]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Cranky - V.L.S.I.",
|
||||
"bpm": 60,
|
||||
"music": "Cranky-VLSI_short.ogg",
|
||||
"script": "Cranky-VLSI_short.sj",
|
||||
|
||||
"preview": {
|
||||
"play-offset": 38000,
|
||||
"bg-inner-color": [0.6, 0.6, 0.7, 1],
|
||||
"bg-outer-color": [0.1, 0.1, 0.1, 1]
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -219,7 +219,7 @@ private class SongAppearState : AbstractSceneState {
|
||||
|
||||
const song = owner.songs_[song_index_];
|
||||
with (owner.text_) {
|
||||
const w = LoadGlyphs(vec2i(256, 64),
|
||||
const w = LoadGlyphs(vec2i(1024, 64),
|
||||
song.name.to!dstring, vec2i(TitleTextSize, 0), owner.fonts_.gothic);
|
||||
matrix.scale = TitleTextScale;
|
||||
matrix.translation = TitleTextTranslation + vec3(-w/2*matrix.scale.x, 0, 0);
|
||||
@ -306,16 +306,21 @@ private class SongWaitState : AbstractSceneState {
|
||||
}
|
||||
}
|
||||
|
||||
if (input.right) {
|
||||
song.StopPlaying();
|
||||
song_appear_state_.Initialize(++song_index_%owner.songs_.length);
|
||||
return CreateResult(song_appear_state_);
|
||||
}
|
||||
if (input.up) {
|
||||
song.StopPlaying();
|
||||
owner.title_scene_.Initialize();
|
||||
return CreateResult(owner.title_scene_);
|
||||
}
|
||||
if (input.left && song_index_ != 0) {
|
||||
song.StopPlaying();
|
||||
song_appear_state_.Initialize(song_index_-1);
|
||||
return CreateResult(song_appear_state_);
|
||||
}
|
||||
if (input.right && song_index_+1 < owner.songs_.length) {
|
||||
song.StopPlaying();
|
||||
song_appear_state_.Initialize(song_index_+1);
|
||||
return CreateResult(song_appear_state_);
|
||||
}
|
||||
|
||||
++frame_;
|
||||
return CreateResult(this);
|
||||
|
@ -47,6 +47,8 @@ class Text {
|
||||
model_width_ = 0;
|
||||
int bmp_width;
|
||||
foreach (c; text) {
|
||||
if (c == ' ') continue;
|
||||
|
||||
with (gloader) {
|
||||
character = c;
|
||||
Load(face).enforce;
|
||||
|
@ -62,12 +62,14 @@ class TextProgram {
|
||||
float vx = vert_.x / model_width;
|
||||
vec2 uv = uv_;
|
||||
|
||||
uv.y = choose(3, frame%4, uv.y,
|
||||
choose(0, vx, 0.25, clamp(uv.y, 0, 0.4), uv.y));
|
||||
uv.y = choose(15, frame%18, uv.y,
|
||||
choose(0.1, vx, 0.2, clamp(uv.y, 0, 0.6), uv.y));
|
||||
choose(0.1, vx, 0.2, clamp(uv.y, 0.6, 1), uv.y));
|
||||
uv.y = choose(8, frame%14, uv.y,
|
||||
choose(0.1, vx, 0.6, clamp(uv.y, 0, 0.8), uv.y));
|
||||
uv.y = choose(21, frame%29, uv.y,
|
||||
choose(0.2, vx, 0.3, clamp(uv.y, 0.1, 1), uv.y));
|
||||
choose(0.2, vx, 0.3, clamp(uv.y, 0.3, 1), uv.y));
|
||||
uv.y = choose(20, frame%23, uv.y,
|
||||
choose(0.4, vx, 0.6, clamp(uv.y, 0.4, 1), uv.y));
|
||||
uv.y = choose(5, frame%6, uv.y,
|
||||
|
Reference in New Issue
Block a user