// MainActivity.kt
package com.example.ffhassasiyet
import android.os.Bundle
import android.widget.*
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val dpiInput = findViewById<EditText>(R.id.dpiInput)
val fingersSpinner = findViewById<Spinner>(R.id.fingersSpinner)
val weaponSpinner = findViewById<Spinner>(R.id.weaponSpinner)
val rangeSpinner = findViewById<Spinner>(R.id.rangeSpinner)
val calcButton = findViewById<Button>(R.id.calcButton)
val resultText = findViewById<TextView>(R.id.resultText)
calcButton.setOnClickListener {
val dpi = dpiInput.text.toString().toIntOrNull() ?: 450
val fingers = fingersSpinner.selectedItem.toString().toInt()
val weapon = weaponSpinner.selectedItem.toString()
val range = rangeSpinner.selectedItem.toString()
val sensitivity = calculateSensitivity(dpi, fingers, weapon, range)
resultText.text = "Önerilen Hassasiyet: $sensitivity"
}
}
private fun calculateSensitivity(dpi: Int, fingers: Int, weapon: String, range: String): Int {
var base = when(weapon) {
"SMG" -> 95
"AR" -> 100
"Sniper" -> 50
else -> 90
}
// Menzil etkisi
base += when(range) {
"Yakın" -> 5
"Orta" -> 0
"Uzak" -> -5
else -> 0
}
// Parmak sayısına göre düzeltme
base -= (2 - fingers) * 5
// DPI’ya göre küçük ayarlama
return (base * (450.0 / dpi)).toInt().coerceIn(20, 200)
}
}