125 lines
5.3 KiB
C++
125 lines
5.3 KiB
C++
#pragma once
|
|
|
|
#include <bitset>
|
|
|
|
namespace mtb
|
|
{
|
|
|
|
class Buff
|
|
{
|
|
public:
|
|
|
|
a8::reflect::Class* GetClass() const;
|
|
int buff_id() const { return buff_id_; };
|
|
const std::string name() const { return name_; };
|
|
int buff_target() const { return buff_target_; };
|
|
int buff_effect() const { return buff_effect_; };
|
|
int trigger_type() const { return trigger_type_; };
|
|
const std::string buff_param1() const { return buff_param1_; };
|
|
const std::string buff_param2() const { return buff_param2_; };
|
|
const std::string buff_param3() const { return buff_param3_; };
|
|
const std::string buff_param4() const { return buff_param4_; };
|
|
const std::string buff_param5() const { return buff_param5_; };
|
|
const std::string buff_param6() const { return buff_param6_; };
|
|
const std::string duration_time() const { return duration_time_; };
|
|
float buff_valueup() const { return buff_valueup_; };
|
|
const std::string immune_buffeffect_list() const { return immune_buffeffect_list_; };
|
|
const std::string post_remove_action() const { return post_remove_action_; };
|
|
int only_server() const { return only_server_; };
|
|
int only_self() const { return only_self_; };
|
|
int depend_effect() const { return depend_effect_; };
|
|
const std::string child_buff() const { return child_buff_; };
|
|
int coexist_num() const { return coexist_num_; };
|
|
int dead_valid() const { return dead_valid_; };
|
|
int buff_interval() const { return buff_interval_; };
|
|
const std::string tag() const { return tag_; };
|
|
int post_battle_valid() const { return post_battle_valid_; };
|
|
const std::string only_spec_race() const { return only_spec_race_; };
|
|
const std::string exclude_spec_race() const { return exclude_spec_race_; };
|
|
int dead_remove() const { return dead_remove_; };
|
|
int no_immune() const { return no_immune_; };
|
|
int lock_move() const { return lock_move_; };
|
|
int lock_dir() const { return lock_dir_; };
|
|
int lock_move_dir() const { return lock_move_dir_; };
|
|
int disable_shot() const { return disable_shot_; };
|
|
int disable_useskill() const { return disable_useskill_; };
|
|
const std::string effect_list() const { return effect_list_; };
|
|
|
|
bool has_buff_id() const { return __flags__.test(0);};
|
|
bool has_name() const { return __flags__.test(1);};
|
|
bool has_buff_target() const { return __flags__.test(2);};
|
|
bool has_buff_effect() const { return __flags__.test(3);};
|
|
bool has_trigger_type() const { return __flags__.test(4);};
|
|
bool has_buff_param1() const { return __flags__.test(5);};
|
|
bool has_buff_param2() const { return __flags__.test(6);};
|
|
bool has_buff_param3() const { return __flags__.test(7);};
|
|
bool has_buff_param4() const { return __flags__.test(8);};
|
|
bool has_buff_param5() const { return __flags__.test(9);};
|
|
bool has_buff_param6() const { return __flags__.test(10);};
|
|
bool has_duration_time() const { return __flags__.test(11);};
|
|
bool has_buff_valueup() const { return __flags__.test(12);};
|
|
bool has_immune_buffeffect_list() const { return __flags__.test(13);};
|
|
bool has_post_remove_action() const { return __flags__.test(14);};
|
|
bool has_only_server() const { return __flags__.test(15);};
|
|
bool has_only_self() const { return __flags__.test(16);};
|
|
bool has_depend_effect() const { return __flags__.test(17);};
|
|
bool has_child_buff() const { return __flags__.test(18);};
|
|
bool has_coexist_num() const { return __flags__.test(19);};
|
|
bool has_dead_valid() const { return __flags__.test(20);};
|
|
bool has_buff_interval() const { return __flags__.test(21);};
|
|
bool has_tag() const { return __flags__.test(22);};
|
|
bool has_post_battle_valid() const { return __flags__.test(23);};
|
|
bool has_only_spec_race() const { return __flags__.test(24);};
|
|
bool has_exclude_spec_race() const { return __flags__.test(25);};
|
|
bool has_dead_remove() const { return __flags__.test(26);};
|
|
bool has_no_immune() const { return __flags__.test(27);};
|
|
bool has_lock_move() const { return __flags__.test(28);};
|
|
bool has_lock_dir() const { return __flags__.test(29);};
|
|
bool has_lock_move_dir() const { return __flags__.test(30);};
|
|
bool has_disable_shot() const { return __flags__.test(31);};
|
|
bool has_disable_useskill() const { return __flags__.test(32);};
|
|
bool has_effect_list() const { return __flags__.test(33);};
|
|
|
|
protected:
|
|
|
|
int buff_id_ = 0;
|
|
std::string name_;
|
|
int buff_target_ = 0;
|
|
int buff_effect_ = 0;
|
|
int trigger_type_ = 0;
|
|
std::string buff_param1_;
|
|
std::string buff_param2_;
|
|
std::string buff_param3_;
|
|
std::string buff_param4_;
|
|
std::string buff_param5_;
|
|
std::string buff_param6_;
|
|
std::string duration_time_;
|
|
float buff_valueup_ = 0.0f;
|
|
std::string immune_buffeffect_list_;
|
|
std::string post_remove_action_;
|
|
int only_server_ = 0;
|
|
int only_self_ = 0;
|
|
int depend_effect_ = 0;
|
|
std::string child_buff_;
|
|
int coexist_num_ = 0;
|
|
int dead_valid_ = 0;
|
|
int buff_interval_ = 0;
|
|
std::string tag_;
|
|
int post_battle_valid_ = 0;
|
|
std::string only_spec_race_;
|
|
std::string exclude_spec_race_;
|
|
int dead_remove_ = 0;
|
|
int no_immune_ = 0;
|
|
int lock_move_ = 0;
|
|
int lock_dir_ = 0;
|
|
int lock_move_dir_ = 0;
|
|
int disable_shot_ = 0;
|
|
int disable_useskill_ = 0;
|
|
std::string effect_list_;
|
|
|
|
public:
|
|
std::bitset<34> __flags__;
|
|
};
|
|
|
|
};
|