1
0

Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Tycho Bickerstaff 2013-12-10 16:53:46 +00:00
commit 5d2311bcff
11 changed files with 165 additions and 94 deletions

View File

@ -6,12 +6,16 @@ keyboard
STR_Warrior STR_Warrior
mgueydan mgueydan
tigerw tigerw
bearbin bearbin (Alexander Harkness)
Lapayo Lapayo
rs2k rs2k
Duralex Duralex
mtilden mtilden
Luksor Luksor
marmot marmot21
Sofapriester
mborland
SamJBarney
worktycho
Please add yourself to this list if you contribute to MCServer. Please add yourself to this list if you contribute to MCServer.

View File

@ -2,15 +2,15 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup> <ItemGroup>
<Filter Include="Source Files"> <Filter Include="Source Files">
<UniqueIdentifier>{9cc4f7b9-4c1a-4f43-ba70-d1780e59b9af}</UniqueIdentifier> <UniqueIdentifier>{de7b3b89-9cfa-4441-97a1-a41eb499d273}</UniqueIdentifier>
<Extensions>.cpp</Extensions> <Extensions>.cpp</Extensions>
</Filter> </Filter>
<Filter Include="Header Files"> <Filter Include="Header Files">
<UniqueIdentifier>{4570686f-18a1-4d38-a53b-062a4c223d4d}</UniqueIdentifier> <UniqueIdentifier>{1ddea6e2-83c2-4c5f-962a-7ad7f117cc85}</UniqueIdentifier>
<Extensions>.;.h</Extensions> <Extensions>.;.h</Extensions>
</Filter> </Filter>
<Filter Include="Miscellaneous"> <Filter Include="Miscellaneous">
<UniqueIdentifier>{6c599481-412e-461e-b3b3-949c4f43474a}</UniqueIdentifier> <UniqueIdentifier>{41edc228-f641-4aea-ad4b-14a4918be0a3}</UniqueIdentifier>
</Filter> </Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug profiled|Win32"> <ProjectConfiguration Include="Debug profiled|Win32">
@ -224,8 +224,6 @@
<ResourceCompile Include="MCServer.rc" /> <ResourceCompile Include="MCServer.rc" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="..\src\BlockEntities\EnderChestEntity.h" />
<ClInclude Include="..\src\Blocks\BlockRedstoneLamp.h" />
<ClInclude Include="resource_MCServer.h" /> <ClInclude Include="resource_MCServer.h" />
<ClInclude Include="..\src\Authenticator.h" /> <ClInclude Include="..\src\Authenticator.h" />
<ClInclude Include="..\src\BlockArea.h" /> <ClInclude Include="..\src\BlockArea.h" />
@ -365,16 +363,15 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release profiled|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release profiled|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</CustomBuild> </CustomBuild>
<ClInclude Include="..\src\Bindings.h" /> <ClInclude Include="..\src\Bindings\Bindings.h" />
<ClInclude Include="..\src\LuaFunctions.h" /> <ClInclude Include="..\src\Bindings\LuaFunctions.h" />
<ClInclude Include="..\src\Bindings\LuaState.h" /> <ClInclude Include="..\src\Bindings\LuaState.h" />
<ClInclude Include="..\src\Bindings\LuaWindow.h" /> <ClInclude Include="..\src\Bindings\LuaWindow.h" />
<ClInclude Include="..\src\Bindings\ManualBindings.h" /> <ClInclude Include="..\src\Bindings\ManualBindings.h" />
<ClInclude Include="..\src\Bindings\Plugin.h" /> <ClInclude Include="..\src\Bindings\Plugin.h" />
<ClInclude Include="..\src\Bindings\PluginLua.h" /> <ClInclude Include="..\src\Bindings\PluginLua.h" />
<ClInclude Include="..\src\Bindings\PluginManager.h" /> <ClInclude Include="..\src\Bindings\PluginManager.h" />
<ClInclude Include="..\src\tolua++.h" /> <ClInclude Include="..\src\Bindings\tolua_base.h" />
<ClInclude Include="..\src\tolua_base.h" />
<ClInclude Include="..\src\Bindings\WebPlugin.h" /> <ClInclude Include="..\src\Bindings\WebPlugin.h" />
<ClInclude Include="..\lib\inifile\iniFile.h" /> <ClInclude Include="..\lib\inifile\iniFile.h" />
<ClInclude Include="..\lib\md5\md5.h" /> <ClInclude Include="..\lib\md5\md5.h" />
@ -506,6 +503,7 @@
<ClInclude Include="..\src\BlockEntities\DispenserEntity.h" /> <ClInclude Include="..\src\BlockEntities\DispenserEntity.h" />
<ClInclude Include="..\src\BlockEntities\DropperEntity.h" /> <ClInclude Include="..\src\BlockEntities\DropperEntity.h" />
<ClInclude Include="..\src\BlockEntities\DropSpenserEntity.h" /> <ClInclude Include="..\src\BlockEntities\DropSpenserEntity.h" />
<ClInclude Include="..\src\BlockEntities\EnderChestEntity.h" />
<ClInclude Include="..\src\BlockEntities\FurnaceEntity.h" /> <ClInclude Include="..\src\BlockEntities\FurnaceEntity.h" />
<ClInclude Include="..\src\BlockEntities\HopperEntity.h" /> <ClInclude Include="..\src\BlockEntities\HopperEntity.h" />
<ClInclude Include="..\src\BlockEntities\JukeboxEntity.h" /> <ClInclude Include="..\src\BlockEntities\JukeboxEntity.h" />
@ -535,7 +533,7 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release profiled|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release profiled|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</CustomBuild> </CustomBuild>
<CustomBuild Include="..\src\AllToLua.pkg"> <CustomBuild Include="..\src\Bindings\AllToLua.pkg">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug profiled|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug profiled|Win32'">true</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug profiled|Win32'">GenerateBindings.cmd <Command Condition="'$(Configuration)|$(Platform)'=='Debug profiled|Win32'">GenerateBindings.cmd
</Command> </Command>
@ -617,7 +615,6 @@
<ItemGroup> <ItemGroup>
<ClCompile Include="..\src\Authenticator.cpp" /> <ClCompile Include="..\src\Authenticator.cpp" />
<ClCompile Include="..\src\BlockArea.cpp" /> <ClCompile Include="..\src\BlockArea.cpp" />
<ClCompile Include="..\src\BlockEntities\EnderChestEntity.cpp" />
<ClCompile Include="..\src\BlockID.cpp" /> <ClCompile Include="..\src\BlockID.cpp" />
<ClCompile Include="..\src\BoundingBox.cpp" /> <ClCompile Include="..\src\BoundingBox.cpp" />
<ClCompile Include="..\src\ByteBuffer.cpp" /> <ClCompile Include="..\src\ByteBuffer.cpp" />
@ -919,6 +916,7 @@
<ClCompile Include="..\src\BlockEntities\DispenserEntity.cpp" /> <ClCompile Include="..\src\BlockEntities\DispenserEntity.cpp" />
<ClCompile Include="..\src\BlockEntities\DropperEntity.cpp" /> <ClCompile Include="..\src\BlockEntities\DropperEntity.cpp" />
<ClCompile Include="..\src\BlockEntities\DropSpenserEntity.cpp" /> <ClCompile Include="..\src\BlockEntities\DropSpenserEntity.cpp" />
<ClCompile Include="..\src\BlockEntities\EnderChestEntity.cpp" />
<ClCompile Include="..\src\BlockEntities\FurnaceEntity.cpp" /> <ClCompile Include="..\src\BlockEntities\FurnaceEntity.cpp" />
<ClCompile Include="..\src\BlockEntities\HopperEntity.cpp" /> <ClCompile Include="..\src\BlockEntities\HopperEntity.cpp" />
<ClCompile Include="..\src\BlockEntities\JukeboxEntity.cpp" /> <ClCompile Include="..\src\BlockEntities\JukeboxEntity.cpp" />
@ -933,7 +931,6 @@
<ClCompile Include="..\src\HTTPServer\NameValueParser.cpp" /> <ClCompile Include="..\src\HTTPServer\NameValueParser.cpp" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Text Include="..\MCServer\API.txt" />
<Text Include="..\lib\sqlite\urls.txt" /> <Text Include="..\lib\sqlite\urls.txt" />
<Text Include="..\MCServer\crafting.txt" /> <Text Include="..\MCServer\crafting.txt" />
<Text Include="..\MCServer\furnace.txt" /> <Text Include="..\MCServer\furnace.txt" />

