Files
daoge b3feddfef3 feat: TU19 (Dec 2014) Features & Content (#155)
* 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>
2026-03-03 03:04:10 +08:00

77 lines
1.5 KiB
C++

#include "stdafx.h"
#include "com.mojang.nbt.h"
#include "Abilities.h"
Abilities::Abilities()
{
invulnerable = false;
flying = false;
mayfly = false;
instabuild = false;
mayBuild = true;
flyingSpeed = 0.05f;
walkingSpeed = 0.1f;
#ifdef _DEBUG_MENUS_ENABLED
debugflying = false;
#endif
}
void Abilities::addSaveData(CompoundTag *parentTag)
{
CompoundTag *tag = new CompoundTag();
tag->putBoolean(L"invulnerable", invulnerable);
tag->putBoolean(L"flying", flying);
tag->putBoolean(L"mayfly", mayfly);
tag->putBoolean(L"instabuild", instabuild);
tag->putBoolean(L"mayBuild", mayBuild);
tag->putFloat(L"flySpeed", flyingSpeed);
tag->putFloat(L"walkSpeed", walkingSpeed);
parentTag->put(L"abilities", tag);
}
void Abilities::loadSaveData(CompoundTag *parentTag)
{
if (parentTag->contains(L"abilities"))
{
CompoundTag *tag = parentTag->getCompound(L"abilities");
invulnerable = tag->getBoolean(L"invulnerable");
flying = tag->getBoolean(L"flying");
mayfly = tag->getBoolean(L"mayfly");
instabuild = tag->getBoolean(L"instabuild");
if (tag->contains(L"flySpeed"))
{
flyingSpeed = tag->getFloat(L"flySpeed");
walkingSpeed = tag->getFloat(L"walkSpeed");
}
if (tag->contains(L"mayBuild"))
{
mayBuild = tag->getBoolean(L"mayBuild");
}
}
}
float Abilities::getFlyingSpeed()
{
return flyingSpeed;
}
void Abilities::setFlyingSpeed(float value)
{
flyingSpeed = value;
}
float Abilities::getWalkingSpeed()
{
return walkingSpeed;
}
void Abilities::setWalkingSpeed(float value)
{
walkingSpeed = value;
}