From 41b0eed0a9a1a2baabaea76c5951affd8e0b44dc Mon Sep 17 00:00:00 2001 From: Lenheart <947330670@qq.com> Date: Fri, 13 Dec 2024 20:48:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9EAni=20=20=E6=88=90=E5=91=98?= =?UTF-8?q?=E5=82=A8=E5=AD=98Ani=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseClass/AnimationClass/AnimationClass.nut | 11 ++++++++--- sqr/User/Object/ActiveObject/GameObjectClass.nut | 14 ++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 sqr/User/Object/ActiveObject/GameObjectClass.nut diff --git a/sqr/Core/BaseClass/AnimationClass/AnimationClass.nut b/sqr/Core/BaseClass/AnimationClass/AnimationClass.nut index 3ec71b2..fd63f79 100644 --- a/sqr/Core/BaseClass/AnimationClass/AnimationClass.nut +++ b/sqr/Core/BaseClass/AnimationClass/AnimationClass.nut @@ -27,16 +27,19 @@ class Animation extends Actor { //Ani类型 Type = "normal"; + //Ani路径 + AniPath = null; //附加选项 AdditionalOptions = null; constructor(...) { + base.constructor(); + //精灵帧数组 SpriteArr = []; //帧数组 FrameArr = []; - base.constructor(); //判断是否有特殊处理 if (vargv.len() > 1) { @@ -46,6 +49,7 @@ class Animation extends Actor { InitData(vargv[0]); } + function InitData(Data) { local Buf; if (type(Data) == "table") { @@ -94,6 +98,7 @@ class Animation extends Actor { } if (Buf) { + AniPath = Buf.filepath; AnimationFlag = Buf.Flag; FrameArr = Buf.Frame; foreach(FrameObj in FrameArr) { @@ -120,8 +125,8 @@ class Animation extends Actor { error("创建Ani失败,找不到Ani数据"); } - //初始化完毕设置大小为第0帧大小否则天空 地板等依靠大小的初始化会有问题 - SetSize(SpriteArr[0].GetSize()); + //初始化完毕 如果是第一次初始化 而非重新构造 设置大小为第0帧大小否则天空 地板等依靠大小的初始化会有问题 + if (CurrentIndexT == 0) SetSize(SpriteArr[0].GetSize()); } //被添加时 要刷新一下当前帧 diff --git a/sqr/User/Object/ActiveObject/GameObjectClass.nut b/sqr/User/Object/ActiveObject/GameObjectClass.nut new file mode 100644 index 0000000..2f0fc0e --- /dev/null +++ b/sqr/User/Object/ActiveObject/GameObjectClass.nut @@ -0,0 +1,14 @@ +/* +文件名:GameObjectClass.nut +路径:User/Object/ActiveObject/GameObjectClass.nut +创建日期:2024-12-13 12:22 +文件用途:游戏对象 +*/ +//游戏对象命名空间 +GameObject <- {}; + +//仅作为基类控制 不承载任何逻辑 +class GameObject.BaseClass extends BaseObject { + + +} \ No newline at end of file