FunCodeC开发常用API.docx

上传人:b****2 文档编号:17388729 上传时间:2023-07-24 格式:DOCX 页数:12 大小:19.04KB
下载 相关 举报
FunCodeC开发常用API.docx_第1页
第1页 / 共12页
FunCodeC开发常用API.docx_第2页
第2页 / 共12页
FunCodeC开发常用API.docx_第3页
第3页 / 共12页
FunCodeC开发常用API.docx_第4页
第4页 / 共12页
FunCodeC开发常用API.docx_第5页
第5页 / 共12页
FunCodeC开发常用API.docx_第6页
第6页 / 共12页
FunCodeC开发常用API.docx_第7页
第7页 / 共12页
FunCodeC开发常用API.docx_第8页
第8页 / 共12页
FunCodeC开发常用API.docx_第9页
第9页 / 共12页
FunCodeC开发常用API.docx_第10页
第10页 / 共12页
FunCodeC开发常用API.docx_第11页
第11页 / 共12页
FunCodeC开发常用API.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

FunCodeC开发常用API.docx

《FunCodeC开发常用API.docx》由会员分享,可在线阅读,更多相关《FunCodeC开发常用API.docx(12页珍藏版)》请在冰点文库上搜索。

FunCodeC开发常用API.docx

FunCodeC开发常用API

FunCodeC开发常用API

C语言标准库函数

在实验中,我们需要用到一些C语言标准库函数,主要用于字符串处理,获得随机值,处理数学函数等。

Math.h

函数原型

功能与返回值

参数说明与应用举例

publicstaticdoubleatan2(

doubley,doublex

);

返回两点之间的正切值

x:

点的x坐标

y:

点的y坐标

floatftan

=atan2((fMouseY-fY),(fMouseX-fX));

floatsqrt(

floatx

);

功能:

计算平方根

返回值:

x的平方根

sqrt(9)=3

Stdio.h

函数原型

功能与返回值

参数说明与应用举例

intsprintf(

char*buffer,

constchar*format,[argument]…

);

把格式化的数据写入某个字符串缓冲区。

返回值:

字符串长度(strlen)

buffer:

char型指针,指向将要写入的字符串的缓冲区。

format:

char型指针,指向的内存里面存放的将要格式字符串。

[argument]...:

可选参数,可以是任何类型的数据。

sprintf(szUfoName,"ufo_%d_%d",iLoop,iTotalUfoCount);

String.h

函数原型

功能与返回值

参数说明与应用举例

externchar*strstr(

char*str1,

char*str2

);

找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。

返回值:

返回该位置的指针,如找不到,返回空指针。

strstr(szName,“feichong”)!

=NULL

说明szName中包含feichong

可以用来判断前一个字符串包含后面一个字符串

externintstrcmp(

constchar*s1,

constchar*s2

);

比较字符串s1和s2。

当s1

当s1=s2时,返回值=0

当s1>s2时,返回值>0

strcmp(szName,“feichong_0”)==0

说明szName与feichong_0相等

可以用来判断前后两个字符串的值相等

externchar*strcpy(

char*dest,

constchar*src

);

把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间

返回指向dest的指针。

strcpy(“big”,”ufo”);

前一个字符串的内容变为”ufo”

void*memcpy(

constchar*dest,

constchar*src,

size_tn,

);

从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中

函数返回dest的值

memcpy(m_iGridData,m_iLevelData2,sizeof(int)*GRID_COUNT*GRID_COUNT);

externunsignedintstrlen(

char*s

);

计算字符串s的(unsignedint型)长度,不包括'\0'在内

返回s的长度,不包括结束符NULL。

intiStrLen=strlen(“ufo”);

FunCodeCAPI

播放静态精灵的API

API

功能与返回值

参数说明

intdCloneSprite(constchar*szSrcName,constchar*szMyName);

1表示克隆成功,0克隆失败。

失败的原因可能是在地图中未找到对应名字的精灵

szSrcName:

被复制的精灵模板的名称

szMyName:

指向我们复制出来精灵的名字

Void

dSetSpriteWidth(constchar*szName,constfloatfWidth);

设置精灵外形宽度

数组szName:

指向我们要设置宽度的精灵的名字

fWidth:

宽度值,大于0

floatdGetSpriteWidth(constchar*szName);

获取精灵外形宽度

返回值:

精灵宽度值

szName:

指向要获得宽度的精灵

VoiddSetSpriteHeight(constchar*szName,constfloatfHeight

);

设置精灵外形高度

szName:

指向要设置高度的精灵的名字

fHeight:

精灵高度值

floatdGetSpriteHeight(constchar*szName);

获取精灵外形高度

szName:

指向要获得高度的精灵的名字

voiddSetSpriteLinearVelocity(constchar*szName,constfloatfVelX,constfloatfVelY

);

设置精灵移动速度

szName:

指向要设置速度的精灵的名字

fVelX:

X方向速度

