public void performedIntervention(Participant p) { mgc = (MazeGameController2WAY) this.getC().getTaskController(); htLastTraversalCount.put(p, mgc.getSwitchTraversalCount(p.getUsername())); int idx = this.getC().getParticipants().getAllParticipants().indexOf(p); if (idx == 0) { participant1mazeInterventions[mgc.getMazeNo()]++; Conversation.printWSln( "Main", "Updating score for (1) " + p.getUsername() + " to " + participant2mazeInterventions[mgc.getMazeNo()]); return; } else if (idx == 1) { participant2mazeInterventions[mgc.getMazeNo()]++; Conversation.printWSln( "Main", "Updating score for (2) " + p.getUsername() + " to " + participant2mazeInterventions[mgc.getMazeNo()]); return; } Conversation.printWSln("Main", "serious error...can't find" + p.getUsername()); }
public String showSummary() { if (c.getParticipants().getAllParticipants().size() < 2) return ""; mgc = (MazeGameController2WAY) this.getC().getTaskController(); String summary = ""; Vector vParticipants = c.getParticipants().getAllParticipants(); for (int i = 0; i < vParticipants.size(); i++) { Participant p = (Participant) vParticipants.elementAt(i); Integer oldTRAVS = (Integer) this.htLastTraversalCount.get(p); if (oldTRAVS == null) oldTRAVS = 0; summary = summary + p.getUsername() + ": (Trigger: " + oldTRAVS + " switch traversal count must be less than: " + mgc.getSwitchTraversalCount(p.getUsername()) + mgc.getMazeNo() + ")"; int idx = this.getC().getParticipants().getAllParticipants().indexOf(p); if (idx == 0) { summary = summary + "..has received: " + participant1mazeInterventions[mgc.getMazeNo()] + "..interventions in maze no." + mgc.getMazeNo() + " --Max:" + this.maxInterventionsPerMaze.getValue(); } else if (idx == 1) { summary = summary + "..has received: " + participant2mazeInterventions[mgc.getMazeNo()] + "..interventions in maze No." + mgc.getMazeNo() + " --Max:" + this.maxInterventionsPerMaze.getValue(); } else { summary = summary + "BAD ERROR...CAN'T FIND PARTICIPANT " + p.getUsername(); } summary = summary + "\n-------------------------------------------------------------------------\n"; } return summary; }
public boolean isCR_OK(Participant p) { mgc = (MazeGameController2WAY) this.getC().getTaskController(); if (this.interventionEARLY && mgc.getMazeNo() > 5) { // ////// Conversation.printWSln("Main3", "ISCROKABORTED(0)"); return false; } else if (!this.interventionEARLY && mgc.getMazeNo() < 6) { // ////// Conversation.printWSln("Main3", "ISCROKABORTED(0)"); return false; } possCR = pf.getAClarificationFastest(this.mostRecentTextCONTIG); // ////////mostRecentText Conversation.printWSln("Main3", this.mostRecentTextCONTIG); Conversation.printWSln("Main3", possCR); Conversation.printWSln("Main3", "---------------"); if (possCR == null) { Conversation.printWSln("Main3", "ISCROKABORTED(1)"); return false; } if (possCR.length() == 0) { Conversation.printWSln("Main3", "ISCROKABORTED(2)"); return false; } if (this.blockALLCR) { Conversation.printWSln("Main3", "ISCROKABORTED(3)"); return false; } Conversation.printWSln("Main", showSummary()); int currentTraversalCount = mgc.getSwitchTraversalCount(p.getUsername()) + mgc.getMazeNo(); // To be able to generate intervention at beginning of each game Integer oldTraversalCount = (Integer) this.htLastTraversalCount.get(p); if (oldTraversalCount == null) { return true; } if (oldTraversalCount >= currentTraversalCount) return false; int idx = this.getC().getParticipants().getAllParticipants().indexOf(p); if (idx == 0) { if (this.participant1mazeInterventions[mgc.getMazeNo()] >= maxInterventionsPerMaze.getValue()) { Conversation.printWSln( "Main", "ISCROKABORTED(5A) " + participant1mazeInterventions[mgc.getMazeNo()] + "..." + maxInterventionsPerMaze.getValue()); return false; } // Conversation.printWSln("Main","Can perform intervention participant 1: "+ // participant1mazeInterventions[mgc.getMazeNo()]+"--"+maxInterventionsPerMaze.getValue()); return true; } else if (idx == 1) { if (this.participant2mazeInterventions[mgc.getMazeNo()] >= maxInterventionsPerMaze.getValue()) { Conversation.printWSln( "Main", "ISCROKABORTED(5B) " + participant2mazeInterventions[mgc.getMazeNo()] + "..." + maxInterventionsPerMaze.getValue()); return false; } // Conversation.printWSln("Main","Can perform intervention participant 2: "+ // participant2mazeInterventions[mgc.getMazeNo()]+"--"+maxInterventionsPerMaze.getValue()); return true; } Conversation.printWSln("Main", "QUITE A BAD ERROR...." + p.getUsername()); return true; }