diff -r 364db3edb19c planet/System.c4g/LanguageDE.txt
--- a/planet/System.c4g/LanguageDE.txt	Fri Mar 26 20:11:21 2010 +0100
+++ b/planet/System.c4g/LanguageDE.txt	Fri Mar 26 20:45:52 2010 +0100
@@ -1332,4 +1332,5 @@
 IDS_VOTE_VOTEDOUT=rausgeworfen
 IDS_VOTE_WANTSTO=%s möchte %s
 IDS_VOTE_WANTSTOALLOW=%s möchte %s. Zulassen?
+IDS_NET_CLIENTIGNORE=Du kannst seine Nachrichten nicht mehr lesen
 
diff -r 364db3edb19c planet/System.c4g/LanguageUS.txt
--- a/planet/System.c4g/LanguageUS.txt	Fri Mar 26 20:11:21 2010 +0100
+++ b/planet/System.c4g/LanguageUS.txt	Fri Mar 26 20:45:52 2010 +0100
@@ -1332,3 +1332,4 @@
 IDS_VOTE_VOTEDOUT=voted out
 IDS_VOTE_WANTSTO=%s wants to %s
 IDS_VOTE_WANTSTOALLOW=%s wants to %s. Allow?
+IDS_NET_CLIENTIGNORE=You can't even read his messages
diff -r 364db3edb19c src/gui/C4GameLobby.cpp
--- a/src/gui/C4GameLobby.cpp	Fri Mar 26 20:11:21 2010 +0100
+++ b/src/gui/C4GameLobby.cpp	Fri Mar 26 20:45:52 2010 +0100
@@ -1,6 +1,7 @@
 /*
  * OpenClonk, http://www.openclonk.org
  *
+ * Copyright (c) 2010  Carl-Philip Hänsch
  * Copyright (c) 2003-2008  Sven Eberhardt
  * Copyright (c) 2005, 2009  Peter Wortmann
  * Copyright (c) 2005-2006  Günther Brammer
@@ -663,7 +664,7 @@
 	// output message should be prefixed with client already
 	const char *szMsgBuf = szMessage;
 	// 2do: log with player colors?
-	if (pChatBox && C4GUI::GetRes())
+	if (pChatBox && C4GUI::GetRes() && !pOfClient->IsIgnored())
 		{
 		pChatBox->AddTextLine(szMsgBuf, &C4GUI::GetRes()->TextFont, ::Network.Players.GetClientChatColor(pOfClient ? pOfClient->getID() : Game.Clients.getLocalID(), true) | C4GUI_MessageFontAlpha, true, true);
 		pChatBox->ScrollToBottom();
diff -r 364db3edb19c src/gui/C4Gui.h
--- a/src/gui/C4Gui.h	Fri Mar 26 20:11:21 2010 +0100
+++ b/src/gui/C4Gui.h	Fri Mar 26 20:45:52 2010 +0100
@@ -1,6 +1,7 @@
 /*
  * OpenClonk, http://www.openclonk.org
  *
+ * Copyright (c) 2010  Carl-Philip Hänsch
  * Copyright (c) 2003-2008  Sven Eberhardt
  * Copyright (c) 2005, 2009  Peter Wortmann
  * Copyright (c) 2005-2008  Günther Brammer
@@ -694,6 +695,7 @@
 		Ico_Disconnect     = 49,
 		Ico_View			     = 50,
 		Ico_RegJoinOnly    = 51,
+		Ico_Ignored        = 52, //! icon has to be drawed
 
 		Ico_Ex_RecordOff     = Ico_Extended + 0,
 		Ico_Ex_RecordOn      = Ico_Extended + 1,
diff -r 364db3edb19c src/gui/C4PlayerInfoListBox.cpp
--- a/src/gui/C4PlayerInfoListBox.cpp	Fri Mar 26 20:11:21 2010 +0100
+++ b/src/gui/C4PlayerInfoListBox.cpp	Fri Mar 26 20:45:52 2010 +0100
@@ -1,6 +1,7 @@
 /*
  * OpenClonk, http://www.openclonk.org
  *
+ * Copyright (c) 2010  Carl-Philip Hänsch
  * Copyright (c) 2008  Sven Eberhardt
  * Copyright (c) 2008  Matthes Bender
  * Copyright (c) 2009  Nicolas Hake
@@ -825,6 +826,8 @@
 
 C4GUI::Icons C4PlayerInfoListBox::ClientListItem::GetCurrentStatusIcon()
 	{
+	if (GetClient()->IsIgnored()) return C4GUI::Ico_Ignored;
+	
 	// sound icon?
 	if (tLastSoundTime)
 		{
@@ -909,9 +912,27 @@
    StdCopyStrBuf strClientInfoDesc(LoadResStr("IDS_NET_CLIENTINFO_DESC"));
 	pMenu->AddItem(LoadResStr("IDS_NET_CLIENTINFO"), strClientInfoDesc.getData(), C4GUI::Ico_None,
 		new C4GUI::CBMenuHandler<ClientListItem>(this, &ClientListItem::OnCtxInfo));
+		
+	//Ignore-Button	
+	StdCopyStrBuf strNewColor((GetClient()->IsIgnored() ? "Unignore" : "Ignore"));
+	pMenu->AddItem(strNewColor.getData(), LoadResStr("IDS_NET_CLIENTIGNORE"), C4GUI::Ico_None,
+		new C4GUI::CBMenuHandler<ClientListItem>(this, &ClientListItem::OnCtxIgnore), NULL);
+	//! StringTables
+	
+	
 	// open it
 	return pMenu;
 	}
+	
+void C4PlayerInfoListBox::ClientListItem::OnCtxIgnore(C4GUI::Element *pListItem)
+{
+	GetClient()->ToggleIgnore();
+  // send the me-Message
+  ::Control.DoInput(CID_Message,
+      new C4ControlMessage(C4CMT_Me, GetClient()->IsIgnored() ? "is ignoring you" : "is unignoring you", -1, -1),
+      CDT_Private); 
+}
+	
 
 void C4PlayerInfoListBox::ClientListItem::OnCtxKick(C4GUI::Element *pListItem)
 	{
diff -r 364db3edb19c src/gui/C4PlayerInfoListBox.h
--- a/src/gui/C4PlayerInfoListBox.h	Fri Mar 26 20:11:21 2010 +0100
+++ b/src/gui/C4PlayerInfoListBox.h	Fri Mar 26 20:45:52 2010 +0100
@@ -1,6 +1,7 @@
 /*
  * OpenClonk, http://www.openclonk.org
  *
+ * Copyright (c) 2010  Carl-Philip Hänsch
  * Copyright (c) 2008  Sven Eberhardt
  * Copyright (c) 2008-2009, RedWolf Design GmbH, http://www.clonk.de
 
@@ -211,6 +212,7 @@
 			void OnCtxKick(C4GUI::Element *pListItem); // kick item selected in client ctx menu
 			void OnCtxActivate(C4GUI::Element *pListItem); // toggle player/observer
 			void OnCtxInfo(C4GUI::Element *pListItem); // show info dlg (modal)
+			void OnCtxIgnore(C4GUI::Element *pListItem);
 			void OnBtnAddPlr(C4GUI::Control *btn);
 		};
 
diff -r 364db3edb19c src/network/C4Client.cpp
--- a/src/network/C4Client.cpp	Fri Mar 26 20:11:21 2010 +0100
+++ b/src/network/C4Client.cpp	Fri Mar 26 20:45:52 2010 +0100
@@ -1,6 +1,7 @@
 /*
  * OpenClonk, http://www.openclonk.org
  *
+ * Copyright (c) 2010  Carl-Philip Hänsch
  * Copyright (c) 2005-2006  Peter Wortmann
  * Copyright (c) 2006  Günther Brammer
  * Copyright (c) 2008  Armin Burgmeier
@@ -107,12 +108,13 @@
 C4Client::C4Client()
 	: pNetClient(NULL)
 {
+	fIsIgnored = false;
 }
 
 C4Client::C4Client(const C4ClientCore &Core)
 	: Core(Core), fLocal(false), pNetClient(NULL), pNext(NULL)
 {
-
+	fIsIgnored = false;
 }
 
 C4Client::~C4Client()
diff -r 364db3edb19c src/network/C4Client.h
--- a/src/network/C4Client.h	Fri Mar 26 20:11:21 2010 +0100
+++ b/src/network/C4Client.h	Fri Mar 26 20:45:52 2010 +0100
@@ -1,6 +1,7 @@
 /*
  * OpenClonk, http://www.openclonk.org
  *
+ * Copyright (c) 2010  Carl-Philip Hänsch
  * Copyright (c) 2005-2006  Peter Wortmann
  * Copyright (c) 2001-2009, RedWolf Design GmbH, http://www.clonk.de
  *
@@ -94,6 +95,8 @@
 
 	bool fLocal; // Local, NoSync
 	class C4Network2Client *pNetClient; // Local, NoSync
+	
+	bool fIsIgnored; // if the Player reads his lobby messages
 
 	C4Client *pNext;
 
@@ -107,6 +110,7 @@
 	bool				isActivated() const { return Core.isActivated(); }
 	bool				isObserver()	const { return Core.isObserver(); }
 	bool        isRegistered()const { return Core.isRegistered(); }
+	bool IsIgnored() const { return fIsIgnored; }
 
 	bool				isLocal()			const { return fLocal; }
 	C4Network2Client *getNetClient() const { return pNetClient; }
@@ -117,12 +121,15 @@
 	void SetActivated(bool fnActivated);
 	void SetObserver() { Core.SetObserver(true); }
 	void SetLocal();
+	
+	void ToggleIgnore() { fIsIgnored = !fIsIgnored; }
 
 	void UnlinkNetClient() { pNetClient = NULL; }
 
 	void Remove();
 
 	void CompileFunc(StdCompiler *pComp);
+	
 };
 
 class C4ClientList
