Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!
örneğin
x oyuncu 1 adım atar sunucuya kordinat gönderir.
sunucu diğer oyunculara derki x oyuncu şu kordinatta
diğer oyuncular x oyuncunun nerede olduğunu client taraflı görür.
sunucuyu çok yormaması açısından bu kordinat gönderme süresini, 0.30 saniyede bir kordinat gönderme, olarak ayarlı.
buna benzer kod blokları için
client srcden "dwCurTime + 300" bunu aratın kod bloklarını google transleden çevirin süreyi ne için koymuş yazıyor.
örnek vereyim bakarak yapabilirsiniz.
userinterface/PythonPlayerEventHandler.cpp
[CODE lang="cpp" title="asd" highlight="asd"]void CPythonPlayerEventHandler::OnMoving(const SState& c_rkState)
{
DWORD dwCurTime = ELTimer_GetMSec();
if (m_dwNextMovingNotifyTime > dwCurTime)
return;
m_dwNextMovingNotifyTime = dwCurTime + 300; //300 yazan 300 ms yani 0.30 saniye
CPythonNetworkStream& rkNetStream = CPythonNetworkStream::Instance();
rkNetStream.SendCharacterStatePacket(c_rkState.kPPosSelf, c_rkState.fAdvRotSelf, CInstanceBase::FUNC_MOVE, 0);
// Trace("moving\n"); //burdada belirtmiş translateden çevirin
}
[/CODE]
not : test etmedim fakat süreleri 0'larsak belki karakter kaymaları düzelebilir
konu hakkında bilgi verdiği için lalakere teşekkür ederim
x oyuncu 1 adım atar sunucuya kordinat gönderir.
sunucu diğer oyunculara derki x oyuncu şu kordinatta
diğer oyuncular x oyuncunun nerede olduğunu client taraflı görür.
sunucuyu çok yormaması açısından bu kordinat gönderme süresini, 0.30 saniyede bir kordinat gönderme, olarak ayarlı.
buna benzer kod blokları için
client srcden "dwCurTime + 300" bunu aratın kod bloklarını google transleden çevirin süreyi ne için koymuş yazıyor.
örnek vereyim bakarak yapabilirsiniz.
userinterface/PythonPlayerEventHandler.cpp
[CODE lang="cpp" title="asd" highlight="asd"]void CPythonPlayerEventHandler::OnMoving(const SState& c_rkState)
{
DWORD dwCurTime = ELTimer_GetMSec();
if (m_dwNextMovingNotifyTime > dwCurTime)
return;
m_dwNextMovingNotifyTime = dwCurTime + 300; //300 yazan 300 ms yani 0.30 saniye
CPythonNetworkStream& rkNetStream = CPythonNetworkStream::Instance();
rkNetStream.SendCharacterStatePacket(c_rkState.kPPosSelf, c_rkState.fAdvRotSelf, CInstanceBase::FUNC_MOVE, 0);
// Trace("moving\n"); //burdada belirtmiş translateden çevirin

}
[/CODE]
not : test etmedim fakat süreleri 0'larsak belki karakter kaymaları düzelebilir
konu hakkında bilgi verdiği için lalakere teşekkür ederim
Son düzenleme:
bunu bi forumda daha görmüş idim fakat arşivimde bulamıyorum yabancı idi orada ayrıntılı anlatıp yöntemlerini yazıyordu gyazo ile de farkını göstermişti ama bulamıyorum hatırlattığın için saolasınörneğin
x oyuncu 1 adım atar sunucuya kordinat gönderir.
sunucu diğer oyunculara derki x oyuncu şu kordinatta
diğer oyuncular x oyuncunun nerede olduğunu client taraflı görür.
sunucuyu çok yormaması açısından bu kordinat gönderme süresini, 0.30 saniyede bir kordinat gönderme, olarak ayarlı.
buna benzer kod blokları için
client srcden "dwCurTime + 300" bunu aratın kod bloklarını google transleden çevirin süreyi ne için koymuş yazıyor.
örnek vereyim bakarak yapabilirsiniz.
userinterface/PythonPlayerEventHandler.cpp
[CODE lang="cpp" title="asd" highlight="asd"]void CPythonPlayerEventHandler::OnMoving(const SState& c_rkState)
{
DWORD dwCurTime = ELTimer_GetMSec();
if (m_dwNextMovingNotifyTime > dwCurTime)
return;
m_dwNextMovingNotifyTime = dwCurTime + 300; //300 yazan 300 ms yani 0.30 saniye
CPythonNetworkStream& rkNetStream = CPythonNetworkStream::Instance();
rkNetStream.SendCharacterStatePacket(c_rkState.kPPosSelf, c_rkState.fAdvRotSelf, CInstanceBase::FUNC_MOVE, 0);
// Trace("moving\n"); //burdada belirtmiş translateden çevirin
}
[/CODE]
not : test etmedim fakat süreleri 0'larsak belki karakter kaymaları düzelebilir
konu hakkında bilgi verdiği için lalakere teşekkür ederim