VehicleViewController.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { Component, _decorator, v3, Collider, Layers, CapsuleCollider } from "cc";
  2. import { Vehicle } from "../Vehicle";
  3. import { MoveToComp } from "../../common/ecs/position/MoveTo";
  4. import { VehicleSitComp } from "../bll/VehicleCheck";
  5. import { ecs } from "../../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
  6. import { Puppet } from "../../puppet/puppet";
  7. import { PuppetModelComp } from "../../puppet/model/PuppetModelComp";
  8. import { smc } from "../../common/SingletonModuleComp";
  9. import { PuppetAnimatorType } from "../../puppet/model/PuppetEnum";
  10. const { ccclass, property } = _decorator;
  11. /** 车辆控制 */
  12. @ccclass('VehicleViewController')
  13. export class VehicleViewController extends Component {
  14. /** 角色对象 */
  15. vehicle: Vehicle = null!;
  16. onLoad() {
  17. const collider = this.node.getComponent(Collider);
  18. if (collider) {
  19. collider.on('onTriggerEnter', this.onTriggerEnter, this);
  20. }
  21. }
  22. onTriggerEnter(event, self) {
  23. const { otherCollider } = event
  24. // 确认触发事件的对象是玩家
  25. // console.log('车辆检测到碰撞')
  26. if (otherCollider.node.layer === Layers.Enum.PUPPET) {
  27. // console.log('车辆碰撞事件')
  28. this.vehicle.VehicleView.ske.play('opendoor'); // 播放开门动画
  29. // this.vehicle.add(VehicleSitComp)
  30. // if (this.vehicle.VehicleModel.isFull)
  31. // this.vehicle.VehicleModel.ready = true
  32. // this.createPuppet(this.vehicle)
  33. }
  34. }
  35. onDestroy() {
  36. }
  37. }