File tree Expand file tree Collapse file tree 4 files changed +26
-3
lines changed
src/main/java/dansplugins/activitytracker Expand file tree Collapse file tree 4 files changed +26
-3
lines changed Original file line number Diff line number Diff line change 11package dansplugins .activitytracker .eventhandlers ;
22
3+ import dansplugins .activitytracker .data .PersistentData ;
4+ import dansplugins .activitytracker .factories .SessionFactory ;
35import dansplugins .activitytracker .managers .ActivityRecordManager ;
6+ import dansplugins .activitytracker .objects .ActivityRecord ;
7+ import dansplugins .activitytracker .objects .Session ;
48import org .bukkit .entity .Player ;
59import org .bukkit .event .EventHandler ;
610import org .bukkit .event .Listener ;
@@ -11,7 +15,13 @@ public class JoinHandler implements Listener {
1115 @ EventHandler ()
1216 public void handle (PlayerJoinEvent event ) {
1317 Player player = event .getPlayer ();
14- ActivityRecordManager .getInstance ().assignActivityRecordToPlayerIfNecessary (player );
18+ boolean assignmentNeeded = ActivityRecordManager .getInstance ().assignActivityRecordToPlayerIfNecessary (player );
19+ if (!assignmentNeeded ) {
20+ ActivityRecord record = PersistentData .getInstance ().getActivityRecord (player );
21+ Session newSession = SessionFactory .getInstance ().createSession (player );
22+ record .getSessions ().add (newSession ); // TODO: replace with better method
23+ record .setMostRecentSession (newSession );
24+ }
1525 }
1626
1727}
Original file line number Diff line number Diff line change @@ -21,16 +21,17 @@ public static ActivityRecordManager getInstance() {
2121 }
2222
2323
24- public void assignActivityRecordToPlayerIfNecessary (Player player ) {
24+ public boolean assignActivityRecordToPlayerIfNecessary (Player player ) {
2525 if (PersistentData .getInstance ().getActivityRecord (player ) != null ) {
2626 // player has an activity record
27- return ;
27+ return false ;
2828 }
2929
3030 // player doesn't have an activity record
3131
3232 ActivityRecord newRecord = ActivityRecordFactory .getInstance ().createActivityRecord (player );
3333 PersistentData .getInstance ().addRecord (newRecord );
3434 player .sendMessage (ChatColor .AQUA + "You've been assigned an activity record." );
35+ return true ;
3536 }
3637}
Original file line number Diff line number Diff line change @@ -38,8 +38,18 @@ public ISession getMostRecentSession() {
3838 return mostRecentSession ;
3939 }
4040
41+ @ Override
42+ public void setMostRecentSession (Session newSession ) {
43+ mostRecentSession = newSession ;
44+ }
45+
4146 @ Override
4247 public int getHoursSpent () {
4348 return hoursSpent ;
4449 }
50+
51+ @ Override
52+ public void setHoursSpent (int number ) {
53+ hoursSpent = number ;
54+ }
4555}
Original file line number Diff line number Diff line change @@ -7,5 +7,7 @@ public interface IActivityRecord {
77 UUID getPlayerUUID ();
88 ArrayList <ISession > getSessions ();
99 ISession getMostRecentSession ();
10+ void setMostRecentSession (Session newSession );
1011 int getHoursSpent ();
12+ void setHoursSpent (int number );
1113}
You can’t perform that action at this time.
0 commit comments