View File

@ -10,73 +10,73 @@
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter> </Filter>
<Filter Include="Source Files\Mobs"> <Filter Include="Source Files\Mobs">
<UniqueIdentifier>{52f3d533-108a-4cd8-8be2-19c799667e26}</UniqueIdentifier> <UniqueIdentifier>{977716f7-b383-498a-950f-49afc6d551f6}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Entities"> <Filter Include="Source Files\Entities">
<UniqueIdentifier>{727392f6-6dc8-4c0f-8380-2affc45d20d4}</UniqueIdentifier> <UniqueIdentifier>{14ac2998-63d0-4bb3-97e3-1bd0007ffc74}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\UI"> <Filter Include="Source Files\UI">
<UniqueIdentifier>{169eedf6-1244-49d1-9a74-79002dee80a7}</UniqueIdentifier> <UniqueIdentifier>{272cba2d-aa26-4c69-b6fa-94465078e351}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Simulator"> <Filter Include="Source Files\Simulator">
<UniqueIdentifier>{78798af4-7e8b-4f86-8175-c34995b71a7f}</UniqueIdentifier> <UniqueIdentifier>{1fabcea5-dba3-4265-b691-5795c69c4471}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\OSSupport"> <Filter Include="Source Files\OSSupport">
<UniqueIdentifier>{a9d6163b-75c5-47ef-8ebd-192c0053d987}</UniqueIdentifier> <UniqueIdentifier>{c29beffd-33f6-44eb-8310-3e0462cdddf9}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\OSSupport\Android Specific"> <Filter Include="Source Files\OSSupport\Android Specific">
<UniqueIdentifier>{4e664e9b-8741-4701-9f32-60dcc29f6463}</UniqueIdentifier> <UniqueIdentifier>{430cae6d-cfb2-49a2-9fb2-614fde244868}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Bindings"> <Filter Include="Source Files\Bindings">
<UniqueIdentifier>{5496fc08-0db0-4de0-adff-760fa67a8a78}</UniqueIdentifier> <UniqueIdentifier>{87060076-8ef4-4535-88ee-7a609e4391ae}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\External"> <Filter Include="Source Files\External">
<UniqueIdentifier>{0162bb1a-bed1-4e87-9ab7-c3da55911060}</UniqueIdentifier> <UniqueIdentifier>{4e33e863-d055-4476-bb95-efd5ebc115d3}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\WorldStorage"> <Filter Include="Source Files\WorldStorage">
<UniqueIdentifier>{82c6a5ba-3211-4c01-a643-9cdf2983630f}</UniqueIdentifier> <UniqueIdentifier>{ae97007e-0940-4f87-9786-8ed1d201e52c}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Generating"> <Filter Include="Source Files\Generating">
<UniqueIdentifier>{fc99053a-c609-4646-ad85-9cbaccbcf1c5}</UniqueIdentifier> <UniqueIdentifier>{99483c91-c76c-47c7-838d-ba25c2066c79}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Blocks"> <Filter Include="Source Files\Blocks">
<UniqueIdentifier>{83b41e57-43fe-4bfc-8ca5-d0d460834d59}</UniqueIdentifier> <UniqueIdentifier>{51b8f5f3-83b3-4068-8825-503f19b42542}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Items"> <Filter Include="Source Files\Items">
<UniqueIdentifier>{d53d761d-7d28-41dd-9623-6b489fbba65a}</UniqueIdentifier> <UniqueIdentifier>{959da118-757d-44c1-a4bd-d3345cfeb637}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\Protocol"> <Filter Include="Source Files\Protocol">
<UniqueIdentifier>{d3534b5b-4684-4857-befa-b78b9198eed8}</UniqueIdentifier> <UniqueIdentifier>{be413233-b7df-4ef1-9eb3-8aa1de96bf3e}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\SQLite"> <Filter Include="Source Files\SQLite">
<UniqueIdentifier>{96831397-1e56-4d07-9a3f-d97b9caa3f64}</UniqueIdentifier> <UniqueIdentifier>{224e8323-4bcc-4d7e-bdba-09fa22f42d66}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\LuaExpat"> <Filter Include="Source Files\LuaExpat">
<UniqueIdentifier>{6c6cceb3-545c-4698-a5c9-c01497e80022}</UniqueIdentifier> <UniqueIdentifier>{f9ad84f7-9199-45d1-a609-128f60baa996}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\BlockEntities"> <Filter Include="Source Files\BlockEntities">
<UniqueIdentifier>{7491cc4f-d735-4546-8aad-24d11a7396b0}</UniqueIdentifier> <UniqueIdentifier>{74088e2e-f7dc-478a-ae7f-bcfcb1a13dcc}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Source Files\HTTPServer"> <Filter Include="Source Files\HTTPServer">
<UniqueIdentifier>{201c626a-b869-407a-9c2a-e06cf8c8e127}</UniqueIdentifier> <UniqueIdentifier>{5e5eae6e-3154-4f85-868e-2682d072a5b2}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Config files"> <Filter Include="Config files">
<UniqueIdentifier>{cd93064b-e465-4562-a09b-de2363d0fab4}</UniqueIdentifier> <UniqueIdentifier>{124dfea0-3dcd-45c0-a196-ec9bd6e00b6a}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Plugins"> <Filter Include="Plugins">
<UniqueIdentifier>{8947d9a2-b1dc-4c3e-8c27-05ca5260843d}</UniqueIdentifier> <UniqueIdentifier>{bc156df0-b3f8-4bf2-a434-59e63f5eafcc}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Plugins\Core"> <Filter Include="Plugins\Core">
<UniqueIdentifier>{26e14e8c-ffde-4f83-b3a0-e0001d590e7a}</UniqueIdentifier> <UniqueIdentifier>{2bbb71f4-860a-4fc4-b9d9-ac05f806fea1}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Plugins\ChatLog"> <Filter Include="Plugins\ChatLog">
<UniqueIdentifier>{44ae2ab1-5552-4e84-b8b5-f28a59af0c4f}</UniqueIdentifier> <UniqueIdentifier>{05facd8b-76e8-4bc5-9135-831b49ac5c65}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Plugins\Debuggers"> <Filter Include="Plugins\Debuggers">
<UniqueIdentifier>{ac8a4c54-36f2-4505-a0dc-66f2817ccfa7}</UniqueIdentifier> <UniqueIdentifier>{6b70646e-a784-4617-8b26-941de4f8fd20}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="Plugins\APIDump"> <Filter Include="Plugins\APIDump">
<UniqueIdentifier>{3e58b3c7-097f-4688-a619-2771353180fe}</UniqueIdentifier> <UniqueIdentifier>{a2b234d1-1013-47c0-8a44-f3b294d83d19}</UniqueIdentifier>
</Filter> </Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@ -486,37 +486,34 @@
<ClInclude Include="..\src\OSSupport\Timer.h"> <ClInclude Include="..\src\OSSupport\Timer.h">
<Filter>Source Files\OSSupport</Filter> <Filter>Source Files\OSSupport</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\Bindings.h"> <ClInclude Include="..\src\Bindings\Bindings.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\LuaFunctions.h"> <ClInclude Include="..\src\Bindings\LuaFunctions.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\LuaState.h"> <ClInclude Include="..\src\Bindings\LuaState.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\LuaWindow.h"> <ClInclude Include="..\src\Bindings\LuaWindow.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\ManualBindings.h"> <ClInclude Include="..\src\Bindings\ManualBindings.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\Plugin.h"> <ClInclude Include="..\src\Bindings\Plugin.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\PluginLua.h"> <ClInclude Include="..\src\Bindings\PluginLua.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\PluginManager.h"> <ClInclude Include="..\src\Bindings\PluginManager.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\tolua++.h"> <ClInclude Include="..\src\Bindings\tolua_base.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\tolua_base.h"> <ClInclude Include="..\src\Bindings\WebPlugin.h">
<Filter>Source Files\Bindings</Filter>
</ClInclude>
<ClInclude Include="..\src\WebPlugin.h">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\lib\inifile\iniFile.h"> <ClInclude Include="..\lib\inifile\iniFile.h">
@ -909,6 +906,9 @@
<ClInclude Include="..\src\BlockEntities\DropSpenserEntity.h"> <ClInclude Include="..\src\BlockEntities\DropSpenserEntity.h">
<Filter>Source Files\BlockEntities</Filter> <Filter>Source Files\BlockEntities</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\BlockEntities\EnderChestEntity.h">
<Filter>Source Files\BlockEntities</Filter>
</ClInclude>
<ClInclude Include="..\src\BlockEntities\FurnaceEntity.h"> <ClInclude Include="..\src\BlockEntities\FurnaceEntity.h">
<Filter>Source Files\BlockEntities</Filter> <Filter>Source Files\BlockEntities</Filter>
</ClInclude> </ClInclude>
@ -945,12 +945,6 @@
<ClInclude Include="..\src\HTTPServer\NameValueParser.h"> <ClInclude Include="..\src\HTTPServer\NameValueParser.h">
<Filter>Source Files\HTTPServer</Filter> <Filter>Source Files\HTTPServer</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\BlockEntities\EnderChestEntity.h">
<Filter>Source Files\BlockEntities</Filter>
</ClInclude>
<ClInclude Include="..\src\Blocks\BlockRedstoneLamp.h">
<Filter>Source Files\Blocks</Filter>
</ClInclude>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="..\webadmin\template.html"> <None Include="..\webadmin\template.html">
@ -1471,28 +1465,28 @@
<ClCompile Include="..\Android\jni\ToJava.cpp"> <ClCompile Include="..\Android\jni\ToJava.cpp">
<Filter>Source Files\OSSupport\Android Specific</Filter> <Filter>Source Files\OSSupport\Android Specific</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\Bindings.cpp"> <ClCompile Include="..\src\Bindings\Bindings.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\LuaState.cpp"> <ClCompile Include="..\src\Bindings\LuaState.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\LuaWindow.cpp"> <ClCompile Include="..\src\Bindings\LuaWindow.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\ManualBindings.cpp"> <ClCompile Include="..\src\Bindings\ManualBindings.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\Plugin.cpp"> <ClCompile Include="..\src\Bindings\Plugin.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\PluginLua.cpp"> <ClCompile Include="..\src\Bindings\PluginLua.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\PluginManager.cpp"> <ClCompile Include="..\src\Bindings\PluginManager.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\WebPlugin.cpp"> <ClCompile Include="..\src\Bindings\WebPlugin.cpp">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\lib\inifile\iniFile.cpp"> <ClCompile Include="..\lib\inifile\iniFile.cpp">
@ -1624,6 +1618,9 @@
<ClCompile Include="..\src\BlockEntities\DropSpenserEntity.cpp"> <ClCompile Include="..\src\BlockEntities\DropSpenserEntity.cpp">
<Filter>Source Files\BlockEntities</Filter> <Filter>Source Files\BlockEntities</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\BlockEntities\EnderChestEntity.cpp">
<Filter>Source Files\BlockEntities</Filter>
</ClCompile>
<ClCompile Include="..\src\BlockEntities\FurnaceEntity.cpp"> <ClCompile Include="..\src\BlockEntities\FurnaceEntity.cpp">
<Filter>Source Files\BlockEntities</Filter> <Filter>Source Files\BlockEntities</Filter>
</ClCompile> </ClCompile>
@ -1660,14 +1657,8 @@
<ClCompile Include="..\src\HTTPServer\NameValueParser.cpp"> <ClCompile Include="..\src\HTTPServer\NameValueParser.cpp">
<Filter>Source Files\HTTPServer</Filter> <Filter>Source Files\HTTPServer</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\src\BlockEntities\EnderChestEntity.cpp">
<Filter>Source Files\BlockEntities</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Text Include="..\MCServer\API.txt">
<Filter>Source Files\Bindings</Filter>
</Text>
<Text Include="..\lib\sqlite\urls.txt"> <Text Include="..\lib\sqlite\urls.txt">
<Filter>Source Files\SQLite</Filter> <Filter>Source Files\SQLite</Filter>
</Text> </Text>
@ -1688,7 +1679,7 @@
<CustomBuild Include="..\Android\jni\ToJava.h"> <CustomBuild Include="..\Android\jni\ToJava.h">
<Filter>Source Files\OSSupport\Android Specific</Filter> <Filter>Source Files\OSSupport\Android Specific</Filter>
</CustomBuild> </CustomBuild>
<CustomBuild Include="..\src\AllToLua.pkg"> <CustomBuild Include="..\src\Bindings\AllToLua.pkg">
<Filter>Source Files\Bindings</Filter> <Filter>Source Files\Bindings</Filter>
</CustomBuild> </CustomBuild>
</ItemGroup> </ItemGroup>

