Some polishing
authorunc0rr
Mon, 13 Apr 2009 09:24:56 +0000
changeset 1977 2284d7fefe4f
parent 1976 be2db1272ed2
child 1978 8ab9949c8775
Some polishing
QTfrontend/about.cpp
QTfrontend/pages.cpp
gameServer/Actions.hs
gameServer/HWProtoInRoomState.hs
hedgewars/uGears.pas
share/hedgewars/Data/Maps/Bubbleflow/CMakeLists.txt
share/hedgewars/Data/Maps/Ropes/CMakeLists.txt
share/hedgewars/Data/Maps/Tree/CMakeLists.txt
share/hedgewars/Data/Maps/cave/foo.png
--- a/QTfrontend/about.cpp	Sun Apr 12 20:34:11 2009 +0000
+++ b/QTfrontend/about.cpp	Mon Apr 13 09:24:56 2009 +0000
@@ -61,9 +61,13 @@
 			"</h2><p>"
 			"Engine, frontend, net server: Andrey Korotaev &lt;<a href=\"mailto:unC0Rr@gmail.com\">unC0Rr@gmail.com</a>&gt;<br>"
 			"Many frontend improvements: Igor Ulyanov &lt;<a href=\"mailto:disinbox@gmail.com\">disinbox@gmail.com</a>&gt;<br>"
+			"Many engine and frontend improvements: Derek Pomery&lt;<a href=\"mailto:nemo@m8y.org\">nemo@m8y.org</a>&gt;<br>"
 			"Drill rocket, Ballgun, RC Plane weapons: Martin Boze &lt;<a href=\"mailto:afffect@gmail.com\">afffect@gmail.com</a>&gt;"
 			"</p><h2>" +
 			
