如何更改脚本中的精灵?

时间:2018-10-17 00:54:36

标签: godot gdscript

我正尝试制作一个约会模拟游戏,以作为第一个易于编程的简单游戏。我不知道如何更改脚本中的字符精灵。

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()

1 个答案:

答案 0 :(得分:0)

只需将texture属性设置为所需的纹理即可。您还可以preload纹理,然后仅切换它们而不必再次加载它们。

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变量,但是并没有改变精灵的纹理。在您用texturetexture =分配新的图像之前,set_texture仍将引用先前的图像。在这方面,Gdscript与Python相对相似,因此我建议看一下Ned Batchelder的演讲Facts and myths about Python names and Values