View File

@ -100,7 +100,7 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile> <ClCompile>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../lib/tolua++/include;../lib/lua/src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>../lib/jsoncpp/include;../lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild> <MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@ -114,7 +114,7 @@
<ClCompile> <ClCompile>
<Optimization>MaxSpeed</Optimization> <Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../lib/tolua++/include;../lib/lua/src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>../lib/jsoncpp/include;../lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
@ -127,7 +127,7 @@
<ClCompile> <ClCompile>
<Optimization>MaxSpeed</Optimization> <Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../lib/tolua++/include;../lib/lua/src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>../lib/jsoncpp/include;../lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
@ -139,7 +139,7 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug profiled|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug profiled|Win32'">
<ClCompile> <ClCompile>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../lib/tolua++/include;../lib/lua/src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>../lib/jsoncpp/include;../lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild> <MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@ -152,7 +152,7 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_LuaStatic|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_LuaStatic|Win32'">
<ClCompile> <ClCompile>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../lib/tolua++/include;../lib/lua/src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>../lib/jsoncpp/include;../lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild> <MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@ -163,7 +163,6 @@
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="..\lib\tolua++\src\bin\tolua.c" />
<ClCompile Include="..\lib\tolua++\src\lib\tolua_event.c" /> <ClCompile Include="..\lib\tolua++\src\lib\tolua_event.c" />
<ClCompile Include="..\lib\tolua++\src\lib\tolua_is.c" /> <ClCompile Include="..\lib\tolua++\src\lib\tolua_is.c" />
<ClCompile Include="..\lib\tolua++\src\lib\tolua_map.c" /> <ClCompile Include="..\lib\tolua++\src\lib\tolua_map.c" />

