mirror of
https://github.com/celisej567/mcpe.git
synced 2026-09-04 19:36:43 +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
1.5 KiB
C++
63 lines
1.5 KiB
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 "ITurnInput.hpp"
|
|
#include "IBuildInput.hpp"
|
|
#include "IInputHolder.hpp"
|
|
#include "common/SmoothFloat.hpp"
|
|
#include "RectangleArea.hpp"
|
|
#include "IncludeExcludeArea.hpp"
|
|
#include "TouchAreaModel.hpp"
|
|
|
|
class Entity;
|
|
|
|
class UnifiedTurnBuild : public ITurnInput, public IBuildInput
|
|
{
|
|
public:
|
|
UnifiedTurnBuild(int, int width, int height, float, float, IInputHolder*);
|
|
|
|
// ITurnInput
|
|
void setScreenSize(int width, int height) override; // actually IBuildInput also has it
|
|
TurnDelta getTurnDelta() override;
|
|
bool smoothTurning() override;
|
|
|
|
// IBuildInput
|
|
bool tickBuild(Player*, BuildActionIntention*) override;
|
|
|
|
bool isInsideArea(float x, float y);
|
|
|
|
static float getSpeedSquared(Entity* pEnt);
|
|
|
|
public:
|
|
int field_C;
|
|
int field_10;
|
|
SmoothFloat m_smoothFloat;
|
|
int field_24;
|
|
RectangleArea m_screenArea;
|
|
RectangleArea field_40;
|
|
RectangleArea field_58;
|
|
IInputHolder* m_pInputHolder;
|
|
float field_78;
|
|
float field_7C;
|
|
bool m_bWasTouched;
|
|
TouchAreaModel m_touchAreaModel;
|
|
IncludeExcludeArea m_includeExcludeArea;
|
|
float field_B8;
|
|
float field_BC;
|
|
float field_C0;
|
|
float field_C4;
|
|
Entity* m_pPlayer;
|
|
float field_CC;
|
|
int field_D0;
|
|
bool field_D4;
|
|
int field_D8;
|
|
};
|
|
|