Skip to content

Commit 5fc3329

Browse files
author
Evan Hu
committed
add test code
1 parent 3892c53 commit 5fc3329

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+2793
-2094
lines changed

pom.xml

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<modelVersion>4.0.0</modelVersion>
77
<groupId>info.xiaomo</groupId>
88
<artifactId>g-engine</artifactId>
9-
<version>3.1.3</version>
9+
<version>3.1.4</version>
1010

1111
<properties>
1212
<maven.compiler.source>1.8</maven.compiler.source>
@@ -31,7 +31,7 @@
3131
<dependency>
3232
<groupId>org.projectlombok</groupId>
3333
<artifactId>lombok</artifactId>
34-
<version>1.18.2</version>
34+
<version>1.18.16</version>
3535
</dependency>
3636
<dependency>
3737
<groupId>org.apache.activemq</groupId>
@@ -71,11 +71,6 @@
7171
<type>jar</type>
7272
<scope>compile</scope>
7373
</dependency>
74-
<dependency>
75-
<groupId>org.slf4j</groupId>
76-
<artifactId>slf4j-api</artifactId>
77-
<version>1.7.25</version>
78-
</dependency>
7974
<dependency>
8075
<groupId>org.mongodb.morphia</groupId>
8176
<artifactId>morphia</artifactId>
@@ -138,6 +133,22 @@
138133
<artifactId>dom4j</artifactId>
139134
<version>2.1.3</version>
140135
</dependency>
136+
<dependency>
137+
<groupId>org.slf4j</groupId>
138+
<artifactId>slf4j-api</artifactId>
139+
<version>1.7.30</version>
140+
</dependency>
141+
<dependency>
142+
<groupId>org.slf4j</groupId>
143+
<artifactId>slf4j-simple</artifactId>
144+
<version>1.7.30</version>
145+
</dependency>
146+
<dependency>
147+
<groupId>junit</groupId>
148+
<artifactId>junit</artifactId>
149+
<version>4.13.1</version>
150+
<scope>test</scope>
151+
</dependency>
141152
</dependencies>
142153

143154
<build>
@@ -157,6 +168,19 @@
157168
<target>${maven.compiler.target}</target>
158169
</configuration>
159170
</plugin>
171+
<plugin>
172+
<groupId>org.apache.maven.plugins</groupId>
173+
<artifactId>maven-source-plugin</artifactId>
174+
<version>3.0.1</version>
175+
<executions>
176+
<execution>
177+
<id>attach-sources</id>
178+
<goals>
179+
<goal>jar</goal>
180+
</goals>
181+
</execution>
182+
</executions>
183+
</plugin>
160184
</plugins>
161185
</build>
162186

src/main/java/info/xiaomo/gengine/ai/btree/BehaviorTreeManager.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626

