26 Commits

Author SHA1 Message Date
1c49649c00 refactor(hero): 重构英雄攻击系统并重命名文件 2025-11-20 16:48:23 +08:00
51f32b1d29 refactor(战斗系统): 重构攻击处理逻辑并优化击退机制
- 将闪避、暴击和击退的概率检查统一为checkChance方法
- 移除HeroAtkComp类并清理无用代码
- 新增clearTalBuffByAttr方法用于清除特定属性的天赋buff
- 修改HeroViewComp.do_atked方法支持可选击退参数
- 移除Attrs.BACK属性及相关配置
2025-11-20 16:48:14 +08:00
b4fd807ddc feat(天赋系统): 添加天赋执行次数功能并实现必暴效果
为天赋系统添加count字段控制执行次数,并实现C_ATK、C_SKILL、C_MSKILL三种必暴效果类型
2025-11-20 16:22:36 +08:00
ff4ce76482 fix: 修复技能属性引用问题并移除无用代码
- 在Skill.ts中修改Attrs为浅拷贝避免引用问题
- 移除HeroAtk.ts中未使用的casterModel变量
2025-11-20 15:19:27 +08:00
8113ec671f refactor(技能系统): 统一额外伤害参数命名从exr_dmg改为ext_dmg
修改Skill.ts和SACastSystem.ts中的参数命名,保持代码一致性
2025-11-20 15:11:59 +08:00
5a81704379 refactor(hero): 重构天赋系统使用统一管理方式
- 将分散的天赋属性管理改为统一的Talents记录
- 添加addTalent和consumeTalent方法来管理天赋状态
- 修改技能系统使用新的天赋管理接口
2025-11-20 14:51:26 +08:00
f2ec48bd2b feat(天赋系统): 重构天赋buff处理逻辑并添加vType支持
- 在TalSlot接口和talConf配置中添加vType字段区分数值型和百分比型buff
- 重构HeroAttrsComp中BUFFS_TAL数据结构,改为以天赋uuid为key的映射
- 实现新的addTalBuff和clearTalBuff方法处理天赋buff
- 在TalComp中添加BUFF类型天赋的触发处理
2025-11-20 14:35:29 +08:00
94d5aa8920 refactor(hero): 重构天赋触发机制和属性类型
将天赋触发值从布尔类型改为数值类型以支持更灵活的触发条件
修改天赋配置描述和数值以更准确反映效果
优化天赋触发逻辑,支持同时检查多个天赋
添加天赋触发后的具体效果处理
2025-11-19 16:51:36 +08:00
bcaa377cf6 refactor(英雄技能): 重构天赋触发逻辑和技能施放系统
- 将HeroAttrsComp中的isDSill和isWFuny改为talTrigger结构体
- 移除TalComp中不再使用的checkTriggers和checkIsTrigger方法
- 优化SACastSystem中的技能施放逻辑,分离天赋处理代码块
- 为Skill.load方法添加damage参数
- 重命名executeCast返回变量为castSucess以提高可读性
2025-11-19 16:03:19 +08:00
e577ed976c feat(技能系统): 添加目标数量配置并优化目标选择逻辑
- 在SkillSet枚举中添加t_num字段用于配置技能目标数量
- 修改sTargets方法,根据技能配置中的t_num确定最大目标数量
- 重构findNearbyEnemies方法,实现基于距离和位置偏差的目标排序
- 添加对技能范围配置的灵活处理,支持range和dis字段
2025-11-19 15:39:57 +08:00
209d550e87 fix(SACastSystem): 修复技能目标选择逻辑并添加默认值
当sDamageTargets未找到目标时,回退到使用sDefaultTargets获取默认目标
同时为createSkill方法的isWFuny参数添加默认值false
2025-11-19 15:37:34 +08:00
5935b20094 refactor(game): 统一游戏地平线高度并优化技能目标选择
将GameSet中的GAME_LINE从0调整为120,并在英雄和怪物位置配置中使用该常量
简化SACastSystem中的目标选择逻辑,移除未使用的治疗和BUFF目标选择方法
使用BoxSet.GAME_LINE作为技能目标的默认Y坐标
2025-11-19 14:59:50 +08:00
78ac2e949f feat(英雄系统): 优化天赋触发机制和技能施放逻辑
重构HeroAttrsComp组件结构,新增天赋触发相关属性
调整SACastSystem技能施放逻辑,支持风怒和双施天赋效果
删除无用的SCastSystem.ts.meta文件
2025-11-19 11:18:11 +08:00
9f809b1ffa feat(技能系统): 添加最大技能自动施放开关并重构施法逻辑
- 在HeroSkillsComp中添加max_auto字段控制最大技能自动施放
- 重构SACastSystem的施法逻辑,增加返回值判断
- 新增manualCast和manualCastMax方法支持手动施法
- 删除废弃的SCastSystem文件
2025-11-19 10:34:37 +08:00
e42bdbb671 refactor(天赋系统): 优化天赋触发逻辑和代码结构
重构 TalComp 类的触发检查方法,将 checkIsTrigger 拆分为 getTriggers 和 checkIsTrigger
简化 SACastSystem 中的天赋触发判断逻辑,使用新的 checkIsTrigger 返回值
2025-11-19 10:34:15 +08:00
9798930879 feat(技能系统): 添加技能类型枚举并重构天赋系统
- 在SkillSet.ts中新增HSSet枚举区分普通攻击、技能和必杀技
- 重构TalSet.ts中的天赋效果枚举,移除N_ATK和N_SKILL类型
- 在HeroSkillsComp中增加hset字段标识技能类型
- 修改SACastSystem以支持根据技能类型触发不同天赋
- 完全重写TalComp组件,实现更完善的天赋触发和效果管理
2025-11-18 23:54:25 +08:00
7b067213c0 feat(天赋系统): 重构天赋系统并添加新天赋效果
- 重构天赋类型和效果枚举,简化触发条件分类
- 添加天赋buff数组支持叠加效果计算
- 实现多种新天赋效果包括风怒、溅射、护盾等
- 修改熟练天赋触发条件从3次改为10次攻击
2025-11-18 16:46:13 +08:00
ab8bb01dee refactor(配置): 重构英雄属性和天赋系统配置
- 将HeroAttrs中的KNOCKBACK和CHAIN_CHANCE重命名为BACK_CHANCE和SILENCE_CHANCE以保持命名一致性
- 简化TalSet.ts中的天赋配置接口,移除冗余字段并优化结构
- 添加新的天赋配置示例
2025-11-18 13:44:44 +08:00
deb224b067 refactor(game): 重构天赋系统配置和组件逻辑
重构天赋系统配置,包括:
1. 调整天赋类型枚举和效果枚举
2. 移除旧的天赋配置数据
3. 简化天赋组件实现
4. 更新设计文档中的天赋描述

同时修正地图组件中的英雄位置坐标和缩放值
2025-11-18 11:00:18 +08:00
078787ccf2 docs(Design): 更新游戏设计文档中的战斗和天赋描述
更新战斗部分的结构,并重新组织天赋系统的描述,使其更清晰易读。修改了天赋触发条件和效果说明,保持文档与实际设计一致。
2025-11-18 08:41:25 +08:00
3daddd6935 docs(Design.md): 更新游戏设计文档,简化核心概念并添加战斗关键词
重写游戏设计文档,移除了详细机制描述,聚焦于核心玩法概念。新增战斗系统关键词定义,包括风怒、护盾、溅射等效果及其天赋增强机制。
2025-11-17 16:57:23 +08:00
46a779633a feat(hero): 添加受击闪光效果并重构相关代码
新增FlashSprite组件实现受击闪光效果
重构HeroAnmComp和HeroViewComp以支持闪光效果
更新多个英雄prefab以包含闪光材质和组件
2025-11-15 11:15:30 +08:00
4af9a6fd9e refactor(hero): 重构英雄属性系统与受击特效
将HeroAttrSystem从HeroAttrsComp中分离为独立文件
删除废弃的05-outline-glow资源文件
优化TalComp.ts中的代码格式
使用FlashSprite替换旧的受击特效实现
2025-11-15 10:52:39 +08:00
a468c6c774 docs: 添加英雄天赋系统开发计划文档
添加详细的天赋系统开发计划文档,包含项目概述、阶段划分、任务清单和使用建议
2025-11-13 11:57:58 +08:00
60ca6f1d14 Merge branch 'oh/10171' of http://git.eoxnet.com/pan/heros into oh/10171 2025-11-12 14:46:29 +08:00
86cd78e3c2 feat(skill): 添加新的攻击动画和预制体,移除旧的攻击预制体
- 新增atk06.anim动画文件和对应的meta文件
- 新增atk_f1.prefab和atk_f2.prefab攻击预制体及meta文件
- 移除旧的atk_s5.prefab攻击预制体及meta文件
2025-11-12 14:46:28 +08:00
62 changed files with 4253 additions and 2047 deletions

Binary file not shown.

View File

@@ -1 +0,0 @@
{"ver":"1.2.0","importer":"directory","imported":true,"uuid":"551a2611-69c0-45ae-bfc6-37f056a34b33","files":[],"subMetas":{},"userData":{}}

View File

@@ -1,41 +0,0 @@
{
"__type__": "cc.Material",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"_native": "",
"_effectAsset": {
"__uuid__": "cfeeea4f-db9c-42cd-a0f7-fc5cb37bd3d7",
"__expectedType__": "cc.EffectAsset"
},
"_techIdx": 0,
"_defines": [
{
"USE_TEXTURE": true
}
],
"_states": [
{
"rasterizerState": {},
"depthStencilState": {},
"blendState": {
"targets": [
{}
]
}
}
],
"_props": [
{
"glowColor": {
"__type__": "cc.Color",
"r": 0,
"g": 0,
"b": 0,
"a": 255
},
"glowWidth": 0.003,
"glowThreshold": 0.645
}
]
}

View File

@@ -1 +0,0 @@
{"ver":"1.0.21","importer":"material","imported":true,"uuid":"2fcd55a9-38ca-45aa-9164-68e48aaf51ce","files":[".json"],"subMetas":{},"userData":{}}

View File

@@ -1 +0,0 @@
{"ver":"1.0.21","importer":"material","imported":true,"uuid":"974af3c9-d7ee-449f-a5df-cd8e2dd49188","files":[".json"],"subMetas":{},"userData":{}}

View File

@@ -1 +0,0 @@
{"ver":"1.2.0","importer":"directory","imported":true,"uuid":"7d369c63-9191-4323-abcc-edda5799a410","files":[],"subMetas":{},"userData":{}}

View File

@@ -1,169 +0,0 @@
// Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd.
CCEffect %{
techniques:
- passes:
- vert: sprite-vs:vert
frag: sprite-fs:frag
depthStencilState:
depthTest: false
depthWrite: false
blendState:
targets:
- blend: true
blendSrc: src_alpha
blendDst: one_minus_src_alpha
blendDstAlpha: one_minus_src_alpha
rasterizerState:
cullMode: none
properties:
alphaThreshold: { value: 0.5 }
glowColor: { value: [1, 1, 1, 1], editor: { type: color } }
glowWidth: { value: 0.05, editor: { slide: true, range: [0, 0.3], step: 0.001 } }
glowThreshold: { value: 1, editor: { slide: true, range: [0, 1], step: 0.001 } }
}%
CCProgram sprite-vs %{
precision highp float;
#include <builtin/uniforms/cc-global>
#if USE_LOCAL
#include <builtin/uniforms/cc-local>
#endif
#if SAMPLE_FROM_RT
#include <common/common-define>
#endif
in vec3 a_position;
in vec2 a_texCoord;
in vec4 a_color;
out vec4 color;
out vec2 uv0;
vec4 vert () {
vec4 pos = vec4(a_position, 1);
#if USE_LOCAL
pos = cc_matWorld * pos;
#endif
#if USE_PIXEL_ALIGNMENT
pos = cc_matView * pos;
pos.xyz = floor(pos.xyz);
pos = cc_matProj * pos;
#else
pos = cc_matViewProj * pos;
#endif
uv0 = a_texCoord;
#if SAMPLE_FROM_RT
CC_HANDLE_RT_SAMPLE_FLIP(uv0);
#endif
color = a_color;
return pos;
}
}%
CCProgram sprite-fs %{
precision highp float;
#include <builtin/internal/embedded-alpha>
#include <builtin/internal/alpha-test>
in vec4 color;
uniform FSConstants {
vec4 glowColor;
float glowWidth;
float glowThreshold;
};
#if USE_TEXTURE
in vec2 uv0;
#pragma builtin(local)
layout(set = 2, binding = 12) uniform sampler2D cc_spriteTexture;
#endif
vec4 getTextureColor (sampler2D mainTexture, vec2 uv) {
if (uv.x > 1.0 || uv.x < 0.0 || uv.y > 1.0 || uv.y < 0.0) {
return vec4(0.0, 0.0, 0.0, 0.0);
}
return texture(mainTexture, uv);
}
float getColorAlpha (float angle, float dist) {
// 角度转弧度,公式为:弧度 = 角度 * (pi / 180)
float radian = angle * 3.14 / 180.0;
vec2 newUV = uv0 + vec2(dist * cos(radian), dist * sin(radian));
vec4 color = getTextureColor(cc_spriteTexture, newUV);
return color.a;
}
float getAverageAlpha (float dist) {
float totalAlpha = 0.0;
totalAlpha += getColorAlpha(0.0, dist);
totalAlpha += getColorAlpha(30.0, dist);
totalAlpha += getColorAlpha(60.0, dist);
totalAlpha += getColorAlpha(90.0, dist);
totalAlpha += getColorAlpha(120.0, dist);
totalAlpha += getColorAlpha(150.0, dist);
totalAlpha += getColorAlpha(180.0, dist);
totalAlpha += getColorAlpha(210.0, dist);
totalAlpha += getColorAlpha(240.0, dist);
totalAlpha += getColorAlpha(270.0, dist);
totalAlpha += getColorAlpha(300.0, dist);
totalAlpha += getColorAlpha(330.0, dist);
return totalAlpha * 0.0833;
}
float getGlowAlpha () {
if (glowWidth == 0.0 ) {
return 0.0;
}
float totalAlpha = 0.0;
totalAlpha += getAverageAlpha(glowWidth * 0.1);
totalAlpha += getAverageAlpha(glowWidth * 0.2);
totalAlpha += getAverageAlpha(glowWidth * 0.3);
totalAlpha += getAverageAlpha(glowWidth * 0.4);
totalAlpha += getAverageAlpha(glowWidth * 0.5);
totalAlpha += getAverageAlpha(glowWidth * 0.6);
totalAlpha += getAverageAlpha(glowWidth * 0.7);
totalAlpha += getAverageAlpha(glowWidth * 0.8);
totalAlpha += getAverageAlpha(glowWidth * 0.9);
totalAlpha += getAverageAlpha(glowWidth * 1.0);
return totalAlpha * 0.1;
}
vec4 frag () {
vec4 o = vec4(1, 1, 1, 1);
#if USE_TEXTURE
o *= CCSampleWithAlphaSeparated(cc_spriteTexture, uv0);
#if IS_GRAY
float gray = 0.2126 * o.r + 0.7152 * o.g + 0.0722 * o.b;
o.r = o.g = o.b = gray;
#endif
#endif
float alpha = getGlowAlpha();
if (alpha <= glowThreshold) {
alpha /= glowThreshold;
alpha = -1.0 * (alpha - 1.0) * (alpha - 1.0) * (alpha - 1.0) * (alpha - 1.0) + 1.0;
} else {
alpha = 0.0;
}
vec4 dstColor = glowColor * alpha;
vec4 scrColor = o;
o = scrColor * scrColor.a + dstColor * (1.0 - scrColor.a);
o *= color;
ALPHA_TEST(o);
return o;
}
}%

View File