fVelY:

Y方向速度

floatdGetSpriteLinearVelocityX(constchar*szName);

获取精灵X方向速度

szName:

指向要获得速度的精灵的名字

floatdGetSpriteLinearVelocityY(constchar*szName);

获取精灵Y方向速度

szName:

指向要获得速度的精灵的名字

voiddSetSpriteLinearVelocityPolar(constchar*szName,

constfloatfSpeed,

constfloatfPolar

);

按角度朝向设置精灵移动速度

szName:

指向要设置角速度的精灵的名字

fSpeed:

移动速度

fPolar:

角度朝向

voiddSetSpriteCollisionSend(constchar*szName,constintiSend);

设置精灵是否可以发送(产生)碰撞

szName:

指向要设置发送碰撞的精灵的名字

iSend:

1可以发送碰撞

0不可以发送碰撞

voiddSetSpriteCollisionReceive(constchar*szName,

constintiReceive;

);

设置精灵是否可以接受碰撞

szName:

指向要设置接收碰撞的精灵的名字

iReceive:

1可以接受碰撞

0不接受碰撞

VoiddSetSpriteWorldLimit(

constchar*szName,

constEWorldLimitLimit,

constfloatfLeft,

constfloatfTop,

constfloatfRight,

constfloatfBottom

);

设置精灵的世界边界坐标限制及碰撞模式

szName:

指向要设置世界边界和碰撞模式的精灵的名字

Limit:

碰撞到世界边界之后的响应模式,如果为NULL,碰撞反应由代码决定。

其它值见EWorldLimit

fLeft:

边界的左边X坐标

fTop:

边界的上边Y坐标

fRight:

边界的右边X坐标

fBottom:

边界的下边Y坐标

voiddSetSpriteFlipX(

constchar*szName,

constintiFlipX

);

设置精灵图片X方向翻转显示

szName:

指向要翻转的精灵的名字

iFlipX:

1翻转

0不翻转(恢复原来朝向)

voiddSetSpriteVisible(

constchar*szName,

constintiVisible

);

设置精灵隐藏或者显示(可见不可见)

szName:

指向要隐藏的精灵的名字

iVisible:

1可见

0不可见

voiddDeleteSprite(

constchar*szName);

在地图中删除与本对象实例关联的精灵

szName:

指向要删除的精灵的名字

voiddSpriteMoveTo(

constchar*szName,

constfloatfPosX,

constfloatfPosY,

constfloatfSpeed,

constintiAutoStop

);

让精灵按照给定速度移动到给定坐标点

szName:

指向要移动的精灵的名字

fPosX:

移动的目标X坐标值

fPosY:

移动的目标Y坐标值

fSpeed:

移动速度

iAutoStop:

移动到终点之后是否自动停止。

1表示停止;0不停止。

voiddSetSpritePosition(

cosntchar*szName,

constfloatfPosX,

constfloatfPosY

);

设置精灵位置

szName:

指向要设置位置的精灵的名字

fPosX:

X坐标

fPosY:

Y坐标

voiddSetSpritePositionX(

constchar*szName,

constfloatfPosX

);

只设置精灵X坐标

szName:

指向要设置位置的精灵的名字

fPosX:

X坐标

voiddSetSpritePositionY(

constchar*szName,

constfloatfPosY

);

只设置精灵Y坐标

szName:

指向要设置位置的精灵的名字

fPosY:

Y坐标

floatdGetSpritePositionX(

constchar*szName

);

获取精灵X坐标。

szName:

指向要获得X坐标的精灵的名字

floatdGetSpritePositionY(

constchar*szName

);

获取精灵Y坐标

szName:

指向要获得Y坐标的精灵的名字

voiddSetSpriteRotation(

constchar*szName,

constfloatfRot

);

设置精灵的旋转角度

szName:

指向要设置旋转的精灵的名字

参数fRot:

旋转角度,范围0-360

floatdGetSpriteRotation(

constchar*szName);

获取精灵的旋转角度

szName:

指向要获得旋转角度的精灵的名字

voidSetSpriteLifeTime(

constchar*szName,

constfloatfLifeTime

);

设置精灵的生命时长。

超过生命时长,精灵被删除。

szName:

指向要设置精灵生命周期的名字

fLifeTime:

生命时长,单位秒

VoiddSetSpriteConstantForceX

constchar*szName,

constfloatfForceX

);

设置精灵X方向常量推力

szName:

指向要设置X方向常量推力的精灵的名字

fForceX:

X方向推力大小

voiddSetSpriteConstantForceY(

constchar*szName,

constfloatfForceY

);

设置精灵Y方向常量推力

szName:

指向要设置Y方向常量推力的精灵的名字

fForceY:

Y方向推力大小

floatdGetSpriteLinkPointPosX(

constchar*szName,

constintiId

);

获取精灵链接点X坐标

szName:

指向要获得X方向链接点的精灵的名字

参数iId:

