feat: update execute

feature/ads-smart-display
tiendat3699 2024-06-07 18:27:38 +07:00
parent d7e65dcaa5
commit ebf7f54603
6 changed files with 36 additions and 46 deletions

View File

@ -55,10 +55,6 @@ export class Enemy extends Component {
private _isActive = false;
private _currentGoal = 0;
onFocusInEditor(): void {
Gizmos2D.registerDrawGizmos(this.node);
}
onDrawGizmosSelected(): void {
Gizmos2D.beginColor(this.node, Color.RED);
Gizmos2D.drawSolidCircle(this.node, this._patrolPoint1.worldPosition, 20);

View File

@ -41,17 +41,15 @@ export class MultiBall extends Component {
private _enabled: boolean = true;
onFocusInEditor(): void {
Gizmos2D.registerDrawGizmos(this.node);
}
onDrawGizmos(): void {}
onDrawGizmos(): void {
Gizmos2D.beginColor(this.node, new Color(0, 255, 0, 200));
onDrawGizmosSelected(): void {
Gizmos2D.beginColor(this.node, new Color(0, 255, 0, 150));
const points = (this._collider as PolygonCollider2D).points.map((p) => p.clone().add(this._collider.offset));
Gizmos2D.beginLocalPosition(this.node);
Gizmos2D.drawSolidPolygon(this.node, points);
Gizmos2D.endLocalPosition(this.node);
Gizmos2D.beginColor(this.node, new Color(0, 0, 255, 200));
Gizmos2D.beginColor(this.node, new Color(0, 0, 255, 150));
Gizmos2D.drawSolidEllipse(this.node, this._portLeft.worldPosition, 20, 30);
Gizmos2D.drawSolidEllipse(this.node, this._portRight.worldPosition, 20, 30);
}

View File

@ -39,12 +39,8 @@ class GizmosDebugDraw extends Component {
private _color: Color = Gizmos2D.DEFAULT_COLOR;
private _useLocalPosition: boolean = false;
private _layer: Layers.Enum = Gizmos2D.DEFAULT_LAYER;
private _parentNode: Node;
protected update(dt: number): void {
//only call in editor
this.callNodeDrawGizmos();
this._renderers.forEach((renderer) => {
renderer.clear();
renderer.draw();
@ -55,25 +51,6 @@ class GizmosDebugDraw extends Component {
this._layer = Gizmos2D.DEFAULT_LAYER;
}
private callNodeDrawGizmos() {
if (Editor && this._parentNode) {
const selectedList: string[] = Editor.Selection.getSelected('node');
if (selectedList.includes(this._parentNode.uuid)) {
const comps = this._parentNode.components;
for (let i = 0; i < comps.length; i++) {
const comp: Component = comps[i];
comp.onDrawGizmosSelected?.();
}
}
const comps = this._parentNode.components;
for (let i = 0; i < comps.length; i++) {
const comp: Component = comps[i];
comp.onDrawGizmos?.();
}
}
}
private createRenderer(color: Color) {
const hex = color.toHEX();
const g = new Node(`color ${hex}`).addComponent(Graphics);
@ -102,10 +79,6 @@ class GizmosDebugDraw extends Component {
return local;
}
public registerDrawGizmos(node: Node) {
this._parentNode = node;
}
public setColor(color: Color) {
this._color = color;
}
@ -324,10 +297,6 @@ export default class Gizmos2D {
return debugNode;
}
public static registerDrawGizmos(node: Node) {
this.getDebugNode(node).registerDrawGizmos(node);
}
public static beginColor(node: Node, color: Color) {
this.getDebugNode(node).setColor(color);
}

View File

@ -0,0 +1,9 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "5f7a6826-4de3-412e-876c-80145444880e",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@ -0,0 +1,22 @@
import { Director, director, find } from 'cc';
import { Editor } from './Define';
if (Editor) {
if (!sessionStorage.getItem('gizmosUpdating')) {
sessionStorage.setItem('gizmosUpdating', 'true');
director.on(Director.EVENT_BEFORE_UPDATE, querySelected);
}
function querySelected() {
if (Editor) {
const selectedList: string[] = Editor.Selection.getSelected('node');
selectedList.forEach(callGizmos);
}
}
async function callGizmos(uuid: string) {
const node = await Editor.Message.request('scene', 'query-node-tree', uuid);
const comps = find(node.path).components;
comps.forEach((comp) => comp.onDrawGizmosSelected?.());
}
}

View File

@ -52,11 +52,7 @@ export class SpawnObjectManager extends Component {
private _boosterSpawned = false;
private _spawnTimeObject = 0;
onFocusInEditor(): void {
Gizmos2D.registerDrawGizmos(this.node);
}
onDrawGizmos(): void {
onDrawGizmosSelected(): void {
for (let i = 0; i < this._spawnPoints.length; i++) {
Gizmos2D.beginColor(this.node, new Color(0, 255, 0, 180));
Gizmos2D.drawSolidCircle(this.node, this._spawnPoints[i].worldPosition, 15);