凉鞋的 Godot 笔记 203. 变量的常用类型

203. 变量的常用类型

在上一篇,我们对变量进行了概述和简介,知识地图如下:

image-20231002172112342

我们已经接触了,变量的字符串类型,以及一些功能。

在这一篇,我们尝试多接触一些变量的类型。

首先是整数类型。

整数类型

整数类型一般是 int 类型,我们来看下如何使用,代码如下:

extends Node# Called when the node enters the scene tree for the first time.
func _ready():var textToPrint = 5print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)textToPrint = 0print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)pass # Replace with function body.# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):pass

运行之后,结果如下:

image-20231003234814689

我们当然也可以指定这个变量为 int 类型,代码如下:

var textToPrint: int = 5

整数类型(一般叫整型),在游戏开发中使用的频率非常高,比如角色的等级、经验值、金币都是使用整型进行记录和存储。

实数类型

实数其实就是带有小数点的类型,比如 0.1,0.0,5.5 都是实数类型。

在 GDScript 中用 float 表示。

我们写一些代码测试一下,如下:

extends Node# Called when the node enters the scene tree for the first time.
func _ready():var textToPrint: float = 5.5print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)# float 类型还可以接收 int 类型的值,但是会自动转换成 float 类型textToPrint = 0 print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)pass # Replace with function body.# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):pass

运行之后,结果如下:

image-20231004010821378

实数类型(float 类型或 浮点数类型),在游戏开发中使用的频率也非常高,比如角色的血量条、一些数值、比如暴击率,都是 float 类型的。

逻辑真假类型

逻辑真假类型叫做布尔类型(bool 类型或 boolean 类型)。

布尔类型只有两个值,true 或 false,即真和假。

我们先写代码测试下:

extends Node# Called when the node enters the scene tree for the first time.
func _ready():var textToPrint: bool = trueprint(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)textToPrint = falseprint(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)print(textToPrint)pass # Replace with function body.# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):pass

运行之后结果如下:

image-20231004013836131

虽然 bool 变量只能存储 true 和 false,但是 bool 变量的使用频率不输 int 和 float。

这是因为 bool 变量常常与程序语言中的条件判断结合使用。

自定义类型

我们还剩下自定义类型,自定义类型其实有点复杂,

自定义类型有枚举、类、Callable 等,每一个都可以花一整个篇幅介绍,所以这部分后续再介绍。

好了到此变量的三种使用频率非常高的类型就介绍完了。

这一篇的内容就这些,我们下一篇再见,拜拜。

知识地图

image-20231004020545393

更多内容

更新期间半价,保持 60% 的内容免费更新到此平台
版权所有 GamePix 独立游戏学院
转载请注明凉鞋的笔记

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/165228.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue解决 npm -v 报错(一)

报错内容: npm WARN config global --global, --local are deprecated. Use --locationglobal instead. 解决方案: 代码: prefix -g 替换为: prefix --locationglobal 原创作者:吴小糖 创作时间:2023.1…

redis部署与管理

一、关系数据库与非关系型数据库: 1. 关系型数据库: 关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。 SQL 语句(标准数据查询语言)就是一种…

【异步爬虫】requests和aiohttp中代理IP的使用

前言 在进行爬虫开发时,我们常常需要使用代理IP来隐藏自己的真实IP地址,以避免被一些网站限制或封禁。requests和aiohttp是两个非常常用的工具,本文将分别介绍如何在它们中使用代理IP,希望可以帮助大家更好地进行异步爬虫开发。 …

天鹰340亿(AquilaChat2-34B-16K)本地部署的解决方案

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

51单片机仿真软件 Proteus 8 Pro 安装步骤

51单片机仿真软件 Proteus 8 Pro 安装步骤 学习 51 单片机的时候,如果手头没有开发板,可以使用仿真软件 Proteus。Proteus 可以仿真 51 单片机及周边元器件(例: LED) 的运行情况。 可以简单认为:Proteus …

Windows Server服务器下的Linux子系统

Windows、Linux看似死敌一对,但其实微软对于开源实业还是相当支持的,Windows 10系统内就首次内置了一个Linux子系统(Windows Subsystem for Linux/WSL),允许开发者模拟Linux环境,而且有需要的可以直接从Windows应用商店下载SUSE、…

《数据结构、算法与应用C++语言描述》使用C++语言实现数组双端队列

《数据结构、算法与应用C语言描述》使用C语言实现数组双端队列 定义 队列的定义 队列(queue)是一个线性表,其插入和删除操作分别在表的不同端进行。插入元素的那一端称为队尾(back或rear),删除元素的那一…

