Skip to content

Commit f4bc274

Browse files
committed
feat(ongeki/profile): add ongeki rating light emitting
1 parent 1aa3c50 commit f4bc274

File tree

2 files changed

+65
-4
lines changed

2 files changed

+65
-4
lines changed

src/app/sega/ongeki/ongeki-profile/ongeki-profile.component.css

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@
143143
bottom: -2%;
144144
display: flex;
145145
align-items: flex-end;
146+
gap: 2px;
146147
}
147148

148149
.rating-num-integer{
@@ -156,12 +157,21 @@
156157
margin-right: -20%;
157158
}
158159

160+
.rating-new-num-dot {
161+
margin-left: -23%;
162+
margin-right: -26%;
163+
}
164+
159165
.rating-num-fractional{
160166
height: 90%;
161167
margin-inline: -10%;
162168
margin-bottom: 4%;
163169
}
164170

171+
.rating-new-num-fractional {
172+
margin-inline: -13%;
173+
}
174+
165175
.rating-highest{
166176
font-size: 3cqw;
167177
white-space:nowrap;
@@ -239,3 +249,32 @@
239249
.profile-table th{
240250
font-weight: 500;
241251
}
252+
253+
.rating-new-num-mask {
254+
background: linear-gradient(to right,
255+
rgba(255, 255, 255, 0.1) 0%,
256+
rgba(255, 255, 255, 0.55) 57.5%,
257+
rgba(255, 255, 255, 0.55) 62.5%,
258+
rgba(255, 255, 255, 0.1) 100%);
259+
mask-mode: alpha;
260+
mask-repeat: no-repeat;
261+
mask-size: contain;
262+
}
263+
264+
.rating-num-clip-path {
265+
clip-path: polygon(110% 120%, 240% -190%, 160% 100%, 100% 100%);
266+
animation: clipMoveFull 3.3s ease-in-out infinite;
267+
}
268+
269+
270+
@keyframes clipMoveFull {
271+
0% {
272+
clip-path: polygon(-140% 120%, -10% -190%, -80% 100%, -150% 100%);
273+
}
274+
70% {
275+
clip-path: polygon(190% 120%, 330% -190%, 250% 100%, 180% 100%);
276+
}
277+
100% {
278+
clip-path: polygon(190% 120%, 330% -190%, 250% 100%, 180% 100%);
279+
}
280+
}

src/app/sega/ongeki/ongeki-profile/ongeki-profile.component.html

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,34 @@
3636
<div class="rating">
3737
<img *ngIf="Math.floor(profile.newPlayerRating / 10000) > 0" class="rating-num-integer" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating / 10000)}}.webp">
3838
<img class="rating-num-integer" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating / 1000) % 10}}.webp">
39-
<img class="rating-num-dot" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/dot.webp">
40-
<img class="rating-num-fractional" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating / 100) % 10}}.webp">
41-
<img class="rating-num-fractional" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating / 10) % 10}}.webp">
42-
<img class="rating-num-fractional" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.playerRating) % 10}}.webp">
39+
<img class="rating-num-dot rating-new-num-dot" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/dot.webp">
40+
<img class="rating-num-fractional rating-new-num-fractional" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating / 100) % 10}}.webp">
41+
<img class="rating-num-fractional rating-new-num-fractional" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating / 10) % 10}}.webp">
42+
<img class="rating-num-fractional rating-new-num-fractional" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_{{getNewRatingType(profile.newPlayerRating)}}/{{Math.floor(profile.newPlayerRating) % 10}}.webp">
4343
<div class="rating-highest text-nowrap">(Max: {{(profile.newHighestRating / 1000) | number: '0.2-3'}})</div>
4444
</div>
45+
<ng-template [ngIf]="profile.newPlayerRating >= 20000">
46+
<div class="rating rating-num-clip-path">
47+
<img
48+
[style.mask-image]="'url(' + host + 'assets/ongeki/gameUi/UI_NUM_30pt_Rating_' + getNewRatingType(profile.newPlayerRating) + '/' + Math.floor(profile.newPlayerRating / 10000) + '.webp)'"
49+
class="rating-num-integer rating-new-num-mask" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_09Rainbow/0-no.webp">
50+
<img
51+
[style.mask-image]="'url(' + host + 'assets/ongeki/gameUi/UI_NUM_30pt_Rating_' + getNewRatingType(profile.newPlayerRating) + '/' + Math.floor(profile.newPlayerRating / 1000) % 10 + '.webp)'"
52+
class="rating-num-integer rating-new-num-mask" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_09Rainbow/0-no.webp">
53+
<img
54+
[style.mask-image]="'url(' + host + 'assets/ongeki/gameUi/UI_NUM_30pt_Rating_' + getNewRatingType(profile.newPlayerRating) + '/dot.webp)'"
55+
class="rating-num-dot rating-new-num-dot rating-new-num-mask" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_09Rainbow/dot-no.webp">
56+
<img
57+
[style.mask-image]="'url(' + host + 'assets/ongeki/gameUi/UI_NUM_30pt_Rating_' + getNewRatingType(profile.newPlayerRating) + '/' + Math.floor(profile.newPlayerRating / 100) % 10 + '.webp)'"
58+
class="rating-num-fractional rating-new-num-fractional rating-new-num-mask" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_09Rainbow/0-no.webp">
59+
<img
60+
[style.mask-image]="'url(' + host + 'assets/ongeki/gameUi/UI_NUM_30pt_Rating_' + getNewRatingType(profile.newPlayerRating) + '/' + Math.floor(profile.newPlayerRating / 10) % 10 + '.webp)'"
61+
class="rating-num-fractional rating-new-num-fractional rating-new-num-mask" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_09Rainbow/0-no.webp">
62+
<img
63+
[style.mask-image]="'url(' + host + 'assets/ongeki/gameUi/UI_NUM_30pt_Rating_' + getNewRatingType(profile.newPlayerRating) + '/' + Math.floor(profile.newPlayerRating % 10) + '.webp)'"
64+
class="rating-num-fractional rating-new-num-fractional rating-new-num-mask" src="{{host}}/assets/ongeki/gameUi/UI_NUM_30pt_Rating_09Rainbow/0-no.webp">
65+
</div>
66+
</ng-template>
4567
</ng-template>
4668
</div>
4769
<div class="chara-container">

0 commit comments

Comments
 (0)