public static bool build_behavior_tree(BehaviorTree bt)
 {
     bt.SetClassNameString("BehaviorTree");
     bt.SetId(-1);
     bt.SetName("Tank_Fire");
     #if !BEHAVIAC_RELEASE
     bt.SetAgentType("Player");
     #endif
     // pars
     bt.AddPar("Player", "parIn_Self", "null", "");
     bt.AddPar("float", "parT_RotateAngle", "0", "");
     // children
     {
         DecoratorLoop_bt_Tank_Fire_node0 node0 = new DecoratorLoop_bt_Tank_Fire_node0();
         node0.SetClassNameString("DecoratorLoop");
         node0.SetId(0);
     #if !BEHAVIAC_RELEASE
         node0.SetAgentType("Player");
     #endif
         bt.AddChild(node0);
         {
             Parallel_bt_Tank_Fire_node1 node1 = new Parallel_bt_Tank_Fire_node1();
             node1.SetClassNameString("Parallel");
             node1.SetId(1);
     #if !BEHAVIAC_RELEASE
             node1.SetAgentType("Player");
     #endif
             node0.AddChild(node1);
             {
                 DecoratorAlwaysSuccess_bt_Tank_Fire_node5 node5 = new DecoratorAlwaysSuccess_bt_Tank_Fire_node5();
                 node5.SetClassNameString("DecoratorAlwaysSuccess");
                 node5.SetId(5);
     #if !BEHAVIAC_RELEASE
                 node5.SetAgentType("Player");
     #endif
                 node1.AddChild(node5);
                 {
                     SelectorProbability_bt_Tank_Fire_node2 node2 = new SelectorProbability_bt_Tank_Fire_node2();
                     node2.SetClassNameString("SelectorProbability");
                     node2.SetId(2);
     #if !BEHAVIAC_RELEASE
                     node2.SetAgentType("Player");
     #endif
                     node5.AddChild(node2);
                     {
                         DecoratorWeight_bt_Tank_Fire_node6 node6 = new DecoratorWeight_bt_Tank_Fire_node6();
                         node6.SetClassNameString("DecoratorWeight");
                         node6.SetId(6);
     #if !BEHAVIAC_RELEASE
                         node6.SetAgentType("Player");
     #endif
                         node2.AddChild(node6);
                         {
                             Action_bt_Tank_Fire_node7 node7 = new Action_bt_Tank_Fire_node7();
                             node7.SetClassNameString("Action");
                             node7.SetId(7);
     #if !BEHAVIAC_RELEASE
                             node7.SetAgentType("Player");
     #endif
                             node6.AddChild(node7);
                             node6.SetHasEvents(node6.HasEvents() | node7.HasEvents());
                         }
                         node2.SetHasEvents(node2.HasEvents() | node6.HasEvents());
                     }
                     {
                         DecoratorWeight_bt_Tank_Fire_node8 node8 = new DecoratorWeight_bt_Tank_Fire_node8();
                         node8.SetClassNameString("DecoratorWeight");
                         node8.SetId(8);
     #if !BEHAVIAC_RELEASE
                         node8.SetAgentType("Player");
     #endif
                         node2.AddChild(node8);
                         {
                             Sequence node9 = new Sequence();
                             node9.SetClassNameString("Sequence");
                             node9.SetId(9);
     #if !BEHAVIAC_RELEASE
                             node9.SetAgentType("Player");
     #endif
                             node8.AddChild(node9);
                             {
                                 Assignment_bt_Tank_Fire_node11 node11 = new Assignment_bt_Tank_Fire_node11();
                                 node11.SetClassNameString("Assignment");
                                 node11.SetId(11);
     #if !BEHAVIAC_RELEASE
                                 node11.SetAgentType("Player");
     #endif
                                 node9.AddChild(node11);
                                 node9.SetHasEvents(node9.HasEvents() | node11.HasEvents());
                             }
                             {
                                 Sequence node10 = new Sequence();
                                 node10.SetClassNameString("Sequence");
                                 node10.SetId(10);
     #if !BEHAVIAC_RELEASE
                                 node10.SetAgentType("Player");
     #endif
                                 node9.AddChild(node10);
                                 {
                                     Condition_bt_Tank_Fire_node3 node3 = new Condition_bt_Tank_Fire_node3();
                                     node3.SetClassNameString("Condition");
                                     node3.SetId(3);
     #if !BEHAVIAC_RELEASE
                                     node3.SetAgentType("Player");
     #endif
                                     node10.AddChild(node3);
                                     node10.SetHasEvents(node10.HasEvents() | node3.HasEvents());
                                 }
                                 {
                                     Action_bt_Tank_Fire_node4 node4 = new Action_bt_Tank_Fire_node4();
                                     node4.SetClassNameString("Action");
                                     node4.SetId(4);
     #if !BEHAVIAC_RELEASE
                                     node4.SetAgentType("Player");
     #endif
                                     node10.AddChild(node4);
                                     node10.SetHasEvents(node10.HasEvents() | node4.HasEvents());
                                 }
                                 node9.SetHasEvents(node9.HasEvents() | node10.HasEvents());
                             }
                             node8.SetHasEvents(node8.HasEvents() | node9.HasEvents());
                         }
                         node2.SetHasEvents(node2.HasEvents() | node8.HasEvents());
                     }
                     node5.SetHasEvents(node5.HasEvents() | node2.HasEvents());
                 }
                 node1.SetHasEvents(node1.HasEvents() | node5.HasEvents());
             }
             {
                 Action_bt_Tank_Fire_node16 node16 = new Action_bt_Tank_Fire_node16();
                 node16.SetClassNameString("Action");
                 node16.SetId(16);
     #if !BEHAVIAC_RELEASE
                 node16.SetAgentType("Player");
     #endif
                 node1.AddChild(node16);
                 node1.SetHasEvents(node1.HasEvents() | node16.HasEvents());
             }
             node0.SetHasEvents(node0.HasEvents() | node1.HasEvents());
         }
         bt.SetHasEvents(bt.HasEvents() | node0.HasEvents());
     }
     return true;
 }
 public static bool build_behavior_tree(BehaviorTree bt)
 {
     bt.SetClassNameString("BehaviorTree");
     bt.SetId(-1);
     bt.SetName("Tank_Fire");
     bt.IsFSM = false;
     #if !BEHAVIAC_RELEASE
     bt.SetAgentType("Player");
     #endif
     // pars
     bt.AddPar("Player", "Player", "parIn_Self", "null");
     // children
     {
         Sequence node0 = new Sequence();
         node0.SetClassNameString("Sequence");
         node0.SetId(0);
     #if !BEHAVIAC_RELEASE
         node0.SetAgentType("Player");
     #endif
         bt.AddChild(node0);
         {
             Assignment_bt_Tank_Fire_node2 node2 = new Assignment_bt_Tank_Fire_node2();
             node2.SetClassNameString("Assignment");
             node2.SetId(2);
     #if !BEHAVIAC_RELEASE
             node2.SetAgentType("Player");
     #endif
             node0.AddChild(node2);
             node0.SetHasEvents(node0.HasEvents() | node2.HasEvents());
         }
         {
             Condition_bt_Tank_Fire_node1 node1 = new Condition_bt_Tank_Fire_node1();
             node1.SetClassNameString("Condition");
             node1.SetId(1);
     #if !BEHAVIAC_RELEASE
             node1.SetAgentType("Player");
     #endif
             node0.AddChild(node1);
             node0.SetHasEvents(node0.HasEvents() | node1.HasEvents());
         }
         {
             Action_bt_Tank_Fire_node16 node16 = new Action_bt_Tank_Fire_node16();
             node16.SetClassNameString("Action");
             node16.SetId(16);
     #if !BEHAVIAC_RELEASE
             node16.SetAgentType("Player");
     #endif
             node0.AddChild(node16);
             node0.SetHasEvents(node0.HasEvents() | node16.HasEvents());
         }
         bt.SetHasEvents(bt.HasEvents() | node0.HasEvents());
     }
     return true;
 }