View File

@ -7,9 +7,6 @@
</Filter> </Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="..\lib\tolua++\src\bin\tolua.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\lib\tolua++\src\lib\tolua_event.c"> <ClCompile Include="..\lib\tolua++\src\lib\tolua_event.c">
<Filter>Source Files</Filter> <Filter>Source Files</Filter>
</ClCompile> </ClCompile>

View File

@ -376,9 +376,8 @@ void cBlockHandler::DropBlock(cWorld * a_World, cEntity * a_Digger, int a_BlockX
MicroZ = a_BlockZ + 0.5; MicroZ = a_BlockZ + 0.5;
// Add random offset second (this causes pickups to spawn inside blocks most times, it's a little buggy) // Add random offset second (this causes pickups to spawn inside blocks most times, it's a little buggy)
//MicroX += (int)(r1.randInt(16) + r1.randInt(16) - 16); MicroX += r1.rand(1) - 0.5;
//MicroY += (int)(r1.randInt(16) + r1.randInt(16) - 16); MicroZ += r1.rand(1) - 0.5;
//MicroZ += (int)(r1.randInt(16) + r1.randInt(16) - 16);
a_World->SpawnItemPickups(Pickups, MicroX, MicroY, MicroZ); a_World->SpawnItemPickups(Pickups, MicroX, MicroY, MicroZ);
} }

