📄 gun.c
字号:
#include "Robot.h"
//用户设置的想要转动的转角
static double angle = 0;
//用户设置的要发射炮弹的能量
static double power = 0;
//当前方向
static double heading = 0;
//当前的发单准备时间
static long prepareTime = 0;
//最大转动速度
static const double MAX_VELOCITY_TURN = (25 * 3.14 / 180);
///////////////////////////////////////////////////////////////////
//设置所要转动的度数,用于控制炮管的方向
void turnGun(double a){ angle = a; }
// 发射炮弹
void fire(double p){ power = p; }
// 得到用户想用转动的度数的剩余量
double getGunTurnRemaining(){ return angle; }
// 得到用户将要发射的炮弹的能量
double getFirePower(){ return power; }
// 得到当前的炮管方向
double getGunHeading(){ return heading; }
// 得到准备发弹的时间
long getGunPrepareTime(){ return prepareTime; }
// 设置当前方向
void setGunHeading(double h)
{
heading = h;
//重新计算要转的角度
if (angle >= 0)
{
if( angle < MAX_VELOCITY_TURN )
angle = 0;
else angle -= MAX_VELOCITY_TURN;
}else{
if( angle > - MAX_VELOCITY_TURN )
angle = 0;
else angle += MAX_VELOCITY_TURN;
}
}
// 设置发单的准备时间
void setGunPrepareTime(long t)
{
prepareTime = t;
power = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -