mirror of
https://gitee.com/jisol/jisol-game/
synced 2025-09-27 02:36:14 +00:00
重置配置表
This commit is contained in:
@@ -1,14 +1,10 @@
|
||||
import { Node } from "cc";
|
||||
import { TableGRoleAttack } from "../../../../resources/config/ts/TableGRoleAttack";
|
||||
import GRoleBase from "../role/GRoleBase";
|
||||
import GAttackNormal from "./GAttackNormal";
|
||||
import GAttackParabolicBangRemote from "./GAttackParabolicBangRemote";
|
||||
import { UITransform } from "cc";
|
||||
import GButtleBase from "../bullet/GButtleBase";
|
||||
import { GFSMAnimBase } from "../fsm/GFSMAnimBase";
|
||||
import GFSMBase from "../fsm/GFSMBase";
|
||||
import GRoleDefault from "../role/GRoleDefault";
|
||||
import GNode from "../common/GNode";
|
||||
import { TB } from "../../../../resources/config/data/schema";
|
||||
|
||||
//攻击子弹类
|
||||
export class GAttackBullet{
|
||||
@@ -26,7 +22,7 @@ export class GAttackBullet{
|
||||
|
||||
//攻击方式基类
|
||||
export interface GAttackBase{
|
||||
attack(role:GRoleDefault,info:TableGRoleAttack);
|
||||
attack(role:GRoleDefault,info:TB.TbGRoleAttack);
|
||||
}
|
||||
|
||||
//攻击方式
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import { TableGRoleAttack } from "../../../../resources/config/ts/TableGRoleAttack";
|
||||
import { TB } from "../../../../resources/config/data/schema";
|
||||
import GRoleDefault from "../role/GRoleDefault";
|
||||
import { GAttackBase } from "./GAttack";
|
||||
|
||||
@@ -6,7 +6,7 @@ import { GAttackBase } from "./GAttack";
|
||||
//普通攻击
|
||||
export default class GAttackNormal implements GAttackBase{
|
||||
|
||||
attack(role: GRoleDefault, info: TableGRoleAttack) {
|
||||
attack(role: GRoleDefault, info: TB.TbGRoleAttack) {
|
||||
role.fsm.enemy.onHit();
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,5 @@
|
||||
import { SpriteFrame } from "cc";
|
||||
import { TableGRoleAttack } from "../../../../resources/config/ts/TableGRoleAttack";
|
||||
import { app } from "../../../App";
|
||||
import { TD, app } from "../../../App";
|
||||
import GRoleBase from "../role/GRoleBase";
|
||||
import { GAttackBase, GAttackBullet } from "./GAttack";
|
||||
import GButtleDefault from "../bullet/GButtleDefault";
|
||||
@@ -9,10 +8,10 @@ import { bezier } from "cc";
|
||||
import { v2 } from "cc";
|
||||
import { Vec2 } from "cc";
|
||||
import GEffectUtil from "../common/GEffectUtil";
|
||||
import { TableGRoleAttackEffect } from "../../../../resources/config/ts/TableGRoleAttackEffect";
|
||||
import GDetection from "../common/GDetection";
|
||||
import { rect } from "cc";
|
||||
import GRoleDefault from "../role/GRoleDefault";
|
||||
import { TB } from "../../../../resources/config/data/schema";
|
||||
|
||||
/**
|
||||
* 抛物线 爆炸普攻
|
||||
@@ -20,15 +19,15 @@ import GRoleDefault from "../role/GRoleDefault";
|
||||
*/
|
||||
export default class GAttackParabolicRemote implements GAttackBase{
|
||||
|
||||
attack(role: GRoleDefault, info: TableGRoleAttack): void {
|
||||
attack(role: GRoleDefault, info: TB.TbGRoleAttack): void {
|
||||
|
||||
let enemy = role.fsm.enemy;
|
||||
if(!enemy) return;
|
||||
|
||||
let image:SpriteFrame = app.battleRes.bullets[info.attackArgs[0]];
|
||||
let image:SpriteFrame = app.battleRes.roleResImage[info.attackArgs[0]];
|
||||
let bang = {
|
||||
ske: app.battleRes.effects[info.attackArgs[1]],
|
||||
info: TableGRoleAttackEffect.getConfig(info.attackArgs[1])
|
||||
ske: app.battleRes.roleResSpine[info.attackArgs[1]],
|
||||
info: TD.TbGRoleBattleRes.get(parseInt(info.attackArgs[1]))
|
||||
};
|
||||
let bone = role.spine.findBone(info.attackArgs[2]);
|
||||
let scale:number = parseFloat(info.attackArgs[3]);
|
||||
@@ -73,7 +72,7 @@ export default class GAttackParabolicRemote implements GAttackBase{
|
||||
let effect = GEffectUtil.createOne(bang.ske);
|
||||
role.mode.addGNode(effect.node,bullet.node.worldPosition);
|
||||
//获取默认动画
|
||||
effect.setAnimation(0,bang.info.animation,false);
|
||||
effect.setAnimation(0,"animation",false);
|
||||
//销毁
|
||||
bullet.node.destroy();
|
||||
|
||||
|
@@ -1,11 +1,9 @@
|
||||
import { _decorator, Component, Node } from 'cc';
|
||||
import { app, JNGSyncBase } from '../../../../App';
|
||||
import { SpriteFrame } from 'cc';
|
||||
import { TableGMap } from '../../../../../resources/config/ts/TableGMap';
|
||||
import { Sprite } from 'cc';
|
||||
import { UITransform } from 'cc';
|
||||
import { v3 } from 'cc';
|
||||
import { Vec2 } from 'cc';
|
||||
import { size } from 'cc';
|
||||
import GNode from '../GNode';
|
||||
const { ccclass, property } = _decorator;
|
||||
|
@@ -3,13 +3,11 @@ import GObject, { GTowards } from "../GObject";
|
||||
import { JNFrameInfo } from "../../../../../extensions/ngame/assets/ngame/sync/frame/JNSyncFrame";
|
||||
import { Vec2 } from "cc";
|
||||
import { v3 } from "cc";
|
||||
import { TableGRole } from "../../../../resources/config/ts/TableGRole";
|
||||
import { TableGRoleSkill } from "../../../../resources/config/ts/TableGRoleSkill";
|
||||
import { GSkill, GSkillBase, GSkillState } from "../../skill/GSkill";
|
||||
import JNSkeleton from "../../../../../extensions/ngame/assets/ngame/sync/frame/game/spine/JNFrameSkeleton";
|
||||
import { GFSMAnimBase } from "../fsm/GFSMAnimBase";
|
||||
import GFSMBase from "../fsm/GFSMBase";
|
||||
import { app } from "../../../App";
|
||||
import { TB } from "../../../../resources/config/data/schema";
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
export enum GRoleAnimEvent{
|
||||
@@ -23,7 +21,7 @@ export default abstract class GRoleBase<T> extends GObject<T>{
|
||||
spine:JNSkeleton;
|
||||
|
||||
//角色
|
||||
role:TableGRole;
|
||||
role:TB.TbGRole;
|
||||
|
||||
//状态机
|
||||
fsm:GFSMBase;
|
||||
@@ -80,9 +78,9 @@ export default abstract class GRoleBase<T> extends GObject<T>{
|
||||
}
|
||||
|
||||
//初始化
|
||||
protected init(role:TableGRole){
|
||||
protected init(role:TB.TbGRole){
|
||||
if(this.spine)
|
||||
this.spine.skeletonData = app.battleRes.skData[role.id];
|
||||
this.spine.skeletonData = app.battleRes.roleSpine[role.id];
|
||||
}
|
||||
|
||||
//创建一个状态机
|
||||
|
@@ -2,19 +2,18 @@ import { _decorator } from "cc";
|
||||
import GRoleBase, { GRoleAnimEvent } from "./GRoleBase";
|
||||
import { ProgressBar } from "cc";
|
||||
import { JNFrameInfo } from "../../../../../extensions/ngame/assets/ngame/sync/frame/JNSyncFrame";
|
||||
import { TableGRole } from "../../../../resources/config/ts/TableGRole";
|
||||
import { GFSMAnimBase, GFSMBattleAminEnum } from "../fsm/GFSMAnimBase";
|
||||
import { GFSMDefaultAnim } from "../fsm/Default/GFSMDefaultAnim";
|
||||
import GFSMDefault from "../fsm/Default/GFSMDefault";
|
||||
import { JEasing } from "../../../../../extensions/ngame/assets/ngame/sync/frame/game/tween/JNFrameTween";
|
||||
import { TableGRoleAttack } from "../../../../resources/config/ts/TableGRoleAttack";
|
||||
import { GAttack } from "../attack/GAttack";
|
||||
import { v2 } from "cc";
|
||||
import { GTactical } from "../../entity/GTactical";
|
||||
import { Vec2 } from "cc";
|
||||
import { GSkill, GSkillBase, GSkillState } from "../../skill/GSkill";
|
||||
import { TableGRoleSkill } from "../../../../resources/config/ts/TableGRoleSkill";
|
||||
import JNFrameTime from "../../../../../extensions/ngame/assets/ngame/sync/frame/game/time/JNFrameTime";
|
||||
import { TB } from "../../../../resources/config/data/schema";
|
||||
import { TD } from "../../../App";
|
||||
const { property,ccclass } = _decorator;
|
||||
|
||||
//默认角色类
|
||||
@@ -77,7 +76,7 @@ export default class GRoleDefault extends GRoleBase<{}>{
|
||||
}
|
||||
|
||||
//初始化
|
||||
onInit(type:number,role:TableGRole,tactical:GTactical,tacticalIndex:number){
|
||||
onInit(type:number,role:TB.TbGRole,tactical:GTactical,tacticalIndex:number){
|
||||
super.init(role);
|
||||
this.type = type;
|
||||
|
||||
@@ -89,7 +88,7 @@ export default class GRoleDefault extends GRoleBase<{}>{
|
||||
|
||||
// 设置技能
|
||||
this.skills = role.roleSkillIds.map(skillId => {
|
||||
let info = TableGRoleSkill.getConfig(skillId);
|
||||
let info = TD.TbGRoleSkill.get(skillId);
|
||||
return (new GSkill[info.skillController]()).bind(this,info);
|
||||
})
|
||||
|
||||
@@ -123,7 +122,7 @@ export default class GRoleDefault extends GRoleBase<{}>{
|
||||
if(!this.fsm.enemy) return;
|
||||
console.log(`播放动画[${this.nId}] onAttack`,this.fsm.enemy.nId)
|
||||
//敌人扣血
|
||||
let info = TableGRoleAttack.getConfig(this.role.id);
|
||||
let info = TD.TbGRoleAttack.get(this.role.id);
|
||||
(new GAttack[info.attackWay]()).attack(this,info);
|
||||
this.attackCallbacks.forEach(fun => fun());
|
||||
}
|
||||
|
@@ -1,6 +1,5 @@
|
||||
import { TableGRole } from "../../../resources/config/ts/TableGRole";
|
||||
import { GFSMAnimBase } from "../base/fsm/GFSMAnimBase";
|
||||
import GFSMBase from "../base/fsm/GFSMBase";
|
||||
import { TB } from "../../../resources/config/data/schema";
|
||||
import { TD } from "../../App";
|
||||
import GRoleBase from "../base/role/GRoleBase";
|
||||
|
||||
//角色工具类
|
||||
@@ -17,13 +16,13 @@ export class GRoleUtil{
|
||||
}
|
||||
|
||||
//通过Id 获取 GRole
|
||||
static getGRole(id:number):TableGRole{
|
||||
let info:TableGRole;
|
||||
if(!(info = TableGRole.getConfig(id))) return null;
|
||||
static getGRole(id:number):TB.TbGRole{
|
||||
let info:TB.TbGRole;
|
||||
if(!(info = TD.TbGRole.get(id))) return null;
|
||||
return info
|
||||
}
|
||||
|
||||
static getGRoles(ids:number[]):TableGRole[]{
|
||||
static getGRoles(ids:number[]):TB.TbGRole[]{
|
||||
return ids.map(id => GRoleUtil.getGRole(id));
|
||||
}
|
||||
|
||||
|
@@ -1,5 +1,4 @@
|
||||
import { Vec2 } from "cc";
|
||||
import { TableGRole } from "../../../resources/config/ts/TableGRole";
|
||||
import GBaseMode from "../GBaseMode";
|
||||
import { GRoleUtil } from "../entity/GRole";
|
||||
import { GTactical } from "../entity/GTactical";
|
||||
@@ -12,11 +11,11 @@ import { JNFrameInfo } from "../../../../extensions/ngame/assets/ngame/sync/fram
|
||||
import { GMapLoop } from "../base/common/map/GMapLoop";
|
||||
import { Node } from "cc";
|
||||
import JNFrameTime from "../../../../extensions/ngame/assets/ngame/sync/frame/game/time/JNFrameTime";
|
||||
import { TableGMap } from "../../../resources/config/ts/TableGMap";
|
||||
import { app } from "../../App";
|
||||
import { TD, app } from "../../App";
|
||||
import { v3 } from "cc";
|
||||
import { v2 } from "cc";
|
||||
import GFSMOnHookMode from "./OnHook/GFSMOnHookMode";
|
||||
import { TB } from "../../../resources/config/data/schema";
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
//挂机模式状态
|
||||
@@ -37,7 +36,7 @@ export interface GOnHookInfo{
|
||||
//阵法
|
||||
tactical: GTactical;
|
||||
//宠物列表
|
||||
roles: TableGRole[];
|
||||
roles: TB.TbGRole[];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -80,7 +79,7 @@ export default class GOnHookMode extends GBaseMode<{}>{
|
||||
enemyRoles: GRoleDefault[] = [];
|
||||
|
||||
//地图信息
|
||||
mapInfo:TableGMap;
|
||||
mapInfo:TB.TbGMap;
|
||||
|
||||
//每一波怪的距离
|
||||
everyX:number = 600;
|
||||
@@ -113,7 +112,7 @@ export default class GOnHookMode extends GBaseMode<{}>{
|
||||
this.fsm = new GFSMOnHookMode(this);
|
||||
|
||||
//初始化地图
|
||||
this.mapInfo = TableGMap.getConfig(60001);
|
||||
this.mapInfo = TD.TbGMap.get(60001);
|
||||
this.map1.init(app.battleRes.maps[60001][0],1);
|
||||
this.map2.init(app.battleRes.maps[60001][1],1);
|
||||
this.map3.init(app.battleRes.maps[60001][2],1,app.battleRes.maps[60001][1].width,app.battleRes.maps[60001][1].height);
|
||||
@@ -169,7 +168,7 @@ export default class GOnHookMode extends GBaseMode<{}>{
|
||||
}
|
||||
|
||||
//生成宠物
|
||||
onGenRole(type: GOnHookModePlayerEnum,index:number,info:TableGRole) {
|
||||
onGenRole(type: GOnHookModePlayerEnum,index:number,info:TB.TbGRole) {
|
||||
|
||||
let tactical = this.getInfo(type).tactical;
|
||||
let pos:Vec2 = this.getInfo(type).tactical.getPosition(index);
|
||||
|
@@ -5,9 +5,9 @@ import { Prefab } from "cc";
|
||||
import { instantiate } from "cc";
|
||||
import { Vec2 } from "cc";
|
||||
import { GRoleUtil } from "../entity/GRole";
|
||||
import { TableGRole } from "../../../resources/config/ts/TableGRole";
|
||||
import GRoleDefault from "../base/role/GRoleDefault";
|
||||
import { v3 } from "cc";
|
||||
import { TB } from "../../../resources/config/data/schema";
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
//PVP 角色
|
||||
@@ -21,7 +21,7 @@ export interface GPVPModePlayerInfo{
|
||||
//阵法
|
||||
tactical: GTactical;
|
||||
//宠物列表
|
||||
roles: TableGRole[];
|
||||
roles: TB.TbGRole[];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -79,7 +79,7 @@ export default class GPVPMode extends GBaseMode<{}>{
|
||||
}
|
||||
|
||||
//生成角色
|
||||
onGenRole(type: GPVPModePlayerEnum,index:number,info:TableGRole) {
|
||||
onGenRole(type: GPVPModePlayerEnum,index:number,info:TB.TbGRole) {
|
||||
|
||||
let tactical = this.getInfo(type).tactical;
|
||||
let pos:Vec2 = this.getInfo(type).tactical.getPosition(index);
|
||||
|
@@ -1,8 +1,7 @@
|
||||
import { TableGRoleSkill } from "../../../resources/config/ts/TableGRoleSkill";
|
||||
import GRoleBase from "../base/role/GRoleBase";
|
||||
import GSkillCrazySquirrel from "./RoleSkill/疯狂松鼠/GSkillCrazySquirrel";
|
||||
import GSkillBulbasaurDoubleHit from "./RoleSkill/妙蛙种子/GSkillBulbasaurDoubleHit";
|
||||
import GRoleDefault from "../base/role/GRoleDefault";
|
||||
import { TB } from "../../../resources/config/data/schema";
|
||||
|
||||
//技能状态
|
||||
export enum GSkillState{
|
||||
@@ -15,7 +14,7 @@ export enum GSkillState{
|
||||
export interface GSkillBase {
|
||||
|
||||
//设置
|
||||
bind(role:GRoleDefault,info:TableGRoleSkill):GSkillBase;
|
||||
bind(role:GRoleDefault,info:TB.TbGRoleSkill):GSkillBase;
|
||||
|
||||
//是否允许释放
|
||||
isRelease():boolean;
|
||||
|
@@ -1,5 +1,4 @@
|
||||
import { TableGRoleSkill } from "../../../resources/config/ts/TableGRoleSkill";
|
||||
import GRoleBase from "../base/role/GRoleBase";
|
||||
import { TB } from "../../../resources/config/data/schema";
|
||||
import GRoleDefault from "../base/role/GRoleDefault";
|
||||
import { GSkillBase, GSkillState } from "./GSkill";
|
||||
|
||||
@@ -12,7 +11,7 @@ export default abstract class GSkillAngerBase implements GSkillBase {
|
||||
//怒气最大值
|
||||
angerMax:number = 0;
|
||||
|
||||
bind(role: GRoleDefault, info: TableGRoleSkill): GSkillBase {
|
||||
bind(role: GRoleDefault, info: TB.TbGRoleSkill): GSkillBase {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
isRelease(): boolean {
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import { TableGRoleSkill } from "../../../resources/config/ts/TableGRoleSkill";
|
||||
import { TB } from "../../../resources/config/data/schema";
|
||||
import GRoleBase from "../base/role/GRoleBase";
|
||||
import GRoleDefault from "../base/role/GRoleDefault";
|
||||
import { GSkillBase, GSkillState } from "./GSkill";
|
||||
@@ -12,7 +12,7 @@ export default abstract class GSkillCDBase implements GSkillBase {
|
||||
//冷却时间
|
||||
cdTime:number = 0;
|
||||
|
||||
bind(role:GRoleDefault,info: TableGRoleSkill):GSkillCDBase {
|
||||
bind(role:GRoleDefault,info: TB.TbGRoleSkill):GSkillCDBase {
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
import { TableGRoleSkill } from "../../../../../resources/config/ts/TableGRoleSkill";
|
||||
import { TB } from "../../../../../resources/config/data/schema";
|
||||
import GRoleBase from "../../../base/role/GRoleBase";
|
||||
import GRoleDefault from "../../../base/role/GRoleDefault";
|
||||
import GSkillAngerBase from "../../GSkillAngerBase";
|
||||
@@ -6,9 +6,9 @@ import GSkillAngerBase from "../../GSkillAngerBase";
|
||||
export default class GSkillBulbasaurDoubleHit extends GSkillAngerBase{
|
||||
|
||||
role:GRoleDefault;
|
||||
info: TableGRoleSkill;
|
||||
info: TB.TbGRoleSkill;
|
||||
|
||||
bind(role:GRoleDefault,info: TableGRoleSkill):GSkillBulbasaurDoubleHit {
|
||||
bind(role:GRoleDefault,info: TB.TbGRoleSkill):GSkillBulbasaurDoubleHit {
|
||||
//技能冷却
|
||||
this.role = role;
|
||||
this.info = info;
|
||||
|
@@ -1,6 +1,5 @@
|
||||
import { v2 } from "cc";
|
||||
import { JTween } from "../../../../../../extensions/ngame/assets/ngame/sync/frame/game/tween/JNFrameTween";
|
||||
import { TableGRoleSkill } from "../../../../../resources/config/ts/TableGRoleSkill";
|
||||
import { app } from "../../../../App";
|
||||
import GSpine from "../../../base/common/GSpine";
|
||||
import GRoleBase from "../../../base/role/GRoleBase";
|
||||
@@ -10,6 +9,7 @@ import GBaseMode from "../../../GBaseMode";
|
||||
import GDetection from "../../../base/common/GDetection";
|
||||
import { rect } from "cc";
|
||||
import GRoleDefault from "../../../base/role/GRoleDefault";
|
||||
import { TB } from "../../../../../resources/config/data/schema";
|
||||
|
||||
/**
|
||||
* 疯狂松鼠技能
|
||||
@@ -18,9 +18,9 @@ import GRoleDefault from "../../../base/role/GRoleDefault";
|
||||
export default class GSkillCrazySquirrel extends GSkillCDBase{
|
||||
|
||||
role:GRoleDefault;
|
||||
info: TableGRoleSkill;
|
||||
info: TB.TbGRoleSkill;
|
||||
|
||||
bind(role:GRoleDefault,info: TableGRoleSkill):GSkillCrazySquirrel {
|
||||
bind(role:GRoleDefault,info: TB.TbGRoleSkill):GSkillCrazySquirrel {
|
||||
//技能冷却
|
||||
this.cdTatal = parseInt(info.skillArgs[0]);
|
||||
this.role = role;
|
||||
@@ -40,14 +40,14 @@ export default class GSkillCrazySquirrel extends GSkillCDBase{
|
||||
let ah = parseInt(this.info.skillArgs[2]);
|
||||
|
||||
//出现松鼠丢炸弹
|
||||
GSpine.onPlayAnotherSpine(this.role,app.battleRes.effects[50001],"skill",{
|
||||
GSpine.onPlayAnotherSpine(this.role,app.battleRes.roleResSpine[30003],"skill",{
|
||||
end:() => {
|
||||
//从天而降
|
||||
let pos = enemy.v2World.add(v2(0,1000));
|
||||
let end = enemy.v2World;
|
||||
|
||||
//生成火球
|
||||
let spine = GSpine.onCreateSpine(app.battleRes.effects[50002]);
|
||||
let spine = GSpine.onCreateSpine(app.battleRes.roleResSpine[30004]);
|
||||
this.role.mode.addGNode(spine.node,pos);
|
||||
spine.setAnimation(0,"animation",true);
|
||||
spine.node.angle = 90;
|
||||
@@ -59,7 +59,7 @@ export default class GSkillCrazySquirrel extends GSkillCDBase{
|
||||
.onComplete(() => {
|
||||
let world = spine.node.worldPosition;
|
||||
spine.node.destroy();
|
||||
GSpine.onPlaySceneSpine(scene,v2(world.x,world.y),app.battleRes.effects[50003],"animation");
|
||||
GSpine.onPlaySceneSpine(scene,v2(world.x,world.y),app.battleRes.roleResSpine[30005],"animation");
|
||||
console.log(GDetection.testAABBRole(rect(world.x,world.y,aw,ah)).length)
|
||||
GDetection.testAABBRole(rect(world.x,world.y,aw,ah)).forEach(role =>{
|
||||
role.onHit();
|
||||
|
Reference in New Issue
Block a user