godot - 如何更改脚本中的精灵?
问题描述
我正在尝试将约会模拟作为简单的第一个游戏编程方式。我不知道如何更改脚本中的角色精灵。
character_sprite.gd
extends Sprite
var char_tex = load("res://Sprites/Lu2.png")
func _ready():
set_texture(char_tex)
func _input(event):
if event is InputEventMouseButton:
char_tex = load("res://Sprites/Lu1.png")
update()
解决方案
只需将texture
属性设置为所需的纹理。您也可以预加载纹理,然后切换它们而不是再次加载它们。
extends Sprite
var char_tex = load("res://Sprites/Lu2.png")
func _ready():
set_process_input(true)
texture = char_tex
func _input(event):
if event is InputEventMouseButton:
texture = load("res://Sprites/Lu1.png")
您的示例中的问题是您只为char_tex
变量分配了一个新图像,但这不会改变精灵的纹理。在您使用或texture
分配新图像之前, 仍将引用前一个图像。Gdscript 在这方面与 Python 比较相似,所以我建议看一下 Ned Batchelder关于 Python 名称和值的事实和神话。texture =
set_texture
推荐阅读
- visual-studio-code - VSC 状态栏上的 Live Server 图标
- python - 如何让我的助手通过某个短语激活
- vue.js - 将 vuex-persistedstate 与 vuejs-enterprise-boilerplate 集成
- dialogflow-es - 如何在 Chatbot 框架中使用自定义逻辑
- javascript - 如何用针制作量表
- xml - 如果 id 重复,则使用 xslt 更改重复的 id
- php - 我怎样才能用 CSV 文件解决这个逗号问题?
- python - 停止函数运行两次
- c++ - QT 中用于 gstreamer 视频传输的 C++ UDP 侦听器
- webpack - 将ckeditor集成到jhipster实体网页