1
0
Commit Graph

89 Commits

Author SHA1 Message Date
madmaxoft
104a31e23d Merging in tigerw's changes from PR #118 2013-08-25 16:11:19 +02:00
madmaxoft
259f08aac8 Client can no longer place blocks outside the Y range of the world.
Fixes #128.
2013-08-24 21:25:36 +02:00
Tiger Wang
d1cc6d9a9c Added comments and fixed a bug
Bug was placing slabs between slabs not making a double slab.
2013-08-24 18:46:19 +01:00
Tiger Wang
8bb2cab993 Fixed final slab bug
This bug allowed a double slab to be made below by placing a compatible
slab on a "top" slab. The coordinates are always one lower, so now it
checks to see if the slab orientation can be made into a double.
2013-08-24 11:10:30 +01:00
Tiger Wang
a671e45cd5 Double slabs work *choke choke* 2013-08-23 19:38:39 +01:00
madmaxoft
16e3242456 Another fix for #31.
This seems to have done it, no more crashes for me.
2013-08-22 08:17:26 +02:00
madmaxoft
69dc9b4c9a Added a delay between the kick packet and socket close.
This should have helped #31, but the client disagrees.
2013-08-20 22:28:34 +02:00
madmaxoft
654c34705c Fixed player spawning.
Now the player is spawned only after the chunk they're in is sent to the client. Hopefully no more falling-through-terrain-while-loggin-in.
2013-08-20 21:13:28 +02:00
madmaxoft
94f8884f60 Fixed the extreme strain on the world tick thread.
Block changes were sent even with empty changesets, causing a lot of lost CPU cycles.
2013-08-19 21:55:03 +02:00
madmaxoft
1a7912744f Moved entities into the Entities subfolder. 2013-08-19 11:39:13 +02:00
madmaxoft
0d323563e4 Added cWindow property manipulation API.
Now enchantment table and furnace properties can be set by a plugin
2013-08-18 13:26:37 +02:00
madmaxoft
0af2a0b08c ClientHandle no longer queues chat messages.
It is no longer needed to queue chat messages, because the protocol is parsed within the Tick thread itself, without holding any SocketThread CS.
2013-08-14 20:08:05 +02:00
madmaxoft
8c3837987b Player counts are now properly handled.
Fixes #80
2013-08-14 10:24:34 +02:00
madmaxoft
9020dc9932 Clients are now ticked in cServer first, then in cWorld once they get assigned a world. 2013-08-13 22:45:29 +02:00
madmaxoft
c628ab03e9 Removed cServer::BroadcastChat() and cServer::SendMessage().
These two functions make it difficult to move to the new ticking system, and they aren't used anyway. If so required, they can be emulated by ForEachWorld / ForEachPlayer calls.
2013-08-12 08:35:13 +02:00
madmaxoft
eb9d45e906 Moved MaxPlayers and Description from cWorld to cServer.
Also started creating a new cWorld::cTickThread class, but not used yet.
2013-08-11 19:18:06 +02:00
madmaxoft
deeb3a15dc Added OnPlayerAnimation() hook.
Initial patch by @STR_Warrior, updated to account for different animation packets.
2013-08-11 12:29:05 +02:00
Tiger Wang
b999b27e05 Removed extra disconnect message
There seems to be already one in the HandleDisconnect hook function.
2013-08-10 17:09:14 +01:00
James Ravenscroft
6963e8119c Fixed some formatting issues I accidentally introduced 2013-08-09 08:57:24 +01:00
James Ravenscroft
dace1f7bd2 Added IsSwimming and IsSubmerged flags and access methods 2013-08-09 08:37:39 +01:00
James Ravenscroft
2b9fdc3e36 Fixed the jump food exhaustion being added when player is swimming 2013-08-08 16:57:34 +01:00
madmaxoft
3531bdb60b Implemented OnPlayerRightClickingEntity() hook
Fixes FS 425
2013-08-02 08:44:06 +02:00
madmaxoft
e8a907d89e Implemented the actual tab completion for commands and playernames.
Each command is reported only if the player has the permission to use it.
2013-07-31 11:16:11 +02:00
madmaxoft
e9f18f8b4f Tab completion packet is handled and sent.
This only handles the network comm and the overall design logic, the actual completion is not yet implemented, only dummy values are returned for now.
2013-07-30 22:48:59 +02:00
madmaxoft
9efcd5b82f Added the "Edit Sign" packet sent to the client placing a sign.
Fixes issue #20. The 1.6.2 client wouldn't open the sign editor UI unless it receives a special packet
2013-07-29 21:42:05 +02:00
madmaxoft
3bf4130e3f Player eating is now properly broadcast to other players.
Also fixed the API relating to food, determining player gamemode, and removed several unneeded API functions.
2013-07-28 22:55:09 +02:00
madmaxoft
4746d2251c Implemented basic eating support.
Food is now properly consumed and it takes 1.5 sec.
2013-07-28 19:15:03 +02:00
madmaxoft@gmail.com
4fb771f3ff First implementation of movement-related hunger and API
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1673 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-12 20:01:25 +00:00
madmaxoft@gmail.com
97dc5a5365 Color codes are stripped from the DC message
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1670 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-08 13:00:09 +00:00
madmaxoft@gmail.com
0224a4f7fc Fixed sprinting in 1.6.1, made speeds available through API; fixed messages containing quotes.
Fixes FS #415

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1660 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-07 14:13:43 +00:00
madmaxoft@gmail.com
b1d05b0f57 Improved function names for protocol packet sending; alpha-sorted the function lists
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1659 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-07 13:06:06 +00:00
madmaxoft@gmail.com
37590c4bd8 Unmounting vehicles implemented in the 1.6.1 way
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1650 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-05 21:11:06 +00:00
madmaxoft@gmail.com
b818addde4 Fixed 1.6.1's movement speed
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1649 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-05 21:02:08 +00:00
madmaxoft@gmail.com
f7b8a301f8 Fixed player moving between worlds.
Fixes FS #407.
Also fixes a few possible deadlocks between SocketThreads and TickThread

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1641 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-03 07:47:35 +00:00
madmaxoft@gmail.com
623adcad0f Fixed crouch-placing unplaceable items (FS #399)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1632 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-29 15:45:46 +00:00
madmaxoft@gmail.com
943dcaea14 Plugins can modify message in the OnChat() hook handler.
FS #376

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1622 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-22 19:08:34 +00:00
madmaxoft@gmail.com
73fb71e164 Crouching will allow block placement on otherwise functional blocks.
Fixes FS #382

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1607 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-18 20:15:29 +00:00
madmaxoft@gmail.com
32f28bf1fb Added a crude limiter for explosions sent to client.
Now the client can survive even 3000k TNT blocks exploding without jerking much.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1606 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-18 19:32:31 +00:00
madmaxoft@gmail.com
b2138b132c More TNT fixes.
Chain-reaction TNTs are spawned in proper coordinates (FS #390)
Centralized Primed TNT entity spawning and made available to the plugins.
Internal changes for better TNT performance.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1604 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-18 19:09:51 +00:00
madmaxoft@gmail.com
588d4dc907 Added an elaborative comment on the deadlock prevention code
(FS #375)

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1597 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-16 08:51:05 +00:00
madmaxoft@gmail.com
a67760f7c9 First attempt at fixing the inter-threading deadlocks between the tick thread and the socket thread
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1591 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-15 15:29:20 +00:00
madmaxoft@gmail.com
3ee5236284 Removed cLadder, cSign, cStairs, cTorch and cVine classes, moved their functionality into the appropriate BlockHandlers / ItemHandlers
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1555 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-04 19:22:14 +00:00
madmaxoft@gmail.com
dff77e8e56 Implemented proper player crouching.
Fixes FS #365

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1553 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-04 14:18:03 +00:00
madmaxoft@gmail.com
9684f90f83 LuaWindow: Initial code, the window can be opened, but not much manipulated
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1532 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-30 19:34:09 +00:00
madmaxoft@gmail.com
9be27992e2 Moved BlockEntities to a separate folder
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1527 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-28 19:12:47 +00:00
madmaxoft@gmail.com
cf87169737 Refactored cInventory to use cItemGrid for the actual Storage
This makes the API more orthogonal and is easier to use in the plugins. Also changes in the inventory are now propagated to the needed places (armor updates to BroadcastEntityEquipment etc.) even when the inventory is changed by a plugin.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1503 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-24 07:30:39 +00:00
madmaxoft@gmail.com
90c398a392 Inventory code cleanup, players can now see each other's armor
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1493 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-19 18:22:37 +00:00
madmaxoft@gmail.com
7cbf36bf17 Refactored window clicking code to use different click actions
First part of solving FS #371; should fix #370.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1459 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-08 09:45:07 +00:00
madmaxoft@gmail.com
9b9a37e507 Fixed Linux compilation, slight code cleanup
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1396 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-19 08:21:39 +00:00
keyboard.osh@gmail.com
b75fc5f4e8 Initial implementation of explosions and TNT block
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1392 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-18 02:42:45 +00:00