自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 9.导出游戏

导出后单独建立一个文件夹并且单独建立一个windows文件夹来保存windows版本。修复bug,设置新的倒计时为一次,再删除原代码,将新的代码置入。找到刚添加的函数的timeouit信号,再和玩家连接起来。导出游戏,在编辑器下找到管理导出模板。点开内嵌pck就会有单独的exe文件。选择后游戏就会随着窗口拉伸而增大。解决不同电脑分辨率下的窗口。再设置重新加载场景的代码。

2025-09-10 15:04:30 155

原创 8.加入游戏音效

如果直接添加游戏背景音乐,游戏背景音乐会因为被重置场景而重新加载,解决问题只需要用到godot的自动加载。由于跑步音效需要每帧来判断,所以要找回原来的process来判断每一帧玩家的移动。修复bug:碰到死亡的史莱姆也会游戏失败。在自动加载下找到刚才的bgm成功添加了。2D节点可以做到音效左右耳道的实现。在新建bgm节点下将分支保存为场景。项目-项目设置-全局-自动加载。保存后删除节点,就可以自动加载。在玩家节点下添加音效节点。给史莱姆添加死亡音效。

2025-09-10 15:04:04 119

原创 7.得分系统

拉远摄像机后就能找到蓝色方框,是CanvasLayer的工作区。CanvasLayer节点会单独渲染他的所有子节点,由于string类型不能和int类型相加,所以会报错。Label节点可以用来展示文字的节点。创建第二个Label,选择瞄点预设。添加节点后在检查器中找到text。在此节点下添加Label 节点。在Node2D下添加子节点。找到下面文件,找到字体设置。重新建立一个判断是否结束的。得分变量在史莱姆前增加。UI元素朝哪个方向对齐。

2025-09-10 15:03:43 220

原创 6.添加史莱姆消灭动画

先在史莱姆的节点下添加一个新的动画不需要循环播放,因为一个史莱姆死亡只需要播放一次再在史莱姆的信号下找到area-entered这个信号会在某个area进入到史莱姆区域的时候被触发area-entered与body-entered不一样在于一个是某个area进入到,一个是某个body进入到双击area-entered并连接到史莱姆的代码上虽然史莱姆自己不会触发自己的area-entered,但是要防止其他史莱姆触发在子弹节点的右边检查器中来到节点面板,找到分组面板点击+号添加分组godot会自动将子弹节点分

2025-09-10 15:03:33 406

原创 5.子弹,自我回收场景,timer函数,queue-free自我摧毁,packedscene场景

添加到玩家节点下后,就能在右侧观察口下看到倒计时的时长,默认为一秒,勾选one shot的话就只运行一次,倒计时结束后就不会重新开始了,只有勾选了第三个auto start,才会在游戏开始时开始倒计时。由于发射时是从玩家中心坐标出发的,并不是在枪口处发射的,可以在赋值子弹生成坐标处修改一定值来达到合适的效果。实现玩家在移动时不发射子弹,在发射前做一次判断,如果速度不为0,则return,剩下的代码就不会执行。设置子弹的代码与史莱姆的代码也是十分相似的,添加好移动代码和变量后就可以发射子弹。

2025-09-10 15:03:13 237

原创 4.创建史莱姆敌人,自定义函数,检查碰撞,设置结束时间等待

加入史莱姆敌人也最好和创建玩家的单独场景的一样。

2025-09-10 15:02:59 270

原创 3 .设置移速和部分代码,添加空气墙,

添加跑步动画,点击按钮来新建动画在添加精灵表中添加新的动画,命名为run取消自动播放,通过代码来控制玩家播放跑步动画。

2025-09-10 15:02:49 167

原创 2.添加代码脚本

选中玩家的根节点,找到代码脚本的按钮勾选代码模板选择node Default专门创建Scripts文件夹来存放代码创建好后是证明玩家节点正挂载着一串代码,可以再次点击上面的创建代码来取消挂载代码用tap键来调整缩进ready函数是在游戏开始时运行一次,而process函数会在每一帧时执行velocity是设置速度Vector2是设置x,y轴值在每一帧中都设置控制移动的代码在遇到想直接引用提示的代码时,可以通过enter键来直接输入引用提示。

2025-09-10 15:02:40 354

原创 1.游戏场景

在开发者环境当中,一般会将玩家场景独立制作,再在主场景中调用玩家场景,一个场景是可以被包含在别的场景当中的,好处是如果想要改变玩家的数值的话,只需要修改玩家场景的数值就好。godot会默认只渲染蓝色框内的物体,因此 需要添加一个摄影机,也就是camera节点,camera节点会捕捉渲染物体并且将它们渲染到电脑屏幕上。由于是像素游戏,所以背景会有点糊,需要改变设置,在项目-项目设置-渲染-纹理-画布纹理-默认纹理设置-nearest。创建根节点为场景,点击场景,并选择2D场景。

2025-09-10 15:01:55 433

原创 假期教案13

可以通过假想法来确认数字间的规律。

2025-08-01 17:45:31 630

原创 假期教案12

