mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-06-08 12:47:13 +08:00
feat(ShaderStage): 将基类从CanvasItem改为Node2D并添加类名
feat(LightGun): 添加长度属性和粒子发射控制 refactor(TickTool): 修改millseconds参数类型并添加动画关键帧修改功能 feat(Bear): 添加新攻击类型6并优化攻击5的子弹生成逻辑
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
class_name TickTool
|
||||
|
||||
static func millseconds(ms: int):
|
||||
static func millseconds(ms: float):
|
||||
return await WorldManager.tree.create_timer(ms / 1000.0).timeout
|
||||
static func frame(count: int = 1):
|
||||
for i in range(count):
|
||||
@@ -8,3 +8,15 @@ static func frame(count: int = 1):
|
||||
static func until(predicate: Callable):
|
||||
while not predicate.call():
|
||||
await frame()
|
||||
static func modifyAnimationKey(animator: AnimationPlayer, name: String, track: NodePath, trackType: Animation.TrackType, time: float, value: Variant):
|
||||
var animation = animator.get_animation(name)
|
||||
var trackIdx = animation.find_track(track, trackType)
|
||||
var keyIdx = animation.track_find_key(trackIdx, time)
|
||||
var inHandle
|
||||
var outHandle
|
||||
if trackType == Animation.TrackType.TYPE_BEZIER:
|
||||
inHandle = animation.bezier_track_get_key_in_handle(trackIdx, keyIdx)
|
||||
outHandle = animation.bezier_track_get_key_out_handle(trackIdx, keyIdx)
|
||||
animation.track_set_key_value(trackIdx, keyIdx, [value, inHandle.x, inHandle.y, outHandle.x, outHandle.y])
|
||||
else:
|
||||
animation.track_set_key_value(trackIdx, keyIdx, [value])
|
||||
|
||||
Reference in New Issue
Block a user