@@ -1,169 +0,0 @@
// Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd.
CCEffect %{
techniques:
- passes:
- vert: sprite-vs:vert
frag: sprite-fs:frag
depthStencilState:
depthTest: false
depthWrite: false
blendState:
targets:
- blend: true
blendSrc: src_alpha
blendDst: one_minus_src_alpha
blendDstAlpha: one_minus_src_alpha
rasterizerState:
cullMode: none
properties:
alphaThreshold: { value: 0.5 }
glowColor: { value: [1, 1, 1, 1], editor: { type: color } }
glowWidth: { value: 0.05, editor: { slide: true, range: [0, 0.3], step: 0.001 } }
glowThreshold: { value: 1, editor: { slide: true, range: [0, 1], step: 0.001 } }
}%
CCProgram sprite-vs %{
precision highp float;
#include <builtin/uniforms/cc-global>
#if USE_LOCAL
#include <builtin/uniforms/cc-local>
#endif
#if SAMPLE_FROM_RT
#include <common/common-define>
#endif
in vec3 a_position;
in vec2 a_texCoord;
in vec4 a_color;
out vec4 color;
out vec2 uv0;
vec4 vert () {
vec4 pos = vec4(a_position, 1);
#if USE_LOCAL
pos = cc_matWorld * pos;
#endif
#if USE_PIXEL_ALIGNMENT
pos = cc_matView * pos;
pos.xyz = floor(pos.xyz);
pos = cc_matProj * pos;
#else
pos = cc_matViewProj * pos;
#endif
uv0 = a_texCoord;
#if SAMPLE_FROM_RT
CC_HANDLE_RT_SAMPLE_FLIP(uv0);
#endif
color = a_color;
return pos;
}
}%
CCProgram sprite-fs %{
precision highp float;
#include <builtin/internal/embedded-alpha>
#include <builtin/internal/alpha-test>
in vec4 color;
uniform FSConstants {
vec4 glowColor;
float glowWidth;
float glowThreshold;
};
#if USE_TEXTURE
in vec2 uv0;
#pragma builtin(local)
layout(set = 2, binding = 12) uniform sampler2D cc_spriteTexture;
#endif
vec4 getTextureColor (sampler2D mainTexture, vec2 uv) {
if (uv.x > 1.0 || uv.x < 0.0 || uv.y > 1.0 || uv.y < 0.0) {
return vec4(0.0, 0.0, 0.0, 0.0);
}
return texture(mainTexture, uv);
}
float getColorAlpha (float angle, float dist) {
// 角度转弧度,公式为:弧度 = 角度 * (pi / 180)
float radian = angle * 3.14 / 180.0;
vec2 newUV = uv0 + vec2(dist * cos(radian), dist * sin(radian));
vec4 color = getTextureColor(cc_spriteTexture, newUV);
return color.a;
}
float getAverageAlpha (float dist) {
float totalAlpha = 0.0;
totalAlpha += getColorAlpha(0.0, dist);
totalAlpha += getColorAlpha(30.0, dist);
totalAlpha += getColorAlpha(60.0, dist);
totalAlpha += getColorAlpha(90.0, dist);
totalAlpha += getColorAlpha(120.0, dist);
totalAlpha += getColorAlpha(150.0, dist);
totalAlpha += getColorAlpha(180.0, dist);
totalAlpha += getColorAlpha(210.0, dist);
totalAlpha += getColorAlpha(240.0, dist);
totalAlpha += getColorAlpha(270.0, dist);
totalAlpha += getColorAlpha(300.0, dist);
totalAlpha += getColorAlpha(330.0, dist);
return totalAlpha * 0.0833;
}
float getGlowAlpha () {
if (glowWidth == 0.0 ) {
return 0.0;
}
float totalAlpha = 0.0;
totalAlpha += getAverageAlpha(glowWidth * 0.1);
totalAlpha += getAverageAlpha(glowWidth * 0.2);
totalAlpha += getAverageAlpha(glowWidth * 0.3);
totalAlpha += getAverageAlpha(glowWidth * 0.4);
totalAlpha += getAverageAlpha(glowWidth * 0.5);
totalAlpha += getAverageAlpha(glowWidth * 0.6);
totalAlpha += getAverageAlpha(glowWidth * 0.7);
totalAlpha += getAverageAlpha(glowWidth * 0.8);
totalAlpha += getAverageAlpha(glowWidth * 0.9);
totalAlpha += getAverageAlpha(glowWidth * 1.0);
return totalAlpha * 0.1;
}
vec4 frag () {
vec4 o = vec4(1, 1, 1, 1);
#if USE_TEXTURE
o *= CCSampleWithAlphaSeparated(cc_spriteTexture, uv0);
#if IS_GRAY
float gray = 0.2126 * o.r + 0.7152 * o.g + 0.0722 * o.b;
o.r = o.g = o.b = gray;
#endif
#endif
float alpha = getGlowAlpha();
if (alpha <= glowThreshold) {
alpha /= glowThreshold;
alpha = -1.0 * (alpha - 1.0) * (alpha - 1.0) * (alpha - 1.0) * (alpha - 1.0) + 1.0;
} else {
alpha = 0.0;
}
vec4 dstColor = glowColor * alpha;
vec4 scrColor = o;
o = scrColor * scrColor.a + dstColor * (1.0 - scrColor.a);
o *= color;
ALPHA_TEST(o);
return o;
}
}%

View File

@@ -1 +0,0 @@
{"ver":"1.7.1","importer":"effect","imported":true,"uuid":"40c25c17-db22-4ae7-8d3a-f73cbb6d36ba","files":[".json"],"subMetas":{},"userData":{"combinations":[{}]}}

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "f9iLivg4dHhJksWCjvY9/w"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "6cZu2rl69OR5+l1nRZerhd"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "e4zlwtvd5P+aVOci53P5lC"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "beiAlRY51OUIUqmpz9SWoV"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": false, "enabledContactListener": false,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "b4+2TVK9JC7p5lhflMVjuO"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "35IEDlwu9Ch7vrlwlSwNdw"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "406uXfKLJEbab+NVEqD1aS" "fileId": "406uXfKLJEbab+NVEqD1aS"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "71mx/IdRVDz5H8mz6V7BsE"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -296,6 +299,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "1dn32Q7fxNOrkpyNeazdIo" "fileId": "1dn32Q7fxNOrkpyNeazdIo"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "devH7HFXJH/5FNGHYdEhes"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -316,14 +341,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -331,7 +356,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -344,15 +369,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -362,8 +381,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -371,7 +396,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -387,7 +412,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -402,7 +427,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -418,7 +443,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -433,7 +458,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -443,7 +468,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -463,7 +488,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -482,14 +507,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -497,7 +522,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -510,23 +535,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -534,7 +559,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -550,7 +575,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -565,7 +590,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -581,7 +606,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -596,7 +621,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -617,7 +642,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -636,14 +661,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -651,7 +676,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -664,20 +689,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -685,7 +710,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -701,7 +726,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -716,7 +741,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -732,7 +757,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -747,7 +772,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -761,14 +786,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -776,7 +801,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -789,20 +814,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -810,7 +835,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -826,7 +851,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -841,7 +866,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -857,7 +882,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -872,7 +897,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -889,7 +914,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -917,7 +942,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -932,13 +957,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -956,7 +980,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -990,7 +1014,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1027,16 +1051,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "1dn32Q7fxNOrkpyNeazdIo" "fileId": "1dn32Q7fxNOrkpyNeazdIo"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "65HGZeqCFG6I9S+QXhV5Iy"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "1dn32Q7fxNOrkpyNeazdIo" "fileId": "1dn32Q7fxNOrkpyNeazdIo"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "e4XOt+7BBBWYCH6pjBzbHe"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -935,13 +960,12 @@
"__type__": "873f8d+SolMEo8DiTTxZRh4", "__type__": "873f8d+SolMEo8DiTTxZRh4",
"_name": "", "_name": "",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {},
"node": { "node": {
"__id__": 1 "__id__": 1
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +983,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1017,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1054,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -22,23 +22,20 @@
"__id__": 2 "__id__": 2
}, },
{ {
"__id__": 12 "__id__": 14
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 44 "__id__": 46
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 53
},
{ {
"__id__": 55 "__id__": 55
}, },
@@ -50,10 +47,13 @@
}, },
{ {
"__id__": 61 "__id__": 61
},
{
"__id__": 63
} }
], ],
"_prefab": { "_prefab": {
"__id__": 63 "__id__": 65
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -106,10 +106,13 @@
}, },
{ {
"__id__": 9 "__id__": 9
},
{
"__id__": 11
} }
], ],
"_prefab": { "_prefab": {
"__id__": 11 "__id__": 13
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -299,6 +302,28 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "1dn32Q7fxNOrkpyNeazdIo" "fileId": "1dn32Q7fxNOrkpyNeazdIo"
}, },
{
"__type__": "954e43Y+QJHNIUpmqTCWA7A",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 12
},
"hitFlashMaterial": {
"__uuid__": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"__expectedType__": "cc.Material"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "d05NTLi3pF055eJmK0otVJ"
},
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
@@ -319,14 +344,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 13 "__id__": 15
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 12 "__id__": 14
}, },
"asset": { "asset": {
"__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b", "__uuid__": "e1b8a315-ece3-41a2-941e-a66861753f1b",
@@ -334,7 +359,7 @@
}, },
"fileId": "c46/YsCPVOJYA4mWEpNYRx", "fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": { "instance": {
"__id__": 14 "__id__": 16
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -347,15 +372,9 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 15
},
{ {
"__id__": 17 "__id__": 17
}, },
{
"__id__": 18
},
{ {
"__id__": 19 "__id__": 19
}, },
@@ -365,8 +384,14 @@
{ {
"__id__": 21 "__id__": 21
}, },
{
"__id__": 22
},
{ {
"__id__": 23 "__id__": 23
},
{
"__id__": 25
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -374,7 +399,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -390,7 +415,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -405,7 +430,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -421,7 +446,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -436,7 +461,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -446,7 +471,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 22 "__id__": 24
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -466,7 +491,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 16 "__id__": 18
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -485,14 +510,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 25 "__id__": 27
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 24 "__id__": 26
}, },
"asset": { "asset": {
"__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c", "__uuid__": "50c3d5e4-49f8-4bd7-a15b-cda359a0ae5c",
@@ -500,7 +525,7 @@
}, },
"fileId": "5fqU0L3/FOhKaco5UkHuWT", "fileId": "5fqU0L3/FOhKaco5UkHuWT",
"instance": { "instance": {
"__id__": 26 "__id__": 28
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -513,23 +538,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 27
},
{ {
"__id__": 29 "__id__": 29
}, },
{
"__id__": 30
},
{ {
"__id__": 31 "__id__": 31
}, },
{ {
"__id__": 32 "__id__": 32
}, },
{
"__id__": 33
},
{ {
"__id__": 34 "__id__": 34
},
{
"__id__": 36
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -537,7 +562,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -553,7 +578,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -568,7 +593,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -584,7 +609,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -599,7 +624,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 33 "__id__": 35
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -620,7 +645,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 28 "__id__": 30
}, },
"propertyPath": [ "propertyPath": [
"_lscale" "_lscale"
@@ -639,14 +664,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 36 "__id__": 38
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 35 "__id__": 37
}, },
"asset": { "asset": {
"__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90", "__uuid__": "5b4ca49e-0f12-4478-b56d-bf8198b36b90",
@@ -654,7 +679,7 @@
}, },
"fileId": "0d6ZXmA5dHkZxoGONDL2sE", "fileId": "0d6ZXmA5dHkZxoGONDL2sE",
"instance": { "instance": {
"__id__": 37 "__id__": 39
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -667,20 +692,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 38
},
{ {
"__id__": 40 "__id__": 40
}, },
{
"__id__": 41
},
{ {
"__id__": 42 "__id__": 42
}, },
{ {
"__id__": 43 "__id__": 43
},
{
"__id__": 44
},
{
"__id__": 45
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -688,7 +713,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -704,7 +729,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -719,7 +744,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -735,7 +760,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -750,7 +775,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 39 "__id__": 41
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -764,14 +789,14 @@
"__id__": 1 "__id__": 1
}, },
"_prefab": { "_prefab": {
"__id__": 45 "__id__": 47
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 44 "__id__": 46
}, },
"asset": { "asset": {
"__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338", "__uuid__": "ae4493bd-cbcc-4392-921c-3e2b0fcd5338",
@@ -779,7 +804,7 @@
}, },
"fileId": "91yoyAQGNDm5ziI7NUChZ+", "fileId": "91yoyAQGNDm5ziI7NUChZ+",
"instance": { "instance": {
"__id__": 46 "__id__": 48
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -792,20 +817,20 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 47
},
{ {
"__id__": 49 "__id__": 49
}, },
{
"__id__": 50
},
{ {
"__id__": 51 "__id__": 51
}, },
{ {
"__id__": 52 "__id__": 52
},
{
"__id__": 53
},
{
"__id__": 54
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -813,7 +838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -829,7 +854,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -844,7 +869,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -860,7 +885,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -875,7 +900,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 48 "__id__": 50
}, },
"propertyPath": [ "propertyPath": [
"_active" "_active"
@@ -892,7 +917,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 54 "__id__": 56
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -920,7 +945,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 56 "__id__": 58
}, },
"anm": { "anm": {
"__id__": 5 "__id__": 5
@@ -941,7 +966,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 58 "__id__": 60
}, },
"_id": "" "_id": ""
}, },
@@ -959,7 +984,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 60 "__id__": 62
}, },
"enabledContactListener": true, "enabledContactListener": true,
"bullet": false, "bullet": false,
@@ -993,7 +1018,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 62 "__id__": 64
}, },
"tag": 0, "tag": 0,
"_group": 4, "_group": 4,
@@ -1030,16 +1055,16 @@
"targetOverrides": null, "targetOverrides": null,
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 44 "__id__": 46
}, },
{ {
"__id__": 35 "__id__": 37
}, },
{ {
"__id__": 24 "__id__": 26
}, },
{ {
"__id__": 12 "__id__": 14
} }
] ]
} }

View File

@@ -0,0 +1,141 @@
[
{
"__type__": "cc.AnimationClip",
"_name": "atk06",
"_objFlags": 0,
"__editorExtras__": {
"embeddedPlayerGroups": []
},
"_native": "",
"sample": 24,
"speed": 1,
"wrapMode": 1,
"enableTrsBlending": false,
"_duration": 0.4166666666666667,
"_hash": 500763545,
"_tracks": [
{
"__id__": 1
}
],
"_exoticAnimation": null,
"_events": [
{
"frame": 0.20833333333333334,
"func": "",
"params": []
},
{
"frame": 0.20833333333333334,
"func": "atk",
"params": []
}
],
"_embeddedPlayers": [],
"_additiveSettings": {
"__id__": 7
},
"_auxiliaryCurveEntries": []
},
{
"__type__": "cc.animation.ObjectTrack",
"_binding": {
"__type__": "cc.animation.TrackBinding",
"path": {
"__id__": 2
},
"proxy": null
},
"_channel": {
"__id__": 5
}
},
{
"__type__": "cc.animation.TrackPath",
"_paths": [
{
"__id__": 3
},
{
"__id__": 4
},
"spriteFrame"
]
},
{
"__type__": "cc.animation.HierarchyPath",
"path": "Node"
},
{
"__type__": "cc.animation.ComponentPath",
"component": "cc.Sprite"
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 6
}
},
{
"__type__": "cc.ObjectCurve",
"_times": [
0,
0.041666666666666664,
0.08333333333333333,
0.125,
0.16666666666666666,
0.20833333333333334,
0.25,
0.2916666666666667,
0.3333333333333333,
0.375
],
"_values": [
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@1009c",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@de62b",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@5b01f",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@254e1",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@b42a1",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@4ba4a",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@b9773",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@70740",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@8a2ee",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@04fca",
"__expectedType__": "cc.SpriteFrame"
}
]
},
{
"__type__": "cc.AnimationClipAdditiveSettings",
"enabled": false,
"refClip": null
}
]

View File

@@ -0,0 +1,13 @@
{
"ver": "2.0.3",
"importer": "animation-clip",
"imported": true,
"uuid": "a5ce1bb6-3970-4acd-8d89-1c2060d395cc",
"files": [
".cconb"
],
"subMetas": {},
"userData": {
"name": "atk06"
}
}

View File

@@ -1,7 +1,7 @@
[ [
{ {
"__type__": "cc.Prefab", "__type__": "cc.Prefab",
"_name": "atk_s5", "_name": "atk_f1",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_native": "", "_native": "",
@@ -13,7 +13,7 @@
}, },
{ {
"__type__": "cc.Node", "__type__": "cc.Node",
"_name": "atk_s5", "_name": "atk_f1",
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": null, "_parent": null,

View File

@@ -8,6 +8,6 @@
], ],
"subMetas": {}, "subMetas": {},
"userData": { "userData": {
"syncNodeName": "atk_s5" "syncNodeName": "atk_f1"
} }
} }

View File

@@ -0,0 +1,549 @@
[
{
"__type__": "cc.Prefab",
"_name": "atk_f2",
"_objFlags": 0,
"__editorExtras__": {},
"_native": "",
"data": {
"__id__": 1
},
"optimizationPolicy": 0,
"persistent": false
},
{
"__type__": "cc.Node",
"_name": "atk_f2",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": null,
"_children": [
{
"__id__": 2
},
{
"__id__": 8
}
],
"_active": true,
"_components": [
{
"__id__": 16
},
{
"__id__": 18
},
{
"__id__": 20
},
{
"__id__": 22
},
{
"__id__": 24
}
],
"_prefab": {
"__id__": 26
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
},
"_mobility": 0,
"_layer": 1073741824,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "Node",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 1
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 3
},
{
"__id__": 5
}
],
"_prefab": {
"__id__": 7
},
"_lpos": {
"__type__": "cc.Vec3",
"x": -5.881,
"y": 40.545,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1.8,
"y": -1.6,
"z": 1
},
"_mobility": 0,
"_layer": 1073741824,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": ""
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 4
},
"_contentSize": {
"__type__": "cc.Size",
"width": 96,
"height": 96
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "93pNmvtQlLSqtTgIepyEmA"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 6
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": {
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23@1009c",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_fillType": 0,
"_sizeMode": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": {
"__uuid__": "2423272e-e63b-4736-b15b-30b40cf98a23",
"__expectedType__": "cc.SpriteAtlas"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "12eKc8gltBz50frJCS5+ww"
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__id__": 0
},
"fileId": "3arqAMBz1MvoXBzeDaL5M/",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
"__type__": "cc.Node",
"_name": "T",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 1
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 9
},
{
"__id__": 11
},
{
"__id__": 13
}
],
"_prefab": {
"__id__": 15
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 40,
"y": 0,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
},
"_mobility": 0,
"_layer": 1073741824,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": ""
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 8
},
"_enabled": true,
"__prefab": {
"__id__": 10
},
"_contentSize": {
"__type__": "cc.Size",
"width": 80,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "8b9HY9QmBA5qB0sBawCFqZ"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 8
},
"_enabled": false,
"__prefab": {
"__id__": 12
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": {
"__uuid__": "cb93c900-b440-4571-91d1-7da1636e3d73@46c83",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_fillType": 0,
"_sizeMode": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "e0lXniMh9C77aUoKhV9TG0"
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 8
},
"_enabled": true,
"__prefab": {
"__id__": 14
},
"_alignFlags": 45,
"_target": null,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_horizontalCenter": 0,
"_verticalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 25,
"_originalHeight": 25,
"_alignMode": 2,
"_lockFlags": 0,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "efBhSYnd1Kz6YztMYe2EVs"
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__id__": 0
},
"fileId": "0b1uG2sstDMZRfqgTMWTrz",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 17
},
"_contentSize": {
"__type__": "cc.Size",
"width": 80,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "63NP9yq3hEUKD/OZZZ5t7x"
},
{
"__type__": "cc.Animation",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 19
},
"playOnLoad": true,
"_clips": [
{
"__uuid__": "a5ce1bb6-3970-4acd-8d89-1c2060d395cc",
"__expectedType__": "cc.AnimationClip"
}
],
"_defaultClip": {
"__uuid__": "a5ce1bb6-3970-4acd-8d89-1c2060d395cc",
"__expectedType__": "cc.AnimationClip"
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "c2RDvksalG2acL3tyGCY0t"
},
{
"__type__": "57aabs7TE1J5obTAZczc+64",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 21
},
"atk_x": 0,
"atk_y": 0,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "35nW0iQNBH2bqkWAr3MVkQ"
},
{
"__type__": "cc.RigidBody2D",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 23
},
"enabledContactListener": true,
"bullet": false,
"awakeOnLoad": true,
"_group": 1,
"_type": 1,
"_allowSleep": false,
"_gravityScale": 1,
"_linearDamping": 0,
"_angularDamping": 0,
"_linearVelocity": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_angularVelocity": 0,
"_fixedRotation": false,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "57cr7S0YpK4oEZCavwXtIX"
},
{
"__type__": "cc.BoxCollider2D",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 25
},
"tag": 0,
"_group": 1,
"_density": 1,
"_sensor": true,
"_friction": 0.2,
"_restitution": 0,
"_offset": {
"__type__": "cc.Vec2",
"x": 50,
"y": 50
},
"_size": {
"__type__": "cc.Size",
"width": 100,
"height": 100
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "ebw5mObxNGGKxnJXDgX5gl"
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__id__": 0
},
"fileId": "c46/YsCPVOJYA4mWEpNYRx",
"instance": null,
"targetOverrides": null
}
]

