View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.hideandseek.protocol.messages;
2   
3   import cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId;
4   import cz.cuni.amis.pogamut.ut2004.communication.messages.custom.ControlMessageField;
5   import cz.cuni.amis.pogamut.ut2004.communication.messages.custom.ControlMessageType;
6   import cz.cuni.amis.pogamut.ut2004.hideandseek.protocol.HSScoreChangeReason;
7   
8   @ControlMessageType(type="HS_PLAYER_SCORE_CHANGED")
9   public class HSPlayerScoreChanged extends HSMessage {
10  
11  	@ControlMessageField(index=1)
12  	private UnrealId botId;
13  	
14  	@ControlMessageField(index=1)
15  	private Integer score;
16  	
17  	/**
18  	 * Maps to {@link HSScoreChangeReason}, use {@link HSScoreChangeReason#getScoreChangeReason(int)} to resolve.
19  	 */
20  	@ControlMessageField(index=2)
21  	private Integer scoreChangeReason;
22  	
23  	public HSPlayerScoreChanged() {
24  	}
25  
26  	public UnrealId getBotId() {
27  		return botId;
28  	}
29  
30  	public void setBotId(UnrealId botId) {
31  		this.botId = botId;
32  	}
33  
34  	/**
35  	 * How many times was this bot TAGGED (negative score).
36  	 * @return
37  	 */
38  	public Integer getScore() {
39  		return score;
40  	}
41  
42  	public void setScore(Integer score) {
43  		this.score = score;
44  	}
45  
46  	public Integer getScoreChangeReason() {
47  		return scoreChangeReason;
48  	}
49  
50  	public HSScoreChangeReason getScoreChangeReasonEnum() {
51  		return scoreChangeReason == null ? null : HSScoreChangeReason.getScoreChangeReason(scoreChangeReason);
52  	}
53  	
54  	public void setScoreChangeReason(Integer scoreChangeReason) {
55  		this.scoreChangeReason = scoreChangeReason;
56  	}
57  	
58  }