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

📄 bridge.h

📁 以AIROBOT为平台构建的一个智能机器人。主源码见main.c。其余为使用的函数接口定义
💻 H
字号:
#ifndef _Include_Bridge
#define _Include_Bridge

#ifdef 	__cplusplus
#define EXPORT extern "C" __declspec (dllexport)
#else
#define EXPORT __declspec (dllexport)
#endif

//////////////////////////////////////////////////////////////
//robot
EXPORT void __cdecl localWork(void);

//事件处理函数,相应事件发生时被调用一次
/*
 * 当雷达扫描到敌人时触发
 */
EXPORT void __cdecl localOnScannedRobot(
	long t, const char * n, double x,
	double y, double h, double v, double e
);
	
/*
 * 当打中某个敌人时触发
 */
EXPORT void __cdecl localOnBulletHit(
	long t, double p, const char* n, double X, double Y
);
	
/*
 * 当被敌人打中时触发
 */
EXPORT void __cdecl localOnHitByBullet(long t, const char * n, double p);
	
/*
 * 当撞到其它敌人时触发
 */
EXPORT void __cdecl localOnHitRobot(long t, const char * n, double X, double Y);
	
/*
 * 当某个敌人死时触发
 */
EXPORT void __cdecl localOnRobotDeath(long time, const char * n);

/*
 * 当撞到墙时触发
 */
EXPORT void __cdecl localOnHitWall(long time);
	

/*
 * 当开始一轮新的战斗时触发
 */
EXPORT void __cdecl localOnBegin(long time);
	
/*
 * 当一轮战斗结束时触发
 */
EXPORT void __cdecl localOnFinish(long time);

/*
 * 当机器人执行操作超时时触发
 */
EXPORT void __cdecl localOnOvertime(long time);
	

////////////////////////////////////////////////////////////////////
// 这些函数由系统调用,设置一些关于机器人当前状态的信息
/*
 * 设置当前时间
 */
EXPORT void __cdecl localSetTime(long t);
	
/*
 * 设置当前的比赛轮数
 */
EXPORT void __cdecl localSetCurrentRound(int r);

/*
 * 设置总的比赛轮数
 */
EXPORT void __cdecl localSetTotalRounds(int t);
	
/*
 * 设置剩余能量
 */
EXPORT void __cdecl localSetEnergy(double e);
	
/*
 * 设置当前的比赛得分
 */
EXPORT void __cdecl localSetScore(double s);
	
/*
 * 设置当前敌人总数
 */
EXPORT void __cdecl localSetOthers(int o);
	
/**
 * 设置地图
 */
EXPORT void __cdecl localSetMap(int w, int h);

/**
 * 得到当前输出
 */
EXPORT char * __cdecl localGetOutput(void);

////////////////////////////////////////////////////////////////////////////
//body
/*
 * 得到用户想用转动的角度的剩余量
 */
EXPORT double __cdecl localGetBodyTurnRemaining(void);
	
/*
 * 得到用户想要到达的速度
 */
EXPORT double __cdecl localGetBodyPreferVelocity(void);

// 这些函数由系统调用,设置一些关于机器人当前状态的信息
/*
 * 设置当前的坐标
 */
EXPORT void __cdecl localSetBodyPosition(double x, double y);
	
/*
 * 设置当前的车身方向
 */
EXPORT void __cdecl localSetBodyHeading(double h);
	
/*
 * 设置当前的移动速度
 */
EXPORT void __cdecl localSetBodyVelocity(double v);

//////////////////////////////////////////////////////////////////////
//gun
// 得到用户想用转动的度数的剩余量
EXPORT double __cdecl localGetGunTurnRemaining(void);

// 得到用户将要发射的炮弹的能量
EXPORT double __cdecl localGetFirePower(void);

// 设置当前方向
EXPORT void __cdecl localSetGunHeading(double h);
	
// 设置发单的准备时间
EXPORT void __cdecl localSetGunPrepareTime(long t);

////////////////////////////////////////////////////////////////////////
//radar
/*
 * 得到用户想用转动的角度的剩余量
 */
EXPORT double __cdecl localGetRadarTurnRemaining(void);
	
/*
 * 设置当前方向
 */
EXPORT void __cdecl localSetRadarHeading(double h);

#endif

⌨️ 快捷键说明

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