2727
/**
2828
* 行为树 <br>
29-
*
30-
*
29+
* <p>
30+
* <p>
3131
* 2017年11月24日
3232
*/
3333
public class BehaviorTreeManager {
@@ -37,7 +37,7 @@ public class BehaviorTreeManager {
3737
/**
3838
* 行为树对象缓存
3939
*/
40-
private Map<String, BehaviorTree<? extends Person>> behaviorTrees = new HashMap<>();
40+
private final Map<String, BehaviorTree<? extends Person>> behaviorTrees = new HashMap<>();
4141

4242
private BehaviorTreeManager() {
4343

@@ -71,7 +71,7 @@ public void parseBehaviorTree(String path) {
7171
for (File file : files) {
7272
if (file.exists()) {
7373
// 加载行为树
74-
info.xiaomo.gengine.common.utils.Args.Two<String, BehaviorTree<? extends Person>> tree = createBehaviorTree(file);
74+
Args.Two<String, BehaviorTree<? extends Person>> tree = createBehaviorTree(file);
7575
behaviorTrees.put(tree.a(), tree.b());
7676
// LOGGER.debug("行为树{} 加入容器", tree.a());
7777
}
@@ -89,9 +89,9 @@ public void parseBehaviorTree(String path) {
8989
* @param file
9090
* @return
9191
*/
92-
private info.xiaomo.gengine.common.utils.Args.Two<String, BehaviorTree<? extends Person>> createBehaviorTree(File file) throws Exception {
92+
private Args.Two<String, BehaviorTree<? extends Person>> createBehaviorTree(File file) throws Exception {
9393
String xmlStr = FileUtil.readTxtFile(file.getPath());
94-
Document document = DocumentHelper.parseText(xmlStr);
94+
Document document = DocumentHelper.parseText(Objects.requireNonNull(xmlStr));
9595
Element rootElement = document.getRootElement(); // 根节点
9696

9797
Element idElement = rootElement.element(XML_ID); // id节点
@@ -151,7 +151,7 @@ private Task<Person> createTask(Element element) {
151151
if (element == null) {
152152
throw new RuntimeException("传入行为数节点为空");
153153
}
154-
Task<Person> task = null;
154+
Task<Person> task;
155155

156156
switch (element.getName()) {
157157
case XML_SELECTOR:
@@ -258,7 +258,7 @@ private LeafTask<Person> createLeafTask(Element element) {
258258
}
259259
String classStr = leafAttr.getValue();
260260
LeafTask<Person> leafTask = null;
261-
Class<?> leafTaskClass = null;
261+
Class<?> leafTaskClass;
262262
try {
263263
leafTaskClass = Class.forName(classStr);
264264
leafTask = (LeafTask<Person>) leafTaskClass.newInstance();
@@ -269,7 +269,7 @@ private LeafTask<Person> createLeafTask(Element element) {
269269
}
270270
Map<String, Method> writeMethods = ReflectUtil.getWriteMethod(leafTaskClass);
271271
Map<String, String> attrMap = new HashMap<>();
272-
for (Attribute attribute : (List<Attribute>) element.attributes()) {
272+
for (Attribute attribute : element.attributes()) {
273273
String name = attribute.getName();
274274
if (name.equalsIgnoreCase(XML_ATTRIBUTE_CLASS)) {
275275
continue;

src/main/java/info/xiaomo/gengine/ai/nav/triangle/ui/TriangleNavMeshWindow.java

Lines changed: 20 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
import java.awt.*;
44
import java.awt.event.*;
55
import java.io.File;
6+
import java.nio.charset.StandardCharsets;
67
import java.util.ArrayList;
8+
import java.util.Objects;
79
import java.util.Random;
810
import javax.swing.*;
911
import info.xiaomo.gengine.ai.nav.NavMeshData;
@@ -15,8 +17,6 @@
1517

1618
/**
1719
* 地图显示窗口
18-
*
19-
*
2020
*/
2121
public class TriangleNavMeshWindow {
2222

@@ -52,7 +52,7 @@ public TriangleNavMeshWindow(TriangleNavStart main) {
5252
Menu menu = new Menu();
5353
MenuItem file = null;
5454
try {
55-
menu.setLabel(new String("菜单".getBytes(), "UTF-8"));
55+
menu.setLabel(new String("菜单".getBytes(), StandardCharsets.UTF_8));
5656
file = new MenuItem();
5757
file.setLabel("选择NavMesh");
5858
} catch (Exception e) {
@@ -61,24 +61,20 @@ public TriangleNavMeshWindow(TriangleNavStart main) {
6161

6262
menu.add(file);
6363

64-
file.addActionListener(new ActionListener() {
65-
@Override
66-
public void actionPerformed(ActionEvent e) {
67-
int result;
68-
chooser = new JFileChooser();
69-
chooser.setCurrentDirectory(new File("."));
70-
chooser.setDialogTitle(choosertitle);
71-
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
72-
chooser.setAcceptAllFileFilterUsed(false);
73-
if (chooser.showOpenDialog(p) == JFileChooser.APPROVE_OPTION) {
74-
// log.error("getCurrentDirectory(): "
75-
// + chooser.getCurrentDirectory());
76-
// log.error("getSelectedFile() : "
77-
// + chooser.getSelectedFile());
78-
loadMap(chooser.getSelectedFile().getAbsolutePath(), 5);
79-
} else {
80-
LOGGER.error("No Selection ");
81-
}
64+
Objects.requireNonNull(file).addActionListener(e -> {
65+
chooser = new JFileChooser();
66+
chooser.setCurrentDirectory(new File("."));
67+
chooser.setDialogTitle(choosertitle);
68+
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
69+
chooser.setAcceptAllFileFilterUsed(false);
70+
if (chooser.showOpenDialog(p) == JFileChooser.APPROVE_OPTION) {
71+
// log.error("getCurrentDirectory(): "
72+
// + chooser.getCurrentDirectory());
73+
// log.error("getSelectedFile() : "
74+
// + chooser.getSelectedFile());
75+
loadMap(chooser.getSelectedFile().getAbsolutePath(), 5);
76+
} else {
77+
LOGGER.error("No Selection ");
8278
}
8379
});
8480

@@ -191,7 +187,7 @@ public void run() {
191187
long currentNanos = System.nanoTime();
192188
float seconds = (currentNanos - lastUpdateNanos) / 1000000000f;
193189
processEvents();
194-
if (pause != true) {
190+
if (!pause) {
195191
update(seconds);
196192
try {
197193
Thread.sleep(1);
@@ -283,8 +279,7 @@ public void processEvents() {
283279
}
284280
}
285281
if (eventsCopy.size() > 0) {
286-
for (int i = 0; i < eventsCopy.size(); i++) {
287-
AWTEvent awtEvent = eventsCopy.get(i);
282+
for (AWTEvent awtEvent : eventsCopy) {
288283
if (awtEvent instanceof MouseEvent) {
289284
MouseEvent e = (MouseEvent) awtEvent;
290285
switch (e.getID()) {
@@ -322,11 +317,7 @@ public void processEvents() {
322317
this.init();
323318
}
324319
if (e.getKeyCode() == KeyEvent.VK_P) {
325-
if (pause == true) {
326-
pause = false;
327-
} else {
328-
pause = true;
329-
}
320+
pause = pause != true;
330321
}
331322
}
332323
} else if (awtEvent instanceof ComponentEvent) {

src/main/java/info/xiaomo/gengine/common/handler/ExitServerHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public void run() {
2828
sendMsg(info);
2929
MailConfig mailConfig = MailManager.getInstance().getMailConfig();
3030
String[] receives = mailConfig.getReceivedUser().toArray(new String[0]);
31-
MailManager.getInstance().sendTextMail("服务器关闭", Config.SERVER_NAME + info, receives);
31+
MailManager.getInstance().sendTextMail("服务器关闭", Config.SERVER_NAME + info,false, receives);
3232
System.exit(1);
3333
}
3434
}

src/main/java/info/xiaomo/gengine/common/handler/ReloadConfigHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ public void run() {
5050
String info = String.format("%s加载配置:%s", MsgUtil.getIp(getSession()), result);
5151
LOGGER.info(info);
5252
MailConfig mailConfig = MailManager.getInstance().getMailConfig();
53-
String[] recives =
54-
mailConfig.getReceivedUser().toArray(new String[mailConfig.getReceivedUser().size()]);
55-
MailManager.getInstance().sendTextMail("加载配置", Config.SERVER_NAME + "\r\n" + info, recives);
53+
String[] receives =
54+
mailConfig.getReceivedUser().toArray(new String[0]);
55+
MailManager.getInstance().sendTextMail("加载配置", Config.SERVER_NAME + "\r\n" + info, false,receives);
5656
sendMsg(info);
5757
}
5858
}

src/main/java/info/xiaomo/gengine/common/handler/ReloadScriptHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ public void run() {
4444
String info = String.format("%s加载脚本:%s", MsgUtil.getIp(getSession()),loadClasss);
4545
LOGGER.info(info);
4646
MailConfig mailConfig = MailManager.getInstance().getMailConfig();
47-
String[] recives = mailConfig.getReceivedUser().toArray(new String[mailConfig.getReceivedUser().size()]);
48-
MailManager.getInstance().sendTextMail("加载脚本", Config.SERVER_NAME +"\r\n"+ info, recives);
47+
String[] receives = mailConfig.getReceivedUser().toArray(new String[0]);
48+
MailManager.getInstance().sendTextMail("加载脚本", Config.SERVER_NAME +"\r\n"+ info, receives);
4949
sendMsg(info);
5050
}
5151

src/main/java/info/xiaomo/gengine/common/handler/ThreadInfoHandler.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,19 @@
1414
*/
1515
@HandlerEntity(path = "/server/thread/info")
1616
public class ThreadInfoHandler extends HttpHandler {
17-
private static final Logger LOGGER = LoggerFactory.getLogger(ThreadInfoHandler.class);
17+
private static final Logger LOGGER = LoggerFactory.getLogger(ThreadInfoHandler.class);
1818

19-
@Override
20-
public void run() {
21-
String auth = getString("auth");
22-
if (!Config.SERVER_AUTH.equals(auth)) {
23-
sendMsg("验证失败");
24-
return;
25-
}
26-
String info = SysUtil.threadInfo("<br>");
27-
LOGGER.info(info);
28-
info = info.trim().replaceAll("/n", "").replaceAll("/t", "&nbsp;&nbsp;");
19+
@Override
20+
public void run() {
21+
String auth = getString("auth");
22+
if (!Config.SERVER_AUTH.equals(auth)) {
23+
sendMsg("验证失败");
24+
return;
25+
}
26+
String info = SysUtil.threadInfo("<br>");
27+
LOGGER.info(info);
28+
info = info.trim().replaceAll("/n", "").replaceAll("/t", "&nbsp;&nbsp;");
2929

30-
sendMsg(info);
31-
}
30+
sendMsg(info);
31+
}
3232
}

0 commit comments

Comments
 (0)