5
5
import com .eternalcode .core .notice .NoticeService ;
6
6
import com .eternalcode .core .user .User ;
7
7
import com .eternalcode .core .util .DurationUtil ;
8
+ import com .eternalcode .core .viewer .Viewer ;
8
9
import dev .rollczi .litecommands .annotations .argument .Arg ;
9
10
import dev .rollczi .litecommands .annotations .command .Command ;
10
11
import dev .rollczi .litecommands .annotations .context .Context ;
20
21
@ Permission ("eternalcore.seen" )
21
22
class SeenCommand {
22
23
24
+ public static final int NEVER_JOINED_BEFORE = 0 ;
23
25
private final Server server ;
24
26
private final NoticeService noticeService ;
25
27
@@ -31,12 +33,12 @@ public SeenCommand(Server server, NoticeService noticeService) {
31
33
32
34
@ Execute
33
35
@ DescriptionDocs (description = "Shows when the player was last seen on the server" )
34
- void execute (@ Context User sender , @ Arg User target ) {
36
+ void execute (@ Context Viewer sender , @ Arg User target ) {
35
37
OfflinePlayer targetPlayer = this .server .getOfflinePlayer (target .getUniqueId ());
36
38
37
39
if (targetPlayer .isOnline ()) {
38
40
this .noticeService .create ()
39
- .user (sender )
41
+ .viewer (sender )
40
42
.notice (translation -> translation .seen ().nowOnline ())
41
43
.placeholder ("{PLAYER}" , target .getName ())
42
44
.send ();
@@ -46,10 +48,9 @@ void execute(@Context User sender, @Arg User target) {
46
48
47
49
long lastPlayed = targetPlayer .getLastPlayed ();
48
50
49
- // If the time is 0, it means the player has never joined before
50
- if (lastPlayed == 0 ) {
51
+ if (lastPlayed == NEVER_JOINED_BEFORE ) {
51
52
this .noticeService .create ()
52
- .user (sender )
53
+ .viewer (sender )
53
54
.notice (translation -> translation .seen ().neverPlayedBefore ())
54
55
.placeholder ("{PLAYER}" , target .getName ())
55
56
.send ();
@@ -61,7 +62,7 @@ void execute(@Context User sender, @Arg User target) {
61
62
String lastPlayedFormatted = DurationUtil .format (lastPlayedBetween , true );
62
63
63
64
this .noticeService .create ()
64
- .user (sender )
65
+ .viewer (sender )
65
66
.notice (translation -> translation .seen ().lastSeen ())
66
67
.placeholder ("{PLAYER}" , target .getName ())
67
68
.placeholder ("{SEEN}" , lastPlayedFormatted )
0 commit comments