mirror of
https://github.com/celisej567/mcpe.git
synced 2025-12-31 17:49:17 +03:00
* * Add BuildActionIntention crap * * Set Client and World projects to use MP compilation * asd * * Use the new BuildActionIntention to break and place blocks. * * Reverse engineer the IArea system. * * Copy break logic from survival into creative conditionally * * Reverse IBuildInput and MouseHandler * Replace the new relative paths in the client project with $(MC_ROOT) again * * Reverse Multitouch, MouseDevice * * Reverse a bunch of auxiliary classes for input. * * Use CustomInputHolder instead of holding inputs manually. * * Reverse a whole BUNCH of things! * * Add feedback textures to the gitignore. * * D-pad now renders! Also loads of other work. * * More Stuff * * Finish touch control bug fixing. * * Finalize work. * * One last thing.. * * Add a "cramped" mode to the options screen and start menu. * * Oh, forgot to do something
63 lines
1020 B
C++
63 lines
1020 B
C++
/********************************************************************
|
|
Minecraft: Pocket Edition - Decompilation Project
|
|
Copyright (C) 2023 iProgramInCpp
|
|
|
|
The following code is licensed under the BSD 1 clause license.
|
|
SPDX-License-Identifier: BSD-1-Clause
|
|
********************************************************************/
|
|
|
|
#pragma once
|
|
|
|
#include "Vec3.hpp"
|
|
|
|
class Entity;
|
|
|
|
class HitResult
|
|
{
|
|
public:
|
|
// looks ass backwards, but what can you do about it
|
|
enum eHitResultType
|
|
{
|
|
AABB,
|
|
ENTITY,
|
|
NONE,
|
|
};
|
|
|
|
enum eHitSide
|
|
{
|
|
NOHIT = -1,
|
|
MINY = 0,
|
|
MAXY, // 1
|
|
MINZ, // 2
|
|
MAXZ, // 3
|
|
MINX, // 4
|
|
MAXX, // 5
|
|
};
|
|
|
|
private:
|
|
void _init();
|
|
public:
|
|
HitResult() { _init(); }
|
|
HitResult(Entity*);
|
|
HitResult(int x, int y, int z, eHitSide hitSide, const Vec3&);
|
|
bool isHit() const {
|
|
return m_hitType != NONE;
|
|
}
|
|
|
|
public:
|
|
eHitResultType m_hitType;
|
|
// block coords?
|
|
int m_tileX;
|
|
int m_tileY;
|
|
int m_tileZ;
|
|
|
|
eHitSide m_hitSide;
|
|
|
|
// hit position
|
|
Vec3 m_hitPos;
|
|
|
|
Entity* m_pEnt;
|
|
bool m_bUnk24;
|
|
};
|
|
|