Skip to content
This repository has been archived by the owner on Sep 19, 2024. It is now read-only.

Commit

Permalink
Beta v0.3
Browse files Browse the repository at this point in the history
Hold notes can now be pressed;
You can select the speed of chart at the beginning of each song;
There is a result view at the end of song;
  • Loading branch information
SpeedyOrc-C committed Nov 21, 2021
1 parent 88c70fa commit dc76c43
Show file tree
Hide file tree
Showing 14 changed files with 62 additions and 16 deletions.
2 changes: 1 addition & 1 deletion addin/AddinInfo.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[BINDATA] : "FXADDINror.bin"
[DISPNAME] : "fx4K"
[APPNAME] : "@FX4K"
[VERSION] : "00.02.0000"
[VERSION] : "00.03.0000"
[APL_ICON] : "MainIcon.bmp"
[MODULE_NUM] : 0
[MOD1_TITLE] : "fx4K"
Expand Down
14 changes: 7 additions & 7 deletions addin/fx4K.dlw
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@

[_1]
Type=5
Order=1
Order=2
Top=15
Left=2235
Height=4740
Width=5565
State=0
Flags=00000020
Setting=129:1:lib\game\play.c
Setting=135:1:lib\game\play.c
OptionA=0

[_2]
Expand All @@ -26,7 +26,7 @@ OptionB=15

[_3]
Type=6
Order=2
Order=3
Top=4740
Left=7800
Height=6390
Expand All @@ -37,7 +37,7 @@ OptionA=0

[_4]
Type=7
Order=3
Order=4
Top=0
Left=13320
Height=14040
Expand All @@ -48,7 +48,7 @@ OptionA=0

[_5]
Type=8
Order=4
Order=5
Top=-60
Left=18900
Height=14130
Expand Down Expand Up @@ -81,7 +81,7 @@ OptionA=0

[_8]
Type=17
Order=6
Order=1
Top=15
Left=-15
Height=11115
Expand All @@ -103,7 +103,7 @@ OptionA=0

[_32]
Type=16
Order=5
Order=6
Top=0
Left=2205
Height=4725
Expand Down
2 changes: 1 addition & 1 deletion addin/fx4K.g1w
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DLSimProject]
Name=fx4K
Version=00.02.0000
Version=00.03.0000
Model=:fx-9860G.dlm
SourcePath=SRC
MemoryPath=INIT
Expand Down
2 changes: 1 addition & 1 deletion addin/lib/game/about.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ void about()
locate(3, 5);
Print((unsigned char*)"1670732206@qq.com");
locate(7, 7);
Print((unsigned char*)"fx4K v0.1");
Print((unsigned char*)"fx4K v0.3");
locate(19, 8);
Print((unsigned char*)"2/2");
}
Expand Down
54 changes: 48 additions & 6 deletions addin/lib/game/play.c
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ void display_result(unsigned char *chart_title)
Print(&chart_title[21]);

locate(1, 3);
Print((unsigned char*)"---------------------");
Print((unsigned char *)"---------------------");

locate(1, 4);
sprintf((char *)buffer, "ACCURACY : %.2f%%", accuracy);
Expand Down Expand Up @@ -140,13 +140,13 @@ void frame_timer()
void note_state_machine(struct Note notes[2000])
{
unsigned char i, score;
unsigned short n;
unsigned short n, n2;

for (i = 0; i < 4; i++)
{
if (column_now_ptr[i] != -1)
{
if (notes[column_now_ptr[i]].type == 'C' || notes[column_now_ptr[i]].type == 'H') // Click
if (notes[column_now_ptr[i]].type == 'C') // Click
{
n = notes[column_now_ptr[i]].start_time;
score = notes[column_now_ptr[i]].score;
Expand Down Expand Up @@ -204,6 +204,48 @@ void note_state_machine(struct Note notes[2000])

if (notes[column_now_ptr[i]].type == 'H') // Hold
{
n = notes[column_now_ptr[i]].start_time;
n2 = notes[column_now_ptr[i]].end_time;
score = notes[column_now_ptr[i]].score;

if (score == SCORE_NOT_RATED)
{
if (n - PERFECT - GOOD <= time && time <= n + PERFECT + GOOD &&
key_state[i] == 1)
notes[column_now_ptr[i]].score = SCORE_RATE_READY;

if (n + PERFECT + GOOD < time)
{
notes[column_now_ptr[i]].score = SCORE_MISS;
combo = 0;
}
}

if (score == SCORE_RATE_READY)
{
if (time < n2 - PERFECT - GOOD &&
key_state[i] == 0)
{
notes[column_now_ptr[i]].score = SCORE_MISS;
combo++;
}

if (n2 - GOOD - PERFECT <= time && key_state[i] == 1)
{
notes[column_now_ptr[i]].score = SCORE_PERFECT;
combo = 0;
}
}

if (notes[column_now_ptr[i]].score == SCORE_MISS ||
notes[column_now_ptr[i]].score == SCORE_PERFECT)
{
if (notes[column_now_ptr[i]].score == SCORE_MISS)
miss_count++;
if (notes[column_now_ptr[i]].score == SCORE_PERFECT)
perfect_count++;
column_now_ptr[i] = notes[column_now_ptr[i]].next;
}
}
}
}
Expand Down Expand Up @@ -360,7 +402,7 @@ void play(unsigned char *file_path)
key_state[2] = IsKeyDown(KEY_CTRL_DEL);
key_state[3] = IsKeyDown(KEY_CTRL_AC);

// Adding notes that appears in the view
// Adding notes that appears
while (visible_note_end_ptr < chart_note_num - 1 &&
notes[visible_note_end_ptr + 1].start_time - VISIBLE <= time)
visible_note_end_ptr++;
Expand All @@ -369,7 +411,7 @@ void play(unsigned char *file_path)
while (notes[visible_note_start_ptr].start_time + DISAPPEAR < time)
visible_note_start_ptr++;

// Display notes
// Draw notes
for (i = visible_note_start_ptr; i <= visible_note_end_ptr; i++)
{
if (notes[i].type == 'C') // Click
Expand Down Expand Up @@ -417,7 +459,7 @@ void play(unsigned char *file_path)
max_combo = combo;

ML_display_vram();
while (wait_frame)
while (wait_frame) // Wait until next frame
{
}
KillTimer(1);
Expand Down
1 change: 1 addition & 0 deletions converter/Malody/God Knows - 平野绫

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions converter/Malody/Grievous Lady - Team Grimoire vs Laur.mc

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions converter/Malody/Sterelogue (4ky_hyper).mc

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions converter/Malody/回レ!雪月花 - 茅野爱衣.mc

Large diffs are not rendered by default.

Binary file added converter/fx4K/GODKNOWS
Binary file not shown.
Binary file added converter/fx4K/MAWARE
Binary file not shown.
Binary file added converter/fx4K/STERELOG
Binary file not shown.
Binary file modified release/FX4K-SH3.G1A
Binary file not shown.
Binary file modified release/FX4K-SH4.G1A
Binary file not shown.

0 comments on commit dc76c43

Please sign in to comment.