View File

@@ -0,0 +1,13 @@
{
"ver": "1.1.50",
"importer": "prefab",
"imported": true,
"uuid": "176585b6-cd83-47d5-b05e-ebf01096cd94",
"files": [
".json"
],
"subMetas": {},
"userData": {
"syncNodeName": "atk_f2"
}
}

View File

@@ -1,108 +1,38 @@
# 游戏设计文档 # 游戏设计文档
## 游戏核心概念 ## 游戏核心概念
本游戏是一款单局制肉鸽Roguelike塔防游戏玩家通过策略性地选择每波怪物清理后的奖励来强化自己的英雄队伍最终挑战强大的Boss。 本游戏是一款单局制肉鸽Roguelike自走,战斗,塔防 游戏玩家通过策略性地选择每波怪物清理后的奖励来强化自己的英雄队伍最终挑战强大的Boss。
## 核心玩法机制
### 1. 自动战斗系统 ## 战斗
- 所有攻击和战斗均为自动进行,玩家无需手动操作 技能: 普攻技能,一般技能,必杀技能
- 玩家只需在每波怪物清理后选择奖励选项 普攻和一般技能自动触发,必杀技能默认自动触发,可以手动触发
- 英雄会根据配置自动释放技能攻击敌人
### 2. 奖励选择系统 ## 天赋
- 每波怪物清理后提供三种奖励选项:弱、一般、强 风怒: 普通攻击3次后, 目标额外收到1次150%伤害
- 不同奖励选项消耗不同的金币数量 溅射: 普通攻击3次后, 会对目标100像素外的敌人额外造成30%伤害
- 奖励类型包括:英雄强化、技能升级、装备获取、属性提升,新技能获得等
- 每个奖励有一个战力评分,评分越高,能力越强,消耗金币越多
### 3. 金币经济系统 回蓝: 普通攻击3次后恢复5%的蓝值
- 金币通过击败怪物固定掉落获得 回血: 普通攻击3次后, 恢复5%的生命值
- 总体金币数量是固定的,需要玩家合理分配
- 金币用于购买奖励选项,策略性消费是游戏核心
### 4. 特殊事件系统 冰封: 普通攻击3次后, 获得5%的冻结率(可叠加,触发清零) :冻结受到伤害的目标,目标无法移动和攻击(cd继续) 3秒后自动解冻
- 特定关卡设置事件管卡 沉默: 普通攻击3次后, 获得5%的沉默率(可叠加,触发清零) 沉默收到伤害的目标目标一般技能和必杀技能技能cd清零
- 事件管卡提供特殊奖励: 击晕: 普通攻击3次后, 获得5%的击晕率(可叠加,触发清零) 击晕收到伤害的目标目标无移动和cd暂停
- 额外金币奖励 击退: 普通攻击3次后, 获得5%的击退率(可叠加,触发清零) :击退收到伤害的目标, cd减少5点,
- 额外属性加成 会心: 普通攻击1次后, 获得5%的暴击率(可叠加,触发清零)
- 额外技能奖励
- 稀有装备获取
### 5. 评分与成就系统 熟练: 普通攻击10次后, 获得下2次一般技能触发2次
- 建立评分机制评价:
- 装备评分:根据装备属性加成计算
- 技能评分:根据技能效果计算
- 杀怪数量评分:根据击败怪物数量计算
- 特殊事件奖励评分:根据特殊事件奖励计算
- 受伤评分:根据英雄受伤hp值和受伤次数进行评分
- DPS评分:根据英雄每秒伤害能力计算
- 最大伤害值评分:根据英雄最大伤害值计算
- 高评分可解锁特殊成就和奖励
## 游戏进程设计 反击: 被攻击3次后, 给于目标50%的伤害
护盾: 被攻击3次后获得20%生命值护盾
减伤: 被攻击3次后下1次伤害减50%
### 关卡结构 背水: 每失去50%生命值获得下10次普通攻击暴击
1. **普通关卡**:基础怪物波次,提供常规奖励选择
2. **精英关卡**:更强的精英怪物,提供高级奖励
3. **Boss关卡**强大的Boss敌人胜利后获得丰厚奖励
4. **事件关卡**:特殊事件触发,提供独特奖励或挑战
### 难度递增机制 勤勉: 每升1级获得下5次技能暴击
- 随着关卡推进,怪物强度逐步提升
- 后期关卡出现组合怪物群,需要策略应对
- 特殊机制随进度解锁,增加游戏深度
## 英雄系统设计
### 英雄类型
- **战士型**:高生命值,近战输出
- **远程型**:远程攻击,较高攻击力
- **法师职业**:魔法攻击,范围伤害
- **辅助类型**:支援型技能,团队增益
- **刺客类型**:高爆发,机动性强
### 英雄成长
- 三选一奖励中,有属性提升,有技能升级,有新技能解锁,有装备获取
- 属性提升:
- 提升英雄基础属性,包括生命值、攻击力、防御力、速度等
- 提升属性值根据奖励评分确定
- 技能升级:
- 升级普通攻击技能或大招技能
- 升级后技能效果提升,消耗金币
- 新技能解锁:
- 解锁新技能,增加英雄战斗能力
- 解锁新技能后,可选择升级或不升级
- 装备获取:
- 获取新装备,增加英雄属性加成
- 装备属性根据奖励评分确定
### 技能系统
- 每个英雄拥初始拥有1个普通攻击技能和大招技能,技能消耗mp值和固定cd
- 后续通过,每次的奖励可选择升级普通攻击技能、大招技能或新技能
-
## 策略深度设计
### Build构筑
- 玩家通过不同奖励选择形成独特的英雄Build
- 鼓励尝试不同的流派和策略组合
- 多样化的成长路径提供重玩价值
### 资源管理
- 固定金币总量要求玩家合理分配资源
- 不同奖励选项的价值评估增加策略性
- 短期收益与长期发展之间的权衡
## 界面与交互设计
### 核心界面
1. **战斗界面**:显示英雄、怪物、战斗过程
2. **奖励选择界面**:三选一奖励展示与选择
3. **英雄信息界面**:查看英雄属性、技能、装备
4. **关卡进度界面**:显示当前关卡进度和目标
### 交互逻辑
- 简化操作,主要通过点击进行选择
- 清晰的视觉反馈显示战斗结果
- 直观的奖励预览帮助玩家决策
## 特殊状态说明
冰封: 目标无法移动和攻击(cd继续) 3秒后自动解冻
沉默: 目标一般技能和必杀技能技能cd清零
击晕: 目标无移动和cd暂停
击退: 后退15像素cd减少5点,

View File

@@ -14,19 +14,11 @@ export enum BoxSet {
DEFAULT = 1, DEFAULT = 1,
MONSTER = 2, MONSTER = 2,
HERO = 4, HERO = 4,
// MONSTER_SKILL = 8,
// HERO_SKILL = 16,
// PLAYER=32,
// BOSS=64,
// BOX_WIDTH = 64,
// BOX_HEIGHT = 64,
//地图边界 //地图边界
LETF_END = -420, LETF_END = -420,
RIGHT_END = 420, RIGHT_END = 420,
//游戏地平线 //游戏地平线
GAME_LINE = 0, GAME_LINE = 120,
//攻击距离 //攻击距离
} }

View File

