DataModel.ts 2.5 KB

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