Ren-py:为什么这不起作用?

时间:2016-06-06 11:27:37

标签: python renpy

我希望根据变量加载图像" ImgVal"

$ ImgVal = []
$ image bob = "b_neutral_%s.png" % ImgVal
$ image bob_sad = "b_sad_%s.png" % ImgVal
$ image bob_happy = "b_happy_%s.png" % ImgVal

1 个答案:

答案 0 :(得分:0)

%运算符传递的值必须是字符串类型(如果使用%(val_name)s而不是%s,则必须是字典。)

例如:

ImgVal = 1
# some calculation to evaluate Imgval
print "b_neutral_%s.png" % str(ImgVal) # cast ImgVal from int to str

请注意,如果你想使用一个数组,你需要一些这样的结构:

ImgVal = [1, 2, 3, 4]
for i in ImgVal:
    print "b_neutral_%s.png" % str(i)

编辑:

我从未使用过renpy,但是在查看有关using python的文档中,您正在错误地使用$符号,您应该只将它用于原始python代码。 %运算符只是python,因此您必须使用它并计算字符串,然后将其传递给renpy。这可能可能工作:

$ ImgVal = "h1c1"
$ img_str = "b_neutral_%s.png" % ImgVal
image bob = img_str
$ img_str = "b_sad_%s.png" % ImgVal
image bob_sad = img_str
$ img_str = "b_happy_%s.png" % ImgVal
image bob_happy = img_str

我唯一能告诉您的是,您错误地使用了$,并且您的第一个示例中的字符串格式错误。