1
0

Fixed some redstone items and a bug that prevented floats from client to server packets reading correctly on 64 bit linux.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@50 0a769ca7-a7f5-676a-18bf-c427514a06d6
This commit is contained in:
admin@omencraft.com 2011-11-03 17:42:24 +00:00
parent 301569a6c9
commit ef99915447
5 changed files with 15 additions and 14 deletions

View File

@ -45,7 +45,10 @@ inline long long NetworkToHostLong8( void* a_Value )
inline float NetworkToHostFloat4( void* a_Value )
{
u_long buf = *(u_long*)a_Value;
buf = ntohl( buf );
//u_long buf = *(u_long*)a_Value;
unsigned long buf = *(unsigned long*)a_Value;
buf = ntohl( (unsigned long)buf );
(void)printf("",(unsigned long)buf);
//(unsigned long)buf;
return *(float*)reinterpret_cast<float *>(&buf);
}

View File

@ -1,4 +1,3 @@
#include "cClientHandle.h"
#include "cServer.h"
#include "cWorld.h"
@ -764,7 +763,6 @@ void cClientHandle::HandlePacket( cPacket* a_Packet )
PacketData->m_ItemType = E_BLOCK_REDSTONE_WIRE;
break;
case E_ITEM_REDSTONE_REPEATER:
LOG(" m_Player->GetRotation(): %f", m_Player->GetRotation());
MetaData = cRedstoneRepeater::RotationToMetaData( m_Player->GetRotation() );
PacketData->m_ItemType = E_BLOCK_REDSTONE_REPEATER_OFF;
break;

View File

@ -8,13 +8,13 @@ public:
printf("a_Rotation: %f\n",a_Rotation);
a_Rotation += 90 + 45; // So its not aligned with axis
if( a_Rotation > 360.f ) a_Rotation -= 360.f;
if( a_Rotation >= 0.f && a_Rotation < 90.f )
return 0x2;
else if( a_Rotation >= 180 && a_Rotation < 270 )
return 0x3;
else if( a_Rotation >= 90 && a_Rotation < 180 )
return 0x0;
if( a_Rotation >= 0.f && a_Rotation < 90.f ){
return 0x1;}
else if( a_Rotation >= 180 && a_Rotation < 270 ){
return 0x3;}
else if( a_Rotation >= 90 && a_Rotation < 180 ){
return 0x2;}
else
return 0x1;
return 0x0;
} //tolua_export
}; //tolua_export