dd
This commit is contained in:
File diff suppressed because it is too large
Load Diff
303
assets/resources/gui/anim/hartanm.anim
Normal file
303
assets/resources/gui/anim/hartanm.anim
Normal file
@@ -0,0 +1,303 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"__type__": "cc.AnimationClip",
|
||||||
|
"_name": "hartanm",
|
||||||
|
"_objFlags": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"embeddedPlayerGroups": []
|
||||||
|
},
|
||||||
|
"_native": "",
|
||||||
|
"sample": 8,
|
||||||
|
"speed": 1,
|
||||||
|
"wrapMode": 2,
|
||||||
|
"enableTrsBlending": false,
|
||||||
|
"_duration": 1,
|
||||||
|
"_hash": 500763545,
|
||||||
|
"_tracks": [
|
||||||
|
{
|
||||||
|
"__id__": 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"_exoticAnimation": null,
|
||||||
|
"_events": [],
|
||||||
|
"_embeddedPlayers": [],
|
||||||
|
"_additiveSettings": {
|
||||||
|
"__id__": 11
|
||||||
|
},
|
||||||
|
"_auxiliaryCurveEntries": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.animation.VectorTrack",
|
||||||
|
"_binding": {
|
||||||
|
"__type__": "cc.animation.TrackBinding",
|
||||||
|
"path": {
|
||||||
|
"__id__": 2
|
||||||
|
},
|
||||||
|
"proxy": null
|
||||||
|
},
|
||||||
|
"_channels": [
|
||||||
|
{
|
||||||
|
"__id__": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__id__": 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__id__": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__id__": 9
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"_nComponents": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.animation.TrackPath",
|
||||||
|
"_paths": [
|
||||||
|
"position"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.animation.Channel",
|
||||||
|
"_curve": {
|
||||||
|
"__id__": 4
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealCurve",
|
||||||
|
"_times": [
|
||||||
|
0,
|
||||||
|
0.25,
|
||||||
|
0.75,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"_values": [
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"preExtrapolation": 1,
|
||||||
|
"postExtrapolation": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.animation.Channel",
|
||||||
|
"_curve": {
|
||||||
|
"__id__": 6
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealCurve",
|
||||||
|
"_times": [
|
||||||
|
0,
|
||||||
|
0.25,
|
||||||
|
0.75,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"_values": [
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 5,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": -5,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"preExtrapolation": 1,
|
||||||
|
"postExtrapolation": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.animation.Channel",
|
||||||
|
"_curve": {
|
||||||
|
"__id__": 8
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealCurve",
|
||||||
|
"_times": [
|
||||||
|
0,
|
||||||
|
0.25,
|
||||||
|
0.75,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"_values": [
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealKeyframeValue",
|
||||||
|
"interpolationMode": 0,
|
||||||
|
"tangentWeightMode": 0,
|
||||||
|
"value": 0,
|
||||||
|
"rightTangent": 0,
|
||||||
|
"rightTangentWeight": 1,
|
||||||
|
"leftTangent": 0,
|
||||||
|
"leftTangentWeight": 1,
|
||||||
|
"easingMethod": 0,
|
||||||
|
"__editorExtras__": {
|
||||||
|
"tangentMode": 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"preExtrapolation": 1,
|
||||||
|
"postExtrapolation": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.animation.Channel",
|
||||||
|
"_curve": {
|
||||||
|
"__id__": 10
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.RealCurve",
|
||||||
|
"_times": [],
|
||||||
|
"_values": [],
|
||||||
|
"preExtrapolation": 1,
|
||||||
|
"postExtrapolation": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__type__": "cc.AnimationClipAdditiveSettings",
|
||||||
|
"enabled": false,
|
||||||
|
"refClip": null
|
||||||
|
}
|
||||||
|
]
|
||||||
13
assets/resources/gui/anim/hartanm.anim.meta
Normal file
13
assets/resources/gui/anim/hartanm.anim.meta
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"ver": "2.0.3",
|
||||||
|
"importer": "animation-clip",
|
||||||
|
"imported": true,
|
||||||
|
"uuid": "85cb96f6-0d73-498f-83e8-c733d2ba8634",
|
||||||
|
"files": [
|
||||||
|
".cconb"
|
||||||
|
],
|
||||||
|
"subMetas": {},
|
||||||
|
"userData": {
|
||||||
|
"name": "hartanm"
|
||||||
|
}
|
||||||
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -14,11 +14,11 @@ const { ccclass, property } = _decorator;
|
|||||||
@ccclass('Main')
|
@ccclass('Main')
|
||||||
export class Main extends Root {
|
export class Main extends Root {
|
||||||
start() {
|
start() {
|
||||||
// PhysicsSystem2D.instance.debugDrawFlags = EPhysics2DDrawFlags.Aabb |
|
PhysicsSystem2D.instance.debugDrawFlags = EPhysics2DDrawFlags.Aabb |
|
||||||
// EPhysics2DDrawFlags.Pair |
|
EPhysics2DDrawFlags.Pair |
|
||||||
// EPhysics2DDrawFlags.CenterOfMass |
|
EPhysics2DDrawFlags.CenterOfMass |
|
||||||
// EPhysics2DDrawFlags.Joint |
|
EPhysics2DDrawFlags.Joint |
|
||||||
// EPhysics2DDrawFlags.Shape;
|
EPhysics2DDrawFlags.Shape;
|
||||||
}
|
}
|
||||||
protected async run() {
|
protected async run() {
|
||||||
smc.initialize = ecs.getEntity<Initialize>(Initialize);
|
smc.initialize = ecs.getEntity<Initialize>(Initialize);
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ export function getRandomCardsByType(
|
|||||||
let cardList: number[] = [];
|
let cardList: number[] = [];
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case cardType.HERO:
|
case cardType.HERO:
|
||||||
cardList = getHeroList(data); //hero选项是1和0 1是主将
|
cardList = getHeroList(); //hero选项是1和0 1是主将
|
||||||
break;
|
break;
|
||||||
case cardType.SKILL:
|
case cardType.SKILL:
|
||||||
cardList = getSkills(data); // 技能时 data是品质
|
cardList = getSkills(data); // 技能时 data是品质
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ export enum GameEvent {
|
|||||||
/** 登陆成功 */
|
/** 登陆成功 */
|
||||||
LoginSuccess = "LoginSuccess",
|
LoginSuccess = "LoginSuccess",
|
||||||
MSSelected = "MSSelected",
|
MSSelected = "MSSelected",
|
||||||
|
LifeChange = "LifeChange",
|
||||||
CastSkill = "CastSkill",
|
CastSkill = "CastSkill",
|
||||||
CardsClose = "CardsClose",
|
CardsClose = "CardsClose",
|
||||||
CardRefresh = "CardRefresh",
|
CardRefresh = "CardRefresh",
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ export enum FightSet {
|
|||||||
DOWN_TIME=5,//倒计时时间
|
DOWN_TIME=5,//倒计时时间
|
||||||
MORE_RC=10,//更多次数 广告获取的次数
|
MORE_RC=10,//更多次数 广告获取的次数
|
||||||
TAL_NUM=3,//天赋数量
|
TAL_NUM=3,//天赋数量
|
||||||
|
HEARTPOS=-240,//基地位置
|
||||||
// ATK_TO_ATK_RATIO=0.1,
|
// ATK_TO_ATK_RATIO=0.1,
|
||||||
// ATK_TO_HP_RATIO=0.2,
|
// ATK_TO_HP_RATIO=0.2,
|
||||||
// ATK_TO_SHIELD_RATIO=2,
|
// ATK_TO_SHIELD_RATIO=2,
|
||||||
|
|||||||
@@ -28,19 +28,16 @@ export enum HType {
|
|||||||
mage = 2,
|
mage = 2,
|
||||||
}
|
}
|
||||||
|
|
||||||
export const getHeroList = (is_master:number=0)=>{
|
export const getHeroList = ()=>{
|
||||||
if(is_master==1){
|
|
||||||
return Masters
|
return Masters
|
||||||
}else{
|
|
||||||
return HeroList
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
export const HeroList = [5021,5022,5023,5024,5025,5026,5027,5028]
|
export const HeroList = [5021,5022,5023,5024,5025,5026,5027,5028]
|
||||||
export const MonList = [5201,5202,5203,5204,5205,5206,5219,5220,5221,5222,5223,5224,5225,5226,5227]
|
export const MonList = [5201,5202,5203,5204,5205,5206,5219,5220,5221,5222,5223,5224,5225,5226,5227]
|
||||||
export const Masters = [5001,5002,5003,5004,5005,5006,5007,5008,5009,5010,5011,5012]
|
export const Masters = [5001,5002,5003,5004,5005,5006,5007,5008,5009,5010,5011,5012]
|
||||||
|
|
||||||
export const HeroPos={
|
export const HeroPos={
|
||||||
0:{pos:v3(-160,0,0)},
|
0:{pos:v3(-290,0,0)},
|
||||||
1:{pos:v3(0,0,0)},
|
1:{pos:v3(0,0,0)},
|
||||||
2:{pos:v3(-100,0,0)},
|
2:{pos:v3(-100,0,0)},
|
||||||
}
|
}
|
||||||
@@ -241,50 +238,50 @@ export const HeroInfo = {
|
|||||||
|
|
||||||
//主将
|
//主将
|
||||||
5001:{uuid:5001,name:"刺心.艾吉斯",path:"k1", quality:HQuality.BLUE,lv:1,kind:1,
|
5001:{uuid:5001,name:"刺心.艾吉斯",path:"k1", quality:HQuality.BLUE,lv:1,kind:1,
|
||||||
type:HType.warrior,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6001,6004,6004],
|
type:HType.warrior,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6001,6004,6004],
|
||||||
buff:[],info:"剑类专精,穿刺伤害额外+10%"},
|
buff:[],info:"剑类专精,穿刺伤害额外+10%"},
|
||||||
|
|
||||||
5002:{uuid:5002,name:"飓风.格罗姆",path:"k2", quality:HQuality.BLUE,lv:1,kind:1,
|
5002:{uuid:5002,name:"飓风.格罗姆",path:"k2", quality:HQuality.BLUE,lv:1,kind:1,
|
||||||
type:HType.warrior,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6001,6005,6005],
|
type:HType.warrior,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6001,6005,6005],
|
||||||
buff:[],info:"斧类专精,风怒概率增加10%"},
|
buff:[],info:"斧类专精,风怒概率增加10%"},
|
||||||
|
|
||||||
5003:{uuid:5003,name:"碎颅.赫克托",path:"k4", quality:HQuality.BLUE,lv:1,kind:1,
|
5003:{uuid:5003,name:"碎颅.赫克托",path:"k4", quality:HQuality.BLUE,lv:1,kind:1,
|
||||||
type:HType.warrior,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6001,6021,6001],
|
type:HType.warrior,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6001,6021,6001],
|
||||||
buff:[],info:"锤类专精,暴击概率增加10%"},
|
buff:[],info:"锤类专精,暴击概率增加10%"},
|
||||||
|
|
||||||
5004:{uuid:5004,name:"裂伤.塔米拉",path:"k3", quality:HQuality.BLUE,lv:1,kind:1,
|
5004:{uuid:5004,name:"裂伤.塔米拉",path:"k3", quality:HQuality.BLUE,lv:1,kind:1,
|
||||||
type:HType.warrior,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6001,6021,6001],
|
type:HType.warrior,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6001,6021,6001],
|
||||||
buff:[],info:"刀类专精,易伤效果额外持续1次"},
|
buff:[],info:"刀类专精,易伤效果额外持续1次"},
|
||||||
|
|
||||||
5005:{uuid:5005,name:"幽灵射手",path:"a4", quality:HQuality.BLUE,lv:1,kind:2,
|
5005:{uuid:5005,name:"幽灵射手",path:"a4", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.remote,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6003,6003,6003],
|
type:HType.remote,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6003,6003,6003],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
5006:{uuid:5006,name:"战争领主",path:"k5", quality:HQuality.BLUE,lv:1,kind:2,
|
5006:{uuid:5006,name:"战争领主",path:"k5", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.warrior,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6002,6002,6002],
|
type:HType.warrior,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6002,6002,6002],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
5007:{uuid:5007,name:"混沌法师",path:"zh1", quality:HQuality.BLUE,lv:1,kind:2,
|
5007:{uuid:5007,name:"混沌法师",path:"zh1", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.mage,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6002,6002,6002],
|
type:HType.mage,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6002,6002,6002],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
5008:{uuid:5008,name:"火焰法师",path:"zh2", quality:HQuality.BLUE,lv:1,kind:2,
|
5008:{uuid:5008,name:"火焰法师",path:"zh2", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.mage,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6002,6002,6002],
|
type:HType.mage,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6002,6002,6002],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
5009:{uuid:5009,name:"风暴精灵",path:"m4", quality:HQuality.BLUE,lv:1,kind:2,
|
5009:{uuid:5009,name:"风暴精灵",path:"m4", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.mage,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6002,6002,6002],
|
type:HType.mage,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6002,6002,6002],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
5010:{uuid:5010,name:"战争祭祀",path:"d2", quality:HQuality.BLUE,lv:1,kind:2,
|
5010:{uuid:5010,name:"战争祭祀",path:"d2", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.mage,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6002,6002,6002],
|
type:HType.mage,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6002,6002,6002],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
5011:{uuid:5011,name:"暴风射手",path:"a5", quality:HQuality.BLUE,lv:1,kind:2,
|
5011:{uuid:5011,name:"暴风射手",path:"a5", quality:HQuality.BLUE,lv:1,kind:2,
|
||||||
type:HType.remote,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6003,6003,6003],
|
type:HType.remote,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6003,6003,6003],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
5012:{uuid:5012,name:"苍穹射手",path:"a3", quality:HQuality.BLUE,lv:1,kind:1,
|
5012:{uuid:5012,name:"苍穹射手",path:"a3", quality:HQuality.BLUE,lv:1,kind:1,
|
||||||
type:HType.remote,hp:100,ap:15,dis:600,cd:1.5,speed:50,skills:[6003,6003,6003],
|
type:HType.remote,hp:100,ap:15,dis:400,cd:1.5,speed:50,skills:[6003,6003,6003],
|
||||||
buff:[],info:"说明"},
|
buff:[],info:"说明"},
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,10 @@ import { HeroViewComp } from "../../../hero/HeroViewComp";
|
|||||||
import { BattleMoveComp } from "./BattleMoveComp";
|
import { BattleMoveComp } from "./BattleMoveComp";
|
||||||
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 "../../SingletonModuleComp";
|
import { smc } from "../../SingletonModuleComp";
|
||||||
import { BoxSet } from "../../config/BoxSet";
|
import { BoxSet, FacSet } from "../../config/BoxSet";
|
||||||
|
import { oops } from "db://oops-framework/core/Oops";
|
||||||
|
import { GameEvent } from "../../config/GameEvent";
|
||||||
|
import { FightSet } from "../../config/Mission";
|
||||||
|
|
||||||
@ecs.register('BattleMoveSystem')
|
@ecs.register('BattleMoveSystem')
|
||||||
export class BattleMoveSystem extends ecs.ComblockSystem implements ecs.ISystemUpdate {
|
export class BattleMoveSystem extends ecs.ComblockSystem implements ecs.ISystemUpdate {
|
||||||
@@ -25,18 +28,19 @@ export class BattleMoveSystem extends ecs.ComblockSystem implements ecs.ISystemU
|
|||||||
|
|
||||||
// 同步状态
|
// 同步状态
|
||||||
|
|
||||||
if (!shouldStop&&view.fac==1) { //在攻击范围内停止移动 取消这个判断
|
if (!shouldStop) { //在攻击范围内停止移动 取消这个判断
|
||||||
// if(view.fac==1){
|
// if(view.fac==1){
|
||||||
if(view.is_stop||view.is_dead||view.DEBUFF_STUN>0 ||view.DEBUFF_FROST>0) return //停止移动或者死亡不移动
|
if(view.is_stop||view.is_dead||view.DEBUFF_STUN>0 ||view.DEBUFF_FROST>0) return //停止移动或者死亡不移动
|
||||||
|
// 新增墓地位置判断,如果已经在墓地则不再移动
|
||||||
|
if (view.node.position.x === -1000 || view.node.position.x === 1000) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
// 计算移动量
|
// 计算移动量
|
||||||
const delta = ((view.speed-view.DEBUFF_SLOW)/3) * this.dt * move.direction;
|
const delta = ((view.speed-view.DEBUFF_SLOW)/3) * this.dt * move.direction;
|
||||||
const newX = view.node.position.x + delta;
|
const newX = view.node.position.x + delta;
|
||||||
|
|
||||||
view.status_change("move")
|
view.status_change("move")
|
||||||
// 新增墓地位置判断,如果已经在墓地则不再移动
|
|
||||||
if (view.node.position.x === -1000 || view.node.position.x === 1000) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 限制移动范围
|
// 限制移动范围
|
||||||
if (this.validatePosition(newX, move)) {
|
if (this.validatePosition(newX, move)) {
|
||||||
view.node.setPosition(newX, view.node.position.y, 0);
|
view.node.setPosition(newX, view.node.position.y, 0);
|
||||||
@@ -45,7 +49,7 @@ export class BattleMoveSystem extends ecs.ComblockSystem implements ecs.ISystemU
|
|||||||
else{
|
else{
|
||||||
view.status_change("idle")
|
view.status_change("idle")
|
||||||
}
|
}
|
||||||
|
this.checkEnemiesInBase(e)
|
||||||
|
|
||||||
// console.log(`[${view.hero_name}] 类型:${view.type} 是否停止:${shouldStop} 方向:${move.direction} 位置:${view.node.position.x.toFixed(1)}`);
|
// console.log(`[${view.hero_name}] 类型:${view.type} 是否停止:${shouldStop} 方向:${move.direction} 位置:${view.node.position.x.toFixed(1)}`);
|
||||||
}
|
}
|
||||||
@@ -58,8 +62,22 @@ export class BattleMoveSystem extends ecs.ComblockSystem implements ecs.ISystemU
|
|||||||
newX >= move.targetX;
|
newX >= move.targetX;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 检测是否在墓地 */
|
||||||
|
private checkInGrave(entity: ecs.Entity): boolean {
|
||||||
|
const view = entity.get(HeroViewComp);
|
||||||
|
return view.node.position.x === -1000 || view.node.position.x === 1000;
|
||||||
|
}
|
||||||
|
/**驾车敌人是否进入我放基地 */
|
||||||
|
private checkEnemiesInBase(entity: ecs.Entity) {
|
||||||
|
const view = entity.get(HeroViewComp);
|
||||||
|
if(view.fac==FacSet.MON){
|
||||||
|
if(view.atk_heart) return
|
||||||
|
if(view.node.position.x <= FightSet.HEARTPOS){
|
||||||
|
oops.message.dispatchEvent(GameEvent.LifeChange,-1)
|
||||||
|
view.atk_heart=true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
/** 检测攻击范围内敌人 */
|
/** 检测攻击范围内敌人 */
|
||||||
private checkEnemiesInRange(entity: ecs.Entity, range: number): boolean {
|
private checkEnemiesInRange(entity: ecs.Entity, range: number): boolean {
|
||||||
const currentPos = entity.get(HeroViewComp).node.position;
|
const currentPos = entity.get(HeroViewComp).node.position;
|
||||||
|
|||||||
@@ -83,7 +83,6 @@ export class BuffComp extends Component {
|
|||||||
|
|
||||||
vmdata_update(is_hp:boolean=false){
|
vmdata_update(is_hp:boolean=false){
|
||||||
// console.log("[BuffComp]:to_update_vmdata:"+this.HeroView.hero_name)
|
// console.log("[BuffComp]:to_update_vmdata:"+this.HeroView.hero_name)
|
||||||
|
|
||||||
let info= null
|
let info= null
|
||||||
if(!this.HeroView) return
|
if(!this.HeroView) return
|
||||||
if(!this.HeroView.is_master) return
|
if(!this.HeroView.is_master) return
|
||||||
|
|||||||
@@ -71,7 +71,13 @@ export class Hero extends ecs.Entity {
|
|||||||
oops.message.dispatchEvent(GameEvent.MasterCalled,{uuid:uuid})
|
oops.message.dispatchEvent(GameEvent.MasterCalled,{uuid:uuid})
|
||||||
const move = this.get(BattleMoveComp);
|
const move = this.get(BattleMoveComp);
|
||||||
move.direction = 1; // 向右移动
|
move.direction = 1; // 向右移动
|
||||||
move.targetX = 800; // 右边界'
|
move.targetX = 0; // 右边界'
|
||||||
|
if(HeroInfo[uuid].type==HType.remote){
|
||||||
|
move.targetX = -100; // 右边界'
|
||||||
|
}
|
||||||
|
if(HeroInfo[uuid].type==HType.mage){
|
||||||
|
move.targetX = -200; // 右边界'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
hero_init(uuid:number=1001,node:Node,info:any={ap:0,hp:0,lv:1,crit:0,crit_d:0,dod:0,dod_no:false,crit_no:false}) {
|
hero_init(uuid:number=1001,node:Node,info:any={ap:0,hp:0,lv:1,crit:0,crit_d:0,dod:0,dod_no:false,crit_no:false}) {
|
||||||
var hv = node.getComponent(HeroViewComp)!;
|
var hv = node.getComponent(HeroViewComp)!;
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ const { ccclass, property } = _decorator;
|
|||||||
@ecs.register('HeroView', false) // 定义为 ECS 组件
|
@ecs.register('HeroView', false) // 定义为 ECS 组件
|
||||||
export class HeroViewComp extends CCComp {
|
export class HeroViewComp extends CCComp {
|
||||||
BUFFCOMP:BuffComp=null!
|
BUFFCOMP:BuffComp=null!
|
||||||
|
atk_heart:boolean=false;
|
||||||
as: HeroSpine = null!
|
as: HeroSpine = null!
|
||||||
status:String = "idle"
|
status:String = "idle"
|
||||||
hero_uuid:number = 1001;
|
hero_uuid:number = 1001;
|
||||||
@@ -166,7 +167,7 @@ export class HeroViewComp extends CCComp {
|
|||||||
start () {
|
start () {
|
||||||
this.as.idle()
|
this.as.idle()
|
||||||
this.BUFFCOMP=this.node.getComponent(BuffComp);
|
this.BUFFCOMP=this.node.getComponent(BuffComp);
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
/** 方向 */
|
/** 方向 */
|
||||||
this.node.setScale(this.scale,1);
|
this.node.setScale(this.scale,1);
|
||||||
this.node.getChildByName("top").setScale(this.scale,1);
|
this.node.getChildByName("top").setScale(this.scale,1);
|
||||||
@@ -177,7 +178,9 @@ export class HeroViewComp extends CCComp {
|
|||||||
this.node.getChildByName("top").getChildByName("hp").active = true;
|
this.node.getChildByName("top").getChildByName("hp").active = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
update_vmdata(){
|
||||||
|
if(this.is_master) this.BUFFCOMP.vmdata_update()
|
||||||
|
}
|
||||||
update(dt: number){
|
update(dt: number){
|
||||||
if(!smc.mission.play||smc.mission.pause) return
|
if(!smc.mission.play||smc.mission.pause) return
|
||||||
// if(this.is_dead) {
|
// if(this.is_dead) {
|
||||||
@@ -234,70 +237,70 @@ export class HeroViewComp extends CCComp {
|
|||||||
change_wfuny(wfuny: number){
|
change_wfuny(wfuny: number){
|
||||||
this.wfuny+=wfuny
|
this.wfuny+=wfuny
|
||||||
if(this.wfuny<0) this.wfuny=0
|
if(this.wfuny<0) this.wfuny=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_puncture(puncture: number){
|
change_puncture(puncture: number){
|
||||||
this.puncture+=puncture
|
this.puncture+=puncture
|
||||||
if(this.puncture<1) this.puncture=1
|
if(this.puncture<1) this.puncture=1
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_puncture_damage(puncture_damage: number){
|
change_puncture_damage(puncture_damage: number){
|
||||||
this.puncture_damage+=puncture_damage
|
this.puncture_damage+=puncture_damage
|
||||||
if(this.puncture_damage<0) this.puncture_damage=0
|
if(this.puncture_damage<0) this.puncture_damage=0
|
||||||
if(this.puncture_damage>80) this.puncture_damage=80
|
if(this.puncture_damage>80) this.puncture_damage=80
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_dodge(dodge: number){
|
change_dodge(dodge: number){
|
||||||
this.dod+=dodge
|
this.dod+=dodge
|
||||||
if(this.dod<0) this.dod=0
|
if(this.dod<0) this.dod=0
|
||||||
if(this.dod>90) this.dod=90
|
if(this.dod>90) this.dod=90
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_frost_ratto(frost_ratto: number){
|
change_frost_ratto(frost_ratto: number){
|
||||||
this.frost_ratto+=frost_ratto
|
this.frost_ratto+=frost_ratto
|
||||||
if(this.frost_ratto<0) this.frost_ratto=0
|
if(this.frost_ratto<0) this.frost_ratto=0
|
||||||
if(this.frost_ratto>90) this.frost_ratto=90
|
if(this.frost_ratto>90) this.frost_ratto=90
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
|
|
||||||
change_knockback(knockback: number){
|
change_knockback(knockback: number){
|
||||||
this.knockback+=knockback
|
this.knockback+=knockback
|
||||||
if(this.knockback<0) this.knockback=0
|
if(this.knockback<0) this.knockback=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
|
|
||||||
change_stun_ratto(stun_ratto: number){
|
change_stun_ratto(stun_ratto: number){
|
||||||
this.stun_ratto+=stun_ratto
|
this.stun_ratto+=stun_ratto
|
||||||
if(this.stun_ratto<0) this.stun_ratto=0
|
if(this.stun_ratto<0) this.stun_ratto=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
|
|
||||||
change_def(def: number){
|
change_def(def: number){
|
||||||
this.def+=def
|
this.def+=def
|
||||||
if(this.def>90) this.def=90
|
if(this.def>90) this.def=90
|
||||||
if(this.def<0) this.def=0
|
if(this.def<0) this.def=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
// this.BUFFCOMP.tooltip(TooltipTypes.defup,def.toFixed(0));
|
// this.BUFFCOMP.tooltip(TooltipTypes.defup,def.toFixed(0));
|
||||||
}
|
}
|
||||||
change_crit(crit: number){
|
change_crit(crit: number){
|
||||||
this.crit+=crit
|
this.crit+=crit
|
||||||
if(this.crit<0) this.crit=0
|
if(this.crit<0) this.crit=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_crit_d(crit_d: number){
|
change_crit_d(crit_d: number){
|
||||||
this.crit_d+=crit_d
|
this.crit_d+=crit_d
|
||||||
if(this.crit_d<0) this.crit_d=0
|
if(this.crit_d<0) this.crit_d=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_reflect(reflect: number){
|
change_reflect(reflect: number){
|
||||||
this.reflect+=reflect
|
this.reflect+=reflect
|
||||||
if(this.reflect<0) this.reflect=0
|
if(this.reflect<0) this.reflect=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
change_lifesteal(lifesteal: number){
|
change_lifesteal(lifesteal: number){
|
||||||
this.lifesteal+=lifesteal
|
this.lifesteal+=lifesteal
|
||||||
if(this.lifesteal<0) this.lifesteal=0
|
if(this.lifesteal<0) this.lifesteal=0
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
}
|
}
|
||||||
|
|
||||||
check_atrr(buff:BuffAttr){
|
check_atrr(buff:BuffAttr){
|
||||||
@@ -316,19 +319,17 @@ export class HeroViewComp extends CCComp {
|
|||||||
switch(buff){
|
switch(buff){
|
||||||
case BuffAttr.ATK:
|
case BuffAttr.ATK:
|
||||||
this.ap=this.check_atrr(BuffAttr.ATK)
|
this.ap=this.check_atrr(BuffAttr.ATK)
|
||||||
// if(this.is_master) {
|
// this.update_vmdata()
|
||||||
// // this.BUFFCOMP.vmdata_update();
|
|
||||||
// }
|
|
||||||
break
|
break
|
||||||
case BuffAttr.ATK_CD:
|
case BuffAttr.ATK_CD:
|
||||||
this.cd=this.check_atrr(BuffAttr.ATK_CD)
|
this.cd=this.check_atrr(BuffAttr.ATK_CD)
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update()
|
// this.update_vmdata()
|
||||||
break
|
break
|
||||||
case BuffAttr.HP:
|
case BuffAttr.HP:
|
||||||
let diff=this.check_atrr(BuffAttr.HP)-this.hp_max
|
let diff=this.check_atrr(BuffAttr.HP)-this.hp_max
|
||||||
this.hp_max=this.check_atrr(BuffAttr.HP)
|
this.hp_max=this.check_atrr(BuffAttr.HP)
|
||||||
this.hp+=diff
|
this.hp+=diff
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update(true)
|
// this.update_vmdata()
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -376,7 +377,7 @@ export class HeroViewComp extends CCComp {
|
|||||||
//console.log("[HeroViewComp]:de_hp_max de:",hp,this.hp_max)
|
//console.log("[HeroViewComp]:de_hp_max de:",hp,this.hp_max)
|
||||||
this.hp_base -= Math.floor(hp) ;
|
this.hp_base -= Math.floor(hp) ;
|
||||||
this.count_atrr(BuffAttr.HP)
|
this.count_atrr(BuffAttr.HP)
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update(true)
|
// this.update_vm
|
||||||
}
|
}
|
||||||
|
|
||||||
add_hp(hp: number = 0,is_num:boolean=true) {
|
add_hp(hp: number = 0,is_num:boolean=true) {
|
||||||
@@ -401,7 +402,7 @@ export class HeroViewComp extends CCComp {
|
|||||||
this.hp+=real_hp;
|
this.hp+=real_hp;
|
||||||
this.BUFFCOMP.tooltip(TooltipTypes.health,real_hp.toFixed(0));
|
this.BUFFCOMP.tooltip(TooltipTypes.health,real_hp.toFixed(0));
|
||||||
}
|
}
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update(true)
|
// this.update_vm
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -626,7 +627,7 @@ export class HeroViewComp extends CCComp {
|
|||||||
this.ent.destroy();
|
this.ent.destroy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// if(this.is_master) this.BUFFCOMP.vmdata_update(true)
|
// this.update_vm
|
||||||
this.showDamage(damage, is_crit);
|
this.showDamage(damage, is_crit);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -781,12 +782,7 @@ export class HeroViewComp extends CCComp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
to_update(){
|
to_update(){
|
||||||
// console.log("[HeroViewComp]:to_update",this.is_master)
|
if(this.fac==FacSet.MON) return
|
||||||
// if(!this.is_master) return
|
|
||||||
// smc.vmdata.hero.exp = smc.vmdata.hero.exp-smc.vmdata.hero.next_exp
|
|
||||||
// smc.vmdata.hero.lv = smc.vmdata.hero.lv+1
|
|
||||||
// smc.vmdata.hero.next_exp=getUpExp(smc.vmdata.hero.lv)
|
|
||||||
// oops.message.dispatchEvent(GameEvent.HeroLvUp,{lv:smc.vmdata.hero.lv})
|
|
||||||
this.BUFFCOMP.lv_up()
|
this.BUFFCOMP.lv_up()
|
||||||
// this.BUFFCOMP.tooltip(TooltipTypes.lvup)
|
// this.BUFFCOMP.tooltip(TooltipTypes.lvup)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ export class SkillConComp extends CCComp {
|
|||||||
|
|
||||||
cast_master_skill(e:string,uuid:any){
|
cast_master_skill(e:string,uuid:any){
|
||||||
if(!this.HeroView) return
|
if(!this.HeroView) return
|
||||||
if(!this.HeroView.is_master) return
|
if(this.HeroView.fac==FacSet.MON) return
|
||||||
//console.log("hart cast_skill",uuid ,e)
|
//console.log("hart cast_skill",uuid ,e)
|
||||||
const config = SkillSet[uuid];
|
const config = SkillSet[uuid];
|
||||||
this.castSkill(config,false,this.HeroView.skill_dmg)
|
this.castSkill(config,false,this.HeroView.skill_dmg)
|
||||||
@@ -106,7 +106,7 @@ export class SkillConComp extends CCComp {
|
|||||||
|
|
||||||
use_max_skill(e:GameEvent,data:any){
|
use_max_skill(e:GameEvent,data:any){
|
||||||
if(!this.HeroView) return
|
if(!this.HeroView) return
|
||||||
if(!this.HeroView.is_master) return
|
if(this.HeroView.fac==FacSet.MON) return
|
||||||
//console.log("[SkillConComp]:use_max_skill:",data)
|
//console.log("[SkillConComp]:use_max_skill:",data)
|
||||||
this.skill_id_counter++;
|
this.skill_id_counter++;
|
||||||
this.aoe_queues.push({
|
this.aoe_queues.push({
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ export class CardComp extends CCComp {
|
|||||||
skill_slot:string="skill1"
|
skill_slot:string="skill1"
|
||||||
equip_slot:string="weapon"
|
equip_slot:string="weapon"
|
||||||
talent_slot:string="tal1"
|
talent_slot:string="tal1"
|
||||||
is_master:boolean=false;
|
|
||||||
enhancement_data:any=null;
|
enhancement_data:any=null;
|
||||||
onLoad(){
|
onLoad(){
|
||||||
// this.on(GameEvent.HeroSelect,this.hero_select,this)
|
// this.on(GameEvent.HeroSelect,this.hero_select,this)
|
||||||
@@ -54,11 +53,10 @@ export class CardComp extends CCComp {
|
|||||||
this.node.getChildByName("Button").active=true
|
this.node.getChildByName("Button").active=true
|
||||||
}, 0.1);
|
}, 0.1);
|
||||||
}
|
}
|
||||||
hero_select(args: any,is_master:boolean=false){
|
hero_select(args: any){
|
||||||
this.c_type=cardType.HERO
|
this.c_type=cardType.HERO
|
||||||
this.c_uuid=args.uuid
|
this.c_uuid=args.uuid
|
||||||
this.is_master=is_master
|
this.show_hero(this.c_uuid)
|
||||||
this.show_hero(this.c_uuid,is_master)
|
|
||||||
this.node.getChildByName("show").active=false
|
this.node.getChildByName("show").active=false
|
||||||
this.node.getChildByName("anim").getChildByName("up").getComponent(Animation).play('carsup')
|
this.node.getChildByName("anim").getChildByName("up").getComponent(Animation).play('carsup')
|
||||||
this.scheduleOnce(() => {
|
this.scheduleOnce(() => {
|
||||||
@@ -153,7 +151,7 @@ export class CardComp extends CCComp {
|
|||||||
show.getChildByName("info").getComponent(Label).string=SkillSet[uuid].info
|
show.getChildByName("info").getComponent(Label).string=SkillSet[uuid].info
|
||||||
}
|
}
|
||||||
|
|
||||||
show_hero(uuid:number,is_master:boolean=false){
|
show_hero(uuid:number){
|
||||||
let show=this.node.getChildByName("show")
|
let show=this.node.getChildByName("show")
|
||||||
show.getChildByName("name").getChildByName("name").getComponent(Label).string=HeroInfo[uuid].name
|
show.getChildByName("name").getChildByName("name").getComponent(Label).string=HeroInfo[uuid].name
|
||||||
this.do_card_bg_show(HeroInfo[uuid].quality)
|
this.do_card_bg_show(HeroInfo[uuid].quality)
|
||||||
@@ -304,7 +302,7 @@ export class CardComp extends CCComp {
|
|||||||
use_card(){
|
use_card(){
|
||||||
switch(this.c_type){
|
switch(this.c_type){
|
||||||
case cardType.HERO:
|
case cardType.HERO:
|
||||||
oops.message.dispatchEvent(GameEvent.UseHeroCard,{uuid:this.c_uuid,is_master:this.is_master})
|
oops.message.dispatchEvent(GameEvent.UseHeroCard,{uuid:this.c_uuid})
|
||||||
oops.message.dispatchEvent(GameEvent.CardsClose)
|
oops.message.dispatchEvent(GameEvent.CardsClose)
|
||||||
break
|
break
|
||||||
case cardType.SKILL:
|
case cardType.SKILL:
|
||||||
|
|||||||
@@ -72,8 +72,7 @@ export class CardsCompComp extends CCComp {
|
|||||||
switch(e){
|
switch(e){
|
||||||
case GameEvent.HeroSelect:
|
case GameEvent.HeroSelect:
|
||||||
console.log("[CardsComp]:显示英雄选择卡牌",data)
|
console.log("[CardsComp]:显示英雄选择卡牌",data)
|
||||||
let title="选择伙伴"
|
let title="选择英雄"
|
||||||
if(data.is_master) title="选择英雄"
|
|
||||||
this.node.getChildByName("top").getChildByName("title").getChildByName("Label").getComponent(Label).string=title
|
this.node.getChildByName("top").getChildByName("title").getChildByName("Label").getComponent(Label).string=title
|
||||||
this.hero_select(data)
|
this.hero_select(data)
|
||||||
break
|
break
|
||||||
@@ -126,16 +125,11 @@ export class CardsCompComp extends CCComp {
|
|||||||
this.card3c.enhancement_select(list[2])
|
this.card3c.enhancement_select(list[2])
|
||||||
}
|
}
|
||||||
hero_select(data:any){
|
hero_select(data:any){
|
||||||
let list=[]
|
let list=getRandomCardsByType(cardType.HERO,3,0)
|
||||||
if(data.is_master){ //1是主将,0 是伙伴
|
|
||||||
list=getRandomCardsByType(cardType.HERO,3,1)
|
|
||||||
}else{
|
|
||||||
list=getRandomCardsByType(cardType.HERO,3,0)
|
|
||||||
}
|
|
||||||
console.log("[CardsComp]:英雄选择卡牌列表",list)
|
console.log("[CardsComp]:英雄选择卡牌列表",list)
|
||||||
this.card1c.hero_select(list[0],data.is_master)
|
this.card1c.hero_select(list[0])
|
||||||
this.card2c.hero_select(list[1],data.is_master)
|
this.card2c.hero_select(list[1])
|
||||||
this.card3c.hero_select(list[2],data.is_master)
|
this.card3c.hero_select(list[2])
|
||||||
// this.card4c.hero_select(list[3])
|
// this.card4c.hero_select(list[3])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
39
assets/script/game/map/LifeComp.ts
Normal file
39
assets/script/game/map/LifeComp.ts
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
import { _decorator, Component, Node } from 'cc';
|
||||||
|
import { oops } from 'db://oops-framework/core/Oops';
|
||||||
|
import { GameEvent } from '../common/config/GameEvent';
|
||||||
|
const { ccclass, property } = _decorator;
|
||||||
|
|
||||||
|
@ccclass('LifeComp')
|
||||||
|
export class LifeComp extends Component {
|
||||||
|
loss_life:number=0
|
||||||
|
protected onLoad(): void {
|
||||||
|
oops.message.on(GameEvent.FightReady,this.onFightReady,this)
|
||||||
|
oops.message.on(GameEvent.LifeChange,this.onLifeChange,this)
|
||||||
|
}
|
||||||
|
start() {
|
||||||
|
this.node.setSiblingIndex(100)
|
||||||
|
}
|
||||||
|
|
||||||
|
update(deltaTime: number) {
|
||||||
|
|
||||||
|
}
|
||||||
|
onFightReady(args: any) {
|
||||||
|
console.log("[LifeComp]:onMissionStart",args)
|
||||||
|
let nodes=this.node.children
|
||||||
|
nodes[0].active=true
|
||||||
|
nodes[1].active=true
|
||||||
|
nodes[2].active=true
|
||||||
|
this.loss_life=0
|
||||||
|
}
|
||||||
|
onLifeChange(args: any) {
|
||||||
|
console.log("[LifeComp]:onLifeChange loss_life:",this.loss_life)
|
||||||
|
let nodes=this.node.children
|
||||||
|
nodes[this.loss_life].active=false
|
||||||
|
this.loss_life++
|
||||||
|
if(this.loss_life >= 3){
|
||||||
|
oops.message.dispatchEvent(GameEvent.MissionLoss)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
9
assets/script/game/map/LifeComp.ts.meta
Normal file
9
assets/script/game/map/LifeComp.ts.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"ver": "4.0.23",
|
||||||
|
"importer": "typescript",
|
||||||
|
"imported": true,
|
||||||
|
"uuid": "3bb0f1a5-485d-4c26-a592-9553f8c00f37",
|
||||||
|
"files": [],
|
||||||
|
"subMetas": {},
|
||||||
|
"userData": {}
|
||||||
|
}
|
||||||
@@ -156,13 +156,13 @@ export class MissionComp extends CCComp {
|
|||||||
do_mon_dead(){
|
do_mon_dead(){
|
||||||
this.do_mon_dead_thing()
|
this.do_mon_dead_thing()
|
||||||
smc.vmdata.mission_data.mon_num--
|
smc.vmdata.mission_data.mon_num--
|
||||||
if(smc.vmdata.mission_data.mon_num<=0 && this.count_tal() < FightSet.TAL_NUM) {
|
if(smc.vmdata.mission_data.mon_num<=0) {
|
||||||
if(smc.vmdata.mission_data.current_wave == RogueTalWave[this.count_tal()].wave){
|
// if(smc.vmdata.mission_data.current_wave == RogueTalWave[this.count_tal()].wave){
|
||||||
console.log("[MissionComp] current_wave:"+smc.vmdata.mission_data.current_wave+" tal wave:"+RogueTalWave[this.count_tal()].wave)
|
// console.log("[MissionComp] current_wave:"+smc.vmdata.mission_data.current_wave+" tal wave:"+RogueTalWave[this.count_tal()].wave)
|
||||||
oops.message.dispatchEvent(GameEvent.TalentSelect,{slot:TalentSlot[this.count_tal()]})
|
// oops.message.dispatchEvent(GameEvent.TalentSelect,{slot:TalentSlot[this.count_tal()]})
|
||||||
this.tals[this.count_tal()]=true
|
// this.tals[this.count_tal()]=true
|
||||||
|
|
||||||
}
|
// }
|
||||||
this.show_time(this.do_next_wave.bind(this))
|
this.show_time(this.do_next_wave.bind(this))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -246,7 +246,7 @@ export class MissionComp extends CCComp {
|
|||||||
|
|
||||||
}
|
}
|
||||||
to_ready(){
|
to_ready(){
|
||||||
oops.message.dispatchEvent(GameEvent.HeroSelect,{is_master:true})
|
oops.message.dispatchEvent(GameEvent.HeroSelect)
|
||||||
}
|
}
|
||||||
ready_to_fight(){
|
ready_to_fight(){
|
||||||
this.time_num=5
|
this.time_num=5
|
||||||
@@ -265,7 +265,7 @@ export class MissionComp extends CCComp {
|
|||||||
// oops.message.dispatchEvent(GameEvent.EnhancementSelect)
|
// oops.message.dispatchEvent(GameEvent.EnhancementSelect)
|
||||||
// }
|
// }
|
||||||
to_call_friend(){
|
to_call_friend(){
|
||||||
oops.message.dispatchEvent(GameEvent.HeroSelect,{is_master:false})
|
oops.message.dispatchEvent(GameEvent.HeroSelect)
|
||||||
}
|
}
|
||||||
|
|
||||||
to_fight(){
|
to_fight(){
|
||||||
@@ -335,7 +335,7 @@ export class MissionComp extends CCComp {
|
|||||||
|
|
||||||
}
|
}
|
||||||
call_friend_card(){
|
call_friend_card(){
|
||||||
oops.message.dispatchEvent(GameEvent.HeroSelect,{is_master:false})
|
oops.message.dispatchEvent(GameEvent.HeroSelect)
|
||||||
}
|
}
|
||||||
call_tal_card(){
|
call_tal_card(){
|
||||||
oops.message.dispatchEvent(GameEvent.TalentSelect)
|
oops.message.dispatchEvent(GameEvent.TalentSelect)
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ export class MissionHeroCompComp extends CCComp {
|
|||||||
}
|
}
|
||||||
private zhao_huan(event: string, args: any){
|
private zhao_huan(event: string, args: any){
|
||||||
console.log("[MissionHeroComp]:zhaohuan",args)
|
console.log("[MissionHeroComp]:zhaohuan",args)
|
||||||
this.addHero(args.uuid,false,true)
|
this.addHero(args.uuid,false)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -57,19 +57,12 @@ export class MissionHeroCompComp extends CCComp {
|
|||||||
// let x=RandomManager.instance.getRandomInt(0,hero_list.length,1)
|
// let x=RandomManager.instance.getRandomInt(0,hero_list.length,1)
|
||||||
// // let uuid=args.uuid
|
// // let uuid=args.uuid
|
||||||
// // console.log("call_hero",uuid)
|
// // console.log("call_hero",uuid)
|
||||||
this.addHero(args.uuid,args.is_master,false)
|
this.addHero(args.uuid,false)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 添加英雄 */
|
/** 添加英雄 */
|
||||||
private addHero(uuid:number=1001,is_master:boolean=false,is_zhaohuan:boolean=false) {
|
private addHero(uuid:number=1001,is_zhaohuan:boolean=false) {
|
||||||
let hero_pos=1
|
let hero_pos=0
|
||||||
if(is_master){
|
|
||||||
hero_pos=0
|
|
||||||
}
|
|
||||||
if(is_zhaohuan){
|
|
||||||
hero_pos=2
|
|
||||||
}
|
|
||||||
|
|
||||||
let hero = ecs.getEntity<Hero>(Hero);
|
let hero = ecs.getEntity<Hero>(Hero);
|
||||||
let scale = 1
|
let scale = 1
|
||||||
let pos:Vec3 = HeroPos[hero_pos].pos;
|
let pos:Vec3 = HeroPos[hero_pos].pos;
|
||||||
|
|||||||
Reference in New Issue
Block a user