| 123456789101112131415161718192021222324252627282930313233343536373839 |
- import { ecs } from "../../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
- import { SingletonModuleComp, smc } from "../../common/SingletonModuleComp";
- import { PathFindComp, PathFindTriggerComponent } from "../../common/ecs/path/PathFind";
- import { Puppet } from "../../puppet/puppet";
- import { PuppetViewComp } from "../../puppet/view/PuppetViewComp";
- import { Checkpoint } from "../Checkpoint";
- import { CheckpointModelComp } from "../model/CheckpointModel";
- /**
- * 换肤
- */
- @ecs.register('CheckpointPathTrigger')
- export class CheckpointPathTriggerComp extends ecs.Comp {
- reset() {
- }
- }
- export class CheckpointPathTriggerSystem extends ecs.ComblockSystem implements ecs.IEntityEnterSystem {
- filter(): ecs.IMatcher {
- return ecs.allOf(CheckpointModelComp, CheckpointPathTriggerComp);
- }
- entityEnter(e: Checkpoint): void {
- const puppets = e.CheckpointModel.puppets
- puppets.forEach(val => {
- const pathComp = val.get(PathFindComp)
- if(pathComp){
- val.add(PathFindTriggerComponent)
- }
- })
- e.remove(CheckpointPathTriggerComp)
- }
- }
|