123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 |
- import { _decorator, BoxCollider2D, Collider2D, Component, Contact2DType, EPhysics2DDrawFlags, log, Node, PhysicsSystem2D, Sprite, SpriteFrame } from 'cc';
- import { CosntValue, Hs_ColliderType } from '../../Common/Scripts/CosntValue';
- import { EventCustom } from '../../Common/Scripts/EventCustom';
- const { ccclass, property } = _decorator;
- @ccclass('HsGoodsItem')
- export class HsGoodsItem extends Component {
- @property(SpriteFrame)
- spa: SpriteFrame = null;
- @property(SpriteFrame)
- spb: SpriteFrame = null;
- @property(SpriteFrame)
- spc: SpriteFrame = null;
- @property(SpriteFrame)
- spd: SpriteFrame = null;
- @property(SpriteFrame)
- spe: SpriteFrame = null;
- @property(SpriteFrame)
- spf: SpriteFrame = null;
- @property(SpriteFrame)
- spg: SpriteFrame = null;
- @property(SpriteFrame)
- sph: SpriteFrame = null;
- @property(SpriteFrame)
- spi: SpriteFrame = null;
- @property(SpriteFrame)
- spj: SpriteFrame = null;
- @property(SpriteFrame)
- spk: SpriteFrame = null;
- @property(SpriteFrame)
- spl: SpriteFrame = null;
- @property(SpriteFrame)
- spm: SpriteFrame = null;
- @property(SpriteFrame)
- spn: SpriteFrame = null;
- @property(SpriteFrame)
- spo: SpriteFrame = null;
- _goodType: number;
- set GoodType(a: number) {
- if (a < 5) {
- this._goodType = 1;
- this.getComponent(Collider2D).tag = Hs_ColliderType.Goods;
- let gt = CosntValue.randomInt(1, 10);
- switch (gt) {
- case 1:
- this.node.getComponent(Sprite).spriteFrame = this.spa;
- this._point = 10;
- break;
- case 2:
- this.node.getComponent(Sprite).spriteFrame = this.spb;
- this._point = 10;
- break;
- case 3:
- this.node.getComponent(Sprite).spriteFrame = this.spc;
- this._point = 10;
- break;
- case 4:
- this.node.getComponent(Sprite).spriteFrame = this.spd;
- this._point = 10;
- break;
- case 5:
- this.node.getComponent(Sprite).spriteFrame = this.spe;
- this._point = 10;
- break;
- case 6:
- this.node.getComponent(Sprite).spriteFrame = this.spf;
- this._point = 10;
- break;
- case 7:
- this.node.getComponent(Sprite).spriteFrame = this.spg;
- this._point = 10;
- break;
- case 8:
- this.node.getComponent(Sprite).spriteFrame = this.sph;
- this._point = 10;
- break;
- case 9:
- this.node.getComponent(Sprite).spriteFrame = this.spi;
- this._point = 10;
- break;
- case 10:
- this.node.getComponent(Sprite).spriteFrame = this.spj;
- this._point = 10;
- break;
- default:
- break;
- }
- } else {
- this._goodType = 2;
- this.getComponent(Collider2D).tag = Hs_ColliderType.OtherMan;
- let gt = CosntValue.randomInt(1, 5);
- switch (gt) {
- case 1:
- this.node.getComponent(Sprite).spriteFrame = this.spk;
- this._point = 10;
- break;
- case 2:
- this.node.getComponent(Sprite).spriteFrame = this.spl;
- this._point = 10;
- break;
- case 3:
- this.node.getComponent(Sprite).spriteFrame = this.spm;
- this._point = 10;
- break;
- case 4:
- this.node.getComponent(Sprite).spriteFrame = this.spn;
- this._point = 10;
- break;
- case 5:
- this.node.getComponent(Sprite).spriteFrame = this.spo;
- this._point = 10;
- break;
- default:
- break;
- }
- }
- }
- _point: number = 0;
- start() {
- // PhysicsSystem2D.instance.debugDrawFlags = EPhysics2DDrawFlags.Shape;
- let collider = this.getComponent(Collider2D);
- if (collider) {
- collider.on(Contact2DType.BEGIN_CONTACT, this.onBeginContact, this);
- }
- }
- protected onDestroy(): void {
- this.node.getComponent(Collider2D).off(Contact2DType.BEGIN_CONTACT, this.onBeginContact, this);
- }
- onBeginContact(selfCollider: Collider2D, otherCollider: Collider2D) {
- //玩家碰撞
- if (otherCollider.tag == Hs_ColliderType.Player) {
- let e = new EventCustom("ContactSomething", true, this.node);
- this.node.dispatchEvent(e);
- }
- }
- init() {
- }
- update(deltaTime: number) {
- }
- }
|