admin管理员组

文章数量:1609936

前言:

前一段时间尝试用godot添加sprite2d动画时,发现数量太多,一个个添加会很麻烦

于是我尝试去找有没有快捷的方法,但是没有太多相关的技巧分享。

看到csdn上有一个godot 4 通过代码动态生成动画并保存到场景文件,但是和个人的需求还是有些出入,于是参考这个案例,自己编了一个代码。

工程文件:

代码:

@tool
extends EditorScript

func _run():
	#建立变量,在此处修改sprite2d图路径
	var texturename = "fbody_nude"
	var texturepath = "res://素材//%s.png"%texturename
	var scenepath = "res://animationplayer.tscn"
	var sprite2d = Sprite2D.new()
	sprite2d.name = texturename
	var animationplayer:AnimationPlayer
	var scene
	#查重
	if (ResourceLoader.exists(scenepath)):
		print("场景已存在")
		scene = ResourceLoader.load(scenepath)
		#打开场景
		EditorInterface.open_scene_from_path(scenepath)
		animationplayer = get_scene()
		#检查精灵图是否重复
		if (animationplayer.has_node("%s/%s"%[animationplayer.get_path(),sprite2d.name])):
			sprite2d = animationplayer.get_node(texturename)
		#精灵图不重复,建立新的精灵图
		else:
			CreateSprite2d(animationplayer,sprite2d,texturename,texturepath,16,20)
	else:
		animationplayer = AnimationPlayer.new()
		scene = PackedScene.new()
		#打开场景
		scenepack(scene,animationplayer,scenepath)
		EditorInterface.open_scene_from_path(scenepath)
		animationplayer =

本文标签: 图表批量精灵代码动画