Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.quizmatematyczny
- import android.support.v7.app.AppCompatActivity
- import android.os.Bundle
- import CreateQuestion
- import android.content.Intent
- import android.widget.Button
- import android.widget.Chronometer
- import android.widget.ImageView
- import android.widget.TextView
- import kotlinx.android.synthetic.*
- import kotlinx.android.synthetic.main.activity_game.*
- import android.R.attr.name
- class GameActivity : AppCompatActivity() {
- var questionCreator: CreateQuestion? = null
- private lateinit var button1: Button
- private lateinit var button2: Button
- private lateinit var button3: Button
- private lateinit var button4: Button
- private lateinit var questionTextView: TextView
- private lateinit var chronometer: Chronometer
- var questionCount: Int = 6
- var correctAnswersCount = 0
- var incorrectAnswersCount = 0
- var countDownTime = 0
- // var myTimer: Timer = Timer()
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_game)
- button1 = findViewById<Button>(R.id.button1)
- button2 = findViewById<Button>(R.id.button2)
- button3 = findViewById<Button>(R.id.button3)
- button4 = findViewById<Button>(R.id.button4)
- questionTextView = findViewById<TextView>(R.id.questionTextView)
- chronometer = findViewById<Chronometer>(R.id.chronometer)
- questionCreator = intent.getSerializableExtra("question") as CreateQuestion
- this.generujPytanie()
- chronometer.start()
- }
- fun setButtonsText(wynik: Int) {
- if(questionCreator != null) {
- val answers = questionCreator!!.createAnswersForQuestion(wynik)
- val answer1StringCorrect = answers.poprawnyButton.toString()
- val answer2String = answers.button2.toString()
- val answer3String = answers.button3.toString()
- val answer4String = answers.button4.toString()
- var buttonCorrectAnswer = (0 .. 3).random()
- button1.setOnClickListener(null)
- button2.setOnClickListener(null)
- button3.setOnClickListener(null)
- button4.setOnClickListener(null)
- when(buttonCorrectAnswer) {
- 0 -> {println("pierwszybutton\n")
- button1.setOnClickListener { correctAnswer() }
- button2.setOnClickListener { incorrectAnswer() }
- button3.setOnClickListener { incorrectAnswer() }
- button4.setOnClickListener { incorrectAnswer() }
- //
- button1.text = answer1StringCorrect
- button2.text = answer2String
- button3.text = answer3String
- button4.text = answer4String
- }
- 1 -> {print("2button\n")
- button1.setOnClickListener { incorrectAnswer() }
- button2.setOnClickListener { correctAnswer() }
- button3.setOnClickListener { incorrectAnswer() }
- button4.setOnClickListener { incorrectAnswer() }
- //
- button1.text = answer2String
- button2.text = answer1StringCorrect
- button3.text = answer3String
- button4.text = answer4String
- }
- 2 -> {print("trzecibutton\n")
- button1.setOnClickListener { incorrectAnswer() }
- button2.setOnClickListener { incorrectAnswer() }
- button3.setOnClickListener { correctAnswer() }
- button4.setOnClickListener { incorrectAnswer() }
- //
- button1.text = answer2String
- button2.text = answer3String
- button3.text = answer1StringCorrect
- button4.text = answer4String
- }
- 3 -> {print("4button\n")
- button1.setOnClickListener { incorrectAnswer() }
- button2.setOnClickListener { incorrectAnswer() }
- button3.setOnClickListener { incorrectAnswer() }
- button4.setOnClickListener { correctAnswer() }
- //
- button1.text = answer2String
- button2.text = answer4String
- button3.text = answer3String
- button4.text = answer1StringCorrect
- }
- else -> {
- return
- }
- }
- }
- }
- fun correctAnswer() {
- this.correctAnswersCount += 1
- if(this.correctAnswersCount < this.questionCount) {
- this.generujPytanie()
- } else {
- chronometer.stop()
- var intent = Intent(this, GameOverActivity::class.java)
- intent.putExtra("zmienna1", this.incorrectAnswersCount.toString())
- intent.putExtra("zmienna2", this.correctAnswersCount.toString())
- intent.putExtra("zmienna3", chronometer.text.toString())
- startActivity(intent)
- //timer invalidate
- //show view z wynikami: il. poprawnych odpowiedzi, blednych i czas
- }
- }
- fun incorrectAnswer() {
- this.incorrectAnswersCount += 1
- when(this.incorrectAnswersCount) {
- 1 -> {
- print("Utrata serca")
- heart3.animate().alpha(0f).setDuration(0)
- generujPytanie()
- }
- 2 -> {
- print("Utrata 2 serca")
- heart2.animate().alpha(0f).setDuration(0)
- generujPytanie()
- }
- 3 -> {
- print("Utrata 3 serca")
- val intent = Intent(this, GameOverActivity::class.java)
- intent.putExtra("zmienna1", this.incorrectAnswersCount.toString())
- intent.putExtra("zmienna2", this.correctAnswersCount.toString())
- intent.putExtra("zmienna3", chronometer.text.toString())
- startActivity(intent)
- //heart1.animate().alpha(0f).setDuration(0) // Tbh tego nie trzeba bo od razu przeskakuje na okno wykniów.
- chronometer.stop()
- //Pokaz view z wynikami: il. poprawnych, blednych i czas
- }
- }
- }
- public fun generujPytanie() {
- val tuple = questionCreator?.createQuestionForLevel()
- if (tuple != null) {
- questionTextView.text = tuple.second
- setButtonsText(tuple.first)
- }
- }
- }
- //
- //
- //
- //
- //
- //
- // @objc func myUpdate() {
- // countDownTime += 1
- // DispatchQueue.main.async {
- // self.timerLabel.text = "Timer: \(self.countDownTime)"
- // }
- // }
- //
- // func startCountdown(){
- // self.myTimer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(myUpdate), userInfo: nil, repeats: true)
- // countDownTime = 0
- // }
- //}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement