您现在的位置是:网站首页 > 博客日记 >

原神编程之无限动画

作者:YXN-python 阅读量:76 发布日期:2023-02-28

众所周知,《原神》在进入游戏前有个无限阶梯的动画,那么如何实现的呢?请看下面代码:

def yuanshen_infinite_animation():
    # 创建矩阵,四个动画0123,可过渡的为0-1,1-2,1-3,2-3,2-0,3-0
    # 下面0 代表不可行,1 代表可行,例如第一行 为:0动画从0动画到所有动画的过渡可行性
    tset2 = [[0, 1, 0, 0],
             [0, 0, 1, 1],
             [1, 0, 0, 1],
             [1, 0, 0, 0]]
    pos = 0  # 初始动画编号
    n = 0  # 执行次数,为避免死循环
    while True:
        x = random.choice(range(10)) % 4  # 随机生成一个动画
        while tset2[pos][x] != 1:  # 如果此动画到另一动画不可过渡,则随机生成一个可过度的动画为止
            x = random.choice(range(10)) % 4
        print(x, end='')  # 打印动画
        pos = x  # 将上一个动画传到下个循环衔接下一动画

        n += 1  # 为避免内存卡死设置一个循环次数
        if n > 50:
            return None

yuanshen_infinite_animation()

YXN-python

2023-02-28