package controller.action.net; import controller.action.ActionType; import controller.action.GCAction; import controller.net.RobotWatcher; import data.AdvancedData; import data.PlayerInfo; import data.SPLCoachMessage; public class SPLCoachMessageReceived extends GCAction { private SPLCoachMessage message; public SPLCoachMessageReceived(SPLCoachMessage message) { super(ActionType.NET); this.message = message; } @Override public void perform(AdvancedData data) { byte team = (data.team[0].teamNumber == message.team)? (byte)0 : (byte)1; RobotWatcher.updateCoach(team); if ((System.currentTimeMillis() - data.timestampCoachPackage[team] >= SPLCoachMessage.SPL_COACH_MESSAGE_RECEIVE_INTERVALL) && (data.team[team].coach.penalty != PlayerInfo.PENALTY_SPL_COACH_MOTION)) { data.timestampCoachPackage[team] = System.currentTimeMillis(); data.splCoachMessageQueue.add(message); } } @Override public boolean isLegal(AdvancedData data) { return true; } }