去重和排序(sort函数),bool,pow。

2025-08-01 17:44:46 274

原创 假期教案11

/ C++结构体可以包含成员函数 void printInfo() { std::cout << "Name: " << name << ", Age: " << age << ", Height: " << height;} // 或者传递指针提高效率 void printPersonPtr(const struct Person *p) { printf("Name: %s, Age: %d\n", p->name, p->age);// 定义结构体变量 struct Person person1;

2025-08-01 17:43:36 394

原创 假期教案10

/ 声明并初始化 int arr[2][3] = { 0 1 2 0 {1, 2, 3}, // 第一行 1 {4, 5, 6} // 第二行 };// 省略第一维大小(编译器自动推断) int matrix2[][3] = {{1,2,3}, {4,5,6}};// 声明并初始化 int arr2[5] = {1, 2, 3, 4, 5};// [1, 2, 0, 0, 0] // 全部初始化为0 int arr5[5] = {0};

2025-08-01 17:42:57 478

原创 假期教案9

字符串相关内容:string字符串的声明string+字符串名=“”;// (1) 字符串拼接 str1 += " " + str2;// (2) 获取长度 cout << "Length: " << str1.length() << endl;// 或 str1.size() // (3) 提取子串 string substr = str1.substr(6, 5);// 从索引 6 开始,取 5 个字符 cout << "Substring: " << substr << endl;

2025-08-01 17:41:59 314

原创 假期教案8

a=a-32;// 直接用 ASCII 码赋值 cout << a << endl;// 输出: a return 0;c++:endl;cout转义字符我们学习过的cin、cout,一般情况下,用来输入、输出数据已经足够了。但这种方法电脑的运行效率比较低,尤其是数据量达到10万个以上时会非常明显,很容易就会超时。为了能够更快输入、输出较多的数据,需要使用格式化输入(scanf)和输出函数(printf)。说明:(1)使用scanf 和printf,需要调用头文件。

2025-08-01 17:41:18 252

原创 假期教案7

模拟算法小明每天都可以从妈妈那里领到零花钱,第1天可以领到1块钱,第2天可以领到2块钱……,第i天可以领到i块钱,如果小明领到零花钱后,手上的零花钱是3的倍数时,小明就会将他手上所有零花钱的三分之一存在妈妈那里(假设小明的零花钱从来不花!第K天的时候小明手上有多少零花钱呢?“六一”儿童节到了,乐乐参加了学校组织的诗歌朗颂比赛,这个比赛有n个评委,各参赛者朗颂完后,每个评委会马上打出1个分数,而参赛者的得分是指这n个分数里去掉1个最高分和1个最低分后的(n-2)个数的平均分。

2025-08-01 17:40:40 148

原创 假期教案6

编写一个数组求和的自定义函数SUMArray,该函数接收一个数组和数组的长度作为参数,返回数组中所有元素的和。我们在传递数组过程中常常伴随着传递数组长度,因为在其他自定义函数中常常计算不了长度,同时也提高了函数的通用性。//cop为一个自定义bool值的函数。sort函数可帮助完成排序的任务:(但一定要写相关的头文件才可以运用)移动:使用临时变量来保存一个移动的值,随后进行覆盖移动。插入:从数组的最后开始往后赋值,最后放入到该位置当中。将数组中的所有值进行一个有序排列。数组的移动、插入和删除。

2025-08-01 17:39:54 117

原创 假期教案5

如何建立一个数组:数据类型+数组名[ n ];//n为数组大小,可写可不写数组赋值:数组名[ ]={ 元素1,元素2 }//多余空间用0补足什么是数组小标,数组里的元素按照,0,1,2,3排列通过数组下标来访问数组元素:cout用for循环来遍历数组i从0开始,遍历到n-1用for循环输入数组,并保存思考:如何结合数组保存数据,实现输入数据,自定义函数判断数据,保存数据,输出数据;如何实现计算器功能。

2025-08-01 17:39:14 252

原创 假期教案4

enum Color { RED,GREEN,BLUE} // 默认从0开始,RED=0, GREEN=1, BLUE=2 Color a1 =RED/BLUE/GREEN;先编写一个菜单显示,提示用户输入,根据用户输入来选择进入到switch语句中的哪个case中,最后返回输出结果;深入知识点,写一个具备判断身高的功能,实现自定义函数,判断高个子矮个子,并且实现多个数据输入。如何结合数组保存数据,实现输入数据,自定义函数判断数据,保存数据,输出数据;数组里的元素按照,0,1,2,3排列。

2025-08-01 17:38:44 194

原创 暑假教案3

* 0个数 *个数 第几行 000* 3 1 1 00*** 2 3 2 0***** 1 5 3 ******* 0 7 4 */ int main(){ int a;i++){ //空格输出的个数 for(int j=a-i;} //*输出的个数 for(int k=1;有人想要花100钱买100之鸡,已知公鸡一只5钱,母鸡一只3钱,小鸡3只1钱,输出可行方案。利用****输出的方式来看两层输出,一个控制行,一个控制列,

2025-08-01 17:37:59 174

原创 假期教案2

输入n个数据,判断星期几,输出星期几,要求使用for循环接收n个数据,if判断数个周期后的值,再根据值用switch来输出星期几。第几天是星期几使用if+switch来完成。导入break语句和continue语句。表达式1 : 表达式2。&&: 并且符,作用是两边都需要为真。--->导入switch语句的知识点。||:或者,作用是两边任意一个为真。使用for来判断一些成绩是否及格。使用if来做一个抛硬币的程序。最后再加上for循环来组成。但需要注意使用''间隔开。c++代码的基本框架。

2025-08-01 17:37:11 134

原创 暑假兼职教案

int 整形、short短整形、long长整型、long long长整型。注意不能数字开头,不能与关键词相同,不能声明多个相同的变量名。注意不能数字开头,不能与关键词相同,不能声明多个相同的变量名。如何对其中两个进行命名(下划线命名,拼音命名,大小写命名)//false为假,也等于0。二、了解cin与cout的使用,输入与输出。了解头文件,标准空间名的作用,以及框架。//true为真,也为1。命名规则:a-z,A-Z,0-9,_命名规则:a-z,A-Z,0-9,_char类型保存单个字符。

2025-08-01 17:34:33 306

原创 确认返回代码,关于c语言的strcmp比对,goto语句

goto语句:将其运行步骤跳至目标again下。当check数组内为所规定字符串时,赋值。

2024-11-10 18:32:22 136

原创 B站up主鹏哥课程个人笔记记录4

内容概括:if&else语句,switch语句,default默认,while循环,putchar输出,for循环,dowhile,二分查法,strlen函数和sleep函数,sqrt计算开平方函数,system系统指令,goto语句,关机小程序。while循环在没有限定范围时会一直循环,当达到限制条件时才会停止,或者在运行条件外时跳出。在多层嵌套程序下使用goto语句比较方便,但是goto语句只能在一个函数内使用,不能跨函数。for循环在省略时带来的影响只有3次打印(为省略时有9次打印)

2024-10-23 18:34:48 188

原创 B站up主鹏哥课程个人笔记记录3

内容概括:补码与反码,操作符,关键字,寄存器,typedef ,static修饰函数。反码在原码基础中将0换成1,1换成0(因为第一个数字为符号位所以第一个数字不能换)当设置为4个字节一个空间时,查看a的地址并且在取地址时只会去地址首个字节的地址。改变a可在*(解引用操作)的帮助下,直接修改pa达到修改a的效果。auto自动,在变量前修饰,使其变成自动变量,因此可以省略。当a为真b也为真时那么c也为真,因此打印出1代表真。当a或b有一为假时,c为假,因此打印0代表假。前置++,会改变a和b的打印值。

2024-10-23 18:33:34 612

原创 B站up主鹏哥课程个人笔记记录2

内容概括:作用域,常量,define定义赋值,创立数组,终止符\0,strlen函数,转义符号,if、else语句,访问数组和监视,下标计算,ADD函数编写,部分操作符。const修饰的变量不能被改,因此下方对num的改变是错误的,同时num在此时是常变量且就有常属性。当想要打印‘时,使用普通的单引号无法’‘’将其正常打印,而需将其变成转义字符/’才可以打印。数组中的数字是按照下标来访问,例如arr数组中的1下表为0,在监视中也能体现出下标。/n在其中充当不了,/加n的两个元素,而是换行的转义字符。

2024-10-23 18:31:03 697

原创 B站鹏哥up主课程个人笔记记录1

当提示错误时可使用方法一1>D:\Demo\Demo\Demo\demo.c(8,2): error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.中将_CRT_SECURE_NO_WARNINGS用。

2024-10-23 18:28:33 299

原创 进制中小数部分计算

则3÷2=1取1得11(倒序排列)、小数部分0.625×2=1.250取1、0.250×2=-0.5取0、0.5×2=1取1,得101(不倒序)3.625(D)分为整数部分和小数部分,整数部分用除二取余的方法,小数部分用乘二取整的方法。0.101→1÷2+0÷4+1÷8=0.625再加上整数部分为3.625。1、二进制小数转化为十进制数计算(B)→(D)2、二进制小数转化为八进制数计算(B)→(O)则 2+1=3, 4+1=5 、得3.5(O)3、二进制小数转化为十六进制数(B)→(H)

2024-10-23 18:26:12 183

原创 二进制转换各进制

算数:(0×2的2次方+1×2的1次方+0×2的0次方=2)(1×2的2次方+1×2的1次方+0×2的0次方=6)8421 8421 → 0×8+0×4+1×2+0×1=2,1×8+1×4+0×2+1×1=13,得2D。算数:1×2的4次方+0×2的3次方+1×2的2次方+1×2的1次方+0×2的0次方=22。十六进制由0123456789ABCDEF组成。421 421 →0×4+1×2+0×1=2,1×4+1×2+0×1=6,得26。为Decimal,简写为D,#个人学习收集问题#

2024-10-23 18:24:25 1115 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除