132 lines
3.1 KiB
C++
132 lines
3.1 KiB
C++
|
|
#ifndef LL_LLFLOATERAO_H
|
|
#define LL_LLFLOATERAO_H
|
|
|
|
#include "llfloater.h"
|
|
#include "llviewercontrol.h"
|
|
#include "llagent.h"
|
|
|
|
|
|
class AONoteCardDropTarget;
|
|
|
|
const int STATE_AGENT_IDLE = 0;
|
|
const int STATE_AGENT_WALK = 1;
|
|
const int STATE_AGENT_RUN = 2;
|
|
const int STATE_AGENT_STAND = 3;
|
|
|
|
const int STATE_AGENT_PRE_JUMP = 4;
|
|
const int STATE_AGENT_JUMP = 5;
|
|
const int STATE_AGENT_TURNLEFT = 6;
|
|
const int STATE_AGENT_TURNRIGHT = 7;
|
|
|
|
const int STATE_AGENT_SIT = 8;
|
|
const int STATE_AGENT_GROUNDSIT = 9;
|
|
|
|
const int STATE_AGENT_HOVER = 10;
|
|
const int STATE_AGENT_HOVER_DOWN = 11;
|
|
const int STATE_AGENT_HOVER_UP = 12;
|
|
|
|
const int STATE_AGENT_CROUCH = 13;
|
|
const int STATE_AGENT_CROUCHWALK = 14;
|
|
const int STATE_AGENT_FALLDOWN = 15;
|
|
const int STATE_AGENT_STANDUP = 16;
|
|
const int STATE_AGENT_LAND = 17;
|
|
|
|
const int STATE_AGENT_FLY = 18;
|
|
const int STATE_AGENT_FLYSLOW = 19;
|
|
|
|
|
|
|
|
|
|
|
|
class AOStandTimer : public LLEventTimer
|
|
{
|
|
public:
|
|
AOStandTimer();
|
|
~AOStandTimer();
|
|
virtual BOOL tick();
|
|
virtual void reset();
|
|
};
|
|
|
|
class AOInvTimer : public LLEventTimer
|
|
{
|
|
public:
|
|
AOInvTimer();
|
|
~AOInvTimer();
|
|
BOOL tick();
|
|
};
|
|
|
|
class LLFloaterAO : public LLFloater
|
|
{
|
|
public:
|
|
|
|
LLFloaterAO();
|
|
virtual BOOL postBuild();
|
|
virtual ~LLFloaterAO();
|
|
|
|
static void show(void*);
|
|
static void init();
|
|
|
|
static void onClickToggleAO(LLUICtrl *, void*);
|
|
static void onClickToggleSits(LLUICtrl *, void*);
|
|
static void run();
|
|
static void updateLayout(LLFloaterAO* floater);
|
|
|
|
static BOOL loadAnims();
|
|
|
|
static int getAnimationState();
|
|
static void setAnimationState(int state);
|
|
static void setStates(const LLUUID& id, BOOL start);
|
|
|
|
static LLUUID getCurrentStandId();
|
|
static void setCurrentStandId(const LLUUID& id);
|
|
static int stand_iterator;
|
|
static BOOL ChangeStand();
|
|
|
|
static BOOL startMotion(const LLUUID& id, F32 time_offset = 0.f, BOOL stand = FALSE);
|
|
static BOOL stopMotion(const LLUUID& id, BOOL stop_immediate, BOOL stand = FALSE);
|
|
|
|
static LLUUID GetAnimID(const LLUUID& id);
|
|
|
|
static int GetStateFromAnimID(const LLUUID& id);
|
|
static LLUUID GetAnimIDFromState(const int state);
|
|
static int GetStateFromToken(std::string strtoken);
|
|
|
|
static void onClickLess(void* data) ;
|
|
static void onClickMore(void* data) ;
|
|
|
|
static void onClickPrevStand(void* userdata);
|
|
static void onClickNextStand(void* userdata);
|
|
static void onClickReloadCard(void* userdata);
|
|
static void onClickOpenCard(void* userdata);
|
|
static void onClickNewCard(void* userdata);
|
|
|
|
static LLUUID invfolderid;
|
|
static const LLUUID& getAssetIDByName(const std::string& name);
|
|
|
|
static bool getInstance();
|
|
|
|
private:
|
|
|
|
static LLFloaterAO* sInstance;
|
|
static int mAnimationState;
|
|
static LLUUID mCurrentStandId;
|
|
|
|
static AONoteCardDropTarget* mAOItemDropTarget;
|
|
static void AOItemDrop(LLViewerInventoryItem* item);
|
|
static void onSpinnerCommit(LLUICtrl* ctrl, void* userdata);
|
|
static void onComboBoxCommit(LLUICtrl* ctrl, void* userdata);
|
|
static BOOL SetDefault(void *userdata, LLUUID ao_id, std::string defaultanim);
|
|
|
|
BOOL mDirty;
|
|
|
|
protected:
|
|
|
|
static void onNotecardLoadComplete(LLVFS *vfs,const LLUUID& asset_uuid,LLAssetType::EType type,void* user_data, S32 status, LLExtStat ext_status);
|
|
|
|
};
|
|
|
|
extern AOInvTimer* gAOInvTimer;
|
|
|
|
#endif
|