Item.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import { _decorator, Component, Node ,Button,tween,Tween,Vec3,find, SpriteFrame, math,Sprite, randomRangeInt, BoxCollider2D, UITransform, Vec2} from 'cc';
  2. const { ccclass, property } = _decorator;
  3. import { Game } from './Game';
  4. import { GameManager } from './Manager/GameManager';
  5. @ccclass('Item')
  6. export class Item extends Component {
  7. @property([SpriteFrame])
  8. frames:SpriteFrame[]=[];
  9. game:Game
  10. isUse:boolean;
  11. index:number;
  12. arr:number[];
  13. start() {
  14. this.index=this.arr[randomRangeInt(0,this.arr.length)]
  15. this.node.getChildByName("Sprite").getComponent(Sprite).spriteFrame=this.frames[this.index]
  16. let size=this.node.getChildByName("Sprite").getComponent(UITransform).contentSize
  17. this.node.getChildByName("Sprite").getComponent(BoxCollider2D).size=new math.Size(size.x*0.8,size.y*0.8)
  18. this.node.position=new Vec3(1313, 30, 0)
  19. tween(this.node)
  20. .to(9-(GameManager.getInstance().curLevel-1)*0.5, { position: new Vec3(-1313, 30, 0) })
  21. .call( ()=>{
  22. console.log("call");
  23. if(this.node.isValid)
  24. this.node.destroy()
  25. })
  26. .start()
  27. }
  28. protected onEnable(): void {
  29. }
  30. protected onDestroy(): void {
  31. Tween.stopAllByTarget(this.node);
  32. }
  33. update(deltaTime: number) {
  34. }
  35. }