1 package cz.cuni.amis.pogamut.ut2004.bot.impl;
2
3 import java.util.logging.Level;
4
5 import cz.cuni.amis.pogamut.base.communication.command.IAct;
6 import cz.cuni.amis.pogamut.base.utils.guice.AgentScoped;
7 import cz.cuni.amis.pogamut.base.utils.logging.LogCategory;
8 import cz.cuni.amis.pogamut.base3d.worldview.IVisionWorldView;
9 import cz.cuni.amis.pogamut.ut2004.bot.IUT2004BotController;
10 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbcommands.Initialize;
11 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbcommands.PasswordReply;
12 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.BotKilled;
13 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange;
14 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo;
15 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage;
16 import cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.Self;
17
18 @AgentScoped
19 public class UT2004BotController<BOT extends UT2004Bot> implements IUT2004BotController<BOT> {
20
21
22
23
24 public static final String USER_LOG_CATEGORY_ID = "User";
25
26
27
28
29 protected BOT bot;
30
31
32
33
34 protected LogCategory log = null;
35
36 @Override
37 public void initializeController(BOT bot) {
38 this.bot = bot;
39 log = bot.getLogger().getCategory(USER_LOG_CATEGORY_ID);
40
41 log.setLevel(Level.ALL);
42 }
43
44 @Override
45 public void prepareBot(BOT bot) {
46 }
47
48 @Override
49 public PasswordReply getPassword() {
50 return new PasswordReply().setPassword("unspecified");
51 }
52
53 @Override
54 public Initialize getInitializeCommand() {
55 return new Initialize();
56 }
57
58 @Override
59 public void botInitialized(GameInfo gameInfo, ConfigChange currentConfig, InitedMessage init) {
60 }
61
62 @Override
63 public void botFirstSpawn(GameInfo gameInfo, ConfigChange currentConfig, InitedMessage init, Self self) {
64 }
65
66 @Override
67 public void finishControllerInitialization() {
68 }
69
70 @Override
71 public void botKilled(BotKilled event) {
72 }
73
74 @Override
75 public void botShutdown() {
76 }
77
78 @Override
79 public IVisionWorldView getWorldView() {
80 return bot.getWorldView();
81 }
82
83 @Override
84 public IAct getAct() {
85 return bot.getAct();
86 }
87
88 @Override
89 public BOT getBot() {
90 return bot;
91 }
92
93 @Override
94 public LogCategory getLog() {
95 return log;
96 }
97
98 }