Crossfire JXClient, Trunk
src
gui
src
main
java
com
realtime
crossfire
jxclient
main
PlayerNameTracker.java
Go to the documentation of this file.
1
/*
2
* This file is part of JXClient, the Fullscreen Java Crossfire Client.
3
*
4
* JXClient is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; either version 2 of the License, or
7
* (at your option) any later version.
8
*
9
* JXClient is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with JXClient; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17
*
18
* Copyright (C) 2005-2008 Yann Chachkoff
19
* Copyright (C) 2006-2017,2019-2023 Andreas Kirschbaum
20
* Copyright (C) 2010-2012,2014-2018,2020-2023 Nicolas Weeger
21
*/
22
23
package
com.realtime.crossfire.jxclient.main;
24
25
import
com
.
realtime
.
crossfire
.
jxclient
.
guistate
.
ClientSocketState
;
26
import
com
.
realtime
.
crossfire
.
jxclient
.
guistate
.
GuiStateListener
;
27
import
com
.
realtime
.
crossfire
.
jxclient
.
guistate
.
GuiStateManager
;
28
import
com
.
realtime
.
crossfire
.
jxclient
.
items
.
CfItem
;
29
import
com
.
realtime
.
crossfire
.
jxclient
.
items
.
ItemSet
;
30
import
com
.
realtime
.
crossfire
.
jxclient
.
items
.
ItemSetListener
;
31
import
com
.
realtime
.
crossfire
.
jxclient
.
window
.
JXCConnection
;
32
import
org.jetbrains.annotations.NotNull;
33
import
org.jetbrains.annotations.Nullable;
34
40
public
class
PlayerNameTracker
{
41
45
@NotNull
46
private
final
JXCConnection
connection
;
47
51
@NotNull
52
private
final
ItemSet
itemSet
;
53
57
@NotNull
58
private
final
ItemSetListener
itemSetListener
=
new
ItemSetListener
() {
59
60
@Override
61
public
void
playerChanged(@Nullable
final
CfItem
player) {
62
connection
.
setCharacter
(player ==
null
?
null
: player.getName());
63
}
64
65
@Override
66
public
void
openContainerChanged(
final
int
tag) {
67
// ignore
68
}
69
70
};
71
76
@NotNull
77
@SuppressWarnings(
"FieldCanBeLocal"
)
78
private final
GuiStateListener
guiStateListener
= new
GuiStateListener
() {
79
80
@Override
81
public
void
start() {
82
itemSet
.
removeItemSetListener
(
itemSetListener
);
83
}
84
85
@Override
86
public
void
metaserver() {
87
itemSet
.
removeItemSetListener
(
itemSetListener
);
88
}
89
90
@Override
91
public
void
preConnecting(@NotNull
final
String serverInfo) {
92
connection
.
setHost
(serverInfo);
93
}
94
95
@Override
96
public
void
connecting(@NotNull
final
String serverInfo) {
97
itemSet
.
addItemSetListener
(
itemSetListener
);
98
}
99
100
@Override
101
public
void
connecting(@NotNull
final
ClientSocketState
clientSocketState, @NotNull
final
String param) {
102
// ignore
103
}
104
105
@Override
106
public
void
connected() {
107
// ignore
108
}
109
110
@Override
111
public
void
connectFailed(@NotNull
final
String reason) {
112
// ignore
113
}
114
115
};
116
123
public
PlayerNameTracker
(@NotNull
final
GuiStateManager
guiStateManager, @NotNull
final
JXCConnection
connection
, @NotNull
final
ItemSet
itemSet
) {
124
this.connection =
connection
;
125
this.itemSet =
itemSet
;
126
guiStateManager.addGuiStateListener(
guiStateListener
);
127
}
128
129
}
com.realtime.crossfire.jxclient.main.PlayerNameTracker.itemSet
final ItemSet itemSet
Definition:
PlayerNameTracker.java:52
com.realtime.crossfire.jxclient
com.realtime.crossfire.jxclient.guistate.ClientSocketState
Definition:
ClientSocketState.java:30
com.realtime.crossfire.jxclient.window
Definition:
DialogStateParser.java:23
com.realtime.crossfire.jxclient.main.PlayerNameTracker.PlayerNameTracker
PlayerNameTracker(@NotNull final GuiStateManager guiStateManager, @NotNull final JXCConnection connection, @NotNull final ItemSet itemSet)
Definition:
PlayerNameTracker.java:123
com.realtime.crossfire.jxclient.window.JXCConnection.setCharacter
void setCharacter(@Nullable final String character)
Definition:
JXCConnection.java:222
com.realtime.crossfire.jxclient.window.JXCConnection
Definition:
JXCConnection.java:41
com.realtime.crossfire.jxclient.window.JXCConnection.setHost
void setHost(@Nullable final String serverInfo)
Definition:
JXCConnection.java:273
com.realtime.crossfire.jxclient.items.ItemSet
Definition:
ItemSet.java:44
com.realtime.crossfire.jxclient.main.PlayerNameTracker
Definition:
PlayerNameTracker.java:40
com.realtime.crossfire.jxclient.guistate.GuiStateManager
Definition:
GuiStateManager.java:34
com.realtime.crossfire.jxclient.guistate
Definition:
ClientSocketState.java:23
com.realtime.crossfire.jxclient.main.PlayerNameTracker.guiStateListener
final GuiStateListener guiStateListener
Definition:
PlayerNameTracker.java:78
com.realtime.crossfire.jxclient.guistate.GuiStateListener
Definition:
GuiStateListener.java:32
com.realtime.crossfire.jxclient.main.PlayerNameTracker.connection
final JXCConnection connection
Definition:
PlayerNameTracker.java:46
com.realtime.crossfire.jxclient.items.CfItem
Definition:
CfItem.java:37
com.realtime.crossfire.jxclient.items.ItemSet.removeItemSetListener
void removeItemSetListener(@NotNull final ItemSetListener listener)
Definition:
ItemSet.java:103
com.realtime.crossfire
com.realtime
com
com.realtime.crossfire.jxclient.items.ItemSet.addItemSetListener
void addItemSetListener(@NotNull final ItemSetListener listener)
Definition:
ItemSet.java:95
com.realtime.crossfire.jxclient.items
Definition:
AbstractItemView.java:23
com.realtime.crossfire.jxclient.items.ItemSetListener
Definition:
ItemSetListener.java:32
com.realtime.crossfire.jxclient.main.PlayerNameTracker.itemSetListener
final ItemSetListener itemSetListener
Definition:
PlayerNameTracker.java:58
Generated by
1.8.17