public static void doDaily(PlayerPtrVector ppv, TeamPtrDivVector tpdv,
			Modus modus, int round, Schedule schedule, News news) {
		// update all players
		int nofPlayers = ppv.GetNofPlayers();
		for (int i = 0; i < nofPlayers; i++) {
			Player player = ppv.GetPlayer(i);
			player.updateDay(modus.getGameType() == Modus.GameType.TOURNAMENT);
		}

		// update all teams (finances, transfers, coaching)
		boolean playoff = (modus.getNofRounds() < round);
		int nofTotalRounds = modus.getNofRounds() + modus.getNofPlayoffFinals()
				* modus.getGamesPerFinal();
		for (int div = 1; div <= modus.getNofDivisions() + 1; div++) {
			int nofTeams = tpdv.getNofTeams(div);
			for (int i = 0; i < nofTeams; i++) {
				Team team = tpdv.getTeam(div, i);
				team.updateNonLeaguePlayers(); // farm and transfer
				// team players change engergy too !
				int additionalDays = modus.getNofPlayoffFinals()
						* modus.getGamesPerFinal();
				if (modus.getNofTeams() % 2 == 1) {
					// odd number of teams: add number of no-game days
					additionalDays += modus.getNofRounds() / (modus.getNofTeams() + 1);
				}
				Daily.doFinances(team, additionalDays, modus.getNofRounds());
				if (round > 1) {
					// do transfer but not at first round
					int nofForeigners;
					if (modus.nofForeigners == Modus.maxNofForeignersExceptUnlimited + 1) {
						nofForeigners = Team.TEAM_MAXTEAMPLAYER
								+ Team.TEAM_MAXFARMPLAYER;
					} else {
						nofForeigners = modus.nofForeigners;
					}
					Daily.doTransfers(nofTotalRounds, modus.getGameType(), ppv,
							team, news, nofForeigners);
				}
			}
		}
		// coaching of all teams AFTER transfers of ALL teams ! (for
		// correct lineups after trading!)
		for (int div = 1; div <= modus.getNofDivisions() + 1; div++) {
			int nofTeams = tpdv.getNofTeams(div);
			for (int i = 0; i < nofTeams; i++) {
				Team team = tpdv.getTeam(div, i);
				if (round <= nofTotalRounds) {
					// don't do coaching at end of season
					Team opteam = schedule.getOpTeam(round, team);
					Daily.doCoaching(team, opteam, playoff,
							modus.maxNofForeigners());
				}
			}
		}
	}