View File

@ -224,7 +224,14 @@ void cFloodyFluidSimulator::SpreadToNeighbor(cChunk * a_NearChunk, int a_RelX, i
ItemTypeToString(NewBlock).c_str() ItemTypeToString(NewBlock).c_str()
); );
a_NearChunk->UnboundedRelSetBlock(a_RelX, a_RelY, a_RelZ, NewBlock, 0); a_NearChunk->UnboundedRelSetBlock(a_RelX, a_RelY, a_RelZ, NewBlock, 0);
m_World.BroadcastSoundEffect("random.fizz", a_RelX * 8, a_RelY * 8, a_RelZ * 8, 0.5f, 1.5f);
int BaseX = a_NearChunk->GetPosX() * cChunkDef::Width;
int BaseZ = a_NearChunk->GetPosZ() * cChunkDef::Width;
BaseX += a_RelX;
BaseZ += a_RelZ;
a_NearChunk->BroadcastSoundEffect("random.fizz", BaseX * 8, a_RelY * 8, BaseZ * 8, 0.5f, 1.5f);
return; return;
} }
} }
@ -238,7 +245,14 @@ void cFloodyFluidSimulator::SpreadToNeighbor(cChunk * a_NearChunk, int a_RelX, i
a_RelX, a_RelY, a_RelZ, ItemTypeToString(NewBlock).c_str() a_RelX, a_RelY, a_RelZ, ItemTypeToString(NewBlock).c_str()
); );
a_NearChunk->UnboundedRelSetBlock(a_RelX, a_RelY, a_RelZ, NewBlock, 0); a_NearChunk->UnboundedRelSetBlock(a_RelX, a_RelY, a_RelZ, NewBlock, 0);
m_World.BroadcastSoundEffect("random.fizz", a_RelX * 8, a_RelY * 8, a_RelZ * 8, 0.5f, 1.5f);
int BaseX = a_NearChunk->GetPosX() * cChunkDef::Width;
int BaseZ = a_NearChunk->GetPosZ() * cChunkDef::Width;
BaseX += a_RelX;
BaseZ += a_RelZ;
a_NearChunk->BroadcastSoundEffect("random.fizz", BaseX * 8, a_RelY * 8, BaseZ * 8, 0.5f, 1.5f);
return; return;
} }
} }

