룰렛 최대 개수 수정

AS-IS : 최대 6개
TO-BE : 최대 10개

룰렛 확률 수정
AS-IS : 소수점 없음
TO-BE : 소수점 2자리
This commit is contained in:
Yu Sung
2023-12-26 15:56:04 +09:00
parent f4bd1c4487
commit 208fc77b7f
5 changed files with 12 additions and 6 deletions

View File

@@ -10,7 +10,7 @@ import SwiftUI
class RouletteOption: ObservableObject {
var title: String
var weight: Int
var percentage: Int = 50
var percentage: String = "50.00"
init(title: String, weight: Int) {
self.title = title

View File

@@ -80,7 +80,7 @@ struct RouletteSettingsView: View {
.foregroundColor(Color(hex: "eeeeee"))
HStack(spacing: 0) {
Text("※ 룰렛 옵션은 최소 2개,\n최대 6개까지 설정할 수 있습니다.")
Text("※ 룰렛 옵션은 최소 2개,\n최대 10개까지 설정할 수 있습니다.")
.font(.custom(Font.medium.rawValue, size: 13.3))
.foregroundColor(Color(hex: "ff5c49"))

View File

@@ -49,7 +49,7 @@ final class RouletteSettingsViewModel: ObservableObject {
}
func addOption() {
if (options.count >= 6) {
if (options.count >= 10) {
return
}
options.append(RouletteOption(title: "", weight: 1))
@@ -72,7 +72,8 @@ final class RouletteSettingsViewModel: ObservableObject {
guard totalWeight > 0 else { return }
for i in 0..<options.count {
options[i].percentage = Int(Double(options[i].weight) / Double(totalWeight) * 100)
let percent = floor(Double(options[i].weight) / Double(totalWeight) * 10000) / 100
options[i].percentage = String(format: "%.2f", percent)
}
removeAllAndAddOptions(options: options)