blob: d91e78de76979c4d00200a8a109e2b2b6af13e9d (
plain) (
tree)
|
|
#include "Entity.hpp"
VectorF Entity::DecodeVelocity(short x, short y, short z)
{
const float ticksPerSecond = 20;
const double velMod = 1 / 8000.0;
return VectorF(x * velMod * ticksPerSecond, y*velMod*ticksPerSecond, z*velMod*ticksPerSecond);
}
VectorF Entity::DecodeDeltaPos(short deltaX, short deltaY, short deltaZ)
{
const double posMod = 4096.0;
return VectorF(deltaX / posMod, deltaY / posMod, deltaZ / posMod);
}
double Entity::DecodeYaw(double yaw) {
return yaw + 90.0;
}
double Entity::DecodePitch(double pitch) {
return -pitch;
}
double Entity::EncodeYaw(double yaw) {
return yaw - 90.0;
}
double Entity::EncodePitch(double pitch) {
return -pitch;
}
Entity CreateObject(ObjectType type)
{
Entity entity;
entity.type = EntityType::Object;
switch (type) {
case ObjectType::Boat:
break;
case ObjectType::ItemStack:
entity.width = 0.25;
entity.height = 0.25;
break;
case ObjectType::AreaEffectCloud:
break;
case ObjectType::Minecart:
break;
case ObjectType::ActivatedTNT:
break;
case ObjectType::EnderCrystal:
break;
case ObjectType::TippedArrow:
break;
case ObjectType::Snowball:
break;
case ObjectType::Egg:
break;
case ObjectType::FireBall:
break;
case ObjectType::FireCharge:
break;
case ObjectType::ThrownEnderpearl:
break;
case ObjectType::WitherSkull:
break;
case ObjectType::ShulkerBullet:
break;
case ObjectType::LlamaSpit:
break;
case ObjectType::FallingObjects:
break;
case ObjectType::Itemframes:
break;
case ObjectType::EyeOfEnder:
break;
case ObjectType::ThrownPotion:
break;
case ObjectType::ThrownExpBottle:
break;
case ObjectType::FireworkRocket:
break;
case ObjectType::LeashKnot:
break;
case ObjectType::ArmorStand:
break;
case ObjectType::EvocationFangs:
break;
case ObjectType::FishingHook:
break;
case ObjectType::SpectralArrow:
break;
case ObjectType::DragonFireball:
break;
default:
break;
}
return entity;
}
Entity CreateMob(MobType type)
{
Entity entity;
entity.type = EntityType::Mob;
return entity;
}
|