+//		Daniel Martin <elhombresinremedio@gmail.com>
+//		"Nils Lück" and email: "nils.luck.design@gmail.com"
+			
 			QLabel::tr("Art:") + "</h2>"
 			+ QString::fromUtf8(
 			"<p>All sprites, all themes except for mentioned below: Finn Brice &lt;<a href=\"mailto:tiyuri@gmail.com\">tiyuri@gmail.com</a>&gt;"
--- a/QTfrontend/pages.cpp	Sun Apr 12 20:34:11 2009 +0000
+++ b/QTfrontend/pages.cpp	Mon Apr 13 09:24:56 2009 +0000
@@ -1088,10 +1088,14 @@
 {
 	QGridLayout * pageLayout = new QGridLayout(this);
 	pageLayout->setRowStretch(0, 10);
-	pageLayout->setRowStretch(2, 10);
+	pageLayout->setRowStretch(3, 10);
+
+	pageLayout->setColumnStretch(1, 10);
+	pageLayout->setColumnStretch(2, 20);
+	pageLayout->setColumnStretch(3, 10);
 
-	BtnLAN = addButton(tr("LAN game"), pageLayout, 1, 0);
-	BtnOfficialServer = addButton(tr("Official server"), pageLayout, 1, 1);
+	BtnLAN = addButton(tr("LAN game"), pageLayout, 1, 2);
+	BtnOfficialServer = addButton(tr("Official server"), pageLayout, 2, 2);
 
-	BtnBack = addButton(":/res/Exit.png", pageLayout, 3, 0, true);
+	BtnBack = addButton(":/res/Exit.png", pageLayout, 4, 0, true);
 }
--- a/gameServer/Actions.hs	Sun Apr 12 20:34:11 2009 +0000
+++ b/gameServer/Actions.hs	Mon Apr 13 09:24:56 2009 +0000
@@ -26,9 +26,6 @@
 	| RemoveTeam String
 	| RemoveRoom
 	| UnreadyRoomClients
-		Derek Pomery <nemo@m8y.org>
-		Daniel Martin <elhombresinremedio@gmail.com>
-		"Nils Lück" and email: "nils.luck.design@gmail.com"
 	| MoveToLobby
 	| ProtocolError String
 	| Warning String
@@ -191,17 +188,26 @@
 
 
 processAction (clID, serverInfo, clients, rooms) (RoomRemoveThisClient) = do
-	when (rID /= 0) $ (processAction (clID, serverInfo, clients, rooms) $ AnswerOthersInRoom ["LEFT", nick client, "part"]) >> return ()
+	(_, _, newClients, newRooms) <-
+			if roomID client /= 0 then
+				foldM
+					processAction
+						(clID, serverInfo, clients, rooms)
+						[AnswerOthersInRoom ["LEFT", nick client, "part"],
+						RemoveClientTeams clID]
+				else
+					return (clID, serverInfo, clients, rooms)
+	
 	return (
 		clID,
 		serverInfo,
-		adjust (\cl -> cl{roomID = 0, isMaster = False, isReady = False}) clID clients,
+		adjust (\cl -> cl{roomID = 0, isMaster = False, isReady = False}) clID newClients,
 		adjust (\r -> r{
 				playersIDs = IntSet.delete clID (playersIDs r),
 				playersIn = (playersIn r) - 1,
 				readyPlayers = if isReady client then (readyPlayers r) - 1 else readyPlayers r
 				}) rID $
-			adjust (\r -> r{playersIDs = IntSet.insert clID (playersIDs r)}) 0 rooms
+			adjust (\r -> r{playersIDs = IntSet.insert clID (playersIDs r)}) 0 newRooms
 		)
 	where
 		rID = roomID client
@@ -349,7 +355,7 @@
 	infoM "Clients" ((show $ clientUID client) ++ ": New client. Time: " ++ (show $ connectTime client))
 	writeChan (sendChan $ client) ["CONNECTED", "Hedgewars server http://www.hedgewars.org/"]
 
-	let newLogins = takeWhile (\(_ , time) -> (connectTime client) `diffUTCTime` time <= 20) $ lastLogins serverInfo
+	let newLogins = takeWhile (\(_ , time) -> (connectTime client) `diffUTCTime` time <= 11) $ lastLogins serverInfo
 
 	if isJust $ host client `Prelude.lookup` newLogins then
 		processAction (clID, serverInfo{lastLogins = newLogins}, updatedClients, rooms) $ ByeClient "Reconnected too fast"
--- a/gameServer/HWProtoInRoomState.hs	Sun Apr 12 20:34:11 2009 +0000
+++ b/gameServer/HWProtoInRoomState.hs	Mon Apr 13 09:24:56 2009 +0000
@@ -24,13 +24,9 @@
 	if isMaster client then
 		[RemoveRoom]
 	else
-		removeClientTeams ++
 		[RoomRemoveThisClient]
 	where
 		client = clients IntMap.! clID
-		room = rooms IntMap.! (roomID client)
-		clientTeams = filter (\t -> teamowner t == nick client) $ teams room
-		removeClientTeams = map (RemoveTeam . teamname) clientTeams
 
 
 handleCmd_inRoom clID clients rooms ("CFG" : paramName : paramStrs) =
--- a/hedgewars/uGears.pas	Sun Apr 12 20:34:11 2009 +0000
+++ b/hedgewars/uGears.pas	Mon Apr 13 09:24:56 2009 +0000
@@ -822,7 +822,8 @@
 						0,
 						4,
 						0);
-				defaultPos:= false
+				defaultPos:= false;
+				HatVisible:= true
 			end
 		end
 	end else
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Maps/Bubbleflow/CMakeLists.txt	Mon Apr 13 09:24:56 2009 +0000
@@ -0,0 +1,5 @@
+install(FILES
+	map.png
+	map.cfg
+	preview.png
+	DESTINATION ${SHAREPATH}Data/Maps/Bubbleflow)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Maps/Ropes/CMakeLists.txt	Mon Apr 13 09:24:56 2009 +0000
@@ -0,0 +1,5 @@
+install(FILES
+	map.png
+	map.cfg
+	preview.png
+	DESTINATION ${SHAREPATH}Data/Maps/Ropes)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Maps/Tree/CMakeLists.txt	Mon Apr 13 09:24:56 2009 +0000
@@ -0,0 +1,5 @@
+install(FILES
+	map.png
+	map.cfg
+	preview.png
+	DESTINATION ${SHAREPATH}Data/Maps/Tree)
Binary file share/hedgewars/Data/Maps/cave/foo.png has changed