Commit Graph

54 Commits (2030bd47c823b47606e9567a1974761f80cf0d55)

Author SHA1 Message Date
madmaxoft f481865c35 New players get full health
Fixes #28.
2013-08-01 09:51:25 +02:00
madmaxoft fedb803acb Fixed inverted sanity check in SetGameMode()
Fixes #22.
2013-07-30 14:48:18 +02:00
Alexander Harkness 53e22b1185 Changed everyting to Unix line endings. 2013-07-29 12:13:03 +01: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 0caadbb25c Hunger-per-distance is calculated only for the XZ distance 2013-07-28 11:54:37 +02:00
madmaxoft d155c1cb00 Player food level is reset on respawn 2013-07-28 11:52:24 +02:00
madmaxoft d3801c0296 Added cPlayer::IsGameModeXXX() and cWorld::IsGameModeXXX() functions.
These are the preferred way of determining the gamemode, you should use those instead of doing manual comparisons to the gamemode value.
2013-07-28 11:30:54 +02:00
STRWarrior 235c23d464 Hunger: If a player dies the food level resets. 2013-07-27 06:07:10 -07:00
madmaxoft@gmail.com 6b348717d8 Removed debug-logging the player movement in each tick
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1685 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-26 20:03:25 +00: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 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 eff79ee55f Fixed a crash when moving a player to a non-existent world (reported by tonibm19)
http://forum.mc-server.org/showthread.php?tid=434&pid=8865#pid8865 crashdump.zip/crash_mcs_165c.dmp

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1645 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-05 17:04:12 +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 37276a4430 Rewritten entity-on-fire management ("forever on fire" bugs)
Fixes FS #297 and part of FS #403.
Added sizes to all entities.
Moved all damage-related functions from cPawn to cEntity
API change: renamed cPawn:TeleportTo() to cEntity:TeleportToCoords()

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1635 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-01 10:39:56 +00:00
nielsbreu@gmail.com b984da5a9e Added respawn screen when switching worlds.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1598 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-16 10:35:32 +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 8ff22344af LuaWindow: Fixed memory leaks with unclosed windows
A player disconnecting will now force all windows to close, not respecting any plugin's overrides.
http://forum.mc-server.org/showthread.php?tid=1146&pid=8350#pid8350

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1543 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-02 21:59:25 +00:00
madmaxoft@gmail.com 2eb1240e14 Added the OnClosing callback to cLuaWindow API
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1534 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-30 20:40:43 +00:00
madmaxoft@gmail.com b58f0cabad Window contents are sent whenever the window is opened by a player.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1533 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-30 19:42:19 +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 191479cd81 Implemented left-click inventory painting
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1529 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-30 08:40:13 +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 950d7f5f2d Empty permission is always granted
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1490 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-19 15:06:28 +00:00
madmaxoft@gmail.com 3292a0118f Replaced MIN / MAX with std::min and std::max (pt 2)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1456 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-07 19:59:45 +00:00
keyboard.osh@gmail.com 0ceadbe7e0 cPlayer now uses BroadcastMovementUpdate during its Tick function
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1395 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-19 04:32:18 +00:00
madmaxoft@gmail.com f5842062d3 Proper entity removal functions
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1386 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-13 21:28:55 +00:00
madmaxoft@gmail.com a49c004278 Rewritten entities so that they are owned by individual chunks and ticked within their chunk's Tick()
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1385 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-13 21:02:10 +00:00
madmaxoft@gmail.com 4aed49a70f Fixed personal crafting grid not being tossed on inventory close.
FS #355, http://www.mc-server.org/support/index.php?do=details&task_id=355

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1358 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-04 11:47:31 +00:00
madmaxoft@gmail.com 1406d80b2b Pawn, Player: fixed asserts when teleporting players outside of the world (setting spawn Y to 256)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1346 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-01 18:05:41 +00:00
keyboard.osh@gmail.com b32a60106f Added helper functions AddSpeed, AddSpeedX, AddSpeedY, AddSpeedZ, AddPosition, AddPosX, AddPosY, AddPosZ. Made sure that all entites use these helper functions.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1299 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-23 04:33:47 +00:00
keyboard.osh@gmail.com 39e4bd3239 Implemented BroadcastMovementUpdate function. Moved m_Pos,m_Rot,m_Speed to private members and made sure that all classes uses the public functions to access these members.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1294 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-22 06:33:10 +00:00
madmaxoft@gmail.com 7593707713 Pickups are now being saved into Anvil.
Also changed cEntity rotation datatype to double

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1262 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-09 14:35:43 +00:00
madmaxoft@gmail.com 06dc6ae071 Fixed random teleporting into the void when leaving minecarts
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1259 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-05 20:49:07 +00:00
madmaxoft@gmail.com 01b24d73ea Player can sit in minecarts (but not move them yet)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1249 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-03 19:05:11 +00:00
madmaxoft@gmail.com 7a6ec4fb17 Changed HOOK_PLAYER_MOVED to HOOK_PLAYER_MOVING to match the scheme used for names.
-ING means the event is being processed and may be refused by a plugin, -ED means it has already happenned and the plugin cannot do anything about it.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1174 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-26 07:50:06 +00:00
madmaxoft@gmail.com 43e6840719 Merged branch "branches/hooks" into "trunk".
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1139 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-12 04:46:01 +00:00
madmaxoft@gmail.com b29af701b9 MTRand reference is now passed as a Tick() parameter so that it isn't created and destroyed over and over again. All entities will handle physics (empty callback for now)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1096 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-12-22 10:15:53 +00:00
madmaxoft@gmail.com afaf104b40 Added more constants into eEntityType; made them a compulsory parameter to the constructor, so that all entities have proper type.
Also added a few utility functions to cEntity for distinguishing the types (IsPlayer(), IsPickup() etc.)

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1092 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-12-21 12:52:14 +00:00
madmaxoft@gmail.com 033af999ba Reworked the IsA() / GetClass() framework to actually be useful. Added GetParentClass().
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1090 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-12-21 12:21:20 +00:00
madmaxoft@gmail.com 912a1e7adc Refactored the TakeDamage API to take equipped weapon and armor into consideration (PvP untested)
http://forum.mc-server.org/showthread.php?tid=625

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1087 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-12-21 11:04:08 +00:00
luksor111@gmail.com 9a839a3a98 Fixed fall damage again
Added sound effects to pistons

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1074 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-12-15 13:27:01 +00:00
luksor111@gmail.com 50e87ac978 Fixed warnings in Player.cpp
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1071 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-27 22:17:07 +00:00
luksor111@gmail.com 8ca150b700 Added initial adventure mode support
Added missing Emerald crafting recipe
You get more fall damage when jumping
Torch no longer protects players from fall damage
Fixed Ender Chest drops

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1070 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-27 19:55:23 +00:00
luksor111@gmail.com eb7131bd12 Fixed certain blocks crashing clients when mined
Fixed rail duplication glitch
Fixed fall damage calculation
Glass no longer drops glass

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1068 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-26 10:03:34 +00:00
madmaxoft@gmail.com 4cebaa99f8 Refactored the world time.
Now it is stored in two values - WorldAge (only incremented, plugins cannot change) and TimeOfDay (plugins can change). Since sub-tick precision is needed in Tick(), we store it both as number of seconds (double) and number of ticks (Int64) is calculated off of that.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1022 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-01 21:38:20 +00:00
sebi.noreply@gmail.com e33e9111ab Fixed issues with pickups.
* Now when picking up max. stack amount is checked.
* Added cInventory::AddItemAnyAmount() which will not fail if it cannot add all items (it will just modify amount)
* If there is no space in inventory and picking up stacked items, it will try to fill stacks already in inventory, partially picking up the item.
* When closing inventory player will drop any items it's currently 'dragging'

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1008 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-24 12:48:25 +00:00