JuegoTocameActivity.kt 3.26 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
package com.example.juegotocame

import android.app.Activity
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.CountDownTimer
import androidx.core.view.isVisible
import kotlinx.android.synthetic.main.activity_juego_tocame.*

class JuegoTocameActivity : AppCompatActivity() {

    internal val tiempo : Long = 15_000
    internal var puntos : Int = 0
    internal var jugadorPuntajeRecord = 0
    internal lateinit var jugadorRecord : String
    internal lateinit var jugadorActual : String

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_juego_tocame)
        val intentRecibido : Intent = intent
        /**Recibe Intent**/
            jugadorActual = intentRecibido.getStringExtra("jugador")
            jugadorRecord = intentRecibido.getStringExtra("jugadorAntiguo")
            jugadorPuntajeRecord = intentRecibido.getIntExtra("jugadorRecordA", 0)
            jugadorIngresado.text = "Bienvenido $jugadorActual"
            campeon.text = "Record Anterior \n$jugadorRecord: $jugadorPuntajeRecord"

        jugar.setOnClickListener {
            botonTorturado.isVisible = true
            botonTorturado.isEnabled = true
            volverInicio.isVisible = false
            campeon.isVisible = false
            puntos = 0

            empiezaConteo()
        }

        botonTorturado.setOnClickListener {
            puntos = puntos + 1
            puntajeJuego.setText("Puntos Acumulados: ${puntos}")
        }

        volverInicio.setOnClickListener {
            val devolverCampeon : Intent = Intent()
            devolverCampeon.putExtra("jugador_finalizo",jugadorActual)
            devolverCampeon.putExtra("puntaje", puntos)
            devolverCampeon.putExtra("campeonNuevo", jugadorRecord)
            devolverCampeon.putExtra("campeonRecord", jugadorPuntajeRecord)
            setResult(Activity.RESULT_OK,devolverCampeon)
            finish()
        }

    }//fin onCreate


    fun empiezaConteo()
    {
        object : CountDownTimer(tiempo, 1000) {
            /**onTick se encarga de que el contador disminuya relacion a 1000 ms**/
            override fun onTick(millisUntilFinished: Long) {
               tiempoTexto.setText("00:${millisUntilFinished / 1000}")
                jugar.isEnabled = false
                if (millisUntilFinished <= tiempo * 0.6) seAcabaElTiempo.setText("Se te acaba el tiempo Crack!")
            }

            /**onFinish es un metodo que al terminar de contar puede realizar algun procedimiento **/
            override fun onFinish() {
                tiempoTexto.setText("Opama che KP!")
                jugar.isEnabled = true
                botonTorturado.isEnabled = false
                if (jugadorPuntajeRecord < puntos) {
                    puntajeJuego.setText ("$jugadorActual: $puntos\nSupero el Record de $jugadorRecord: $jugadorPuntajeRecord")
                    jugadorRecord = jugadorActual
                    jugadorPuntajeRecord = puntos

                } else {
                    puntajeJuego.setText("$jugadorActual: $puntos")
                }
                botonTorturado.isEnabled = false
                volverInicio.isVisible = true

            }

        }.start()
    }
}