- Mesaj
- 158
- Beğeni
- 56
- Puan
- 446
- Ticaret Puanı
- 0
Dikkat fiyatlar yabancıalra 45 dolar türklere 21 dolar.
dikkat edin svside paneliniz yabancı olunca 45 dolardan hesaplıyor.
türkçe olunca 21 dolardan
benimserver almanyada barınınca böyle problem yaşamıştık sona düzelttiler
resimde gösterilen özelliklerde başarılı.
ActorInstanceMotion.cpp
önce
sonra
PythonNetworkStreamPhaseGame.cpp
önce
sonra
PythonPlayerEventHandler.cpp
m_dwNextMovingNotifyTime=dwCurTime+300;
m_dwNextMovingNotifyTime=dwCurTime+150;
dikkat edin svside paneliniz yabancı olunca 45 dolardan hesaplıyor.
türkçe olunca 21 dolardan
benimserver almanyada barınınca böyle problem yaşamıştık sona düzelttiler
resimde gösterilen özelliklerde başarılı.
ActorInstanceMotion.cpp
önce
Kod:
SSetMotionData kSetMotData;
kSetMotData.dwMotKey=dwMotionKey;
kSetMotData.fBlendTime=fBlendTime;
kSetMotData.iLoopCount=iLoopCount;
kSetMotData.fSpeedRatio=fSpeedRatio;
kSetMotData.uSkill=uSkill;
DWORD dwRealMotionKey = __SetMotion(kSetMotData);
sonra
Kod:
SSetMotionData kSetMotData;
kSetMotData.dwMotKey=dwMotionKey;
kSetMotData.fBlendTime=fBlendTime;
kSetMotData.iLoopCount=iLoopCount;
kSetMotData.fSpeedRatio=fSpeedRatio;
if (IsPoly()){fSpeedRatio = GetMotionDuration(dwMotionKey) / 1.1f * fSpeedRatio;kSetMotData.fSpeedRatio=fSpeedRatio;}kSetMotData.uSkill=uSkill;DWORD dwRealMotionKey = 0;{if (IsPoly()){dwRealMotionKey = __SetMotion(kSetMotData, kSetMotData.dwMotKey);}else{dwRealMotionKey = __SetMotion(kSetMotData);}}
PythonNetworkStreamPhaseGame.cpp
önce
Kod:
bool CPythonNetworkStream::SendCharacterStatePacket(const TPixelPosition& c_rkPPosDst, float fDstRot, UINT eFunc, UINT uArg)
{
if (!__CanActMainInstance())
return true;
if (fDstRot < 0.0f)
fDstRot = 360 + fDstRot;
else if (fDstRot > 360.0f)
fDstRot = fmodf(fDstRot, 360.0f);
TPacketCGMove kStatePacket;
kStatePacket.bHeader = HEADER_CG_CHARACTER_MOVE;
kStatePacket.bFunc = eFunc;
kStatePacket.bArg = uArg;
kStatePacket.bRot = fDstRot/5.0f;
kStatePacket.lX = long(c_rkPPosDst.x);
kStatePacket.lY = long(c_rkPPosDst.y);
kStatePacket.dwTime = ELTimer_GetServerMSec();
sonra
Kod:
bool CPythonNetworkStream::SendCharacterStatePacket(const TPixelPosition& c_rkPPosDst, float fDstRot, UINT eFunc, UINT uArg)
{
if (!__CanActMainInstance())
return true;
if (fDstRot < 0.0f)
fDstRot = 360 + fDstRot;
else if (fDstRot > 360.0f)
fDstRot = fmodf(fDstRot, 360.0f);
TPacketCGMove kStatePacket;
kStatePacket.bHeader = HEADER_CG_CHARACTER_MOVE;
kStatePacket.bFunc = eFunc;
kStatePacket.bArg = uArg;
kStatePacket.bRot = fDstRot/5.0f;
kStatePacket.lX = long(c_rkPPosDst.x);
kStatePacket.lY = long(c_rkPPosDst.y);
{
CInstanceBase * pkInst = CPythonCharacterManager::Instance().GetMainInstancePtr();
if (eFunc == 3 && uArg > 21){ return true; }
static UINT c_packet = 0;
static DWORD t_packet = 0;
DWORD t = timeGetTime();
if (t_packet + 500 < t) {
c_packet = 0;
t_packet = t;
}
c_packet++;
if (c_packet > 8){ return true; }
static UINT l_func = 0;
static DWORD t_f = 0;
static float f_x = 0.0f;
static float f_y = 0.0f;
const D3DXVECTOR3 & cpos = pkInst->GetGraphicThingInstancePtr()->GetPosition();
if (f_x == cpos.x && f_y == cpos.y && t - t_f < 1000 && l_func == eFunc && (eFunc < 3)) {
return true;
}
f_x = cpos.x;
f_y = cpos.y;
if (l_func == 0 && eFunc == 0 && t_f + 10 > t){ return true; }
l_func = eFunc;
t_f = t;
if (cpos.x == 0.0f && cpos.y == -0.0f) {
kStatePacket.lX = long(c_rkPPosDst.x);
kStatePacket.lY = long(c_rkPPosDst.y);
}else{
kStatePacket.lX = long(cpos.x);
kStatePacket.lY = long(cpos.y < 0.0f ? cpos.y * -1.0f : cpos.y);
}
}
kStatePacket.dwTime = ELTimer_GetServerMSec();
assert(kStatePacket.lX >= 0 && kStatePacket.lX < 204800);
__LocalPositionToGlobalPosition(kStatePacket.lX, kStatePacket.lY);
if (!Send(sizeof(kStatePacket), &kStatePacket))
{
Tracenf("CPythonNetworkStream::SendCharacterStatePacket(dwCmdTime=%u, fDstPos=(%f, %f), fDstRot=%f, eFunc=%d uArg=%d) - PACKET SEND ERROR",
kStatePacket.dwTime,
float(kStatePacket.lX),
float(kStatePacket.lY),
fDstRot,
kStatePacket.bFunc,
kStatePacket.bArg);
return false;
}
return SendSequence();
}
PythonPlayerEventHandler.cpp
m_dwNextMovingNotifyTime=dwCurTime+300;
m_dwNextMovingNotifyTime=dwCurTime+150;
Son düzenleme: