Here is my solution. After doing this the can choose in his preferences if he wishes to see the moods or not. If they choose no, then they will no see any moods of anyuser as well as thier own, if they choose yes, then they will see the moods as normal. By default they will show.
1. Create a Custom User Field,
Users --> Custom User Fields --> Create New Field:
Basic Information:
-Field ID: showmoods
-Title: Show Moods?
-Display Location: Preference
-Field Types: Radio Buttons
Options for Choice Field:
-Possible Choices: "yes" & "Yes" and "no" and "No"
General Options:
-Only user editable ticked.
2. In the "mood_display" template I made the following change:
Replace the complete template with:
<xen:if is="{$canViewMoods}
&& {$visitor.customFields.showmoods} != 'no'">
<xen:require css="mood_display.css" />
<xen:set var="$moodImageUrl">{xen:if "{$user.mood_id}", {$moods.{$user.mood_id}.image_url}, {$moods.{$defaultMoodId}.image_url}}</xen:set>
<div class="userMood">
<xen:if is="{$visitor.user_id} == {$user.user_id} && {$canHaveMood}">
<a href="{xen:link moods/mood-chooser, '', 'redirect={$requestPaths.requestUri}'}" class="OverlayTrigger Tooltip" title="{xen

hrase mood_chooser}" data-cacheOverlay="false" data-offsetY="-8">
<img src="{$moodImageUrl}" alt="{$moods.{$user.mood_id}.title}" />
</a>
<xen:else />
<img src="{$moodImageUrl}" alt="{$moods.{$user.mood_id}.title}" />
</xen:if>
</div>
</xen:if>
The red part shows the change that has been made.