-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathNakula.java
65 lines (65 loc) · 2.12 KB
/
Nakula.java
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
import java.util.*;
/**
* <h1>Kelas untuk role Nakula </h1>
* Kelas Nakula merupakan kelas yang mewakili
* tokoh Nakula. Tokoh ini memilliki kelebihan yaitu dapat mengambil salah satu
* kartu lawan dan menaruhna di tangan. Kekuatan dari
* Nakula ini dinamakan Pranawajati.
* @author LimaPandawa
* @version 1.0
*/
public class Nakula extends Player{
/**
* Konstruktor dari kelas Nakula, mengganti nilai
* id menjadi 2
*/
public Nakula(){
id = 2;
}
/**
* Atribut description mewakili kekuatan yang dimiliki oleh Nakula
*/
final String description = "Pranawajati: Nakula dapat mengambil salah satu kartu lawan dan menaruhnya di tangan\n"
+ "Kekuatan dapat dilakukan tiap 4 putaran atau lebih";
/**
* Mengembalikan nilai true apabila Nakula dapat melakukan
* aksinya yaitu rechargeTime >=4
*/
public boolean isAction(){
return rechargeTime >=4 && !actionUsed;
}
/**
* Menjalankan aksi dari Nakula yaitu menentukan
* player yang akan diambil kartunya untuk disimpan ke tangan player
*/
public void useAction(){
//Lalala put your code's here
if(rechargeTime>=4 && !actionUsed){
//Pilih kartu lawan untuk disimpan ke tangan
Random rnd = new Random();
int playerTarget = SelectTarget();
int cardTarget = rnd.nextInt(Game.getPlayers().get(playerTarget).getHand().getSize());
Game.getPlayers().get(playerTarget).getHand().Discard(cardTarget);
Game.getCurrentPlayer().getHand().Draw(Game.getDP().getTop());
rechargeTime = 0;
actionUsed = true;
System.out.println("Aksi berhasil dilakukan! Kartu dari pemain ke-" + playerTarget + " ditambahkan ke tangan.");
}
else
System.out.println("Tidak bisa menggunakan aksi ini.");
}
/**
* getter dari Description
* @return String
*/
public String getDescription(){
return description;
}
/**
* getter dari Role
* @return String
*/
public String getRole(){
return "Nakula";
}
}