mirror of
https://gitea.sffempire.ru/Kolyah35/minecraft-pe-0.6.1.git
synced 2026-03-30 20:13:31 +00:00
Compare commits
3 Commits
370363f792
...
f5fecbc928
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f5fecbc928 | ||
|
|
77d02fcca2 | ||
|
|
6d696af235 |
@@ -467,7 +467,7 @@ void PaneCraftingScreen::craftSelectedItem()
|
|||||||
if (minecraft->isOnline()) {
|
if (minecraft->isOnline()) {
|
||||||
WantCreatePacket packet(minecraft->player->entityId, resultItem.count, resultItem.getAuxValue(), resultItem.id);
|
WantCreatePacket packet(minecraft->player->entityId, resultItem.count, resultItem.getAuxValue(), resultItem.id);
|
||||||
minecraft->raknetInstance->send(packet);
|
minecraft->raknetInstance->send(packet);
|
||||||
} else {
|
}
|
||||||
// Remove all items required for the recipe and ...
|
// Remove all items required for the recipe and ...
|
||||||
for (unsigned int i = 0; i < currentItem->neededItems.size(); ++i) {
|
for (unsigned int i = 0; i < currentItem->neededItems.size(); ++i) {
|
||||||
CItem::ReqItem& req = currentItem->neededItems[i];
|
CItem::ReqItem& req = currentItem->neededItems[i];
|
||||||
@@ -497,7 +497,6 @@ void PaneCraftingScreen::craftSelectedItem()
|
|||||||
recheckRecipes();
|
recheckRecipes();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
bool PaneCraftingScreen::renderGameBehind()
|
bool PaneCraftingScreen::renderGameBehind()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
|
||||||
#include "ClientSideNetworkHandler.h"
|
#include "ClientSideNetworkHandler.h"
|
||||||
#include "client/Options.h"
|
#include "client/Options.h"
|
||||||
|
#include "network/packet/LoginStatusPacket.h"
|
||||||
#include "packet/PacketInclude.h"
|
#include "packet/PacketInclude.h"
|
||||||
#include "RakNetInstance.h"
|
#include "RakNetInstance.h"
|
||||||
#include "../world/level/chunk/ChunkSource.h"
|
#include "../world/level/chunk/ChunkSource.h"
|
||||||
@@ -131,6 +132,12 @@ void ClientSideNetworkHandler::handle(const RakNet::RakNetGUID& source, LoginSta
|
|||||||
LOGI("Disconnect! Server is outdated!\n");
|
LOGI("Disconnect! Server is outdated!\n");
|
||||||
#ifndef STANDALONE_SERVER
|
#ifndef STANDALONE_SERVER
|
||||||
minecraft->setScreen(new DisconnectionScreen("Could not connect: Outdated server!"));
|
minecraft->setScreen(new DisconnectionScreen("Could not connect: Outdated server!"));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
if (packet->status == LoginStatus::Failed_TakenNickname) {
|
||||||
|
LOGI("Disconnect! Nickname is taken!\n");
|
||||||
|
#ifndef STANDALONE_SERVER
|
||||||
|
minecraft->setScreen(new DisconnectionScreen("Could not connect: Nickname is taken!"));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
#include "../world/Container.h"
|
#include "../world/Container.h"
|
||||||
#include "../world/inventory/BaseContainerMenu.h"
|
#include "../world/inventory/BaseContainerMenu.h"
|
||||||
#include "network/packet/ContainerSetSlotPacket.h"
|
#include "network/packet/ContainerSetSlotPacket.h"
|
||||||
|
#include "network/packet/LoginStatusPacket.h"
|
||||||
#include "network/packet/RemoveBlockPacket.h"
|
#include "network/packet/RemoveBlockPacket.h"
|
||||||
#include "network/packet/SendInventoryPacket.h"
|
#include "network/packet/SendInventoryPacket.h"
|
||||||
#include "network/packet/UpdateBlockPacket.h"
|
#include "network/packet/UpdateBlockPacket.h"
|
||||||
@@ -206,6 +207,14 @@ void ServerSideNetworkHandler::handle(const RakNet::RakNetGUID& source, LoginPac
|
|||||||
if (oldClient || oldServer)
|
if (oldClient || oldServer)
|
||||||
loginStatus = oldClient? LoginStatus::Failed_ClientOld : LoginStatus::Failed_ServerOld;
|
loginStatus = oldClient? LoginStatus::Failed_ClientOld : LoginStatus::Failed_ServerOld;
|
||||||
|
|
||||||
|
for (int i = 0; i < level->players.size(); i++) {
|
||||||
|
ServerPlayer* player = (ServerPlayer*) level->players.at(i);
|
||||||
|
|
||||||
|
if (player->name == packet->clientName.C_String()) {
|
||||||
|
loginStatus = packet->newProto ? LoginStatus::Failed_TakenNickname : LoginStatus::Failed_ClientOld;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
RakNet::BitStream bitStream;
|
RakNet::BitStream bitStream;
|
||||||
LoginStatusPacket(loginStatus).write(&bitStream);
|
LoginStatusPacket(loginStatus).write(&bitStream);
|
||||||
rakPeer->Send(&bitStream, HIGH_PRIORITY, RELIABLE_ORDERED, 0, source, false);
|
rakPeer->Send(&bitStream, HIGH_PRIORITY, RELIABLE_ORDERED, 0, source, false);
|
||||||
@@ -654,14 +663,14 @@ void ServerSideNetworkHandler::handle(const RakNet::RakNetGUID& source, WantCrea
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < items.size(); i++) {
|
// for (int i = 0; i < items.size(); i++) {
|
||||||
RemoveItemPacket removePacket(packet->playerId, items.at(i).count, items.at(i).getAuxValue(), items.at(i).id);
|
// RemoveItemPacket removePacket(packet->playerId, items.at(i).count, items.at(i).getAuxValue(), items.at(i).id);
|
||||||
raknetInstance->send(source, removePacket);
|
// raknetInstance->send(source, removePacket);
|
||||||
|
|
||||||
p->inventory->removeResource(ItemInstance(items.at(i).id, items.at(i).count, items.at(i).getAuxValue()));
|
// p->inventory->removeResource(ItemInstance(items.at(i).id, items.at(i).count, items.at(i).getAuxValue()));
|
||||||
}
|
// }
|
||||||
TakeItemPacket itemAdd(p->entityId, wantCreate.count, wantCreate.getAuxValue(), wantCreate.id);
|
// TakeItemPacket itemAdd(p->entityId, wantCreate.count, wantCreate.getAuxValue(), wantCreate.id);
|
||||||
raknetInstance->send(source, itemAdd);
|
// raknetInstance->send(source, itemAdd);
|
||||||
|
|
||||||
p->inventory->add(new ItemInstance(wantCreate.id, wantCreate.count, wantCreate.getAuxValue()));
|
p->inventory->add(new ItemInstance(wantCreate.id, wantCreate.count, wantCreate.getAuxValue()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,10 +3,12 @@
|
|||||||
|
|
||||||
#include "../Packet.h"
|
#include "../Packet.h"
|
||||||
|
|
||||||
|
// wtf why not enum
|
||||||
namespace LoginStatus {
|
namespace LoginStatus {
|
||||||
const int Success = 0;
|
const int Success = 0;
|
||||||
const int Failed_ClientOld = 1;
|
const int Failed_ClientOld = 1;
|
||||||
const int Failed_ServerOld = 2;
|
const int Failed_ServerOld = 2;
|
||||||
|
const int Failed_TakenNickname = 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
class LoginStatusPacket : public Packet {
|
class LoginStatusPacket : public Packet {
|
||||||
|
|||||||
Reference in New Issue
Block a user