DataModel.ts 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. import { _decorator, Component, Node } from 'cc';
  2. import { ColorDate } from './ColorDate';
  3. import { Global } from './Global';
  4. const { ccclass, property } = _decorator;
  5. @ccclass('DataModel')
  6. export class DataModel {
  7. //颜色设置
  8. public static base_color_arr = [
  9. //深青
  10. ColorDate.new_bean(13,105, 105 ,10009),
  11. //💜
  12. ColorDate.new_bean(241,24, 245 ,10008),
  13. //171, 177, 187 灰白
  14. ColorDate.new_bean(171, 177, 187,10002 ),
  15. //11, 246, 235 青
  16. ColorDate.new_bean(11,246,235,10001),
  17. //18, 101, 246 绿
  18. ColorDate.new_bean(130, 235, 93 ,10003),
  19. //紫色
  20. ColorDate.new_bean(124,87, 229 ,10007),
  21. //5, 127, 201 浅蓝
  22. ColorDate.new_bean(38, 119, 204 ,10004),
  23. //255, 87, 51 橘红
  24. ColorDate.new_bean(239, 91, 122 ,10006),
  25. //255, 195, 黄
  26. ColorDate.new_bean(208,186, 74 ,10005),
  27. ];
  28. private static lvl_color_arr = [];
  29. public static generate_lvl_color_arr(args:number){
  30. DataModel.lvl_color_arr = [];
  31. for(let i = 0;i<DataModel.base_color_arr.length;i++){
  32. DataModel.lvl_color_arr.push(DataModel.base_color_arr[i].clone());
  33. if(DataModel.lvl_color_arr.length>=args){
  34. break;
  35. }
  36. }
  37. }
  38. private static lvl_color_index: number = 0;
  39. public static get_lvl_color(): ColorDate {
  40. let ret = DataModel.lvl_color_arr[DataModel.lvl_color_index];
  41. DataModel.lvl_color_index += 1;
  42. if (DataModel.lvl_color_index >= DataModel.lvl_color_arr.length) {
  43. DataModel.lvl_color_index = 0;
  44. }
  45. return ret;
  46. }
  47. private static layer_color_index: number = 0;
  48. public static get_layer_color(): ColorDate {
  49. let ret = DataModel.base_color_arr[DataModel.layer_color_index];
  50. DataModel.layer_color_index += 1;
  51. if (DataModel.layer_color_index >= DataModel.base_color_arr.length) {
  52. DataModel.layer_color_index = 0;
  53. }
  54. return ret;
  55. }
  56. public static random_base_color() {
  57. DataModel.base_color_arr.sort(() => {
  58. return 0.5 - Math.random();
  59. });
  60. }
  61. // group_index_arr = [];
  62. private static cur_group_index = 0;
  63. public static get_new_group_index() {
  64. let temp = 1 << DataModel.cur_group_index;
  65. DataModel.cur_group_index += 1;
  66. if (DataModel.cur_group_index > 30) {
  67. DataModel.cur_group_index = 0;
  68. }
  69. // console.log("group:::::",temp);
  70. return temp;
  71. }
  72. }