* try to resolve merge conflict
* feat: TU19 (Dec 2014) Features & Content (#32)
* December 2014 files
* Working release build
* Fix compilation issues
* Add sound to Windows64Media
* Add DLC content and force Tutorial DLC
* Revert "Add DLC content and force Tutorial DLC"
This reverts commit 97a4399472.
* Disable broken light packing
* Disable breakpoint during DLC texture map load
Allows DLC loading but the DLC textures are still broken
* Fix post build not working
* ...
* fix vs2022 build
* fix cmake build
---------
Co-authored-by: Loki <lokirautio@gmail.com>
79 lines
1.7 KiB
C++
79 lines
1.7 KiB
C++
#include "stdafx.h"
|
|
#include <iostream>
|
|
#include "InputOutputStream.h"
|
|
#include "PacketListener.h"
|
|
#include "ContainerOpenPacket.h"
|
|
|
|
void ContainerOpenPacket::_init(int containerId, int type, const wstring &title, int size, bool customName, int entityId)
|
|
{
|
|
this->containerId = containerId;
|
|
this->type = type;
|
|
this->title = title;
|
|
this->size = size;
|
|
this->customName = customName;
|
|
this->entityId = entityId;
|
|
}
|
|
|
|
ContainerOpenPacket::ContainerOpenPacket()
|
|
{
|
|
_init(0, 0, L"", 0, false, 0);
|
|
|
|
}
|
|
|
|
ContainerOpenPacket::ContainerOpenPacket(int containerId, int type, const wstring &title, int size, bool customName)
|
|
{
|
|
_init(containerId, type, title, size, customName, 0);
|
|
}
|
|
|
|
ContainerOpenPacket::ContainerOpenPacket(int containerId, int type, const wstring &title, int size, bool customName, int entityId)
|
|
{
|
|
_init(containerId, type, title, size, customName, entityId);
|
|
}
|
|
|
|
void ContainerOpenPacket::handle(PacketListener *listener)
|
|
{
|
|
listener->handleContainerOpen(shared_from_this());
|
|
}
|
|
|
|
|
|
void ContainerOpenPacket::read(DataInputStream *dis) //throws IOException
|
|
{
|
|
containerId = dis->readByte() & 0xff;
|
|
type = dis->readByte() & 0xff;
|
|
size = dis->readByte() & 0xff;
|
|
customName = dis->readBoolean();
|
|
if (type == HORSE)
|
|
{
|
|
entityId = dis->readInt();
|
|
}
|
|
if(customName)
|
|
{
|
|
title = readUtf(dis,64);
|
|
}
|
|
}
|
|
|
|
void ContainerOpenPacket::write(DataOutputStream *dos) //throws IOException
|
|
{
|
|
dos->writeByte(containerId & 0xff);
|
|
dos->writeByte(type & 0xff);
|
|
dos->writeByte(size & 0xff);
|
|
dos->writeBoolean(customName);
|
|
if (type == HORSE)
|
|
{
|
|
dos->writeInt(entityId);
|
|
}
|
|
if(customName)
|
|
{
|
|
writeUtf(title, dos);
|
|
}
|
|
}
|
|
|
|
int ContainerOpenPacket::getEstimatedSize()
|
|
{
|
|
if (type == HORSE)
|
|
{
|
|
return 10;
|
|
}
|
|
return 6;
|
|
}
|