aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/LookControl.h
blob: add64e4a3522acfbc5030773a8d7b071ad5cf9ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#pragma once

#include "Control.h"

class Mob;

class LookControl : public Control
{
private:
	Mob *mob;
	float yMax, xMax;
	bool hasWanted;

	double wantedX, wantedY, wantedZ;

public:
	LookControl(Mob *mob);

	void setLookAt(shared_ptr<Entity> target, float yMax, float xMax);
	void setLookAt(double x, double y, double z, float yMax, float xMax);
	virtual void tick();

private:
	float rotlerp(float a, float b, float max);

public:
	bool isHasWanted();
	float getYMax();
	float getXMax();
	double getWantedX();
	double getWantedY();
	double getWantedZ();
};