View File

@ -285,7 +285,7 @@ void cRedstoneSimulator::HandleRedstoneTorch(int a_BlockX, int a_BlockY, int a_B
if (AreCoordsPowered(X, Y, Z)) if (AreCoordsPowered(X, Y, Z))
{ {
// There was a match, torch goes off // There was a match, torch goes off
m_World.FastSetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_TORCH_OFF, m_World.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ)); m_World.SetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_TORCH_OFF, m_World.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ));
return; return;
} }
@ -335,7 +335,7 @@ void cRedstoneSimulator::HandleRedstoneTorch(int a_BlockX, int a_BlockY, int a_B
} }
// Block torch on not powered, can be turned on again! // Block torch on not powered, can be turned on again!
m_World.FastSetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_TORCH_ON, m_World.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ)); m_World.SetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_TORCH_ON, m_World.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ));
} }
} }
@ -420,6 +420,7 @@ void cRedstoneSimulator::HandleRedstoneWire(int a_BlockX, int a_BlockY, int a_Bl
} }
else else
{ {
NIBBLETYPE MetaToSet = 0;
NIBBLETYPE MyMeta = m_World.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ); NIBBLETYPE MyMeta = m_World.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ);
int TimesMetaSmaller = 0, TimesFoundAWire = 0; int TimesMetaSmaller = 0, TimesFoundAWire = 0;
@ -439,7 +440,7 @@ void cRedstoneSimulator::HandleRedstoneWire(int a_BlockX, int a_BlockY, int a_Bl
// >= to fix a bug where wires bordering each other with the same power level will appear (in terms of meta) to power each other, when they aren't actually in the powered list // >= to fix a bug where wires bordering each other with the same power level will appear (in terms of meta) to power each other, when they aren't actually in the powered list
if (SurroundMeta >= MyMeta) if (SurroundMeta >= MyMeta)
{ {
m_World.SetBlockMeta(a_BlockX, a_BlockY, a_BlockZ, SurroundMeta - 1); MetaToSet = SurroundMeta - 1; // To improve performance
} }
} }
@ -459,6 +460,10 @@ void cRedstoneSimulator::HandleRedstoneWire(int a_BlockX, int a_BlockY, int a_Bl
m_World.SetBlockMeta(a_BlockX, a_BlockY, a_BlockZ, 0); m_World.SetBlockMeta(a_BlockX, a_BlockY, a_BlockZ, 0);
return; // No need to process block power sets because self not powered return; // No need to process block power sets because self not powered
} }
else
{
m_World.SetBlockMeta(a_BlockX, a_BlockY, a_BlockZ, MetaToSet);
}
SetBlockPowered(a_BlockX, a_BlockY - 1, a_BlockZ, a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_WIRE); // Power block beneath SetBlockPowered(a_BlockX, a_BlockY - 1, a_BlockZ, a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_WIRE); // Power block beneath
} }
@ -538,6 +543,37 @@ void cRedstoneSimulator::HandleRedstoneRepeater(int a_BlockX, int a_BlockY, int
{ {
if (!IsOn) if (!IsOn)
{ {
bool ShouldCreate = true;
// If repeater is not on already (and is POWERED), see if it is in repeater list, or has reached delay time
for (RepeatersDelayList::iterator itr = m_RepeatersDelayList.begin(); itr != m_RepeatersDelayList.end(); itr++)
{
if (itr->a_BlockPos.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ)))
{
if (itr->a_DelayTicks <= itr->a_ElapsedTicks) // Shouldn't need <=; just in case something happens
{
m_RepeatersDelayList.erase(itr);
ShouldCreate = false;
break; // Delay time reached, break straight out, and into the powering code
}
else
{
itr->a_ElapsedTicks++; // Increment elapsed ticks and quit
return;
}
}
}
if (ShouldCreate)
{
// Self not in list, add self to list
sRepeatersDelayList RC;
RC.a_BlockPos = Vector3i(a_BlockX, a_BlockY, a_BlockZ);
RC.a_DelayTicks = ((a_Meta & 0xC) >> 0x2) + 1; // Gets the top two bits (delay time), shifts them into the lower two bits, and adds one (meta 0 = 1 tick; 1 = 2 etc.)
RC.a_ElapsedTicks = 0;
m_RepeatersDelayList.push_back(RC);
return;
}
m_World.SetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_REPEATER_ON, a_Meta); // Only set if not on; SetBlock otherwise server doesn't set it in time for SimulateChunk's invalidation m_World.SetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_REPEATER_ON, a_Meta); // Only set if not on; SetBlock otherwise server doesn't set it in time for SimulateChunk's invalidation
} }
switch (a_Meta & 0x3) // We only want the direction (bottom) bits switch (a_Meta & 0x3) // We only want the direction (bottom) bits
@ -572,7 +608,32 @@ void cRedstoneSimulator::HandleRedstoneRepeater(int a_BlockX, int a_BlockY, int
{ {
if (IsOn) if (IsOn)
{ {
m_World.FastSetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_REPEATER_OFF, a_Meta); // If repeater is not off already (and is NOT POWERED), see if it is in repeater list, or has reached delay time
for (RepeatersDelayList::iterator itr = m_RepeatersDelayList.begin(); itr != m_RepeatersDelayList.end(); itr++)
{
if (itr->a_BlockPos.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ)))
{
if (itr->a_DelayTicks <= itr->a_ElapsedTicks) // Shouldn't need <=; just in case something happens
{
m_RepeatersDelayList.erase(itr);
m_World.SetBlock(a_BlockX, a_BlockY, a_BlockZ, E_BLOCK_REDSTONE_REPEATER_OFF, a_Meta);
return;
}
else
{
itr->a_ElapsedTicks++; // Increment elapsed ticks and quit
return;
}
}
}
// Self not in list, add self to list
sRepeatersDelayList RC;
RC.a_BlockPos = Vector3i(a_BlockX, a_BlockY, a_BlockZ);
RC.a_DelayTicks = ((a_Meta & 0xC) >> 0x2) + 1;
RC.a_ElapsedTicks = 0;
m_RepeatersDelayList.push_back(RC);
return;
} }
} }
} }