@@ -87,10 +87,10 @@ export enum Attrs {
FREEZE_CHANCE = 52, // 冰冻概率 FREEZE_CHANCE = 52, // 冰冻概率
BURN_CHANCE = 53, // 燃烧概率 BURN_CHANCE = 53, // 燃烧概率
STUN_CHANCE = 54, // 眩晕概率 STUN_CHANCE = 54, // 眩晕概率
KNOCKBACK = 55, // 击退概率 BACK_CHANCE = 55, // 击退概率
SLOW_CHANCE = 56, // 减速概率 SLOW_CHANCE = 56, // 减速概率
POISON_CHANCE = 57, // 中毒概率 POISON_CHANCE = 57, // 中毒概率
CHAIN_CHANCE = 58, // 连锁概率 SILENCE_CHANCE = 58, // 沉默概率
EXPLOSION_CHANCE = 59, // 爆炸概率 EXPLOSION_CHANCE = 59, // 爆炸概率
// ========== 增益效果属性 (60-69) ========== // ========== 增益效果属性 (60-69) ==========
@@ -108,7 +108,6 @@ export enum Attrs {
// ========== 武器进化相关 (70-79) ========== // ========== 武器进化相关 (70-79) ==========
PUNCTURE = 70, // 穿刺次数 PUNCTURE = 70, // 穿刺次数
PUNCTURE_DMG = 71, // 穿刺伤害 PUNCTURE_DMG = 71, // 穿刺伤害
BACK = 73, // 被击退概率(兼容旧代码)
MOVE_SPEED = 74, // 移动速度 MOVE_SPEED = 74, // 移动速度
BURN = 75, // 易伤效果 BURN = 75, // 易伤效果
WFUNY = 77, // 风怒 WFUNY = 77, // 风怒
@@ -199,10 +198,10 @@ export const AttrsType: Record<Attrs, BType> = {
[Attrs.FREEZE_CHANCE]: BType.RATIO, // 冰冻概率 - 百分比型 [Attrs.FREEZE_CHANCE]: BType.RATIO, // 冰冻概率 - 百分比型
[Attrs.BURN_CHANCE]: BType.RATIO, // 燃烧概率 - 百分比型 [Attrs.BURN_CHANCE]: BType.RATIO, // 燃烧概率 - 百分比型
[Attrs.STUN_CHANCE]: BType.RATIO, // 眩晕概率 - 百分比型 [Attrs.STUN_CHANCE]: BType.RATIO, // 眩晕概率 - 百分比型
[Attrs.KNOCKBACK]: BType.RATIO, // 击退 - 百分比型 [Attrs.BACK_CHANCE]: BType.RATIO, // 击退概率 - 百分比型
[Attrs.SLOW_CHANCE]: BType.RATIO, // 减速概率 - 百分比型 [Attrs.SLOW_CHANCE]: BType.RATIO, // 减速概率 - 百分比型
[Attrs.POISON_CHANCE]: BType.RATIO, // 中毒概率 - 百分比型 [Attrs.POISON_CHANCE]: BType.RATIO, // 中毒概率 - 百分比型
[Attrs.CHAIN_CHANCE]: BType.RATIO, // 连锁概率 - 百分比型 [Attrs.SILENCE_CHANCE]: BType.RATIO, // 沉默概率 - 百分比型
[Attrs.EXPLOSION_CHANCE]: BType.RATIO, // 爆炸概率 - 百分比型 [Attrs.EXPLOSION_CHANCE]: BType.RATIO, // 爆炸概率 - 百分比型
// ========== 增益效果属性(百分比型) ========== // ========== 增益效果属性(百分比型) ==========
@@ -220,7 +219,6 @@ export const AttrsType: Record<Attrs, BType> = {
// ========== 武器进化相关(混合类型) ========== // ========== 武器进化相关(混合类型) ==========
[Attrs.PUNCTURE]: BType.VALUE, // 穿刺次数 - 数值型 [Attrs.PUNCTURE]: BType.VALUE, // 穿刺次数 - 数值型
[Attrs.PUNCTURE_DMG]: BType.RATIO, // 穿刺伤害 - 百分比型 [Attrs.PUNCTURE_DMG]: BType.RATIO, // 穿刺伤害 - 百分比型
[Attrs.BACK]: BType.RATIO, // 被击退概率(兼容)- 百分比型
[Attrs.MOVE_SPEED]: BType.VALUE, // 移动速度 - 数值型 [Attrs.MOVE_SPEED]: BType.VALUE, // 移动速度 - 数值型
[Attrs.BURN]: BType.RATIO, // 易伤效果 - 百分比型 [Attrs.BURN]: BType.RATIO, // 易伤效果 - 百分比型
[Attrs.WFUNY]: BType.RATIO, // 未知特殊属性 - 百分比型 [Attrs.WFUNY]: BType.RATIO, // 未知特殊属性 - 百分比型

View File

@@ -1,5 +1,12 @@
// ========== 从 HeroAttrs.ts 导入属性相关定义 ========== // ========== 从 HeroAttrs.ts 导入属性相关定义 ==========
import { Attrs, NeAttrs,BType, getAttrs, AttrsType, isRatioAttr } from "./HeroAttrs"; import { Attrs, NeAttrs,BType, getAttrs, AttrsType, isRatioAttr } from "./HeroAttrs";
export enum HSSet {
atk = 0, // 普通攻击
skill = 1, // 一般技能
max = 2, // 必杀技
}
export enum TGroup { export enum TGroup {
Self = 0, // 自身 Self = 0, // 自身
Ally = 1, // 所有敌人 Ally = 1, // 所有敌人
@@ -100,6 +107,7 @@ export enum EType {
- ap: 攻击力百分比 - ap: 攻击力百分比
- cd: 冷却时间 - cd: 冷却时间
- hit_num: 范围攻击 伤害敌人数量 - hit_num: 范围攻击 伤害敌人数量
- t_num: 目标数量
- hit: 穿刺个数 - hit: 穿刺个数
- hitcd: 持续伤害的伤害间隔 - hitcd: 持续伤害的伤害间隔
- speed: 移动速度 - speed: 移动速度

View File

@@ -1,56 +1,70 @@
/** import { count } from "console";
* 天赋系统配置文件
* 支持定义英雄的特殊能力或特性
*/
import { Attrs, BType } from "./HeroAttrs"; import { Attrs, BType } from "./HeroAttrs";
import { SkillSet } from "./SkillSet";
// ========== 枚举定义 ==========
/** /**
* 天赋类型枚举,也是触发条件 * 天赋类型枚举,也是触发条件
*/ */
export enum TalType { export enum TriType {
LEVEL = 1, // 基于特定等级触发 LUP = 1, // 等级触发
LEVEL_UP = 2, // 基于等级升级触发 ATK = 2, //普通攻击触发
ACTION_COUNT = 3, // 基于普通攻击触发, skills[0]计数触发 DMG = 3, // 受伤触发
SKILL_COUNT = 4, // 基于技能触发, > skills[0]计数触发 SKILL = 4, // 技能触发
DAMAGE_COUNT = 5, // 基于受伤次数触发 HPL = 5, // 失去生命值触发
INIT = 6, // 初始触发,如:多1个技能 HPA = 6, // 获得生命值触发
DEAD = 7 // 基于死亡触发 INIT = 7, // 初始触发,如:多1个技能
} DEAD = 8 // 基于死亡触发
/**
* 触发效果
*/
export enum TalEType {
ATTRS = 1, // 属性修改
SKILL = 2, // 技能触发
SKILL_MORE = 3, // 天生多1个技能
} }
export enum TalEffet {
DMG=1, // 伤害
HP=2, // 回血 百分比
MP=3, //回蓝 百分比
BUFF = 4, // 暴击率,闪避率等,可叠加的触发后清零
STATS=5, // 状态
WFUNY=6, // 风怒
SPLASH=7, // 溅射
D_SKILL=8, //两次技能
SHIELD=9, // 护盾
LDMG=10, // 减伤
C_ATK=11, // 普工必爆
C_SKILL=12, // 一般技能必暴
C_MSKILL=13, // 必杀技能必暴
}
export enum TalTarget {
SELF = 1, // 自己触发
ENEMY = 2, // 敌人触发
}
export enum TalAttrs {
NON=0,
FREEZE_CHANCE=Attrs.FREEZE_CHANCE, // 冰冻概率
STUN_CHANCE=Attrs.STUN_CHANCE, // 冰冻概率
BACK_CHANCE=Attrs.BACK_CHANCE, // 击退概率
SILENCE_CHANCE=Attrs.SILENCE_CHANCE, // 沉默概率
CRITICAL=Attrs.CRITICAL, // 暴击率
AP=Attrs.AP, // 攻击力
MP=Attrs.MAP, // 魔法
}
/** /**
* 天赋配置接口 * 天赋配置接口
* 定义一个完整的天赋效果 * 定义一个完整的天赋效果
*/ */
export interface ItalConf { export interface ItalConf {
uuid: number; // 天赋ID uuid: number; // 天赋ID
name: string; // 天赋名称 name: string; // 天赋名称
triType: TriType;
target: TalTarget;
effet: TalEffet;
vType:BType; //数值型还是百分比型
value: number; // 触发的效果值如增加10%攻击力, 触发的技能uuid,增加1个技能uuid
attrs?:TalAttrs //触发的attrs效果的对应attrs
Trigger:number //触发值
desc: string; // 天赋描述(说明触发条件和效果) desc: string; // 天赋描述(说明触发条件和效果)
type: TalType; count:number //执行次数,及可以触发的次数
triggerType: TalEType; // 触发效果类型
chance: number; // 触发概率,默认100,`0-100`之间的数字
t_value: number; // 触发的阈值如5级触发一次, 5次攻击触发一次,初始触发)
e_value: number; // 触发的效果值如增加10%攻击力, 触发的技能uuid,增加1个技能uuid
e_name: number; // 触发的特殊值,如具体属性类型, 0表示没有特定值,对应Attrs枚举
e_type: BType; // 效果类型, 主要针对属性修改,是百分比还是固定值
e_scaling: number; // 效果随等级缩放系数,默认1, 0.5表示效果随等级减半
e_count: number; // 触发效果的累计次数如触发2次技能实现召唤2个召唤物
stackable?: boolean; // 是否可堆叠效果默认true
maxStack?: number; // 最大堆叠次数(不设置表示无限制)
} }
// ========== 天赋配置表 ========== // ========== 天赋配置表 ==========
@@ -70,44 +84,44 @@ export interface ItalConf {
* 4. 技能触发类:当特定条件满足时自动触发指定技能 * 4. 技能触发类:当特定条件满足时自动触发指定技能
*/ */
export const talConf: Record<number, ItalConf> = { export const talConf: Record<number, ItalConf> = {
// ========== 等级类天赋 ========== /*** 普通攻击触发 ***/
7001:{uuid:7001,name:"风怒",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.WFUNY,vType:BType.RATIO, value:50,attrs:TalAttrs.NON,
desc:"普通攻击3次后, 立即给与目标150%伤害的额外打击"},
7002:{uuid:7002,name:"溅射",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.SPLASH,vType:BType.RATIO, value:50,attrs:TalAttrs.NON,
desc:"普通攻击3次后, 会对目标100码内的敌人造成30%伤害"},
7003:{uuid:7003,name:"回血",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.SELF,effet:TalEffet.HP,vType:BType.RATIO, value:1,attrs:TalAttrs.NON,
desc:"普通攻击3次后, 会回复10%的生命值"},
7004:{uuid:7004,name:"回蓝",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.SELF,effet:TalEffet.MP,vType:BType.RATIO, value:1,attrs:TalAttrs.NON,
desc:"普通攻击3次后, 会回复10%的蓝值"},
7005:{uuid:7005,name:"冰冻",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.BUFF,vType:BType.RATIO, value:5,attrs:TalAttrs.FREEZE_CHANCE,
desc:"普通攻击3次后, 获得5%的冻结率"},
7006:{uuid:7006,name:"沉默",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.BUFF,vType:BType.RATIO, value:5,attrs:TalAttrs.SILENCE_CHANCE,
desc:"普通攻击3次后, 获得5%的沉默率"},
7007:{uuid:7007,name:"击退",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.BUFF,vType:BType.RATIO, value:5,attrs:TalAttrs.BACK_CHANCE,
desc:"普通攻击3次后, 获得5%的击退率"},
7008:{uuid:7008,name:"会心",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.SELF,effet:TalEffet.BUFF,vType:BType.RATIO, value:5,attrs:TalAttrs.CRITICAL,
desc:"普通攻击3次后, 获得5%的暴击率"},
7009:{uuid:7009,name:"眩晕",triType:TriType.ATK,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.BUFF,vType:BType.RATIO, value:5,attrs:TalAttrs.STUN_CHANCE,
desc:"普通攻击3次后, 获得5%的眩晕率"},
7010:{uuid:7010,name:"熟练",triType:TriType.ATK,Trigger:10,count:1,target:TalTarget.SELF,effet:TalEffet.D_SKILL,vType:BType.RATIO, value:0,attrs:TalAttrs.NON,
desc:"普通攻击10次后, 下次一般技能额外释放1次,伤害100%"},
// 剑意提升 - 刘邦专属 | 每5级 | 攻击力+10% /*** 受伤触发 ***/
7001: {uuid: 7001, name: "剑意提升", desc: "每升5级攻击力增加10%", type: TalType.LEVEL_UP, triggerType: TalEType.ATTRS, 7101:{uuid:7101,name:"反击",triType:TriType.DMG,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.DMG,vType:BType.RATIO, value:50,attrs:TalAttrs.NON,
chance: 100, t_value: 5, e_value: 0.10, e_name: Attrs.AP, e_type: BType.RATIO, e_scaling: 1, e_count: 1, stackable: true, maxStack: 10}, desc:"被攻击3次后, 给于目标50%的伤害"},
7102:{uuid:7102,name:"护盾",triType:TriType.DMG,Trigger:3,count:1,target:TalTarget.SELF,effet:TalEffet.SHIELD,vType:BType.RATIO, value:20,attrs:TalAttrs.NON,
desc:"被攻击3次后, 获得20%的生命值护盾"},
7103:{uuid:7103,name:"减伤",triType:TriType.DMG,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.LDMG,vType:BType.RATIO, value:50,attrs:TalAttrs.NON,
desc:"被攻击3次后, 下1次伤害减50%"},
// 胡服骑射 - 赵武灵王专属 | 每3级 | 攻击速度+5%
7002: {uuid: 7002, name: "胡服骑射", desc: "每升3级攻击速度增加5%", type: TalType.LEVEL_UP, triggerType: TalEType.ATTRS,
chance: 100, t_value: 3, e_value: 0.05, e_name: Attrs.AS, e_type: BType.RATIO, e_scaling: 1.2, e_count: 1, stackable: true, maxStack: 15},
// 运筹帷幄 - 张良专属 | 每4级 | 魔法攻击力+8% /*** 失去血量触发 ***/
7004: {uuid: 7004, name: "运筹帷幄", desc: "每升4级魔法攻击力增加8%", type: TalType.LEVEL_UP, triggerType: TalEType.ATTRS, 7201:{uuid:7201,name:"背水",triType:TriType.HPL,Trigger:50,count:10,target:TalTarget.SELF,effet:TalEffet.C_ATK,vType:BType.VALUE, value:0,attrs:TalAttrs.NON,
chance: 100, t_value: 4, e_value: 0.08, e_name: Attrs.MAP, e_type: BType.RATIO, e_scaling: 1.3, e_count: 1, stackable: true, maxStack: 12}, desc:"每失去50%生命值,获得下10次普通攻击暴击"},
// 后勤保障 - 萧何专属 | 每6级 | 生命回复+3点 /*** 升级触发 ***/
7006: {uuid: 7006, name: "后勤保障", desc: "每升6级生命回复增加3点", type: TalType.LEVEL_UP, triggerType: TalEType.ATTRS, 7301:{uuid:7301,name:"勤勉",triType:TriType.LUP,Trigger:1,count:5,target:TalTarget.SELF,effet:TalEffet.C_SKILL,vType:BType.VALUE, value:0,attrs:TalAttrs.NON,
chance: 100, t_value: 6, e_value: 3, e_name: Attrs.HP_REGEN, e_type: BType.VALUE, e_scaling: 1, e_count: 1, stackable: true, maxStack: 8}, desc:"每升1级,获得下5次技能暴击"},
// 离骚诗韵 - 屈原专属 | 每8次攻击 | 火焰伤害+2%
7101: {uuid: 7101, name: "离骚诗韵", desc: "每攻击8次触发火焰buff,火焰山航海加成增加2%,持续10秒", type: TalType.ACTION_COUNT, triggerType: TalEType.SKILL,
chance: 100, t_value: 8, e_value: SkillSet[6005].uuid, e_name: 0, e_type: BType.VALUE, e_scaling: 1, e_count: 1, stackable: true, maxStack: 15},
// ========== 初始触发类天赋 ==========
// 霸王之威 - 项羽专属 | 初始 | 生命值+100
7201: {uuid: 7201, name: "霸王之威", desc: "初始获得额外100点生命值", type: TalType.INIT, triggerType: TalEType.ATTRS,
chance: 100, t_value: 1, e_value: 100, e_name: Attrs.HP_MAX, e_type: BType.VALUE, e_scaling: 1, e_count: 1, stackable: false},
// 兵圣之道 - 孙武专属 | 初始 | 额外技能
7202: {uuid: 7202, name: "兵圣之道", desc: "初始获得额外一个技能", type: TalType.INIT, triggerType: TalEType.SKILL_MORE,
chance: 100, t_value: 1, e_value: SkillSet[6005].uuid, e_name: 0, e_type: BType.VALUE, e_scaling: 1, e_count: 1, stackable: false},
// ========== 受伤触发类天赋 ==========
// 坚韧意志 - 通用 | 每3次受伤 | 防御力+2点
7301: {uuid: 7301, name: "坚韧意志", desc: "每受伤3次50%纪律,触发[坚韧意志],防御力增加2点,持续10秒", type: TalType.DAMAGE_COUNT, triggerType: TalEType.SKILL,
chance: 50, t_value: 3, e_value: SkillSet[6005].uuid, e_name: 0, e_type: BType.VALUE, e_scaling: 1, e_count: 1, stackable: true, maxStack: 12},
// ========== 特定等级触发类天赋 ==========
// 坚韧意志 - 通用 | 每3次受伤 | 防御力+2点
7401: {uuid: 7401, name: "坚韧意志", desc: "20级是获得[坚韧意志]技能,防御力增加2点,持续10秒", type: TalType.LEVEL, triggerType: TalEType.SKILL_MORE,
chance: 100, t_value: 20, e_value: SkillSet[6005].uuid, e_name: 0, e_type: BType.VALUE, e_scaling: 1, e_count: 1, stackable: true, maxStack: 12},
}; };

View File

@@ -1,5 +1,5 @@
import { v3 } from "cc" import { v3 } from "cc"
import { FacSet } from "./GameSet" import { BoxSet, FacSet } from "./GameSet"
import { smc } from "../SingletonModuleComp" import { smc } from "../SingletonModuleComp"
import { BuffConf } from "./SkillSet" import { BuffConf } from "./SkillSet"
@@ -46,23 +46,23 @@ export const getMonList = ()=>{
} }
export const HeroPos={ export const HeroPos={
0:{pos:v3(-240,120,0)}, 0:{pos:v3(-240,BoxSet.GAME_LINE,0)},
1:{pos:v3(0,120,0)}, 1:{pos:v3(0,BoxSet.GAME_LINE,0)},
2:{pos:v3(0,120,0)}, 2:{pos:v3(0,BoxSet.GAME_LINE,0)},
} }
export const MonSet = { export const MonSet = {
0:{pos:v3(240,130,0)}, 0:{pos:v3(240,BoxSet.GAME_LINE+10,0)},
1:{pos:v3(240,110,0)}, 1:{pos:v3(240,BoxSet.GAME_LINE-10,0)},
2:{pos:v3(300,130,0)}, 2:{pos:v3(300,BoxSet.GAME_LINE+10,0)},
3:{pos:v3(300,110,0)}, 3:{pos:v3(300,BoxSet.GAME_LINE-10,0)},
4:{pos:v3(320,130,0)}, 4:{pos:v3(320,BoxSet.GAME_LINE+10,0)},
5:{pos:v3(320,110,0)}, 5:{pos:v3(320,BoxSet.GAME_LINE-10,0)},
6:{pos:v3(360,130,0)}, 6:{pos:v3(360,BoxSet.GAME_LINE+10,0)},
7:{pos:v3(360,110,0)}, 7:{pos:v3(360,BoxSet.GAME_LINE-10,0)},
8:{pos:v3(400,130,0)}, 8:{pos:v3(400,BoxSet.GAME_LINE+10,0)},
9:{pos:v3(400,110,0)}, 9:{pos:v3(400,BoxSet.GAME_LINE-10,0)},
10:{pos:v3(440,130,0)}, 10:{pos:v3(440,BoxSet.GAME_LINE+10,0)},
11:{pos:v3(440,110,0)}, 11:{pos:v3(440,BoxSet.GAME_LINE-10,0)},
} }
export enum MonStart { export enum MonStart {

View File

@@ -1,17 +1,19 @@
import { _decorator, Animation, AnimationState, CCClass, Component, } from "cc"; import { _decorator, Animation, AnimationState, CCClass, Component, } from "cc";
import { HeroViewComp } from "./HeroViewComp"; import { HeroViewComp } from "./HeroViewComp";
import { FacSet } from "../common/config/GameSet"; import { FacSet } from "../common/config/GameSet";
import { FlashSprite } from "./hit-flash-white/scripts/FlashSprite";
const { ccclass, property } = _decorator; const { ccclass, property } = _decorator;
@ccclass('HeroAnmComp') @ccclass('HeroAnmComp')
export default class HeroAnmComp extends Component{ export default class HeroAnmComp extends Component{
fsSprite:FlashSprite = null!;
private anmcon:any=null private anmcon:any=null
private _hasStop = true; private _hasStop = true;
private default_anim:string='Idle' private default_anim:string='Idle'
anms:any[]=["idle","move","stun","dead","buff","atk0","atk1","atk2","max0","max1"] anms:any[]=["idle","move","stun","dead","buff","atk0","atk1","atk2","max0","max1"]
onLoad () { onLoad () {
this.anmcon=this.node.getComponent(Animation) this.anmcon=this.node.getComponent(Animation)
this.fsSprite = this.node.getComponent(FlashSprite);
this.anmcon.on(Animation.EventType.FINISHED, this.onAnimationFinished, this); this.anmcon.on(Animation.EventType.FINISHED, this.onAnimationFinished, this);
} }
@@ -25,6 +27,9 @@ export default class HeroAnmComp extends Component{
this.anmcon.play(this.default_anim) this.anmcon.play(this.default_anim)
} }
} }
atked(){
this.fsSprite.clickFlash();
}
move () { move () {
if(this.anmcon.getState("move").isPlaying) return if(this.anmcon.getState("move").isPlaying) return
this.anmcon.play("move") this.anmcon.play("move")

View File

@@ -8,14 +8,7 @@ import { HeroViewComp } from "./HeroViewComp";
import { DamageQueueComp, DamageEvent, DamageQueueHelper } from "./DamageQueueComp"; import { DamageQueueComp, DamageEvent, DamageQueueHelper } from "./DamageQueueComp";
import { smc } from "../common/SingletonModuleComp"; import { smc } from "../common/SingletonModuleComp";
/** 业务层对象 */
@ecs.register('HeroAtk')
export class HeroAtkComp extends ecs.Comp {
/** 业务层组件移除时,重置所有数据为默认值 */
reset() {
}
}
/** 最终伤害数据接口 */ /** 最终伤害数据接口 */
interface FinalData { interface FinalData {
damage: number; damage: number;
@@ -94,19 +87,17 @@ export class HeroAtkSystem extends ecs.ComblockSystem implements ecs.ISystemUpd
* @returns * @returns
*/ */
private doAttack(target: ecs.Entity, damageEvent: DamageEvent): FinalData { private doAttack(target: ecs.Entity, damageEvent: DamageEvent): FinalData {
const targetModel = target.get(HeroAttrsComp); const targetAttrs = target.get(HeroAttrsComp);
const targetView = target.get(HeroViewComp); const targetView = target.get(HeroViewComp);
let reDate:FinalData={ let reDate:FinalData={
damage:0, damage:0,
isCrit:false, isCrit:false,
isDodge:false, isDodge:false,
} }
if (!targetModel || targetModel.is_dead) return reDate; if (!targetAttrs || targetAttrs.is_dead) return reDate;
// 获取攻击者数据
const caster = damageEvent.caster; const caster = damageEvent.caster;
const casterModel = caster.ent.get(HeroAttrsComp); const attackerModel = caster?.ent?.get(HeroAttrsComp);
if (!casterModel) return reDate;
// 获取技能配置 // 获取技能配置
const skillConf = SkillSet[damageEvent.s_uuid]; const skillConf = SkillSet[damageEvent.s_uuid];
@@ -116,38 +107,40 @@ export class HeroAtkSystem extends ecs.ComblockSystem implements ecs.ISystemUpd
this.onAttacked(target); this.onAttacked(target);
// 闪避判定 // 闪避判定
if (this.checkDodge(targetModel)) { const isDodge =this.checkChance(targetAttrs.Attrs[Attrs.DODGE] || 0);
if (isDodge) {
// TODO: 触发闪避视图表现 // TODO: 触发闪避视图表现
reDate.isDodge=true; reDate.isDodge=true;
return reDate; return reDate;
} }
// 暴击判定 // 暴击判定
const isCrit = this.checkCrit(targetModel.Attrs[Attrs.CRITICAL]); const isCrit = this.checkChance(damageEvent.Attrs[Attrs.CRITICAL]);
if (isCrit) attackerModel?.clearTalBuffByAttr(Attrs.CRITICAL);
// 计算伤害
let damage = this.dmgCount(damageEvent.Attrs,damageEvent.s_uuid); let damage = this.dmgCount(damageEvent.Attrs,damageEvent.s_uuid);
if (isCrit) { if (isCrit) {
damage = Math.floor(damage * (1 + (FightSet.CRIT_DAMAGE + targetModel.Attrs[Attrs.CRITICAL_DMG]) / 100)); damage = Math.floor(damage * (1 + (FightSet.CRIT_DAMAGE + targetAttrs.Attrs[Attrs.CRITICAL_DMG]) / 100));
reDate.isCrit=true; reDate.isCrit=true;
} }
// 伤害计算考虑易伤等debuff // 伤害计算考虑易伤等debuff
damage = this.calculateDamage(targetModel, damage); damage = this.calculateDamage(targetAttrs, damage);
// 护盾吸收 // 护盾吸收
damage =Math.floor(this.absorbShield(targetModel, damage)) damage =Math.floor(this.absorbShield(targetAttrs, damage))
if (damage <= 0) return reDate; if (damage <= 0) return reDate;
// 应用伤害到数据层 // 应用伤害到数据层
targetModel.hp -= damage; targetAttrs.hp -= damage;
targetModel.atked_count++; targetAttrs.atked_count++;
//击退判定
const isBack = this.checkChance(damageEvent.Attrs[Attrs.BACK_CHANCE] || 0);
if (isBack) attackerModel?.clearTalBuffByAttr(Attrs.BACK_CHANCE);
// ✅ 触发视图层表现(伤害数字、受击动画、后退) // ✅ 触发视图层表现(伤害数字、受击动画、后退)
if (targetView) { if (targetView) targetView.do_atked(damage, isCrit, damageEvent.s_uuid, isBack);
targetView.do_atked(damage, isCrit, damageEvent.s_uuid);
}
// 检查死亡 // 检查死亡
if (targetModel.hp <= 0) { if (targetAttrs.hp <= 0) {
this.doDead(target); this.doDead(target);
// ✅ 触发死亡视图表现 // ✅ 触发死亡视图表现
if (targetView) { if (targetView) {
@@ -156,7 +149,7 @@ export class HeroAtkSystem extends ecs.ComblockSystem implements ecs.ISystemUpd
} }
if (this.debugMode) { if (this.debugMode) {
console.log(`[HeroAtkSystem] ${targetModel.hero_name} 受到 ${damage} 点伤害 (暴击: ${isCrit})`); console.log(`[HeroAtkSystem] ${targetAttrs.hero_name} 受到 ${damage} 点伤害 (暴击: ${isCrit})`);
} }
reDate.damage=damage; reDate.damage=damage;
@@ -182,35 +175,19 @@ export class HeroAtkSystem extends ecs.ComblockSystem implements ecs.ISystemUpd
this.onDeath(entity); this.onDeath(entity);
if (this.debugMode) { if (this.debugMode) {
console.log(`[HeroBattleSystem] ${model.hero_name} 死亡`); console.log(`[HeroAtkSystem] ${model.hero_name} 死亡`);
} }
} }
/**
*
*/
private checkDodge(model: HeroAttrsComp): boolean {
if (model.Attrs[Attrs.DODGE] > 0) {
const random = Math.random() * 100;
if (random < model.Attrs[Attrs.DODGE]) {
if (this.debugMode) {
console.log(`[HeroBattleSystem] ${model.hero_name} 闪避了攻击`);
}
return true;
}
}
return false;
}
/** /**
* *
*/ */
private checkCrit(critRate: number): boolean { private checkChance(rate: number): boolean {
if (critRate > 0) { if (rate <= 0) return false;
const random = Math.random() * 100; const r = Math.random() * 100;
return random < critRate; return r < rate;
}
return false;
} }
/** /**

View File

@@ -1,12 +1,14 @@
import { Timer } from "db://oops-framework/core/common/timer/Timer";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS"; import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { smc } from "../common/SingletonModuleComp";
import { Attrs, AttrsType, BType, NeAttrs } from "../common/config/HeroAttrs"; import { Attrs, AttrsType, BType, NeAttrs } from "../common/config/HeroAttrs";
import { BuffConf, SkillSet } from "../common/config/SkillSet"; import { BuffConf } from "../common/config/SkillSet";
import { HeroInfo, AttrSet, HeroUpSet } from "../common/config/heroSet"; import { HeroInfo, AttrSet } from "../common/config/heroSet";
import { HeroSkillsComp } from "./HeroSkills"; import { HeroSkillsComp } from "./HeroSkills";
interface talTrigger{
value:number
count:number
}
@ecs.register('HeroAttrs') @ecs.register('HeroAttrs')
export class HeroAttrsComp extends ecs.Comp { export class HeroAttrsComp extends ecs.Comp {
Ebus:any=null! Ebus:any=null!
@@ -33,6 +35,8 @@ export class HeroAttrsComp extends ecs.Comp {
shield: number = 0; // 当前护盾 shield: number = 0; // 当前护盾
Attrs: any = []; // 最终属性数组经过Buff计算后 Attrs: any = []; // 最终属性数组经过Buff计算后
NeAttrs: any = []; // 负面状态数组 NeAttrs: any = []; // 负面状态数组
Talents: Record<number, talTrigger> = {};
BUFFS_TAL: Record<number, {count:number,BType:BType,attrIndex:number,value: number}> = {};
// ==================== 技能距离缓存 ==================== // ==================== 技能距离缓存 ====================
maxSkillDistance: number = 0; // 最远技能攻击距离缓存受MP影响 maxSkillDistance: number = 0; // 最远技能攻击距离缓存受MP影响
@@ -45,6 +49,7 @@ export class HeroAttrsComp extends ecs.Comp {
/** 临时型buff数组 - 按时间自动过期 */ /** 临时型buff数组 - 按时间自动过期 */
BUFFS_TEMP: Record<number, Array<{value: number, BType: BType, remainTime: number}>> = {}; BUFFS_TEMP: Record<number, Array<{value: number, BType: BType, remainTime: number}>> = {};
// ==================== 标记状态 ==================== // ==================== 标记状态 ====================
is_dead: boolean = false; is_dead: boolean = false;
is_count_dead: boolean = false; is_count_dead: boolean = false;
@@ -72,6 +77,8 @@ export class HeroAttrsComp extends ecs.Comp {
// 清空现有 buff/debuff // 清空现有 buff/debuff
this.BUFFS = {}; this.BUFFS = {};
this.BUFFS_TEMP = {}; this.BUFFS_TEMP = {};
this.BUFFS_TAL = {};
this.Talents = {};
// 获取英雄配置 // 获取英雄配置
const heroInfo = HeroInfo[this.hero_uuid]; const heroInfo = HeroInfo[this.hero_uuid];
@@ -179,6 +186,12 @@ export class HeroAttrsComp extends ecs.Comp {
} }
} }
} }
for (const key in this.BUFFS_TAL) {
const buff = this.BUFFS_TAL[Number(key)];
if (buff.attrIndex === attrIndex && buff.BType === BType.VALUE) {
totalValue += buff.value;
}
}
// 3. 收集所有百分比型 buff/debuff // 3. 收集所有百分比型 buff/debuff
let totalRatio = 0; let totalRatio = 0;
@@ -199,6 +212,12 @@ export class HeroAttrsComp extends ecs.Comp {
} }
} }
} }
for (const key in this.BUFFS_TAL) {
const buff = this.BUFFS_TAL[Number(key)];
if (buff.attrIndex === attrIndex && buff.BType === BType.RATIO) {
totalRatio += buff.value;
}
}
// 4. 根据属性类型计算最终值 // 4. 根据属性类型计算最终值
const attrType = AttrsType[attrIndex]; const attrType = AttrsType[attrIndex];
@@ -388,6 +407,48 @@ export class HeroAttrsComp extends ecs.Comp {
} }
addTalBuff(t_uuid: number, attrIndex?: number, bType?: BType, value: number = 0) {
if (attrIndex === undefined || bType === undefined) return;
const buff = this.BUFFS_TAL[t_uuid];
if (!buff) {
this.BUFFS_TAL[t_uuid] = { count: 1, BType: bType, attrIndex, value };
} else {
buff.count += 1;
buff.value += value;
}
this.recalculateSingleAttr(attrIndex);
}
clearTalBuff(t_uuid: number) {
const buff = this.BUFFS_TAL[t_uuid];
if (!buff) return;
const attrIndex = buff.attrIndex;
delete this.BUFFS_TAL[t_uuid];
this.recalculateSingleAttr(attrIndex);
}
clearTalBuffByAttr(attrIndex: number) {
let changed = false;
for (const key in this.BUFFS_TAL) {
const b = this.BUFFS_TAL[Number(key)];
if (b && b.attrIndex === attrIndex) {
delete this.BUFFS_TAL[Number(key)];
changed = true;
}
}
if (changed) this.recalculateSingleAttr(attrIndex);
}
addTalent(eff: number, value: number) {
const t = this.Talents[eff] || { value: 0, count: 0 };
t.value = value;
t.count += 1;
this.Talents[eff] = t;
}
consumeTalent(eff: number): boolean {
const t = this.Talents[eff];
if (!t || t.count <= 0) return false;
t.count -= 1;
return true;
}
reset() { reset() {
// 重置为初始状态 // 重置为初始状态
@@ -410,6 +471,8 @@ export class HeroAttrsComp extends ecs.Comp {
this.NeAttrs = []; this.NeAttrs = [];
this.BUFFS = {}; this.BUFFS = {};
this.BUFFS_TEMP = {}; this.BUFFS_TEMP = {};
this.BUFFS_TAL = {};
this.Talents = {};
// 重置技能距离缓存 // 重置技能距离缓存
this.maxSkillDistance = 0; this.maxSkillDistance = 0;
this.minSkillDistance = 0; this.minSkillDistance = 0;
@@ -425,126 +488,10 @@ export class HeroAttrsComp extends ecs.Comp {
this.atk_count = 0; this.atk_count = 0;
this.atked_count = 0; this.atked_count = 0;
} }
} }
/**
* ==================== 英雄属性更新系统 ====================
*
* 按照 ECS 设计理念:
* - ComponentHeroAttrsComp存储数据
* - SystemHeroAttrSystem处理业务逻辑
*
* 系统职责:
* 1. 每帧更新临时 Buff时间递减过期移除
* 2. 每帧更新 HP/MP 自然回复
* 3. 限制属性值在合理范围内
*
/**
* 使用方式:
* 在 RootSystem 中注册此系统,它会自动每帧更新所有拥有 HeroAttrsComp 的实体
*/
@ecs.register('HeroAttrSystem')
export class HeroAttrSystem extends ecs.ComblockSystem
implements ecs.ISystemUpdate, ecs.IEntityEnterSystem, ecs.ISystemFirstUpdate {
// ==================== 调试统计(可选)====================
private entityCount: number = 0; // 本帧处理的实体数
private frameCount: number = 0; // 总帧数
private debugMode: boolean = false; // 是否启用调试模式
private timer:Timer=new Timer(1)
/**
* 过滤器:只处理拥有 HeroAttrsComp 的实体
*/
filter(): ecs.IMatcher {
return ecs.allOf(HeroAttrsComp);
}
/**
* 实体首次进入系统时调用(每个实体只调用一次)
*/
entityEnter(e: ecs.Entity): void {
if(!smc.mission.play || smc.mission.pause) return;
const model = e.get(HeroAttrsComp);
if (!model) return;
console.log(`[HeroAttrSystem] 英雄进入系统: ${model.hero_name} (uuid: ${model.hero_uuid})`);
}
/**
* 系统首次更新前调用(整个系统只调用一次)
*/
firstUpdate(): void {
console.log("[HeroAttrSystem] 系统首次更新");
}
/**
* 每帧更新(为每个英雄调用一次)
*
* ⭐ 关键理解:
* - 如果有 3 个英雄,这个方法每帧会被调用 3 次
* - 每次调用处理不同的实体 e
* - 这是正确的设计,不是 bug
*/
update(e: ecs.Entity): void {
if(!smc.mission.play || smc.mission.pause) return;
const model = e.get(HeroAttrsComp);
if (!model || model.is_dead) return;
// 统计:记录本帧处理的实体数
this.entityCount++;
// 调试日志(可选,调试时启用)
if (this.debugMode) {
console.log(` [${this.entityCount}] 更新英雄: ${model.hero_name}, HP: ${model.hp.toFixed(2)}`);
}
// 1. 更新临时 Buff/Debuff时间递减过期自动移除
model.updateTemporaryBuffsDebuffs(this.dt);
// 记录MP变化前的值
const oldMp = model.mp;
if(this.timer.update(this.dt)){
// 2. HP/MP 自然回复(业务规则)
model.mp += HeroUpSet.MP
model.hp += HeroUpSet.HP
}
// 3. 限制属性值在合理范围内
if (model.mp > model.Attrs[Attrs.MP_MAX]) {
model.mp = model.Attrs[Attrs.MP_MAX];
}
if (model.hp > model.Attrs[Attrs.HP_MAX]) {
model.hp = model.Attrs[Attrs.HP_MAX];
}
// 4. 如果MP发生变化更新最大技能距离缓存最小距离不受MP影响
if (model.mp !== oldMp) {
const skillsComp = e.get(HeroSkillsComp);
if (skillsComp) {
model.updateSkillDistanceCache(skillsComp);
}
}
// 每 60 帧输出一次统计
this.frameCount++;
if (this.frameCount % 60 === 0 && this.entityCount === 1) {
console.log(`[HeroAttrSystem] 第 ${this.frameCount} 帧,处理 ${this.entityCount} 个英雄`);
}
// 注意:显示更新由 HeroViewComp 负责,这里只处理数据
}
/**
* 启用调试模式(调试时使用)
*/
enableDebug() {
this.debugMode = true;
}
/**
* 禁用调试模式(正式运行)
*/
disableDebug() {
this.debugMode = false;
}
}

View File

@@ -0,0 +1,128 @@
import { Timer } from "db://oops-framework/core/common/timer/Timer";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { smc } from "../common/SingletonModuleComp";
import { Attrs } from "../common/config/HeroAttrs";
import { HeroUpSet } from "../common/config/heroSet";
import { HeroSkillsComp } from "./HeroSkills";
import { HeroAttrsComp } from "./HeroAttrsComp";
/**
* ==================== 英雄属性更新系统 ====================
*
* 按照 ECS 设计理念:
* - ComponentHeroAttrsComp存储数据
* - SystemHeroAttrSystem处理业务逻辑
*
* 系统职责:
* 1. 每帧更新临时 Buff时间递减过期移除
* 2. 每帧更新 HP/MP 自然回复
* 3. 限制属性值在合理范围内
*
/**
* 使用方式:
* 在 RootSystem 中注册此系统,它会自动每帧更新所有拥有 HeroAttrsComp 的实体
*/
@ecs.register('HeroAttrSystem')
export class HeroAttrSystem extends ecs.ComblockSystem
implements ecs.ISystemUpdate, ecs.IEntityEnterSystem, ecs.ISystemFirstUpdate {
// ==================== 调试统计(可选)====================
private entityCount: number = 0; // 本帧处理的实体数
private frameCount: number = 0; // 总帧数
private debugMode: boolean = false; // 是否启用调试模式
private timer:Timer=new Timer(1)
/**
* 过滤器:只处理拥有 HeroAttrsComp 的实体
*/
filter(): ecs.IMatcher {
return ecs.allOf(HeroAttrsComp);
}
/**
* 实体首次进入系统时调用(每个实体只调用一次)
*/
entityEnter(e: ecs.Entity): void {
if(!smc.mission.play || smc.mission.pause) return;
const model = e.get(HeroAttrsComp);
if (!model) return;
console.log(`[HeroAttrSystem] 英雄进入系统: ${model.hero_name} (uuid: ${model.hero_uuid})`);
}
/**
* 系统首次更新前调用(整个系统只调用一次)
*/
firstUpdate(): void {
console.log("[HeroAttrSystem] 系统首次更新");
}
/**
* 每帧更新(为每个英雄调用一次)
*
* ⭐ 关键理解:
* - 如果有 3 个英雄,这个方法每帧会被调用 3 次
* - 每次调用处理不同的实体 e
* - 这是正确的设计,不是 bug
*/
update(e: ecs.Entity): void {
if(!smc.mission.play || smc.mission.pause) return;
const model = e.get(HeroAttrsComp);
if (!model || model.is_dead) return;
// 统计:记录本帧处理的实体数
this.entityCount++;
// 调试日志(可选,调试时启用)
if (this.debugMode) {
console.log(` [${this.entityCount}] 更新英雄: ${model.hero_name}, HP: ${model.hp.toFixed(2)}`);
}
// 1. 更新临时 Buff/Debuff时间递减过期自动移除
model.updateTemporaryBuffsDebuffs(this.dt);
// 记录MP变化前的值
const oldMp = model.mp;
if(this.timer.update(this.dt)){
// 2. HP/MP 自然回复(业务规则)
model.mp += HeroUpSet.MP
model.hp += HeroUpSet.HP
}
// 3. 限制属性值在合理范围内
if (model.mp > model.Attrs[Attrs.MP_MAX]) {
model.mp = model.Attrs[Attrs.MP_MAX];
}
if (model.hp > model.Attrs[Attrs.HP_MAX]) {
model.hp = model.Attrs[Attrs.HP_MAX];
}
// 4. 如果MP发生变化更新最大技能距离缓存最小距离不受MP影响
if (model.mp !== oldMp) {
const skillsComp = e.get(HeroSkillsComp);
if (skillsComp) {
model.updateSkillDistanceCache(skillsComp);
}
}
// 每 60 帧输出一次统计
this.frameCount++;
if (this.frameCount % 60 === 0 && this.entityCount === 1) {
console.log(`[HeroAttrSystem] 第 ${this.frameCount} 帧,处理 ${this.entityCount} 个英雄`);
}
// 注意:显示更新由 HeroViewComp 负责,这里只处理数据
}
/**
* 启用调试模式(调试时使用)
*/
enableDebug() {
this.debugMode = true;
}
/**
* 禁用调试模式(正式运行)
*/
disableDebug() {
this.debugMode = false;
}
}

View File

@@ -0,0 +1 @@
{"ver":"4.0.24","importer":"typescript","imported":true,"uuid":"7763ec0e-8d85-4af0-8595-e3b078a128b6","files":[],"subMetas":{},"userData":{}}

View File

@@ -1,7 +1,7 @@
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS"; import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { Attrs } from "../common/config/HeroAttrs"; import { Attrs } from "../common/config/HeroAttrs";
import { HeroInfo } from "../common/config/heroSet"; import { HeroInfo } from "../common/config/heroSet";
import { SkillSet } from "../common/config/SkillSet"; import { HSSet, SkillSet } from "../common/config/SkillSet";
import { HeroAttrsComp } from "./HeroAttrsComp"; import { HeroAttrsComp } from "./HeroAttrsComp";
/** /**
@@ -15,8 +15,10 @@ export interface SkillSlot {
cost: number; // MP消耗 cost: number; // MP消耗
level: number; // 技能等级(预留) level: number; // 技能等级(预留)
dis: number; // 攻击距离 dis: number; // 攻击距离
hset: HSSet; // 技能设定, 0:普通攻击, 1:一般技能, 2:必杀技
} }
/** /**
* ==================== 英雄技能数据组件 ==================== * ==================== 英雄技能数据组件 ====================
* *
@@ -36,6 +38,7 @@ export class HeroSkillsComp extends ecs.Comp {
// ==================== 技能槽位列表 ==================== // ==================== 技能槽位列表 ====================
/** 技能槽位数组最多4个技能 */ /** 技能槽位数组最多4个技能 */
skills: Record<number, SkillSlot> = {}; skills: Record<number, SkillSlot> = {};
max_auto: boolean = true;
// ==================== 辅助方法 ==================== // ==================== 辅助方法 ====================
@@ -56,6 +59,9 @@ export class HeroSkillsComp extends ecs.Comp {
} }
// 第0个技能的 cd_max 取 herosinfo[uuid].as // 第0个技能的 cd_max 取 herosinfo[uuid].as
const cdMax = i === 0 ? HeroInfo[uuid].as : config.cd; const cdMax = i === 0 ? HeroInfo[uuid].as : config.cd;
let hset = HSSet.atk;
if(i ===1) hset = HSSet.skill;
if(i ===2) hset = HSSet.max;
this.skills[s_uuid] = { this.skills[s_uuid] = {
s_uuid: config.uuid, s_uuid: config.uuid,
cd: 0, cd: 0,
@@ -63,6 +69,7 @@ export class HeroSkillsComp extends ecs.Comp {
cost: config.cost, cost: config.cost,
level: 1, level: 1,
dis: Number(config.dis), dis: Number(config.dis),
hset: hset,
}; };
} }
@@ -80,7 +87,7 @@ export class HeroSkillsComp extends ecs.Comp {
* @param s_uuid 技能配置ID * @param s_uuid 技能配置ID
* @param entity 实体对象(用于更新技能距离缓存) * @param entity 实体对象(用于更新技能距离缓存)
*/ */
addSkill(s_uuid: number, entity?: ecs.Entity) { addSkill(s_uuid: number, entity?: ecs.Entity, hset: HSSet=HSSet.skill) {
const config = SkillSet[s_uuid]; const config = SkillSet[s_uuid];
if (!config) { if (!config) {
console.warn(`[HeroSkills] 技能配置不存在: ${s_uuid}`); console.warn(`[HeroSkills] 技能配置不存在: ${s_uuid}`);
@@ -93,6 +100,7 @@ export class HeroSkillsComp extends ecs.Comp {
cost: config.cost, cost: config.cost,
level: 1, level: 1,
dis: Number(config.dis), dis: Number(config.dis),
hset: hset,
}; };
// 更新技能距离缓存 // 更新技能距离缓存
@@ -263,4 +271,7 @@ export class HeroSkillsComp extends ecs.Comp {
reset() { reset() {
this.skills = {}; this.skills = {};
} }
setMaxAuto(on: boolean) {
this.max_auto = on;
}
} }

View File

@@ -66,6 +66,9 @@ export class HeroSpine extends Component {
break break
} }
} }
do_atked(){
this.anm.atked()
}
dead(){ dead(){
// console.log("do dead"); // console.log("do dead");
this.anm.dead() this.anm.dead()

View File

@@ -15,6 +15,7 @@ import { timedCom } from "../skill/timedCom";
import { HeroInfo, HType } from "../common/config/heroSet"; import { HeroInfo, HType } from "../common/config/heroSet";
import { Timer } from "db://oops-framework/core/common/timer/Timer"; import { Timer } from "db://oops-framework/core/common/timer/Timer";
const { ccclass, property } = _decorator; const { ccclass, property } = _decorator;
/** 角色显示组件 */ /** 角色显示组件 */
@@ -214,12 +215,13 @@ export class HeroViewComp extends CCComp {
/** 受击特效 */ /** 受击特效 */
private in_atked(anm: string = "atked", scale: number = 1) { private in_atked(anm: string = "atked", scale: number = 1) {
var path = "game/skill/end/" + anm; this.as.do_atked()
var prefab: Prefab = oops.res.get(path, Prefab)!; // var path = "game/skill/end/" + anm;
var node = instantiate(prefab); // var prefab: Prefab = oops.res.get(path, Prefab)!;
node.setScale(node.scale.x * scale, node.scale.y); // var node = instantiate(prefab);
node.setPosition(this.node.position.x, this.node.position.y+50, this.node.position.z); // node.setScale(node.scale.x * scale, node.scale.y);
node.parent = this.node.parent; // node.setPosition(this.node.position.x, this.node.position.y+50, this.node.position.z);
// node.parent = this.node.parent;
} }
/** 冰冻特效 */ /** 冰冻特效 */
@@ -348,7 +350,7 @@ export class HeroViewComp extends CCComp {
this.ent.destroy(); this.ent.destroy();
} }
do_atked(damage:number,isCrit:boolean,s_uuid:number){ do_atked(damage:number,isCrit:boolean,s_uuid:number,isBack:boolean=false){
// 受到攻击时显示血条并设置显示时间即使伤害为0也显示 // 受到攻击时显示血条并设置显示时间即使伤害为0也显示
this.top_node.active = true; this.top_node.active = true;
this.hpBarShowCD = this.hpBarShowTime; this.hpBarShowCD = this.hpBarShowTime;
@@ -357,8 +359,8 @@ export class HeroViewComp extends CCComp {
// 视图层表现 // 视图层表现
let SConf=SkillSet[s_uuid] let SConf=SkillSet[s_uuid]
this.back() if (isBack) this.back()
this.showDamage(damage, isCrit, SConf.DAnm); // 暴击状态由战斗系统内部处理, DAnm和EAnm共用设定数组 this.showDamage(damage, isCrit, SConf.DAnm);
} }
private isBackingUp: boolean = false; // 🔥 添加后退状态标记 private isBackingUp: boolean = false; // 🔥 添加后退状态标记

View File

@@ -2,10 +2,13 @@ import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ec
import { Vec3, v3 } from "cc"; import { Vec3, v3 } from "cc";
import { HeroAttrsComp } from "./HeroAttrsComp"; import { HeroAttrsComp } from "./HeroAttrsComp";
import { HeroViewComp } from "./HeroViewComp"; import { HeroViewComp } from "./HeroViewComp";
import { SkillSet, SType } from "../common/config/SkillSet"; import { HSSet, SkillSet, SType } from "../common/config/SkillSet";
import { HeroSkillsComp, SkillSlot } from "./HeroSkills"; import { HeroSkillsComp, SkillSlot } from "./HeroSkills";
import { Skill } from "../skill/Skill"; import { Skill } from "../skill/Skill";
import { smc } from "../common/SingletonModuleComp"; import { smc } from "../common/SingletonModuleComp";
import { TalComp } from "./TalComp";
import { TalEffet, TriType } from "../common/config/TalSet";
import { BoxSet } from "../common/config/GameSet";
/** /**
* ==================== 自动施法系统 ==================== * ==================== 自动施法系统 ====================
@@ -50,6 +53,7 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
for (const s_uuid of readySkills) { for (const s_uuid of readySkills) {
const skill = skills.getSkill(s_uuid); const skill = skills.getSkill(s_uuid);
if (!skill) continue; if (!skill) continue;
if (skill.hset === HSSet.max && !skills.max_auto) continue;
const config = SkillSet[skill.s_uuid]; const config = SkillSet[skill.s_uuid];
if (!config || config.SType !== SType.damage) continue; if (!config || config.SType !== SType.damage) continue;
@@ -58,26 +62,50 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
if (!this.hasEnemyInSkillRange(heroView, heroAttrs, skill.dis)) continue; if (!this.hasEnemyInSkillRange(heroView, heroAttrs, skill.dis)) continue;
// ✅ 开始执行施法 // ✅ 开始执行施法
this.startCast(e,skill); this.startCast(e,skill,skill.hset);
// 一次只施放一个技能 // 一次只施放一个技能
break; break;
} }
} }
private startCast(e: ecs.Entity,skill:SkillSlot): void { private startCast(e: ecs.Entity,skill:SkillSlot,hset:HSSet): boolean {
if (!skill||!e) return if (!skill||!e) return false
const skills = e.get(HeroSkillsComp); const skills = e.get(HeroSkillsComp);
const heroAttrs = e.get(HeroAttrsComp); const heroAttrs = e.get(HeroAttrsComp);
const heroView = e.get(HeroViewComp); const heroView = e.get(HeroViewComp);
// 3. 检查施法条件 // 3. 检查施法条件
if (!this.checkCastConditions(skills, heroAttrs, skill.s_uuid)) return if (!this.checkCastConditions(skills, heroAttrs, skill.s_uuid)) return false
// 4. 执行施法 // 4. 执行施法
this.executeCast(e, skill.s_uuid, heroView); const castSucess = this.executeCast(e, skill.s_uuid, heroView,hset);
// 5. 扣除资源和重置CD // 5. 扣除资源和重置CD
if (castSucess) {
heroAttrs.mp -= skill.cost; heroAttrs.mp -= skill.cost;
skills.resetCD(skill.s_uuid); skills.resetCD(skill.s_uuid);
}
return castSucess;
}
public manualCast(e: ecs.Entity, s_uuid: number): boolean {
if (!e) return false
const skills = e.get(HeroSkillsComp)
const heroAttrs = e.get(HeroAttrsComp)
const heroView = e.get(HeroViewComp)
if (!skills || !heroAttrs || !heroView) return false
const slot = skills.getSkill(s_uuid)
if (!slot) return false
return this.startCast(e, slot, slot.hset)
}
public manualCastMax(e: ecs.Entity): boolean {
const skills = e.get(HeroSkillsComp)
if (!skills) return false
for (const key in skills.skills) {
const s_uuid = Number(key)
const slot = skills.getSkill(s_uuid)
if (slot && slot.hset === HSSet.max) {
return this.manualCast(e, s_uuid)
}
}
return false
} }
/** /**
* 检查施法条件 * 检查施法条件
@@ -104,29 +132,65 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
/** /**
* 执行施法 * 执行施法
*/ */
private executeCast(casterEntity: ecs.Entity, s_uuid: number, heroView: HeroViewComp) { private executeCast(casterEntity: ecs.Entity, s_uuid: number, heroView: HeroViewComp,hset:HSSet): boolean {
const heroAttrs=casterEntity.get(HeroAttrsComp)
const config = SkillSet[s_uuid]; const config = SkillSet[s_uuid];
if (!config) { if (!config) {
console.error("[SACastSystem] 技能配置不存在:", s_uuid); console.error("[SACastSystem] 技能配置不存在:", s_uuid);
return; return false;
} }
// 1. 播放施法动画 // 1. 播放施法动画
heroView.playSkillEffect(s_uuid); heroView.playSkillEffect(s_uuid);
/**********************天赋处理*************************************************************************/
// 2. 更新攻击类型的天赋触发值
if(casterEntity.has(TalComp)){
const talComp = casterEntity.get(TalComp);
if (hset === HSSet.atk) talComp.updateCur(TriType.ATK);
if (hset != HSSet.atk) talComp.updateCur(TriType.SKILL);
}
/**********************天赋处理*************************************************************************/
// 获取目标位置
let targets = this.sTargets(heroView, s_uuid);
if (targets.length === 0) {
console.warn("[SACastSystem] 没有找到有效目标");
return false;
}
// 2. 延迟创建技能实体(等待动画) // 2. 延迟创建技能实体(等待动画)
const delay = 0.3 const delay = 0.3
heroView.scheduleOnce(() => { heroView.scheduleOnce(() => {
this.createSkill(s_uuid, heroView); this.createSkill(s_uuid, heroView,targets);
}, delay); }, delay);
const heroAttrs = casterEntity.get(HeroAttrsComp); //风怒wfuny 只针对 普通攻击起效
// console.log(`[SACastSystem] ${heroAttrs?.hero_name ?? '未知'} 施放技能: ${config.name}`); if (hset === HSSet.atk && heroAttrs.consumeTalent(TalEffet.WFUNY)){
heroView.playSkillEffect(s_uuid);
//需要再添加 风怒动画
this.createSkill(s_uuid, heroView,targets);
} }
// 双技能 只针对 技能起效
if(hset === HSSet.skill && heroAttrs.consumeTalent(TalEffet.D_SKILL)){
targets = this.sTargets(heroView, s_uuid);
if (targets.length === 0) {
console.warn("[SACastSystem] 没有找到有效目标");
return false;
}
heroView.playSkillEffect(s_uuid);
//需要再添加 双技能动画
heroView.scheduleOnce(() => {
this.createSkill(s_uuid, heroView,targets);
}, delay);
}
return true;
}
/** /**
* 创建技能实体 * 创建技能实体
*/ */
private createSkill(s_uuid: number, caster: HeroViewComp) { private createSkill(s_uuid: number, caster: HeroViewComp,targets:Vec3[]=[],ext_dmg:number=0) {
// 检查节点有效性 // 检查节点有效性
if (!caster.node || !caster.node.isValid) { if (!caster.node || !caster.node.isValid) {
console.warn("[SACastSystem] 施法者节点无效"); console.warn("[SACastSystem] 施法者节点无效");
@@ -140,12 +204,7 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
return; return;
} }
// 获取目标位置
const targets = this.sTargets(caster);
if (targets.length === 0) {
console.warn("[SACastSystem] 没有找到有效目标");
return;
}
// 创建技能实体 // 创建技能实体
const skill = ecs.getEntity<Skill>(Skill); const skill = ecs.getEntity<Skill>(Skill);
@@ -156,26 +215,22 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
const targetPos = targets[0]; // 使用第一个目标位置 const targetPos = targets[0]; // 使用第一个目标位置
// console.log(`[SACastSystem]: ${s_uuid}, 起始位置: ${startPos}, 目标位置: ${targetPos}`); // console.log(`[SACastSystem]: ${s_uuid}, 起始位置: ${startPos}, 目标位置: ${targetPos}`);
// 加载技能实体(包括预制体、组件初始化等) // 加载技能实体(包括预制体、组件初始化等)
skill.load(startPos, parent, s_uuid, targetPos, caster); skill.load(startPos, parent, s_uuid, targetPos, caster,ext_dmg);
} }
/** /**
* 选择目标位置 * 选择目标位置
*/ */
private sTargets(caster: HeroViewComp): Vec3[] { private sTargets(caster: HeroViewComp, s_uuid: number): Vec3[] {
// 简化版:选择最前方的敌人
const targets: Vec3[] = [];
// 这里可以调用 SkillConComp 的目标选择逻辑
// 暂时返回默认位置
if (caster == null) return targets;
if (caster.ent == null) return targets;
const heroAttrs = caster.ent.get(HeroAttrsComp); const heroAttrs = caster.ent.get(HeroAttrsComp);
const fac = heroAttrs?.fac ?? 0; if (!heroAttrs) return [];
const defaultX = fac === 0 ? 400 : -400; const config = SkillSet[s_uuid];
targets.push(v3(defaultX, 0, 0)); if (!config) return this.sDefaultTargets(caster, heroAttrs.fac);
const maxTargets = Math.max(1, Number((config as any).t_num ?? 1));
const targets = this.sDamageTargets(caster, config, maxTargets);
if (targets.length === 0) {
targets.push(...this.sDefaultTargets(caster, heroAttrs.fac));
}
return targets; return targets;
} }
@@ -187,8 +242,8 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
const heroAttrs = caster.ent.get(HeroAttrsComp); const heroAttrs = caster.ent.get(HeroAttrsComp);
if (!heroAttrs) return targets; if (!heroAttrs) return targets;
// 寻找最近的敌人 const range = Number((config as any).range ?? config.dis ?? 300);
const enemyPositions = this.findNearbyEnemies(caster, heroAttrs.fac, config.range || 300); const enemyPositions = this.findNearbyEnemies(caster, heroAttrs.fac, range);
// 选择最多maxTargets个目标 // 选择最多maxTargets个目标
for (let i = 0; i < Math.min(maxTargets, enemyPositions.length); i++) { for (let i = 0; i < Math.min(maxTargets, enemyPositions.length); i++) {
@@ -203,82 +258,49 @@ export class SACastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdat
return targets; return targets;
} }
/**
* 选择治疗技能目标
*/
private sHealTargets(caster: HeroViewComp, config: any, maxTargets: number): Vec3[] {
const targets: Vec3[] = [];
const heroAttrs = caster.ent.get(HeroAttrsComp);
if (!heroAttrs) return targets;
// 寻找血量最低的友军
const allyPositions = this.findLowHealthAllies(caster, heroAttrs.fac, config.range || 200);
for (let i = 0; i < Math.min(maxTargets, allyPositions.length); i++) {
targets.push(allyPositions[i]);
}
// 如果没有找到友军,治疗自己
if (targets.length === 0 && caster.node) {
targets.push(caster.node.position.clone());
}
return targets;
}
/**
* 选择BUFF技能目标
*/
private sBuffTargets(caster: HeroViewComp, config: any, maxTargets: number): Vec3[] {
// BUFF技能通常施放在自己或友军身上
return this.sHealTargets(caster, config, maxTargets);
}
/**
* 选择DEBUFF技能目标
*/
private sDebuffTargets(caster: HeroViewComp, config: any, maxTargets: number): Vec3[] {
// DEBUFF技能通常施放在敌人身上
return this.sDamageTargets(caster, config, maxTargets);
}
/** /**
* 选择默认目标 * 选择默认目标
*/ */
private sDefaultTargets(caster: HeroViewComp, faction: number): Vec3[] { private sDefaultTargets(caster: HeroViewComp, fac: number): Vec3[] {
const targets: Vec3[] = []; const targets: Vec3[] = [];
const defaultX = faction === 0 ? 400 : -400; const defaultX = fac === 0 ? 400 : -400;
targets.push(v3(defaultX, 0, 0)); targets.push(v3(defaultX, BoxSet.GAME_LINE, 1));
return targets; return targets;
} }
/** /**
* 查找附近的敌人 * 查找附近的敌人
*/ */
private findNearbyEnemies(caster: HeroViewComp, faction: number, range: number): Vec3[] { private findNearbyEnemies(caster: HeroViewComp, fac: number, range: number): Vec3[] {
// 简化实现实际应该查询ECS中的敌方实体
const enemies: Vec3[] = []; const enemies: Vec3[] = [];
if (!caster || !caster.node) return enemies;
// 模拟敌人位置 const currentPos = caster.node.position;
const enemyX = faction === 0 ? 300 : -300; const results: { pos: Vec3; dist: number; laneBias: number }[] = [];
enemies.push(v3(enemyX, 0, 0)); ecs.query(ecs.allOf(HeroAttrsComp, HeroViewComp)).some(e => {
enemies.push(v3(enemyX + 50, 20, 0)); const model = e.get(HeroAttrsComp);
const view = e.get(HeroViewComp);
if (!model || !view || !view.node) return false;
if (model.is_dead) return false;
if (model.fac === fac) return false;
const pos = view.node.position;
const dist = Math.abs(currentPos.x - pos.x);
if (dist <= range) {
const laneBias = Math.abs(currentPos.y - pos.y);
results.push({ pos: pos.clone(), dist, laneBias });
}
return false;
});
results.sort((a, b) => {
if (a.laneBias !== b.laneBias) return a.laneBias - b.laneBias;
return a.dist - b.dist;
});
for (const r of results) enemies.push(r.pos);
return enemies; return enemies;
} }
/**
* 查找血量低的友军
*/
private findLowHealthAllies(caster: HeroViewComp, faction: number, range: number): Vec3[] {
// 简化实现实际应该查询ECS中的友方实体并按血量排序
const allies: Vec3[] = [];
// 如果自己血量低,优先治疗自己
return allies;
}
/** /**
* 检查技能攻击范围内是否有敌人 * 检查技能攻击范围内是否有敌人

View File

@@ -1,145 +0,0 @@
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { Vec3, v3 } from "cc";
import { HeroAttrsComp } from "./HeroAttrsComp";
import { HeroViewComp } from "./HeroViewComp";
import { SkillSet, SType } from "../common/config/SkillSet";
import { HeroSkillsComp } from "./HeroSkills";
import { Skill } from "../skill/Skill";
import { CSRequestComp } from "../skill/STagComps";
import { smc } from "../common/SingletonModuleComp";
/**
* ==================== 技能施法系统 手动施法====================
*
* 职责:
* 1. 监听 CSRequestComp 标记组件
* 2. 检查施法条件CD、MP、状态
* 3. 扣除资源MP
* 4. 创建技能实体
* 5. 触发施法动画
* 6. 移除请求标记
*
* 设计理念:
* - 使用标记组件驱动,符合 ECS 理念
* - 施法检查与执行分离
* - 自动处理资源消耗和CD重置
*/
// @ecs.register('SCastSystem')
export class SCastSystem extends ecs.ComblockSystem implements ecs.IEntityEnterSystem {
/**
* 过滤器:拥有技能数据 + 施法请求的实体
*/
filter(): ecs.IMatcher {
return ecs.allOf(HeroSkillsComp, HeroAttrsComp, CSRequestComp);
}
/**
* 实体进入时触发(即请求施法时)
*/
entityEnter(e: ecs.Entity): void {
if(!smc.mission.play || smc.mission.pause) return;
const skillsComp = e.get(HeroSkillsComp);
const heroAttrs = e.get(HeroAttrsComp);
const request = e.get(CSRequestComp);
const heroView = e.get(HeroViewComp);
// 1. 验证数据完整性
if (!skillsComp || !heroAttrs || !request || !heroView) {
console.warn("[SCastSystem] 数据不完整,取消施法");
e.remove(CSRequestComp);
return;
}
// 2. 获取技能数据
const skill = skillsComp.getSkill(request.s_uuid);
if (!skill) {
console.warn(`[SCastSystem] 技能索引无效: ${request.s_uuid }`);
e.remove(CSRequestComp);
return;
}
// 3. 检查施法条件
if (!this.checkCastConditions(skillsComp, heroAttrs, request.s_uuid)) {
e.remove(CSRequestComp);
return;
}
// 4. 执行施法
this.executeCast(e, skill, request.targets, heroView);
// 5. 扣除资源和重置CD
heroAttrs.mp -= skill.cost;
skillsComp.resetCD(request.s_uuid);
// 6. 移除请求标记
e.remove(CSRequestComp);
}
/**
* 检查施法条件
*/
private checkCastConditions(skillsComp: HeroSkillsComp, heroAttrs: HeroAttrsComp, skillIndex: number): boolean {
// 检查角色状态
if (heroAttrs.is_dead) {
return false;
}
// 检查控制状态(眩晕、冰冻)
if (heroAttrs.isStun() || heroAttrs.isFrost()) {
return false;
}
// 检查CD和MP
if (!skillsComp.canCast(skillIndex, heroAttrs.mp)) {
return false;
}
return true;
}
/**
* 执行施法
*/
private executeCast(casterEntity: ecs.Entity, skill: any, targets: Vec3[], heroView: HeroViewComp) {
const config = SkillSet[skill.uuid];
if (!config) {
console.error("[SCastSystem] 技能配置不存在:", skill.uuid);
return;
}
// 1. 播放施法动画
heroView.playSkillEffect(skill.uuid);
// 2. 延迟创建技能实体(等待动画)
const delay = config.with ?? 0.3; // 施法前摇时间
heroView.scheduleOnce(() => {
this.createSkill(skill.uuid, heroView, targets);
}, delay);
const heroAttrs = casterEntity.get(HeroAttrsComp);
console.log(`[SCastSystem] ${heroAttrs?.hero_name ?? '未知'} 施放技能: ${config.name}`);
}
/**
* 创建技能实体
*/
private createSkill(skillId: number, caster: HeroViewComp, targets: Vec3[]) {
// 检查节点有效性
if (!caster.node || !caster.node.isValid) {
console.warn("[SCastSystem] 施法者节点无效");
return;
}
// 获取场景节点
const parent = caster.node.parent;
if (!parent) {
console.warn("[SCastSystem] 场景节点无效");
return;
}
// ✅ 使用现有的 SkillEnt 创建技能
// const skill = ecs.getEntity<Skill>(Skill);
}
}

View File

@@ -1,9 +0,0 @@
{
"ver": "4.0.24",
"importer": "typescript",
"imported": true,
"uuid": "25f14ca0-5053-495e-bc3d-08b1bb4ee5d7",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -1,169 +1,232 @@
import { _decorator } from "cc";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS"; import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/module/common/CCComp"; import { BType } from "../common/config/HeroAttrs";
import { ItalConf, TalType, TalEType, talConf } from "../common/config/TalSet"; import { TalAttrs, talConf, TalEffet, TalTarget, TriType} from "../common/config/TalSet";
import { BuffConf, SkillSet } from "../common/config/SkillSet"; import { HeroAttrsComp } from "./HeroAttrsComp";
import { HeroInfo } from "../common/config/heroSet";
import { HeroViewComp } from "./HeroViewComp"; import { HeroViewComp } from "./HeroViewComp";
const { ccclass } = _decorator;
/** /**
* 天赋触发统计接口 * 天赋槽位接口定义
* 记录各种触发条件的计数器,用于判断天赋是否满足触发条件 * 描述单个天赋的数据结构
*/ */
interface FightStats { export interface TalSlot {
aCount: number; // 普通攻击计数 - 用于 ACTION_COUNT 类型天赋 uuid: number; // 天赋唯一标识符
sCount: number; // 技能使用计数 - 用于 SKILL_COUNT 类型天赋 name: string; // 天赋名称
dCount: number; // 受伤次数计数 - 用于 DAMAGE_COUNT 类型天赋 triType: TriType; // 天赋触发类型
level: number; // 当前等级 - 用于 LEVEL/LEVEL_UP 类型天赋 target: TalTarget;
effet: TalEffet;
attrs?:TalAttrs //触发的attrs效果的对应attrs value: number; // 触发的效果数值
vType:BType; // 数值型还是百分比型
value: number; // 触发的效果数值
value_add: number; // 触发的效果数值增量
count: number; // 执行次数,及可以触发的次数
count_add: number; // 执行次数增量
Trigger: number; // 天赋触发阈值
Trigger_add: number; // 天赋触发阈值减值
desc: string; // 天赋描述(说明触发条件和效果)
cur: number; // 当前累积值
} }
/**
* 天赋效果实例接口
* 记录已激活天赋的当前状态,包括堆叠层数和最后触发时间
*/
interface TalEffect {
uuid: number; // 天赋uuid
stack: number; // 当前堆叠层数,用于可堆叠天赋
lTTime: number; // 上次触发时间戳,可用于时效判断
}
/** /**
* 天赋系统组件类 * 天赋系统组件类
* 继承自 CCComp作为 ECS 架构中的组件存在 * 作为ECS架构中的组件,负责管理英雄的天赋系统
* 负责管理英雄的天赋系统,包括天赋获取、触发、效果应用等 *
* 核心功能:
* - 初始化英雄天赋系统
* - 添加新天赋到英雄
* - 累积天赋触发进度
* - 检查并触发满足条件的天赋
* - 管理天赋效果数值
*/ */
@ccclass('TalComp')
@ecs.register('TalComp', false) @ecs.register('TalComp', false)
export class TalComp extends ecs.Comp { export class TalComp extends ecs.Comp {
/** 英雄视图组件引用,运行时获取避免循环引用 */ /** 英雄视图组件引用,运行时获取避免循环引用 */
private heroView: any = null; private heroView: any = null;
private skillCon:any=null;
/** 英雄唯一标识符,用于从配置中获取英雄信息 */ /** 英雄唯一标识符,用于从配置中获取英雄相关信息 */
private heroUuid: number = 0; private heroUuid: number = 0;
/** 天赋触发统计,记录各种触发条件的当前状态 */ /** 天赋集合以天赋ID为键存储所有已获得的天赋 */
private FStats: FightStats = { aCount: 0, sCount: 0, dCount: 0, level: 1 }; Tals: Record<number, TalSlot> = {};
/** 活跃天赋效果映射,存储已激活的天赋实例 */
private activeTals: TalEffect[] = [];
private talEffects: ItalConf[] = [];
/** 初始化标志,防止重复初始化 */
private isInitialized: boolean = false;
/** /**
* 组件生命周期函数 - 启动时调用 * 组件初始化方法
* 获取英雄视图组件并初始化天赋系统 * @param heroUuid 英雄唯一标识符
*/ */
start() { init(heroUuid: number) {
// 运行时获取组件,避免编译时循环引用 this.heroUuid = heroUuid;
// 从实体中获取英雄视图组件引用
this.heroView = this.ent.get(HeroViewComp); this.heroView = this.ent.get(HeroViewComp);
if (this.heroView) { // 初始化天赋集合
this.heroUuid = this.heroView.hero_uuid; this.Tals = {};
this.initializeTalents();
}
} }
private initializeTalents(): void { /**
if (this.isInitialized || !this.heroView) return; * 为英雄添加一个新天赋
this.FStats.level = this.heroView.lv || 1; * @param uuid 要添加的天赋ID
this.getHeroTalents() *
this.isInitialized = true; * 添加流程:
* 1. 检查天赋是否已存在
* 2. 检查天赋配置是否存在
* 3. 创建并初始化天赋数据
*/
addTal(uuid: number) {
// 检查天赋是否已存在
if (this.Tals[uuid]) {
console.error(`[TalComp]天赋已存在,天赋ID:${uuid}`);
return;
} }
private getHeroTalents(): ItalConf[] { // 获取天赋配置
this.activeTals = []; const tConf = talConf[uuid];
this.talEffects = []; if (!tConf) {
if (!this.heroView) return []; console.error(`[TalComp]天赋配置不存在,天赋ID:${uuid}`);
const heroInfo = HeroInfo[this.heroUuid]; return;
if (!heroInfo?.tal) return [];
for(let id of heroInfo.tal){
let conf = talConf[id];
if(conf){
this.talEffects.push(conf)
}
}
} }
private doTalEffect(tal:ItalConf){ // 创建并初始化天赋数据
console.log("doTalEffect",tal) this.Tals[uuid] = {
if(tal.triggerType == TalEType.ATTRS){ uuid: uuid,
console.log("doTalEffect ATTRS",tal) name: tConf.name,
let buff:BuffConf = { triType: tConf.triType,
buff:tal.e_name, target: tConf.target,
BType:tal.e_type, effet: tConf.effet,
value:tal.e_value, attrs: tConf.attrs,
time:0, vType: tConf.vType,
chance:tal.chance, value: tConf.value, // 效果数值初始为配置值
value_add: 0, // 效果数值增量初始为0
count: 1, // 执行次数,及可以触发的次数
count_add:0, // 执行次数增量初始为0
Trigger: tConf.Trigger, // 触发阈值(后续可从配置中读取)
Trigger_add: 0, // 触发阈值增量初始为0
desc: tConf.desc,
cur: 0, // 当前累积值初始为0
};
} }
this.heroView.addBuff(buff) checkTal() {
return Object.keys(this.Tals).length > 0;
}
getTriggers() {
// 存储所有触发的天赋
let Triggers: Record<string, TalSlot> = {};
// 遍历所有天赋
for (let uuid in this.Tals) {
const talent = this.Tals[uuid];
if (talent.cur >= (talent.Trigger - talent.Trigger_add)) { // 修复触发条件,累积值达到或超过触发阈值时触发
console.log(`[TalComp]天赋触发,天赋ID:${uuid}`);
// 重置累积值
talent.cur = 0;
// 添加到触发列表
Triggers[uuid] = talent;
}
}
// 判断是否有天赋被触发
return Triggers;
} }
if(tal.triggerType == TalEType.SKILL){ /**
console.log("doTalEffect SKILL",tal) * 更新天赋的效果数值
let skill = SkillSet[tal.e_value]; * @param uuid 天赋ID
if(this.skillCon){ * @param val 要增减的数值
this.skillCon.doSkill(skill,false,0) *
} * 功能:
* - 用于调整天赋的实际效果数值
* - 可通过正负数来增加或减少效果
*/
updateVal(uuid: number, val: number) {
// 检查天赋是否存在
if (!this.Tals[uuid]) {
console.error(`[TalComp]天赋不存在,天赋ID:${uuid}`);
return;
} }
if(tal.triggerType == TalEType.SKILL_MORE){ // 更新天赋效果数值
console.log("doTalEffect SKILL_MORE",tal) this.Tals[uuid].value_add += val;
this.heroView.skills.push(tal.e_value)
} }
} updateTrigger(uuid: number, val: number) {
private checkTrigger(tal:ItalConf) { // 检查天赋是否存在
let stats = this.FStats; if (!this.Tals[uuid]) {
switch (tal.type) { console.error(`[TalComp]天赋不存在,天赋ID:${uuid}`);
case TalType.LEVEL: return stats.level >= tal.t_value; return;
case TalType.LEVEL_UP: return stats.level % tal.t_value === 0;
case TalType.ACTION_COUNT: return stats.aCount >= tal.t_value;
case TalType.SKILL_COUNT: return stats.sCount >= tal.t_value;
case TalType.DAMAGE_COUNT: return stats.dCount >= tal.t_value;
case TalType.INIT: return true;
case TalType.DEAD: return false; // 单独处理
default: return false;
}
}
private checkHasTal(TalType:TalType) {
for(let tal of this.talEffects){
if(TalType == tal.type){
if (this.checkTrigger(tal)){
this.doTalEffect(tal)
}
}
}
}
public onAction(): void {
this.FStats.aCount++;
this.checkHasTal(TalType.ACTION_COUNT);
} }
public onSkillUse(): void { // 更新天赋触发阈值
this.FStats.sCount++; this.Tals[uuid].Trigger_add += val;
this.checkHasTal(TalType.SKILL_COUNT); if (this.Tals[uuid].Trigger-this.Tals[uuid].Trigger_add <= 1) {
this.Tals[uuid].Trigger_add = this.Tals[uuid].Trigger-1;
} }
public onDamageTaken(): void {
this.FStats.dCount++;
this.checkHasTal(TalType.DAMAGE_COUNT);
} }
/**
* 更新指定类型天赋的累积值
* @param triType 天赋触发类型
* @param val 要增加的累积值默认值为1
*
* 设计注意:
* - 当前实现只会更新第一个匹配类型的天赋
* - 累积值用于后续判断是否触发天赋效果
*/
updateCur(triType: TriType, val: number = 1) {
// 遍历所有天赋
for (let uuid in this.Tals) {
const talent = this.Tals[uuid];
public onLevelUp(newLevel: number): void { // 找到所有匹配类型的天赋并更新
this.FStats.level = newLevel; if (talent.triType == triType) {
this.checkHasTal(TalType.LEVEL); talent.cur += val;
this.checkHasTal(TalType.LEVEL_UP); this.checkTrigger(talent.uuid);
} }
public onDeath(): void {
this.checkHasTal(TalType.DEAD);
} }
}
checkTrigger(uuid:number){
const talent = this.Tals[uuid];
if (talent.cur >= (talent.Trigger - talent.Trigger_add)) { // 修复触发条件,累积值达到或超过触发阈值时触发
console.log(`[TalComp]天赋触发,天赋ID:${uuid}`);
for(let i=0;i<(talent.count+talent.count_add);i++){
this.doTriggerTal(talent.uuid);
}
// 重置累积值
talent.cur = 0;
}
}
//执行天赋触发效果
doTriggerTal(uuid: number) {
// 检查天赋是否存在
if (!this.Tals[uuid]) {
console.error(`[TalComp]天赋不存在,天赋ID:${uuid}`);
return;
}
const talent = this.Tals[uuid];
const heroAttrs=this.ent.get(HeroAttrsComp);
switch(talent.effet){
case TalEffet.WFUNY:
heroAttrs.addTalent(TalEffet.WFUNY, talent.value + talent.value_add);
break;
case TalEffet.D_SKILL:
heroAttrs.addTalent(TalEffet.D_SKILL, talent.value + talent.value_add);
break;
case TalEffet.C_ATK:
heroAttrs.addTalent(TalEffet.C_ATK, talent.value + talent.value_add);
break;
case TalEffet.C_SKILL:
heroAttrs.addTalent(TalEffet.C_SKILL, talent.value + talent.value_add);
break;
case TalEffet.C_MSKILL:
heroAttrs.addTalent(TalEffet.C_MSKILL, talent.value + talent.value_add);
break;
case TalEffet.BUFF:
heroAttrs.addTalBuff(talent.uuid, talent.attrs, talent.vType, talent.value + talent.value_add);
break;
}
}
/**
* 重置组件状态
*/
reset() { reset() {
this.isInitialized = false; this.Tals = {};
this.heroUuid = 0;
this.heroView = null;
} }
} }

View File

@@ -2,7 +2,7 @@
"ver": "1.2.0", "ver": "1.2.0",
"importer": "directory", "importer": "directory",
"imported": true, "imported": true,
"uuid": "af691440-7aca-4cb5-9a78-9bfed9cb70de", "uuid": "0463b128-1ee2-4cee-972b-eaf9fee2bf6c",
"files": [], "files": [],
"subMetas": {}, "subMetas": {},
"userData": {} "userData": {}

View File

@@ -0,0 +1,9 @@
{
"ver": "1.2.0",
"importer": "directory",
"imported": true,
"uuid": "044ce6c2-4a58-4a83-8a5b-f6d7f89a3aa3",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -5,7 +5,7 @@
"__editorExtras__": {}, "__editorExtras__": {},
"_native": "", "_native": "",
"_effectAsset": { "_effectAsset": {
"__uuid__": "40c25c17-db22-4ae7-8d3a-f73cbb6d36ba", "__uuid__": "b8d82f81-c2f9-40e5-805b-922f0c170a79",
"__expectedType__": "cc.EffectAsset" "__expectedType__": "cc.EffectAsset"
}, },
"_techIdx": 0, "_techIdx": 0,
@@ -26,15 +26,6 @@
} }
], ],
"_props": [ "_props": [
{ {}
"glowColor": {
"__type__": "cc.Color",
"r": 255,
"g": 235,
"b": 0,
"a": 255
},
"glowWidth": 0.002
}
] ]
} }

