aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2010-12-25 11:27:14 +0200
committerPerttu Ahola <celeron55@gmail.com>2010-12-25 11:27:14 +0200
commitc37eb9b139a6730e2bd835dd8820a3be92b855cb (patch)
tree38ef6c5c111f4cefa1136eeae2ebb1afbd00bc23
parented6039d47240e744df28b8c486f50208519bfc9c (diff)
downloadminetest-c37eb9b139a6730e2bd835dd8820a3be92b855cb.tar.gz
minetest-c37eb9b139a6730e2bd835dd8820a3be92b855cb.tar.bz2
minetest-c37eb9b139a6730e2bd835dd8820a3be92b855cb.zip
tinkering around
-rw-r--r--src/connection.cpp12
-rw-r--r--src/connection.h2
-rw-r--r--src/guiPauseMenu.cpp2
-rw-r--r--src/main.cpp17
-rw-r--r--src/server.cpp2
5 files changed, 21 insertions, 14 deletions
diff --git a/src/connection.cpp b/src/connection.cpp
index 0bc8492e6..6c37ff63b 100644
--- a/src/connection.cpp
+++ b/src/connection.cpp
@@ -671,7 +671,7 @@ SharedBuffer<u8> Channel::ProcessPacket(
con->PrintInfo();
dout_con<<"DISCO: Removing peer "<<(peer_id)<<std::endl;
- if(con->deletePeer(peer_id) == false)
+ if(con->deletePeer(peer_id, false) == false)
{
con->PrintInfo(derr_con);
derr_con<<"DISCO: Peer not found"<<std::endl;
@@ -1301,15 +1301,13 @@ nextpeer:
continue;
}
- // Remove timeouted peers
+ // Remove timed out peers
core::list<u16>::Iterator i = timeouted_peers.begin();
for(; i != timeouted_peers.end(); i++)
{
PrintInfo(derr_con);
derr_con<<"RunTimeouts(): Removing peer "<<(*i)<<std::endl;
- m_peerhandler->deletingPeer(m_peers[*i], true);
- delete m_peers[*i];
- m_peers.remove(*i);
+ deletePeer(*i, true);
}
}
@@ -1355,11 +1353,11 @@ core::list<Peer*> Connection::GetPeers()
return list;
}
-bool Connection::deletePeer(u16 peer_id)
+bool Connection::deletePeer(u16 peer_id, bool timeout)
{
if(m_peers.find(peer_id) == NULL)
return false;
- m_peerhandler->deletingPeer(m_peers[peer_id], true);
+ m_peerhandler->deletingPeer(m_peers[peer_id], timeout);
delete m_peers[peer_id];
m_peers.remove(peer_id);
return true;
diff --git a/src/connection.h b/src/connection.h
index ad45278ba..73d043710 100644
--- a/src/connection.h
+++ b/src/connection.h
@@ -477,7 +477,7 @@ public:
// Calls PeerHandler::deletingPeer
// Returns false if peer was not found
- bool deletePeer(u16 peer_id);
+ bool deletePeer(u16 peer_id, bool timeout);
void SetPeerID(u16 id){ m_peer_id = id; }
u16 GetPeerID(){ return m_peer_id; }
diff --git a/src/guiPauseMenu.cpp b/src/guiPauseMenu.cpp
index ae1f58a9d..10d272b35 100644
--- a/src/guiPauseMenu.cpp
+++ b/src/guiPauseMenu.cpp
@@ -95,7 +95,7 @@ void GUIPauseMenu::regenerateGui(v2u32 screensize)
Environment->addButton(rect, this, 257, L"Exit");
}
{
- core::rect<s32> rect(0, 0, 180, 220);
+ core::rect<s32> rect(0, 0, 180, 240);
rect = rect + v2s32(size.X/2 + 90, size.Y/2-rect.getHeight()/2);
const wchar_t *text =
L"Keys:\n"
diff --git a/src/main.cpp b/src/main.cpp
index 524f12469..47840eae8 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -89,10 +89,6 @@ SUGG: Implement a "Fast check queue" (a queue with a map for checking
if something is already in it)
- Use it in active block queue in water flowing
-SUGG: Signs could be done in the same way as torches. For this, blocks
- need an additional metadata field for the texts
- - This is also needed for item container chests
-
SUGG: Precalculate lighting translation table at runtime (at startup)
SUGG: A version number to blocks, which increments when the block is
@@ -179,6 +175,12 @@ TODO: Check if the usage of Client::isFetchingBlocks() in
TODO: Make an option to the server to disable building and digging near
the starting position
+SUGG: Signs could be done in the same way as torches. For this, blocks
+ need an additional metadata field for the texts
+ - This is also needed for item container chests
+TODO: There has to be some better way to handle static objects than to
+ send them all the time. This affects signs and item objects.
+
Doing now:
======================================================================
@@ -2347,7 +2349,7 @@ int main(int argc, char *argv[])
while(client.getChatMessage(message))
{
chat_lines.push_back(ChatLine(message));
- if(chat_lines.size() > 7)
+ if(chat_lines.size() > 5)
{
core::list<ChatLine>::Iterator
i = chat_lines.begin();
@@ -2385,6 +2387,11 @@ int main(int argc, char *argv[])
screensize.Y - 10
);
chat_guitext->setRelativePosition(rect);
+
+ if(chat_lines.size() == 0)
+ chat_guitext->setVisible(false);
+ else
+ chat_guitext->setVisible(true);
}
/*
diff --git a/src/server.cpp b/src/server.cpp
index e210d4d64..c8f9be00e 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -3133,6 +3133,8 @@ void Server::handlePeerChange(PeerChange &c)
message += L"*** ";
message += name;
message += L" left game";
+ if(c.timeout)
+ message += L" (timed out)";
}
// Delete player