View File

@ -57,13 +57,22 @@ private:
bool WasLastStatePowered; bool WasLastStatePowered;
}; };
struct sRepeatersDelayList
{
Vector3i a_BlockPos;
short a_DelayTicks;
short a_ElapsedTicks;
};
typedef std::vector <sPoweredBlocks> PoweredBlocksList; typedef std::vector <sPoweredBlocks> PoweredBlocksList;
typedef std::vector <sLinkedPoweredBlocks> LinkedBlocksList; typedef std::vector <sLinkedPoweredBlocks> LinkedBlocksList;
typedef std::vector <sSimulatedPlayerToggleableList> SimulatedPlayerToggleableList; typedef std::vector <sSimulatedPlayerToggleableList> SimulatedPlayerToggleableList;
typedef std::vector <sRepeatersDelayList> RepeatersDelayList;
PoweredBlocksList m_PoweredBlocks; PoweredBlocksList m_PoweredBlocks;
LinkedBlocksList m_LinkedPoweredBlocks; LinkedBlocksList m_LinkedPoweredBlocks;
SimulatedPlayerToggleableList m_SimulatedPlayerToggleableBlocks; SimulatedPlayerToggleableList m_SimulatedPlayerToggleableBlocks;
RepeatersDelayList m_RepeatersDelayList;
virtual void AddBlock(int a_BlockX, int a_BlockY, int a_BlockZ, cChunk * a_Chunk) override; virtual void AddBlock(int a_BlockX, int a_BlockY, int a_BlockZ, cChunk * a_Chunk) override;

