⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 complextricks.h

📁 该文件是包含了机器人足球比赛中的整个系统的代码
💻 H
字号:
#ifndef COMPLEXTRICKS_H
#define COMPLEXTRICKS_H
// Bag of complex tricks

#include "../Common/LocomotionCommand.h"
#include "../Common/HeadCommand.h"
#include "Trick.h"
#include "KickSelecta.h"
#include "Utilities.h"

class ComplexTricks {
public:
  class AdvancedChaseWithKick : public Trick {
  public:
    AdvancedChaseWithKick();
    virtual ~AdvancedChaseWithKick();
    virtual int Start();
    virtual int Abort();
    virtual int Continue();
    virtual bool IsUsingHead();
    virtual char* GetName();
    virtual char* GetErrorMsg(int);
    virtual Trick* GetCurrentTrick() {return currentTrick; }
    int ChaseSelecta();
  private:
    Utilities utils;
    KickSelecta ks;
    Trick* currentTrick;
    Trick* headTrick;
  };

  class PostChaseSearchForBall : public Trick {
  public:
    PostChaseSearchForBall(bool,double);
    virtual ~PostChaseSearchForBall();
    virtual int Start();
    virtual int Abort();
    virtual int Continue();
    virtual bool IsUsingHead() { return true; }
    virtual char* GetErrorMsg(int);
    virtual char* GetName();
  private:
    Trick* currentTrick;
    bool kicked;
    bool maxTurn;
    bool lookRight;
    int numFrames;
    Utilities utils;
  };

  class ChaseWithKick : public Trick {
  public:
    ChaseWithKick();
    virtual ~ChaseWithKick();
    virtual int Start();
    virtual int Abort();
    virtual int Continue();
    virtual bool IsUsingHead();
    virtual char* GetName();
    virtual char* GetErrorMsg(int);
    virtual Trick* GetCurrentTrick() {return currentTrick; }
    bool justKicked;
    bool interruptible;
  private:
    Utilities utils;
    KickSelecta ks;
    Trick* currentTrick;
    Trick* headTrick;
  };

  class ComplexKick : public Trick {
  public:
    ComplexKick(double _normalTurnAmount, double _maxTurnAmount);
    ComplexKick(double _normalTurnAmount, double _maxTurnAmount, double _extraFastTurn);
    ComplexKick(Trick*);
    virtual ~ComplexKick();
    virtual int Start();
    virtual int Abort();
    virtual int Continue();
    virtual bool IsUsingHead();
    virtual char* GetErrorMsg(int);
    virtual char* GetName();
    virtual Trick* GetCurrentTrick() {return currentTrick; }
  private:
    Trick* currentTrick;
    Trick* turnTrick;
  };
};

#endif // COMPLEXTRICKS_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -