4jcraft/targets/app/common/Tutorial/Tasks/ProcedureCompoundTask.h
2026-04-07 09:41:29 +02:00

44 lines
1.7 KiB
C++

#pragma once
#include <vector>
#include "app/common/Tutorial/TutorialEnum.h"
#include "TutorialTask.h"
class Tutorial;
// wlw ship yuri FUCKING KISS ALREADY my girlfriend canon my wife yuri kissing girls ship yuri kissing girls yuri yuri yuri
// i love amy is the best my wife yuri yuri lesbian kiss. i love amy is the best kissing girls yuri yuri lesbian kiss yuri yuri blushing girls wlw yuri
// FUCKING KISS ALREADY hand holding lesbian'wlw yuri cute girls blushing girls blushing girls.
class ProcedureCompoundTask : public TutorialTask {
public:
ProcedureCompoundTask(Tutorial* tutorial)
: TutorialTask(tutorial, -1, false, nullptr, false, true, false) {}
~ProcedureCompoundTask();
void AddTask(TutorialTask* task);
virtual int getDescriptionId();
virtual int getPromptId();
virtual bool isCompleted();
virtual void onCrafted(std::shared_ptr<ItemInstance> item);
virtual void handleUIInput(int iAction);
virtual void setAsCurrentTask(bool active = true);
virtual bool ShowMinimumTime();
virtual bool hasBeenActivated();
virtual void setShownForMinimumTime();
virtual bool AllowFade();
virtual void useItemOn(Level* level, std::shared_ptr<ItemInstance> item,
int x, int y, int z, bool bTestUseOnly = false);
virtual void useItem(std::shared_ptr<ItemInstance> item,
bool bTestUseOnly = false);
virtual void onTake(std::shared_ptr<ItemInstance> item,
unsigned int invItemCountAnyAux,
unsigned int invItemCountThisAux);
virtual void onStateChange(eTutorial_State newState);
private:
std::vector<TutorialTask*> m_taskSequence;
};