You can change the morale level like so (as seen in the SDK):
TethysGame::ForceMoraleGreat(int playerNum); //Highest
TethysGame::ForceMoraleGood(int playerNum);
TethysGame::ForceMoraleOK(int playerNum);
TethysGame::ForceMoralePoor(int playerNum);
TethysGame::ForceMoraleRotten(int playerNum); //Lowest
TethysGame::FreeMoraleLevel(int playerNum); //Normal Morale
playerNum is the Player this will effect -1, for example, Player 1 is 0, Player 2 is 1, etc. In single player games, Player 1 (0) is the human player.