first commit
This commit is contained in:
49
Minecraft.Client/Common/Tutorial/AreaHint.cpp
Normal file
49
Minecraft.Client/Common/Tutorial/AreaHint.cpp
Normal file
@@ -0,0 +1,49 @@
|
||||
#include "stdafx.h"
|
||||
|
||||
#include "..\..\Minecraft.h"
|
||||
#include "..\..\MultiplayerLocalPlayer.h"
|
||||
#include "AreaHint.h"
|
||||
#include "..\..\..\Minecraft.World\AABB.h"
|
||||
#include "Tutorial.h"
|
||||
|
||||
AreaHint::AreaHint(eTutorial_Hint id, Tutorial *tutorial, eTutorial_State displayState, eTutorial_State completeState,
|
||||
int descriptionId, double x0, double y0, double z0, double x1, double y1, double z1, bool allowFade /*= false*/, bool contains /*= true*/ )
|
||||
: TutorialHint( id, tutorial, descriptionId, e_Hint_Area, allowFade )
|
||||
{
|
||||
area = AABB::newPermanent(x0, y0, z0, x1, y1, z1);
|
||||
|
||||
this->contains = contains;
|
||||
|
||||
m_displayState = displayState;
|
||||
m_completeState = completeState;
|
||||
}
|
||||
|
||||
AreaHint::~AreaHint()
|
||||
{
|
||||
delete area;
|
||||
}
|
||||
|
||||
int AreaHint::tick()
|
||||
{
|
||||
Minecraft *minecraft = Minecraft::GetInstance();
|
||||
if( (m_displayState == e_Tutorial_State_Any || m_tutorial->getCurrentState() == m_displayState) &&
|
||||
m_hintNeeded &&
|
||||
area->contains( minecraft->player->getPos(1) ) == contains )
|
||||
{
|
||||
if( m_completeState == e_Tutorial_State_None )
|
||||
{
|
||||
m_hintNeeded = false;
|
||||
}
|
||||
else if ( m_tutorial->isStateCompleted( m_completeState ) )
|
||||
{
|
||||
m_hintNeeded = false;
|
||||
return -1;
|
||||
}
|
||||
|
||||
return m_descriptionId;
|
||||
}
|
||||
else
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user