View File

@ -1588,7 +1588,7 @@ bool cWorld::WriteBlockArea(cBlockArea & a_Area, int a_MinBlockX, int a_MinBlock
void cWorld::SpawnItemPickups(const cItems & a_Pickups, double a_BlockX, double a_BlockY, double a_BlockZ, double a_FlyAwaySpeed, bool IsPlayerCreated) void cWorld::SpawnItemPickups(const cItems & a_Pickups, double a_BlockX, double a_BlockY, double a_BlockZ, double a_FlyAwaySpeed, bool IsPlayerCreated)
{ {
MTRand r1; MTRand r1;
a_FlyAwaySpeed /= 1000; // Pre-divide, so that we don't have to divide each time inside the loop a_FlyAwaySpeed /= 100; // Pre-divide, so that we don't have to divide each time inside the loop
for (cItems::const_iterator itr = a_Pickups.begin(); itr != a_Pickups.end(); ++itr) for (cItems::const_iterator itr = a_Pickups.begin(); itr != a_Pickups.end(); ++itr)
{ {
if (!IsValidItem(itr->m_ItemType)) if (!IsValidItem(itr->m_ItemType))
@ -1597,9 +1597,9 @@ void cWorld::SpawnItemPickups(const cItems & a_Pickups, double a_BlockX, double
continue; continue;
} }
float SpeedX = (float)(a_FlyAwaySpeed * (r1.randInt(1000) - 500)); float SpeedX = (float)(a_FlyAwaySpeed * (r1.randInt(10) - 5));
float SpeedY = (float)(a_FlyAwaySpeed * (r1.randInt(1000) - 500)); float SpeedY = (float)(a_FlyAwaySpeed * r1.randInt(50));
float SpeedZ = (float)(a_FlyAwaySpeed * (r1.randInt(1000) - 500)); float SpeedZ = (float)(a_FlyAwaySpeed * (r1.randInt(10) - 5));
cPickup * Pickup = new cPickup( cPickup * Pickup = new cPickup(
a_BlockX, a_BlockY, a_BlockZ, a_BlockX, a_BlockY, a_BlockZ,