web前端面试-- 手写原生Javascript方法(new、Object.create)

web面试题 本人是一个web前端开发工程师,主要是vue框架,整理了一些面试题,今后也会一直更新,有好题目的同学欢迎评论区分享 ;-) web面试题专栏:点击此处 手动实现Object.create 通过Object.create&#…

C/C++面试常见问题——指针和引用的区别

首先想要理解指针和引用的区别,我们要明确什么是指针,什么是引用 一,指针和引用的基本概念及特性 指针是一个特殊变量,其中存储着所指向变量的地址 指针主要有以下特性: 1. 在使用时需要*解引用 2. sizeof(指针)的…

STM32MP135和STM32MP157的区别

本文介绍了STMicroelectronics公司推出的两款多核处理器STM32MP135和STM32MP157之间的区别,包括主频、集成硬件模块数量、内存大小和电压调节模块等方面。 STMicroelectronics是一家领先的半导体解决方案提供商,在嵌入式系统领域有着丰富的经验。他们…

程序连接oracle查询数据的环境配置

连接oracle 数据库真麻烦,还是MySQL方便 Oracle Instant Client 这个东西的版本跟oracle的版本是有讲究的,引用文档的说明 Oracle 标准的客户端-服务器网络互操作性允许不同版本的 Oracle 客户端和 Oracle 数据库之间的连接。有关经过认证的配置&#…

JUC并发编程——各种锁的理解(基于狂神说的学习笔记)

各种锁的理解 公平锁与非公平锁 公平锁:非常公平,不能够插队,先来后到 非公平锁:可以插队,比较灵活(默认都是非公平,如:synchronized,lock) // Lock lock new Reent…

学习c#桌面应用编程 --- 我的第一个游戏

场景 我需要做一个c#桌面窗口软件,但是我曾经都是专职于java开发,但是java对windows并不是特别友好(awt除外),于是必须需要掌握c#桌面编程,所以我需要手动做一个小游戏,来学习c#的一些基本桌面应用的知识。 开始 这…

Leetcode 剑指 Offer II 049. 求根节点到叶节点数字之和

题目难度: 中等 原题链接 今天继续更新 Leetcode 的剑指 Offer(专项突击版)系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给定一个二叉树的根节点 root ,树中每个节点都存放有…

vue3后台管理系统之路由守卫

下载进度条 pnpm install nprogress //路由鉴权:鉴权,项目当中路由能不能被的权限的设置(某一个路由什么条件下可以访问、什么条件下不可以访问) import router from /router import setting from ./setting // eslint-disable-next-line typescript-eslint/ban-ts-comment /…

FreeRTOS入门教程(事件组概念和函数使用)

文章目录 前言一、事件组概念二、事件组和信号量,队列的区别三、事件组相关函数三、事件组应用示例1.等待多个事件2.任务同步 总结 前言 本篇文章将带大家学习什么是事件组以及如何使用事件组。 一、事件组概念 事件组通常是由一组位(bits&#xff09…

Linux下的命令行参数和环境变量

命令行参数 什么是命令行参数 命令行参数是指在执行命令行程序时&#xff0c;给程序传递的额外参数。在Linux终端中&#xff0c;命令行参数通常通过在命令后面添加空格分隔的参数来传递。 Linux下以main函数举例说明 #include<stdio.h>int main(int argc char* argv[])…

Java:ApacheHttpClient连接寿命(timeToLive)未配置问题分析

一、问题描述 若 Apache HttpClient 未设置 timeToLive&#xff0c;通过服务域名访问服务的实例并且服务域名解析出的 IP 发生变化时&#xff0c;在短时间内会有部分请求出现连接异常错误。 二、问题分析 Apache HttpClient 通过服务域名从连接池获取连接&#xff0c;当连接…

[C语言]排序的大乱炖——喵喵的成长记

宝子&#xff0c;你不点个赞吗&#xff1f;不评个论吗&#xff1f;不收个藏吗&#xff1f; 最后的最后&#xff0c;关注我&#xff0c;关注我&#xff0c;关注我&#xff0c;你会看到更多有趣的博客哦&#xff01;&#xff01;&#xff01; 喵喵喵&#xff0c;你对我真的很重要…

睿趣科技:抖音小店新手运营攻略

随着短视频平台的兴起&#xff0c;抖音已经成为了一个炙手可热的营销工具。越来越多的商家选择在抖音上开设小店&#xff0c;以此来拓展自己的业务。那么&#xff0c;作为新手&#xff0c;如何运营好自己的抖音小店呢?本文将为您提供一些实用的建议。 首先&#xff0c;要明确自…