1
2
3
4
5
6
7
8
9 package cz.cuni.amis.pogamut.defcon.communication.messages.commands;
10
11 import cz.cuni.amis.pogamut.base.communication.messages.*;
12 import cz.cuni.amis.pogamut.base.communication.worldview.*;
13 import cz.cuni.amis.pogamut.base.communication.worldview.object.*;
14 import cz.cuni.amis.pogamut.defcon.base3d.worldview.object.DefConLocation;
15 import cz.cuni.amis.pogamut.defcon.communication.messages.*;
16 import cz.cuni.amis.pogamut.defcon.communication.messages.commands.*;
17 import cz.cuni.amis.pogamut.defcon.communication.messages.infos.*;
18 import cz.cuni.amis.pogamut.defcon.consts.*;
19 import cz.cuni.amis.pogamut.defcon.consts.state.*;
20 import cz.cuni.amis.utils.exception.*;
21
22 import java.util.*;
23
24 import javabot.*;
25
26
27
28
29
30 public class PlaceFleet extends DefConCommand {
31
32
33
34 private DefConLocation location = null;
35
36
37
38
39 private UnitType[] ships = null;
40
41
42
43
44
45
46
47
48
49
50
51 public PlaceFleet(DefConLocation location, UnitType[] ships) {
52 this.location = location;
53
54 this.ships = ships;
55 }
56
57
58
59
60
61 public PlaceFleet(PlaceFleet original) {
62 this.location = original.location;
63
64 this.ships = original.ships;
65 }
66
67
68
69
70
71
72 public DefConLocation getLocation() {
73 return this.location;
74 }
75
76
77
78
79
80
81
82
83 public PlaceFleet setLocation(DefConLocation location) {
84 this.location = location;
85
86 return this;
87 }
88
89
90
91
92
93
94 public UnitType[] getShips() {
95 return this.ships;
96 }
97
98
99
100
101
102
103
104
105 public PlaceFleet setShips(UnitType[] ships) {
106 this.ships = ships;
107
108 return this;
109 }
110
111
112
113
114 @Override
115 public void perform() {
116 DefConLocation location = getLocation();
117 UnitType[] types = getShips();
118 int[] intTypes = new int[types.length];
119
120 for (int i = 0; i < types.length; ++i) {
121 intTypes[i] = types[i].id;
122 }
123
124 JBot.PlaceFleet((float) location.getX(), (float) location.getY(), intTypes);
125 }
126
127
128
129
130
131
132 @Override
133 public String toString() {
134 return "PlaceFleet[" + getStringizedFields() + "; Location = " + this.location +
135 "; Ships = " + this.ships + "]";
136 }
137
138
139
140
141
142
143 public String toHtmlString() {
144 return "<p><b>PlaceFleet:</b></p>" + "<p><i>Location:</i> " + this.location + "</p>" +
145 "<p><i>Ships:</i> " + this.ships + "</p>";
146 }
147 }