DayItemScript.ts 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import { _decorator, Component, Node, find, SpriteFrame, SpriteComponent, LabelComponent, loader, assert } from 'cc';
  2. import GameConfigManager from '../../models/GameConfigManager';
  3. import { GameModel } from '../../models/GameModel';
  4. const { ccclass, property } = _decorator;
  5. @ccclass('DayItemScript')
  6. export class DayItemScript extends Component {
  7. private config:any;
  8. UpdateItemRender(data:any):void{
  9. this.config=data;
  10. let state:number=GameModel.single.GetSignAwardByDay(this.config.id);
  11. let icon:SpriteComponent=find("Icon",this.node).getComponent(SpriteComponent);
  12. let num:LabelComponent=find("Num",this.node).getComponent(LabelComponent);
  13. //0.金币 1.钻石 2.枪 3.栅栏
  14. switch (this.config.type) {
  15. case 0:
  16. num.string=this.config.number;
  17. break;
  18. case 1:
  19. num.string=this.config.number;
  20. break;
  21. case 2:
  22. let weaponConfig:any=GameConfigManager.GetWeaponConfig(this.config.number);
  23. loader.loadRes(weaponConfig.icon+"/spriteFrame",SpriteFrame,(err,res:SpriteFrame)=>{
  24. if(err!=null){
  25. console.log("加载图标出错!");
  26. }
  27. icon.spriteFrame=res;
  28. });
  29. num.string=weaponConfig.name;
  30. break;
  31. case 3:
  32. let fenceConfig:any=GameConfigManager.GetFenceConfig(this.config.number);
  33. loader.loadRes(fenceConfig.icon+"/spriteFrame",SpriteFrame,(err,res:SpriteFrame)=>{
  34. if(err!=null){
  35. console.log("加载图标出错!");
  36. }
  37. icon.spriteFrame=res;
  38. });
  39. num.string=fenceConfig.name;
  40. break;
  41. default:
  42. throw new Error("7日登录奖励配置类型错误:"+this.config.type)
  43. }
  44. let ImgYiLingQu:Node=find("ImgYiLingQu",this.node);
  45. let stateLabel:Node=find("stateLabel",this.node);
  46. stateLabel.active=false;
  47. //可领取
  48. if(this.config.id<=GameModel.single.signDay){
  49. //未领取
  50. if(state==0){
  51. ImgYiLingQu.active=false;
  52. }else{//已领取
  53. ImgYiLingQu.active=true;
  54. stateLabel.active=true;
  55. }
  56. }else{//不可领取
  57. ImgYiLingQu.active=true;
  58. }
  59. }
  60. start () {
  61. // Your initialization goes here.
  62. }
  63. // update (deltaTime: number) {
  64. // // Your update function goes here.
  65. // }
  66. }