View File

@@ -0,0 +1,11 @@
{
"ver": "1.0.21",
"importer": "material",
"imported": true,
"uuid": "8eee8ab1-fe48-4b22-b956-3f5c18fc4810",
"files": [
".json"
],
"subMetas": {},
"userData": {}
}

View File

@@ -0,0 +1,9 @@
{
"ver": "1.2.0",
"importer": "directory",
"imported": true,
"uuid": "e091410c-c7b6-4416-ae99-38697c103286",
"files": [],
"subMetas": {},
"userData": {}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
{
"ver": "1.1.50",
"importer": "scene",
"imported": true,
"uuid": "5e1d3eb2-c300-4627-94c7-2ee03b8314f1",
"files": [
".json"
],
"subMetas": {},
"userData": {}
}

View File

@@ -0,0 +1,9 @@
{
"ver": "1.2.0",
"importer": "directory",
"imported": true,
"uuid": "e4743688-2ecb-436b-8826-69fcb4485b73",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -2,7 +2,7 @@
"ver": "4.0.24", "ver": "4.0.24",
"importer": "typescript", "importer": "typescript",
"imported": true, "imported": true,
"uuid": "df953176-a9fa-4f3e-865e-7956fccc4c52", "uuid": "954e4dd8-f902-4734-8529-9aa4c2580ec0",
"files": [], "files": [],
"subMetas": {}, "subMetas": {},
"userData": {} "userData": {}

View File

@@ -0,0 +1,9 @@
{
"ver": "1.2.0",
"importer": "directory",
"imported": true,
"uuid": "5553e1ee-12b8-410b-833c-33586c917944",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -0,0 +1,97 @@
// Copyright (c) 2017-2020 Xiamen Yaji Software Co., Ltd.
CCEffect %{
techniques:
- passes:
- vert: sprite-vs:vert
frag: sprite-fs:frag
depthStencilState:
depthTest: false
depthWrite: false
blendState:
targets:
- blend: true
blendSrc: src_alpha
blendDst: one_minus_src_alpha
blendDstAlpha: one_minus_src_alpha
rasterizerState:
cullMode: none
properties:
alphaThreshold: { value: 0.5 }
}%
CCProgram sprite-vs %{
precision highp float;
#include <builtin/uniforms/cc-global>
#if USE_LOCAL
#include <builtin/uniforms/cc-local>
#endif
#if SAMPLE_FROM_RT
#include <common/common-define>
#endif
in vec3 a_position;
in vec2 a_texCoord;
in vec4 a_color;
out vec4 color;
out vec2 uv0;
out vec4 lightColor;
vec4 vert () {
vec4 pos = vec4(a_position, 1);
#if USE_LOCAL
pos = cc_matWorld * pos;
#endif
#if USE_PIXEL_ALIGNMENT
pos = cc_matView * pos;
pos.xyz = floor(pos.xyz);
pos = cc_matProj * pos;
#else
pos = cc_matViewProj * pos;
#endif
uv0 = a_texCoord;
#if SAMPLE_FROM_RT
CC_HANDLE_RT_SAMPLE_FLIP(uv0);
#endif
color = a_color;
lightColor = a_color;
return pos;
}
}%
CCProgram sprite-fs %{
precision highp float;
#include <builtin/internal/embedded-alpha>
#include <builtin/internal/alpha-test>
in vec4 color;
in vec4 lightColor;
#if USE_TEXTURE
in vec2 uv0;
#pragma builtin(local)
layout(set = 2, binding = 12) uniform sampler2D cc_spriteTexture;
#endif
vec4 frag () {
vec4 o = vec4(1, 1, 1, 1);
#if USE_TEXTURE
o *= CCSampleWithAlphaSeparated(cc_spriteTexture, uv0);
#if IS_GRAY
float gray = 0.2126 * o.r + 0.7152 * o.g + 0.0722 * o.b;
o.r = o.g = o.b = gray;
#endif
#endif
o.rgb = o.rgb * (1.0 - lightColor.a) + lightColor.rgb * lightColor.a;
o *= color;
ALPHA_TEST(o);
return o;
}
}%

View File

@@ -2,14 +2,10 @@
"ver": "1.7.1", "ver": "1.7.1",
"importer": "effect", "importer": "effect",
"imported": true, "imported": true,
"uuid": "cfeeea4f-db9c-42cd-a0f7-fc5cb37bd3d7", "uuid": "b8d82f81-c2f9-40e5-805b-922f0c170a79",
"files": [ "files": [
".json" ".json"
], ],
"subMetas": {}, "subMetas": {},
"userData": { "userData": {}
"combinations": [
{}
]
}
} }

View File

@@ -0,0 +1,9 @@
{
"ver": "1.2.0",
"importer": "directory",
"imported": true,
"uuid": "0463b128-1ee2-4cee-972b-eaf9fee2bf6c",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -27,9 +27,9 @@ export class HInfoComp extends CCComp {
hero_pos:any={ hero_pos:any={
0:v3(420,-30,0), // 不在屏幕内 0:v3(420,-30,0), // 不在屏幕内
1:v3(280,-30,0), 1:v3(280,-30,0),
2:v3(160,-33,0), 2:v3(160,-30,0),
3:v3(0,-40,0), 3:v3(0,-40,0),
4:v3(-160,-33,0), 4:v3(-160,-30,0),
5:v3(-280,-30,0), 5:v3(-280,-30,0),
6:v3(-420,-30,0), // 不在屏幕内 6:v3(-420,-30,0), // 不在屏幕内
} }
@@ -53,11 +53,11 @@ export class HInfoComp extends CCComp {
switch(posIndex) { switch(posIndex) {
case 2: case 2:
case 4: case 4:
return v3(-1.6, 1.6, 1); // 2、4位置1.2倍缩放 return v3(-1.5, 1.5, 1); // 2、4位置1.5倍缩放
case 3: case 3:
return v3(-1.8, 1.8, 1); // 3位置中心1.5倍缩放 return v3(-1.8, 1.8, 1); // 3位置中心1.5倍缩放
default: default:
return v3(-1.4, 1.4, 1); // 其他位置1倍缩放 return v3(-1.5, 1.5, 1); // 其他位置1.5倍缩放
} }
} }

View File

@@ -29,7 +29,7 @@ export class Skill extends ecs.Entity {
this.addComponents<SMoveDataComp>(SMoveDataComp); this.addComponents<SMoveDataComp>(SMoveDataComp);
} }
load(startPos: Vec3, parent: Node, s_uuid: number, targetPos: Vec3, load(startPos: Vec3, parent: Node, s_uuid: number, targetPos: Vec3,
caster:HeroViewComp) { caster:HeroViewComp,ext_dmg:number=0) {
const config = SkillSet[s_uuid]; const config = SkillSet[s_uuid];
if (!config) { if (!config) {
@@ -90,7 +90,7 @@ export class Skill extends ecs.Entity {
const sDataCom = this.get(SDataCom); const sDataCom = this.get(SDataCom);
sDataCom.group=caster.box_group sDataCom.group=caster.box_group
sDataCom.caster=caster sDataCom.caster=caster
sDataCom.Attrs=cAttrsComp.Attrs sDataCom.Attrs={...cAttrsComp.Attrs}
sDataCom.s_uuid=s_uuid sDataCom.s_uuid=s_uuid
sDataCom.fac=cAttrsComp.fac sDataCom.fac=cAttrsComp.fac
} }

86
assets/script/tals.md Normal file
View File

@@ -0,0 +1,86 @@
# 英雄天赋系统开发计划
## 📋 项目概述
**目标**为游戏英雄设计并实现一个在特定等级1, 5, 10, 15, 20级触发的“三选一”天赋系统。
**核心功能**UI交互界面、天赋数据管理、天赋效果与英雄技能普通攻击、攻击技能、必杀技的整合。
## 🗓️ 项目阶段与任务清单
### 阶段一:基础框架搭建 (第1-2周)
**目标**:创建核心数据结构和管理器脚本。
- [ ] **设计数据模型**
- [*] 创建 `HeroClass`,定义基础属性(生命值、攻击力)和技能引用。
- [ ] 创建 `TalentData`定义天赋数据结构ID、名称、描述、效果类型、效果值
- [ ] 创建 `TalentTree`,管理按等级组织的天赋集合。
- [ ] **创建核心管理器**
- [ ] 编写 `TalentManager` 脚本,负责:
- [ ] 在英雄达到关键等级时触发选择界面。
- [ ] 记录玩家已选天赋。
- [ ] 计算天赋对英雄属性的最终影响。
- [ ] 编写/调整 `GameManager` 脚本协调天赋系统与UI的通信。
### 阶段二UI界面与交互 (第3-4周)
**目标**:制作“三选一”弹窗界面并实现交互逻辑。
- [ ] **制作弹窗界面**
- [ ] 设计弹窗布局(背景、标题、三个选项按钮区域)。
- [ ] 为每个选项按钮配置UI元素图标、名称、描述文本
- [ ] 添加按钮的悬停高亮和点击效果。
- [ ] **实现UI逻辑**
- [ ] 编写 `TalentSelectionPanel` 脚本,用于:
- [ ]`TalentManager` 接收可选天赋数据。
- [ ] 将数据填充到对应的UI元素上。
- [ ] 监听玩家选择,并将结果返回给 `TalentManager`
### 阶段三:天赋系统实现 (第5周)
**目标**:配置天赋数据,并实现天赋效果的应用逻辑。
- [ ] **配置天赋数据**
- [ ] 为每个关键等级设计3个强度相近、功能侧重不同的天赋如攻击提升、防御提升、技能冷却缩减
- [ ] **实现等级触发**
- [ ] 在英雄升级逻辑中检查关键等级1, 5, 10, 15, 20并调用 `TalentManager` 激活选择界面。
- [ ] **应用天赋效果**
- [ ]`TalentManager` 中编写逻辑,将玩家选择的天赋效果永久附加到英雄属性上(如攻击力提升)。
### 阶段四:英雄技能系统整合 (第6周)
**目标**:实现天赋对技能机制的影响,增加策略深度。
- [ ] **确认技能框架**
- [ ] 确保英雄技能(普通攻击、攻击技能、必杀技)有清晰的可修改属性(伤害、冷却、范围等)。
- [ ] **实现天赋-技能联动**
- [ ] 设计能改变技能机制的天赋如“必杀技范围扩大20%”)。
- [ ]`TalentManager` 中编写逻辑,应用这些特殊效果。
### 阶段五:测试与平衡调整 (第7-8周)
**目标**:确保系统稳定、平衡、用户体验良好。
- [ ] **功能测试**
- [ ] 测试每个等级是否正常触发界面。
- [ ] 测试每个天赋选择后是否正确生效。
- [ ] 测试游戏重启后天赋是否正确重置。
- [ ] **平衡性调优**
- [ ] 评估不同天赋组合的强度,避免出现“必选”或“无用”天赋。
- [ ] 调整天赋数值,确保各流派(攻击、防御等)在中后期都有竞争力。
- [ ] **用户体验优化**
- [ ] 检查界面清晰度和描述准确性。
- [ ] 考虑为关键天赋选择添加音效。
## 💡 进阶优化建议 (可选)
- [ ] **局外成长**:引入天赋点或资源,允许在多次游戏后永久强化某些天赋。
- [ ] **可视化反馈**:为关键天赋效果添加炫酷的视觉特效。
## ✨ 使用建议
1. **进度跟踪**你可以直接在支持渲染Markdown任务列表的编辑器如VS Code with extensions、Typora、MarkText[5](@ref)等)中打开此文件,通过勾选复选框(`- [ ]` 变为 `- [x]`)来直观地跟踪每个任务的完成情况[1,3](@ref)。
2. **版本控制**建议将此MD文件纳入版本控制系统如Git在完成每个阶段性任务后都进行提交便于回溯和管理。
3. **内容扩展**你可以在每个任务项下使用Markdown的无序列表`-``*` 开头)[8](@ref)或有序列表[8](@ref)来添加更细致的子任务或备注。
希望这份结构清晰的Markdown计划能助你高效地进行开发如果对某个具体环节有更多想法或疑问我们可以继续探讨。

View File

@@ -0,0 +1,11 @@
{
"ver": "1.0.1",
"importer": "text",
"imported": true,
"uuid": "651158a4-0a34-422f-87b3-49b87eb1522f",
"files": [
".json"
],
"subMetas": {},
"userData": {}
}