DayItemScript.ts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. let dIcon:Node=find("diamondIcon",this.node);
  14. let gIcon:Node=find("goldIcon",this.node);
  15. dIcon.active=false;
  16. gIcon.active=false;
  17. //0.金币 1.钻石 2.枪 3.栅栏
  18. switch (this.config.type) {
  19. case 0:
  20. gIcon.active=true;
  21. icon.node.active=false;
  22. num.string=this.config.number;
  23. break;
  24. case 1:
  25. dIcon.active=true;
  26. icon.node.active=false;
  27. num.string=this.config.number;
  28. break;
  29. case 2:
  30. let weaponConfig:any=GameConfigManager.GetWeaponConfig(this.config.number);
  31. loader.loadRes(weaponConfig.icon+"/spriteFrame",SpriteFrame,(err,res:SpriteFrame)=>{
  32. if(err!=null){
  33. console.log("加载图标出错!");
  34. }
  35. icon.spriteFrame=res;
  36. });
  37. num.string=weaponConfig.name;
  38. break;
  39. case 3:
  40. let fenceConfig:any=GameConfigManager.GetFenceConfig(this.config.number);
  41. loader.loadRes(fenceConfig.icon+"/spriteFrame",SpriteFrame,(err,res:SpriteFrame)=>{
  42. if(err!=null){
  43. console.log("加载图标出错!");
  44. }
  45. icon.spriteFrame=res;
  46. });
  47. num.string=fenceConfig.name;
  48. break;
  49. default:
  50. throw new Error("7日登录奖励配置类型错误:"+this.config.type)
  51. }
  52. let ImgYiLingQu:Node=find("ImgYiLingQu",this.node);
  53. let stateLabel:Node=find("stateLabel",this.node);
  54. stateLabel.active=false;
  55. //可领取
  56. if(this.config.id<=GameModel.single.signDay){
  57. //未领取
  58. if(state==0){
  59. ImgYiLingQu.active=false;
  60. }else{//已领取
  61. ImgYiLingQu.active=true;
  62. stateLabel.active=true;
  63. }
  64. }else{//不可领取
  65. ImgYiLingQu.active=true;
  66. }
  67. }
  68. start () {
  69. // Your initialization goes here.
  70. }
  71. // update (deltaTime: number) {
  72. // // Your update function goes here.
  73. // }
  74. }