UI_Task.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import { _decorator, Component, Node } from 'cc';
  2. import ui_base from '../../../core/ui/ui_base';
  3. import { Layout_Task } from './Layout_Task';
  4. import { GameUILayers, gui } from '../../../core/ui/ui';
  5. import { ModuleDef } from '../../../Scripts/ModuleDef';
  6. import { Hall } from '../../hall/Hall';
  7. const { ccclass, property } = _decorator;
  8. @ccclass('UI_Task')
  9. export class UI_Task extends ui_base{
  10. task_state:any;
  11. config=[3,100,1,3,8];
  12. constructor(){
  13. super(ModuleDef.GAME, 'ui/UI_Task/Task', GameUILayers.HUD, Layout_Task);
  14. }
  15. protected async onCreated() {
  16. const layout = this.getLayout<Layout_Task>();
  17. this.onButtonEvent(layout.Close_Btn,()=>{
  18. gui.close(UI_Task);
  19. });
  20. this.task_state = Hall.getInstance().player.get_task_state();
  21. console.log(this.task_state);
  22. for(let i=0;i<layout.Task_Items.length;i++)
  23. {
  24. layout.Task_Items[i].show(this.task_state[i],this.config[i]);
  25. }
  26. }
  27. //更新task_state并保存
  28. public async update_task_state(flag:boolean,target:number)
  29. {
  30. this.task_state[target]=flag;
  31. Hall.getInstance().player.set_task_state(this.task_state);
  32. Hall.getInstance().player.setDirty();
  33. }
  34. }