(Player player, String functionString)
| 1027 | } |
| 1028 | |
| 1029 | private void processFunction(Player player, String functionString) throws MalformedFunction |
| 1030 | { |
| 1031 | function = new Function(functionString); |
| 1032 | |
| 1033 | player.getCurrentTurnSoldier().setFunction(functionString); |
| 1034 | |
| 1035 | //If player is in team 2 the function must go in the other direction |
| 1036 | //and the obstacles are inverted |
| 1037 | if(player.getTeam()==Constants.TEAM1) |
| 1038 | { |
| 1039 | switch(gameMode) |
| 1040 | { |
| 1041 | case Constants.NORMAL_FUNC: |
| 1042 | function.processFunctionRange(obstacle, players.toArray(new Player[0]), players.size(), currentTurn, false); |
| 1043 | break; |
| 1044 | case Constants.FST_ODE: |
| 1045 | function.processRK4Range(obstacle, players.toArray(new Player[0]), players.size(), currentTurn, false); |
| 1046 | break; |
| 1047 | case Constants.SND_ODE: |
| 1048 | function.processRK42Range(obstacle, players.toArray(new Player[0]), players.size(), currentTurn, player.getCurrentTurnSoldier().getAngle(),false); |
| 1049 | break; |
| 1050 | } |
| 1051 | } |
| 1052 | else |
| 1053 | { |
| 1054 | switch(gameMode) |
| 1055 | { |
| 1056 | case Constants.NORMAL_FUNC: |
| 1057 | function.processFunctionRange(obstacle, players.toArray(new Player[0]), players.size(), currentTurn, true); |
| 1058 | break; |
| 1059 | case Constants.FST_ODE: |
| 1060 | function.processRK4Range(obstacle, players.toArray(new Player[0]), players.size(), currentTurn, true); |
| 1061 | break; |
| 1062 | case Constants.SND_ODE: |
| 1063 | function.processRK42Range(obstacle, players.toArray(new Player[0]), players.size(), currentTurn, player.getCurrentTurnSoldier().getAngle(),true); |
| 1064 | break; |
| 1065 | } |
| 1066 | } |
| 1067 | |
| 1068 | soldiersHit = new ArrayList<Soldier>(); |
| 1069 | int numPlayersHit = function.getNumPlayersHit(); |
| 1070 | for(int i=0; i<numPlayersHit; i++) |
| 1071 | { |
| 1072 | Soldier soldier; |
| 1073 | |
| 1074 | soldier = players.get(function.getPlayerHit(i)).getSoldiers()[function.getSoldierHit(i)]; |
| 1075 | soldier.setKillPosition(function.getSoldierHitPosition(i)); |
| 1076 | soldiersHit.add(soldier); |
| 1077 | } |
| 1078 | |
| 1079 | player.getCurrentTurnSoldier().setAngle(function.getFireAngle()); |
| 1080 | ((GameScreen)graphwar.getUI().getScreen(Constants.GAME_SCREEN)).repaintAngle(); |
| 1081 | |
| 1082 | } |
| 1083 | |
| 1084 | private void removeDisconnectedPlayers() |
| 1085 | { |
no test coverage detected