30 lines
837 B
TypeScript
30 lines
837 B
TypeScript
import { _decorator, Component, Node, tween, Vec3 } from "cc";
|
|
import { SimpleToggle } from "./SimpleToggle";
|
|
const { ccclass, property } = _decorator;
|
|
|
|
@ccclass("SimpleToggleGroup")
|
|
export class SimpleToggleGroup extends Component {
|
|
toggles: SimpleToggle[];
|
|
|
|
protected onLoad(): void {
|
|
this.toggles = this.getComponentsInChildren(SimpleToggle);
|
|
|
|
for (let i = 0; i < this.toggles.length; i++) {
|
|
const element = this.toggles[i];
|
|
element.toggleGroupCallBack = this.toggleSelected.bind(this);
|
|
}
|
|
}
|
|
|
|
toggleSelected(selectedNode: Node) {
|
|
for (let i = 0; i < this.toggles.length; i++) {
|
|
const element = this.toggles[i];
|
|
if (element.node === selectedNode) {
|
|
element.refresh(true);
|
|
} else {
|
|
element.refresh(false);
|
|
element.btn.interactable = true;
|
|
}
|
|
}
|
|
}
|
|
}
|