#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 复合动画脚本 - 结合旋转和跳跃效果 """ from core.script_system import ScriptBase import math class ComboAnimatorScript(ScriptBase): def __init__(self): super().__init__() self.time = 0.0 self.original_pos = None self.is_active = True def start(self): self.log("复合动画脚本启动!") self.original_pos = self.gameObject.getPos() def update(self, dt): if not self.is_active: return self.time += dt # 旋转效果 current_hpr = self.gameObject.getHpr() new_h = current_hpr.getX() + 45.0 * dt self.gameObject.setHpr(new_h, current_hpr.getY(), current_hpr.getZ()) # 跳跃效果 if self.original_pos: bounce_offset = abs(math.sin(self.time * 3.0)) * 1.0 self.gameObject.setZ(self.original_pos.getZ() + bounce_offset) def on_destroy(self): self.log("复合动画脚本停止")