1
+ package com.alex.jokenporiginal.jokenpo
2
+
3
+ import android.annotation.SuppressLint
4
+ import android.os.Bundle
5
+ import android.view.View
6
+ import androidx.appcompat.app.AlertDialog
7
+ import androidx.appcompat.app.AppCompatActivity
8
+ import com.alex.jokenporiginal.R
9
+ import com.alex.jokenporiginal.select_character.model.DCharacter
10
+ import kotlinx.android.synthetic.main.activity_jokenpo.*
11
+ import kotlinx.android.synthetic.main.dialog_view_win.view.*
12
+ import kotlin.random.Random
13
+
14
+ class JokenpoActivity : AppCompatActivity () {
15
+ override fun onCreate (savedInstanceState : Bundle ? ) {
16
+ super .onCreate(savedInstanceState)
17
+ setContentView(R .layout.activity_jokenpo)
18
+
19
+ supportActionBar!! .hide()
20
+
21
+ val extras = intent.extras
22
+ if (extras != null ) {
23
+ val character = intent.getParcelableExtra<DCharacter >(" key" )
24
+ setComponents(character!! )
25
+ }
26
+
27
+ btn_papel.setOnClickListener {
28
+ play(0 )
29
+ }
30
+ btn_pedra.setOnClickListener {
31
+ play(1 )
32
+ }
33
+ btn_tesoura.setOnClickListener {
34
+ play(2 )
35
+ }
36
+ }
37
+
38
+ @SuppressLint(" UseCompatLoadingForDrawables" )
39
+ private fun play (num : Int ) {
40
+ image_view_comp.visibility = View .VISIBLE
41
+ val comp = Random .nextInt(3 )
42
+ when (comp){
43
+ 0 -> image_play_comp.setImageDrawable(getDrawable(R .drawable.papel))
44
+ 1 -> image_play_comp.setImageDrawable(getDrawable(R .drawable.pedra))
45
+ 2 -> image_play_comp.setImageDrawable(getDrawable(R .drawable.tesoura))
46
+ }
47
+ if (comp == num){
48
+ tieDialogAlert()
49
+ }else if ((comp == 0 && num == 1 ) || (comp == 1 && num == 2 ) || (comp == 2 && num == 0 )){
50
+ loseDialogAlert()
51
+ }else {
52
+ winDialogAlert()
53
+ }
54
+ }
55
+
56
+ private fun setComponents (character : DCharacter ){
57
+ val image = image_you
58
+ image.setImageResource(character.character)
59
+ }
60
+
61
+ private fun winDialogAlert (){
62
+ val view = View .inflate(this , R .layout.dialog_view_win, null )
63
+ val builder = AlertDialog .Builder (this )
64
+ builder.setView(view)
65
+ val dialog = builder.create()
66
+ dialog.show()
67
+ dialog.window?.setBackgroundDrawableResource(android.R .color.transparent)
68
+ view.btn_confirm.setOnClickListener {
69
+ dialog.dismiss()
70
+ }
71
+ }
72
+
73
+ private fun loseDialogAlert (){
74
+ val view = View .inflate(this , R .layout.dialog_view_lose, null )
75
+ val builder = AlertDialog .Builder (this )
76
+ builder.setView(view)
77
+ val dialog = builder.create()
78
+ dialog.show()
79
+ dialog.window?.setBackgroundDrawableResource(android.R .color.transparent)
80
+ view.btn_confirm.setOnClickListener {
81
+ dialog.dismiss()
82
+ }
83
+ }
84
+
85
+ private fun tieDialogAlert (){
86
+ val view = View .inflate(this , R .layout.dialog_view_tie, null )
87
+ val builder = AlertDialog .Builder (this )
88
+ builder.setView(view)
89
+ val dialog = builder.create()
90
+ dialog.show()
91
+ dialog.window?.setBackgroundDrawableResource(android.R .color.transparent)
92
+ view.btn_confirm.setOnClickListener {
93
+ dialog.dismiss()
94
+ }
95
+ }
96
+ }
0 commit comments