链接点序号,第一个链接点为1,后面依次递加

float

dGetSpriteLinkPointPosY(

constchar*szName,

constintiId

);

获取精灵链接点Y坐标。

szName:

指向要获得Y方向链接点的精灵的名字

参数iId:

链接点序号,第一个链接为1,后面依次递加

voiddSetSpriteImpulseForcePolar(

constchar*szName,

constfloatfPolar,

constfloatfForce,

constintiGravitic

);

按角度朝向设置精灵瞬间推力

szName:

指向要设置瞬间推力的精灵的名字

fPolar:

角度朝向

fForce:

推力大小

iGravitic:

是否计算重力

1:

计算

0:

不计算

floatdGetSpriteMass(

constchar*szName);

获取精灵质量

返回值:

质量大小

szName:

指向要获得质量的精灵的名字

播放动态精灵的API

API

功能与返回值

参数说明

intdAnimateSpritePlayAnimation(

constchar*szName,

constchar*szAnim,

constintiRestore

);

动画精灵播放动画

返回值:

是否播放成功

1表示成功,

0表示不成功

szName:

指向要播放动画的精灵的名字

szAnim:

动画名字。

注意不是精灵名称。

bRestore:

播放完毕后是否恢复当前动画1:

恢复

0:

不恢复

charszGotGoldName[20];设置文字精灵的API

类成员函数

功能与返回值

参数说明

voiddSetTextValue(

constchar*szName,

intiValue

);

文字精灵显示某个数值

szName:

指向文字精灵的名字

iValue:

要显示的数值

设置特效精灵的API

API

功能与返回值

参数说明

voiddPlayEffect(

constchar*szSrcName,

constfloatfLifeTime,

constfloatfPosX,

constfloatfPosY,

constfloatfRotation

);

播放一个不循环的特效,播放完毕之后该特效自动删除

szSrcName:

特效精灵的名字,

fLifeTime:

特效精灵的生命长度,

fPosX:

播放的X坐标

fPosY:

播放的Y坐标

fRotation:

播放的角度朝向

设置播放声音的API

API

功能与返回值

参数说明

voiddPlaySound(

constchar*szName,

constintiLoop,

constfloatfVolume);

播放声音特效

szName:

播放声音的路径或者名称

iLoop:

是播放否循环播放

1:

循环播放

0:

不循环播放

fVolume:

0-1音量的大小

voiddStopSound(

constintiSoundId);

停止播放该声音

iSoundId:

播放声音的时候返回的声音的ID

系统相关功能的API

API

功能与返回值

参数说明

staticfloat

dGetScreenLeft();

获取世界边界之左边X坐标

staticfloat

dGetScreenTop();

获取世界边界之上边Y坐标

staticfloat

dGetScreenRight();

获取世界边界之右边X坐标

staticfloat

dGetScreenBottom();

获取世界边界之下边Y坐标

staticchar*

dMakeSpriteName(

constchar*szPrev,

constintiId

);

将前面的字符串与后面的数字整合成一个字符串。

返回值:

返回一个字符串,比如传入("xxx",2),则返回"xxx2"

szPrev:

一个非空字符串,最长不能超过20个英文字符。

iId:

一个数字

CSystem:

:

MakeSpriteName(“xxx”,2);

得到xxx2的字符串

staticvoid

dSetWindowTitle(

constchar*szTitle

);

设置窗口名字/标题

szTitle:

非空字符串

staticintdRandomRange(

constintiMin,

constintiMax

);

获取一个位于参数1到参数2之间的随机数

返回值:

int,范围iMin-iMax

iMin:

小于iMax的整数

iMax:

大于iMin的整数

staticvoiddShowCursor(

constboolbShow

);

隐藏/显示鼠标

bShow:

true为显示

false为隐藏

staticvoiddDrawLine(

constfloatfStartX,

constfloatfStartY,

constfloatfEndX,

constfloatfEndY,

constfloatfLineWidth,

constintiLayer,

constintiRed,

constintiGreen,

constintiBlue,

constintiAlpha

);

在两点之间画一条线

fStartX:

起始坐标X

fStartY:

起始坐标Y

fEndX:

终点坐标X

fEndY:

终点坐标Y

fLineWidth:

线的粗细,大于等于1

iLayer:

改线所在的层,与编辑器里设置的精灵的层级是同一个概念。

范围0-31。

参数iRed,iGreen,iBlue:

红绿蓝三原色的颜色值,范围0-255

参数iAlpha:

线的透明度,范围0-255.0为全透明,255为不透明

Staticfloat

dRotationToVectorX(

constfloatfRotation

);

计算某个角度对应的直线向量的X方向

返回值:

该直线向量的X值

fRotation:

角度,范围0-360

staticfloat

dRotationToVectorY(

constfloatfRotation

);

计算某个角度对应的直线向量的Y方向

返回值:

该直线向量的Y值

fRotation:

角度,范围0-360

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2