historical/toontown-classic.git/panda/include/SuitLeg.h
2024-01-16 11:20:27 -06:00

61 lines
1.4 KiB
C++

#ifndef _H_DNA_SUITLEG_
#define _H_DNA_SUITLEG_
#include "DNASuitPoint.h"
class EXPCL_DNA SuitLeg
{
PUBLISHED:
enum LegType
{
T_walk_from_street,
T_walk_to_street,
T_walk,
T_from_sky,
T_to_sky,
T_from_suit_building,
T_to_suit_building,
T_to_toon_building,
T_from_coghq,
T_to_coghq,
T_off
};
~SuitLeg();
double get_leg_time();
LPoint3f get_pos_at_time(double time);
LPoint3f get_pos_a();
LPoint3f get_pos_b();
// Aliases
INLINE void set_type(LegType type)
{
set_leg_type(type);
}
INLINE LegType get_type()
{
return get_leg_type();
}
static const std::string get_type_name(LegType leg_type);
public:
SuitLeg(double start_time, zone_id_t zone_id, block_number_t block_number,
PT(DNASuitPoint) point_a, PT(DNASuitPoint) point_b, LegType leg_type,
double leg_time);
protected:
double m_leg_time;
PROPERTY(double, start_time);
PROPERTY(zone_id_t, zone_id);
PROPERTY(block_number_t, block_number);
PROPERTY(PT(DNASuitPoint), point_a);
PROPERTY(PT(DNASuitPoint), point_b);
PROPERTY(LegType, leg_type);
};
#endif