-
VisualFreeBasic游戏趣味编程_9.2_应用字符数组存储关卡数据
推箱子游戏效果如图9-4所示。图9-4中的“推箱子”游戏一共有表9-1所示的几种元素。表9-1元素图片功能描述英文名称缩写字符空白区域:玩家可以穿过,箱子可以推上去empty'e'墙:玩家不能经过,箱子不能推过去wall'w'箱子:在前方没有障碍物的情况下,玩家可以推动box'b'空白目标:需要玩家将箱子推上去target't'完成目标:一个箱子在目标上的叠加状态achieved'a'游戏角色:可… -
VisualFreeBasic游戏趣味编程_9.1_字符串与字符数组
语句print("hello")中双引号包含的多个字符,在FB语言中称为字符串。字符串也可以用字符型数组进行存储,输入并运行以下代码:Sub游戏执行过程(hWndFormAshWnd)Dimstr1AsString="hello"Printstr1Dimstr2AsZString*5="hello"Printstr2Dimstr3AsWString*5="中文五个字"Printstr3EndSub… -
VisualFreeBasic游戏趣味编程_第9章_“推箱子”游戏
在本章我们将探讨如何编写“推箱子”游戏,即玩家通过键盘控制游戏角色将所有黄色箱子推到白色方块处,效果如图9-1所示。在本章我们将探讨如何编写“推箱子”游戏,即玩家通过键盘控制游戏角色将所有黄色箱子推到白色方块处,效果如图9-1所示。 -
VisualFreeBasic游戏趣味编程_8.6_操作步数与旋转度数
首先定义全局变量step记录还剩下的操作步数,score记录一共旋转的度数:DimShared步数AsLong'还剩下的操作步数DimShared得分AsLong'得分,也就是一共旋转了多少度在startup()函数中进行初始化:Substartup()'初始化函数步数=10'一共可以操作10步得分=0'初始为0度在show()函数中输出相关的文字信息:gg.Font"黑体",24gg.SetCo… -
VisualFreeBasic游戏趣味编程_8.5_旋转的传播
当鼠标点中一个小圆圈时,小圆圈顺时针旋转90度,然后其指向的下一个圆圈继续旋转90度,如此迭代下去,直到不指向任何小圆圈为止(此时指向边界),如图8-7所示。首先定义一维数组indexes存储被鼠标点中的小圆圈在二维数组rounds中的行列序号:Dimindexes(1)AsLong'数组存储点击小圆圈的行列序号定义函数intGetNextIndexes(intindexes),根据当前小圆圈的序… -
VisualFreeBasic游戏趣味编程_8.4_函数的参数传递
在本节我们介绍一般变量、数组元素、数组名作为函数参数的几种情况。输入并运行以下代码:Subfun(aAsLong)a+=1PrintaEndSubSub游戏执行过程(hWndFormAshWnd)DimxAsLong=1Printxfun(x)PrintxEndSub程序运行后输出:121程序从主函数开始运行,首先定义变量x并初始化为1,printx输出1。接着执行fun(x)进入fun()函数,… -
VisualFreeBasic游戏趣味编程_8.3_被鼠标点击后旋转
鼠标点击位置的坐标为(m.x,m.y),根据图8-3中5行5列小圆圈的坐标设置(代码8-1-2.cpp),被鼠标点中的小圆圈在二维数组rounds中的行、列序号为:Dimclicked_iAsLong=Int(ps.y-45)/45Dimclicked_jAsLong=int(ps.x-45)/45被点中的小圆圈需要顺时针旋转90度,如图8-6所示。只需要将其angleNum值依次+90即可:Ro… -
VisualFreeBasic游戏趣味编程_8.2_鼠标交互
回顾7.4节中讲解的键盘交互处理函数:SubupdateWithInput(moveDirectionAsString)'和输入有关的更新IfIsKeyPress(&H57)ThenmoveDirection="上"ElseIfIsKeyPress(&H53)ThenmoveDirection="下"ElseIfIsKeyPress(&H41)ThenmoveDirection="左"ElseIf… -
VisualFreeBasic游戏趣味编程_8.1_结构体
图8-1中的绘制单元由一个白色圆圈、一个红色指针组成。记录白色圆圈的信息需要定义3个变量:DimAsLongx,y'小圆圈的圆心坐标DimAsLongr'小圆圈半径红色指针起点在圆心,长度为圆半径,其角度只能有0、90、180、270这4种可能。定义取值范围为的整型变量angleNumDimAsLongangleNum'对应的角度种类,只能是0、1、2、3,表示对应的4个角度值要记录图8-1中的5… -
VisualFreeBasic游戏趣味编程_第8章_“十步万度”游戏
在本章我们将探讨如何编写“十步万度”游戏,效果如图8-1所示。用鼠标点击任意一个小圆圈,其指针顺时针旋转90度,后续被指向的圆圈指针也依次旋转,所有圆圈的旋转度数累积。玩家点击10次,尝试得到尽量高的旋转度数。本章首先介绍了结构体的概念,并展示利用结构体数组存储所有小圆圈信息;然后讲解了鼠标交互的方法,以及如何实现被鼠标点中的小圆圈的旋转;接着讲解了数组作为函数的参数,以及如何实现旋转的迭代传播;…