Item refactoring

This commit is contained in:
Martin
2022-12-23 09:22:22 +01:00
parent 1b5b449d0b
commit 4b2d35a733
34 changed files with 618 additions and 578 deletions

View File

@@ -0,0 +1,30 @@
import { _decorator, Component, Node, Vec3, ccenum, Enum } from "cc";
import { ISignal } from "../../Services/EventSystem/ISignal";
import { Signal } from "../../Services/EventSystem/Signal";
import { ItemType } from "./ItemType";
const { ccclass, property } = _decorator;
@ccclass("Item")
export class Item extends Component {
@property({ type: Enum(ItemType) }) private itemType: ItemType;
private pickUpEvent = new Signal<Item>();
public get ItemType(): ItemType {
return <ItemType>this.itemType;
}
public setup(position: Vec3): void {
this.node.setWorldPosition(position);
this.node.active = true;
}
public get PickupEvent(): ISignal<Item> {
return this.pickUpEvent;
}
public pickup(): void {
this.pickUpEvent.trigger(this);
this.node.active = false;
}
}