如何在funcode做的黄金矿工funcode小游戏代码里添加60s倒计时功能

funcode黄金矿工标准版(使用时将LessonX页清空)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
funcode黄金矿工标准版(使用时将LessonX页清空)
&&使用时将LessonX页全部删除,将Main函数全部粘贴即可。
良心之作!!!
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩3页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢FunCode运用问题解答
问题1、运行FunCode,导致电脑分辨率严重下降。
Windows桌面图片变得特别大,FunCode界面变大,整个电脑屏幕只能看到其中一部分。 解决办法:
1、确保显卡支持DX9.0及以上版本;
2、升级最新的显卡驱动程序。
问题2 在FunCode中设计好界面,运行程序,游戏屏幕是黑屏。 症状:
造成该问题,有多种原因,根据不同原因有不同解决方法。
解决办法一:
先点击FunCode工具条中的运行按钮
解决办法二:
检查电脑时间,确保电脑时间不能比实际时间提早。如果发现提早,需要操作如下几步: 关闭FunCode。
把FunCode安装目录下Bin\game\managed\datablocks.cs.dso删除;
正确设置电脑时间。
重新打开FunCode。
解决办法三:
与LanStar软件(南京远志电脑管理软件)存在冲突。应安装最新LanStar或者卸载该软件。 ,如果运行正常(屏幕有图片),然后再在VC中运
解决办法四
精灵名称不能包含中文、开头是数字,或者中间有空格。按规定重新命名精灵名称。
解决办法五:
在排除上述两种原因的情况下,重新创建项目运行。
问题3:打开FunCode的VC工程,提示工程不存在
解决办法:
确保创建的工程名称不包含空格。比如工程名称为sea fish,是非法的。必须改为seafish。
问题4:已经创建了VC工程,也正确设置了VC启动版本,但是点击“打开VC工程”,不能启动VC。
解决办法:
VC++是绿色版(无需安装直接使用的版本,因此VC++的安装路径不会保留在Windows的注册表中),FunCode不能通过注册表信息找到VC++的目录所在。
通过VC++直接打开工程,操作步骤如下:
1) 打开VC++。
2) 在VC6.0中,点击“文件”菜单中的“打开 工作区”。在VC中,点击
“文件”菜单中的“项目/解决方案…”,分别如下图:
3) 在跳出的文件窗口中,找到相应的VC++工程文件并打开。VC++工程文件图标如下
(名称根据具体项目确定):
6.0版本工程文件的保存路径:
\实验项目所在路径\SourceCode\VCProjectVC6
2008版本工程文件的保存路径:
\实验项目所在路径\SourceCode\VCProject2008
2010版本工程文件的保存路径:
\实验项目所在路径\SourceCode\VCProject2010
4) 如果我们忘记了实验项目当前的路径,最简单的一个办法就是点击“项目”面板中
的“打开工程文件夹”按钮,就会弹出项目所在文件夹,从而了解当前路径所在。
问题5:VC6.0在Win7下运行,不能添加文件。
1、 下载FileTool.dll文件。
2、 复制到VC6.0安装目录下。具体子目录为:
/Microsoft Visual Studio/Common/MSDev98/AddIns/
3、 用管理员权限启动cmd.exe。
4、 在cmd.exe窗口中,先转移到FileTool.dll所在目录,然后执行regsvr32.exe。
5、 按Enter键,注册成功。
看过本文章的还看过。。。
funcode使用问题解答_理学_高等教育_教育专区。funcode编程软件的常......
funcode使用问题解答_理学_高等教育_教育专区。funcode编程软件的常......
项目改进打开项目如果我们要使用已经创建好的实验项目,对应也有两种方式: 第一种、当打开 funcode 出现如下界面: 点击“打开”,跳出一个文件窗口,找到实验项目的.........
funcode使用问题解答_工学_高等教育_教育专区。使用funcode常见的问......
funcode c 开发常用 api c 语言标准库函数在实验中,我们需要用到一些 c 语言...2016 baidu 使用百度前必读 | 文库协议 | 广告服务 | 企业文库 | 网站.........
此外, “106”是我公司的服务器地址,学生在家中或寝室可通过广域网继 续使用 funcode。 serverport 是与服务器通信的端口,要求与 server.ini 文件.........
funcode感想_电脑基础知识_it计算机_专业资料。通过这三周的学习,感觉自己以经...2015 baidu 使用百度前必读 | 文库协议 | 网站地图.........
在这个实验中,我们还是使用 seafish 项目。到目前为止,我们能让 yellowfish 游...在 funcode 中,我们利用 donkeydown 来捕捉按键按下的操作,donkeyup 来捕捉.........
funcode 海底世界完整版_计算机软件及应用_it计算机_专业资料。funcode海底世界...在此使用 api 更改窗口标题 dsetwindowtitle(lesson
引擎主循环,处理.........
篇一:funcode 感想 通过这三周的学习, 感觉自己以经从陌生渐渐地走进了它。 一开始不管是 funcode 的使用还 是游戏代码的编写都感觉好难,根本无从下手。通过.........
项目改进打开项目如果我们要使用已经创建好的实验项目,对应也有两种方式: 第一种、当打开 funcode 出现如下界面: 点击“打开”,跳出一个文件窗口,找到实验项目的.........
funcode 黄金矿工 #include commonapi.h #include stdio.h #include ...2016 baidu 使用百度前必读 | 文库协议 | 广告服务 | 企业文库 | 网站.........
funcode矿工捕鱼学长自打_计算机软件及应用_it计算机_专业资料。funcode大作业...(ming,true
to do : 在此使用 api 更改窗口标题 dsetwindowtitle.........
funcode c++课程设计_坦克大战_工学_高等教育_教育专区。课程设计一 坦克大战一...2015 baidu 使用百度前必读 | 文库协议 | 网站地图 关闭 .........
funcode矿工捕鱼学长自打_计算机软件及应用_it计算机_专业资料。funcode不烦恼...(ming,true
to do : 在此使用 api 更改窗口标题 dsetwindowtitle.........
funcode_微信版打飞机funcode_计算机软件及应用_it计算机_专业资料。funcode ...2017 baidu 使用百度前必读 | 文库协议 | 广告服务 | 企业文库 | 网站.........
02 funcode c 实验教学指南_教学案例设计_教学研究_教育专区。实验教学实验:...在这个实验中,我们还是使用 seafish 项目。到目前为止,我们能让 yellowfish 游.........
04 funcode c++开发常用类库_计算机软件及应用_it计算机_专业资料。funcode ...其中 using 声明编译器要使用的库类, std 指的是标准库类, “::” 指出类.........
funcode黄金矿工标准版(使用时将lessonx页清空)_计算机软件及应用_it计算机_专业资料。使用时将lessonx页全部删除,将main函数全部粘贴即可。良心之作!!!.........
funcode 海底世界_工学_高等教育_教育专区。funcode ---...( hinstance, lpcmdline ) ) return 0;
to do : 在此使用 api 更改窗口标题 g_fscreen.........
funcode海底世界练习c语言_教育学_高等教育_教育专区。注意:将代码粘贴在 main....在此使用 api 更改窗口标题 dsetwindowtitle(lesson dsetspriteworldlimit(.........
■ 热门推荐有谁做过funcode的黄金矿工或者其他的【北京科技大学吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:139,696贴子:
有谁做过funcode的黄金矿工或者其他的收藏
求教现成的,或者帮我修改一下
趣现场-微信大屏幕 免费试用,现场30+互动功能,玩转现场!
//-----------------------------------------------------------------------------////-----------------------------------------------------------------------------#include &CommonAPI.h&int g_fGoldBornMinX = 0;int g_fGoldBornMaxX = 0;int g_fGoldBornMinY = 0;int g_fGoldBornMaxY = 0;int g_iGoldCount = 0;float g_fHookRotation = 0.f; //钩子与地面的夹角int g_iGameState=0; //0-未开始 1-初始化 2-运行float g_fEmptyHookSpeed = 20.f;float g_fHookStartPosX; //存储钩子的初始X位置float g_fHookStartPosY; //存储钩子的初始Y位置char szGotGoldName[20];//当前抓到金子的名称int g_iGetGoldState=0; //钩子状态float fRotateSpeed = 40.f; // 摇摆速度,单位 度/秒int iHookRotToLeft = 1; //钩子摆动的方向:1 ← ;0 →// 游戏初始化代码
void DrawHookLine(){// 首先,从矿工精灵上获取一个缆绳链接点作为绳子的起始点(该链接点在编// 辑器里编辑好)
float fStartX=dGetSpriteLinkPointPosX( &GoldMan&, 1 );
float fStartY=dGetSpriteLinkPointPosY( &GoldMan&, 1 );// 绳子终点在钩子精灵上获取(该链接点在编辑器里编辑好)
float fEndX=dGetSpriteLinkPointPosX( &GoldHook&, 1 );
float fEndY=dGetSpriteLinkPointPosY( &GoldHook&, 1 );// 在这两点之间划线.线的颜色红绿蓝值都为50,即灰色
dDrawLine( fStartX, fStartY, fEndX, fEndY, 2.f, 0, 50, 50, 50, 255 );}void GameInit(void){
dSetSpriteVisible(&GameBegin&,0);
dSetSpriteWorldLimitMode(&goldHook&, WORLD_LIMIT_NULL);
dSetTextValue(&score&,0);
g_iGoldCount=15; //金子数量
g_fGoldBornMinX = dGetScreenLeft() + 5; //金子左边界
g_fGoldBornMaxX = dGetScreenRight() - 5; //金子右边界
g_fGoldBornMinY = dGetScreenTop() + 20; //金子上边界
g_fGoldBornMaxY = dGetScreenBottom() - 5; //金子下边界
int iLoop = 0; //循环变量控制
int iSize = 4, iPosX = 0, iPosY = 0; //iSize表示金块大小的变量
dSetSpriteCollisionSend(&goldhook&, 1); //发送碰撞
dSetSpriteCollisionReceive(&redstone&, 1);//接收碰撞
dSetSpriteCollisionReceive(&Rredstone&, 1);//接收碰撞
dSetSpriteCollisionReceive(&wine&, 1);//接收碰撞
dSetSpriteCollisionReceive(&goldTemplate&, 1);//接收碰撞
dSetSpriteVisible(&goldhook&,1);
for( iLoop = 0; iLoop & g_iGoldC iLoop++ )
if( iLoop & 8) //生成10个小金块,大小为4
iSize = 4;
else if( iLoop &=8 && iLoop &13) //生成6个中金块,大小为6
iSize = 6;
else //生成4个大金块,大小为8
iSize = 8;
}//初始化金子精灵实例
char* tmpN
tmpName=dMakeSpriteName(&GoldBlock&,iLoop); //生成金块名字
dCloneSprite(&goldTemplate&,tmpName);
dSetSpriteWidth(tmpName,(float)iSize); //设置金块的宽度
dSetSpriteHeight(tmpName,(float)iSize); //设置金块的高度//设置金子精灵位置
iPosX = dRandomRange(g_fGoldBornMinX, g_fGoldBornMaxX);
iPosY = dRandomRange(g_fGoldBornMinY, g_fGoldBornMaxY);
dSetSpritePosition(tmpName,(float)iPosX, (float)iPosY);
g_iGameState = 2;
void GameRun(float fTimeDelta ){
if(g_iGoldCount&0)
float fThisRotate = fRotateSpeed * fTimeDelta * 1.2; // 本次旋转的角度
if( iHookRotToLeft )
//向左转,度数不断变大
g_fHookRotation += fThisR
if( g_fHookRotation &= 180.f )
//大于180,置为向右转,即0
g_fHookRotation = 180.f;
iHookRotToLeft = 0;
//向右转,度数不断变小
g_fHookRotation -= fThisR //小于0,置为向左转,即 1
if( g_fHookRotation &= 0.f )
g_fHookRotation = 0.f;
iHookRotToLeft = 1;
dSetSpriteRotation(&goldhook&,g_fHookRotation); //设置钩子的当前角度
g_iGameState=0;
}}/////////////////////////////////////////////////////////////////////////////////////////////// 主函数入口////////////////////////////////////////////////////////////////////////////////////////////int PASCAL WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow){// 初始化游戏引擎
if( !dInitGameEngine( hInstance, lpCmdLine ) )
return 0;// 游戏初始化代码
dSetWindowTitle(&GM&);
g_fHookStartPosX=dGetSpritePositionX(&goldhook&);//获取钩子x坐标
g_fHookStartPosY=dGetSpritePositionY(&goldhook&);//获取钩子y坐标// 引擎主循环,处理屏幕图像刷新等工作
while( dEngineMainLoop() )
{// 获取两次调用之间的时间差,传递给游戏逻辑处理
float fTimeDelta=dGetTimeDelta();
DrawHookLine();
switch( g_iGameState )
// 初始化游戏,清空上一局相关数据
GameInit();
g_iGameState=2; // 初始化之后,将游戏状态设置为进行中
}// 游戏进行中,处理各种游戏逻辑
// 金子数量大于0的时候,继续游戏
GameRun( fTimeDelta );
}// 游戏结束/等待按空格键开始
}// 执行游戏主循环
};// 关闭游戏引擎
dShutdownGameEngine();
return 0;}//==========================================================================//// 引擎捕捉鼠标移动消息后,将调用到本函数void dOnMouseMove( const float fMouseX, const float fMouseY ){// 可以在此添加游戏需要的响应函数}//==========================================================================//// 引擎捕捉鼠标点击消息后,将调用到本函数void dOnMouseClick( const int iMouseType, const float fMouseX, const float fMouseY ){// 可以在此添加游戏需要的响应函数}//==========================================================================//// 引擎捕捉键盘按下消息后,将调用到本函数// iAltPress iShiftPress iCtrlPress 分别为判断Shift,Alt,Ctrl当前是否也处于按下状态。比如可以判断Ctrl+E组合键void dOnKeyDown( const int iKey, const int iAltPress, const int iShiftPress, const int iCtrlPress ){// 可以在此添加游戏需要的响应函数
if(iKey==KEY_SPACE && g_iGameState==0)
g_iGameState=1;
if( KEY_DOWN == iKey && g_iGameState == 2)
g_iGameState = 3;
dSetSpriteLinearVelocityPolar(&goldhook&,g_fEmptyHookSpeed, g_fHookRotation);// 播放挖金者的动作(一个胳膊往下压的动作)
dAnimateSpritePlayAnimation(&goldMan&,&GolderManAnimation1&, 0);//0 表示播放一次,这里胳膊往下压就是一次
else if( KEY_DOWN == iKey && 2 == g_iGameState && 0 == g_iGetGoldState )
{// 设置抓取状态为:钩子往外伸
g_iGetGoldState=1;// 以当前朝向给钩子一个向前的速度
dSetSpriteLinearVelocityPolar(&GoldHook&,g_fEmptyHookSpeed, g_fHookRotation );// 播放挖金者的动作(一个胳膊往下压的动作)
dAnimateSpritePlayAnimation( &GoldMan&, &GolderManAnimation1&, 0 );
}// 可以在此添加游戏需要的响应函数}//==========================================================================//// 引擎捕捉键盘弹起消息后,将调用到本函数void dOnKeyUp( const int iKey ){// 可以在此添加游戏需要的响应函数}//===========================================================================//// 引擎捕捉到精灵与精灵碰撞之后,调用此函数void dOnSpriteColSprite( const char *szSrcName, const char *szTarName ){// 发起者为Goldhook,接受者含有GoldBlock字段
if(strcmp(szSrcName,&goldhook&)== 0 && strstr(szTarName,&GoldBlock&)!=NULL )
dSpriteMountToSpriteLinkPoint( szTarName, &goldhook&, 2 );//将金块锚定在钩子上
dSpriteMoveTo(&goldhook&,g_fHookStartPosX, g_fHookStartPosY, g_fEmptyHookSpeed, 1);//使钩子向初始位置移动,即会拉
dAnimateSpritePlayAnimation(&GoldMan&,&GolderManAnimation3&, 1 );//播放拉金块的动作
strcpy(szGotGoldName,szTarName);//复制并保存当前抓取到金块的名称
g_iGameState = 2;
g_iGetGoldState=1;
if(g_iGetGoldState)
{//获取钩子X方向的速度
float fSpeedX=dGetSpriteLinearVelocityX(&goldhook&);//获取钩子Y方向的速度
float fSpeedY=dGetSpriteLinearVelocityY(&goldhook&);//当速度接近为0时,即可判定其已到达初始点
if( fSpeedX & 0.00001f && fSpeedX & -0.00001f && fSpeedY & 0.00001f && fSpeedY & -0.00001f )
{//解除金块与钩子的锚定
dSpriteDismount(szGotGoldName);//删除获取的金块
dDeleteSprite(szGotGoldName);//回拉结束,设定状态为0
g_iGameState = 0;//播放矿工的动画,即准备拉金子的动画
if(g_iGetGoldState==1)
g_iGoldCount--;
dAnimateSpritePlayAnimation( &GoldMan&, &GolderManAnimation2&, 0 );
}}//===========================================================================//// 引擎捕捉到精灵与世界边界碰撞之后,调用此函数.// iColSide : 0 左边,1 右边,2 上边,3 下边void dOnSpriteColWorldLimit( const char *szName, const int iColSide ){
if(strcmp(szName,&goldhook&) == 0)
//碰到边界的为钩子时
dSpriteMoveTo(szName,g_fHookStartPosX, g_fHookStartPosY, g_fEmptyHookSpeed, 1);
dAnimateSpritePlayAnimation(&GoldMan&,&GolderManAnimation3&, 1 );//同样设置为回拉,只是没有碰到金子
g_iGameState = 2;
g_iGetGoldState=2;
说重复定义错误,怎么办
想当年,我把大神舍友的代码照搬改了稍微改了下,结果分比他高,这让我很是羞愧
想当年我们小学期作业就是这个,我负责剧情,搭档负责PPT和画面,找个大神帮我们改代码
手ۖิ机ۖิ复ۖิ制ۖิۖิ这ۖิ几ۖิ个ۖิ字ۖิ看ۖิ你ۖิ多ۖิ久ۖิ能ۖิ删ۖิ完ۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิۖิ听说这个挺多经验的 ิۖิۣ ۣۣۖۖۖۖิۖิิۣۣۖۖิ ۖิิۣۣۖۖิۣ ۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิۣ ۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิۣ ۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิۣ ۖ   ۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิ ۖิิۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิۣۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิۣ ۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิิۣۣۖۖิۣ ۣۣۖۖۖิۖิิ ۣۣۖۖ ۖ ۣۣۖۖิ ۖิۖิۖิۖิۖิۖ
看样子很高端
坦克大战适合你
20年老品牌,一级代理,专注肯尼亚海运空运,报关一站式服务
可惜我做的弹弹堂。。。
钩子不转怎么办
然而我的还留着
登录百度帐号推荐应用

我要回帖

更多关于 4399小游戏黄金矿工 的文章

 

随机推荐