tools.ts 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357
  1. import { _decorator, assetManager, Component, ImageAsset, instantiate, Node, Prefab, resources, Sprite, SpriteFrame, Texture2D } from 'cc';
  2. import { main } from './main';
  3. import { toast } from './toast';
  4. import { add_scene } from './edit/add_scene';
  5. import { dialog_view } from './dialog_view';
  6. import { scene_select_list } from './edit/scene_select_list';
  7. import { sceme_type_select_item } from './sceme_type_select_item';
  8. import { slide_dir_select } from './edit/slide_dir_select';
  9. import { click_type_select } from './click_type_select';
  10. import { add_event } from './edit/event/add_event';
  11. import { add_task } from './edit/task/add_task';
  12. import { add_animation } from './edit/animation/add_animation';
  13. import { att_ani_data, event_item, widget_item_data } from '../data/data';
  14. import { select_widget_list } from './edit/event/select_widget_list';
  15. import { select_animation } from './edit/animation/select_animation';
  16. import { show_widget_list } from './edit/show_widget_list';
  17. import { select_ui_top_type } from './edit/uiWidget/select_ui_top_type';
  18. import { show_select_child_scene } from './edit/uiWidget/show_select_child_scene';
  19. import { show_select_evele_list } from './edit/show_select_evele_list';
  20. import { select_collect_event } from './edit/event/select_collect_event';
  21. import { select_res_list } from './select_res_list';
  22. import { select_task_zhao_xi_jie } from './edit/task/select_task_zhao_xi_jie';
  23. import { show_select_z_index } from './edit/attributes/show_select_z_index';
  24. import { game_run } from './run/game_run';
  25. import { config } from './config';
  26. import { edit_event } from './edit/event/edit_event';
  27. import { select_sound_list } from './edit/select_sound_list';
  28. import { select_task_da_guai } from './edit/task/select_task_da_guai';
  29. import { edit_event_view } from './edit/event/edit_event_view';
  30. import { tip_type_select } from './edit/tip_type_select';
  31. import { show_copy_scene } from './edit/show_copy_scene';
  32. import { show_select_more_scene_page } from './edit/show_select_more_scene_page';
  33. import { select_task_dai_dao_ju } from './edit/task/select_task_dai_dao_ju';
  34. export class tools {
  35. public static show_dialog(title="是否确定?",sure_callback,cancel_callback=null){
  36. resources.load("prefab/dialog_view",Prefab,(err, prefab)=>{
  37. let node = instantiate(prefab);
  38. node.parent = main.g_canvas.node;
  39. node.getComponent(dialog_view).show(title,sure_callback,cancel_callback)
  40. })
  41. }
  42. public static show_loading(call=null){
  43. resources.load("prefab/loading",Prefab,(err, prefab)=>{
  44. if(!main.loading_view){
  45. let node = instantiate(prefab);
  46. node.name = "loading"
  47. node.parent = main.g_canvas.node;
  48. main.loading_view = node;
  49. if(call!=null){
  50. call()
  51. }
  52. }
  53. })
  54. }
  55. public static hide_loading(){
  56. if(main.loading_view!=null){
  57. main.loading_view.removeFromParent()
  58. main.loading_view =null;
  59. }
  60. }
  61. public static showToast(text:string){
  62. resources.load("prefab/toast",Prefab,(err, prefab)=>{
  63. let node = instantiate(prefab);
  64. node.name = "toast"
  65. node.parent = main.g_canvas.node;
  66. node.getComponent(toast).show(text)
  67. })
  68. }
  69. public static show_add_scene(call){
  70. resources.load("prefab/add_scene",Prefab,(err, prefab)=>{
  71. let node = instantiate(prefab);
  72. node.parent = main.g_canvas.node;
  73. node.getComponent(add_scene).initView(call)
  74. })
  75. }
  76. public static add_scene_page(call){
  77. resources.load("prefab/sceme_type_select_item",Prefab,(err, prefab)=>{
  78. let node = instantiate(prefab);
  79. node.parent = main.g_canvas.node;
  80. node.getComponent(sceme_type_select_item).initView(call)
  81. })
  82. }
  83. public static show_copy_scene(sceneName:string,call) {
  84. resources.load("prefab/show_copy_scene", Prefab, (err, prefab)=> {
  85. let node = instantiate(prefab);
  86. node.parent = main.g_canvas.node;
  87. node.getComponent(show_copy_scene).initView(sceneName,call)
  88. })
  89. }
  90. public static show_slide_dir_select(call){
  91. resources.load("prefab/slide_dir_select",Prefab,(err, prefab)=>{
  92. let node = instantiate(prefab);
  93. node.parent = main.g_canvas.node;
  94. node.getComponent(slide_dir_select).show(call)
  95. })
  96. }
  97. public static show_tip_type_select(call){
  98. resources.load("prefab/tip_type_select",Prefab,(err, prefab)=>{
  99. let node = instantiate(prefab);
  100. node.parent = main.g_canvas.node;
  101. node.getComponent(tip_type_select).show(call)
  102. })
  103. }
  104. public static show_click_type_select(call){
  105. resources.load("prefab/click_type_select",Prefab,(err, prefab)=>{
  106. let node = instantiate(prefab);
  107. node.parent = main.g_canvas.node;
  108. node.getComponent(click_type_select).show(call)
  109. })
  110. }
  111. public static show_add_event(call){
  112. resources.load("prefab/add_event",Prefab,(err, prefab)=>{
  113. let node = instantiate(prefab);
  114. node.parent = main.g_canvas.node;
  115. node.getComponent(add_event).show(call)
  116. })
  117. }
  118. public static show_add_task(call){
  119. resources.load("prefab/add_task",Prefab,(err, prefab)=>{
  120. let node = instantiate(prefab);
  121. node.parent = main.g_canvas.node;
  122. node.getComponent(add_task).show(call)
  123. })
  124. }
  125. public static show_add_animation(list,call){
  126. resources.load("prefab/add_animation",Prefab,(err, prefab)=>{
  127. let node = instantiate(prefab);
  128. node.parent = main.g_canvas.node;
  129. node.getComponent(add_animation).show(list,call)
  130. })
  131. }
  132. public static show_select_widget_list(list:widget_item_data[],call,id:number=-1){
  133. resources.load("prefab/select_widget_list",Prefab,(err, prefab)=>{
  134. let node = instantiate(prefab);
  135. node.parent = main.g_canvas.node;
  136. node.getComponent(select_widget_list).show(list,call,id)
  137. })
  138. }
  139. public static show_widget_list(list){
  140. resources.load("prefab/show_widget_list",Prefab,(err, prefab)=>{
  141. let node = instantiate(prefab);
  142. node.parent = main.g_canvas.node;
  143. node.getComponent(show_widget_list).show(list)
  144. })
  145. }
  146. public static show_select_animation_list(list:att_ani_data[],call,id:number=-1){
  147. resources.load("prefab/select_animation",Prefab,(err, prefab)=>{
  148. let node = instantiate(prefab);
  149. node.parent = main.g_canvas.node;
  150. node.getComponent(select_animation).show(list,call,id)
  151. })
  152. }
  153. public static show_select_ui_top_type(call){
  154. resources.load("prefab/ui/select_ui_top_type",Prefab,(err, prefab)=>{
  155. let node:Node = instantiate(prefab);
  156. node.parent = main.g_canvas.node;
  157. node.getComponent(select_ui_top_type).show(call)
  158. })
  159. }
  160. public static show_select_child_scene(list,call){
  161. resources.load("prefab/ui/show_select_child_scene",Prefab,(err, prefab)=>{
  162. let node:Node = instantiate(prefab);
  163. node.parent = main.g_canvas.node;
  164. node.getComponent(show_select_child_scene).show(list,call)
  165. })
  166. }
  167. public static show_select_evele_list(list,call){
  168. if(list.length == 0) {
  169. return tools.showToast('任务事件列表是空的')
  170. }
  171. resources.load("prefab/show_select_evele_list",Prefab,(err, prefab)=>{
  172. let node:Node = instantiate(prefab);
  173. node.parent = main.g_canvas.node;
  174. node.getComponent(show_select_evele_list).show(list,call)
  175. })
  176. }
  177. public static select_collect_event(list,call,event_id,event_list_id){
  178. resources.load("prefab/ui/select_collect_event",Prefab,(err, prefab)=>{
  179. let node:Node = instantiate(prefab);
  180. node.parent = main.g_canvas.node;
  181. node.getComponent(select_collect_event).show(list,call,event_id,event_list_id)
  182. })
  183. }
  184. public static select_res_list(call){
  185. resources.load("prefab/ui/select_res_list",Prefab,(err, prefab)=>{
  186. let node:Node = instantiate(prefab);
  187. node.parent = main.g_canvas.node;
  188. node.getComponent(select_res_list).initView(call)
  189. })
  190. }
  191. public static select_sound_list(call){
  192. resources.load("prefab/ui/select_sound_list",Prefab,(err, prefab)=>{
  193. let node:Node = instantiate(prefab);
  194. node.parent = main.g_canvas.node;
  195. node.getComponent(select_sound_list).initView(call)
  196. })
  197. }
  198. public static select_task_zhao_xi_jie(data){
  199. resources.load("prefab/task/select_task_zhao_xi_jie",Prefab,(err, prefab)=>{
  200. let node:Node = instantiate(prefab);
  201. node.parent = main.g_canvas.node;
  202. node.getComponent(select_task_zhao_xi_jie).show(data)
  203. })
  204. }
  205. public static select_task_da_guai(data){
  206. resources.load("prefab/task/select_task_da_guai",Prefab,(err, prefab)=>{
  207. let node:Node = instantiate(prefab);
  208. node.parent = main.g_canvas.node;
  209. node.getComponent(select_task_da_guai).show(data)
  210. })
  211. }
  212. public static select_task_dai_dao_ju(data){
  213. resources.load("prefab/task/select_task_dai_dao_ju",Prefab,(err, prefab)=>{
  214. let node:Node = instantiate(prefab);
  215. node.parent = main.g_canvas.node;
  216. node.getComponent(select_task_dai_dao_ju).show(data)
  217. })
  218. }
  219. public static show_select_z_index(call){
  220. resources.load("prefab/show_select_z_index",Prefab,(err, prefab)=>{
  221. let node:Node = instantiate(prefab);
  222. node.parent = main.g_canvas.node;
  223. node.getComponent(show_select_z_index).show(call)
  224. })
  225. }
  226. public static show_edit_event_view(){
  227. resources.load("prefab/ui/edit_event_view",Prefab,(err, prefab)=>{
  228. let node:Node = instantiate(prefab);
  229. node.parent = main.g_canvas.node;
  230. node.getComponent(edit_event_view).show()
  231. })
  232. }
  233. public static show_select_dir(call){
  234. resources.load("prefab/show_select_z_index",Prefab,(err, prefab)=>{
  235. let node:Node = instantiate(prefab);
  236. node.parent = main.g_canvas.node;
  237. node.getComponent(show_select_z_index).showDir(call)
  238. })
  239. }
  240. public static show_select_more_scene_page(data,cur_index,call) {
  241. resources.load("prefab/show_select_more_scene_page",Prefab,(err, prefab)=>{
  242. let node:Node = instantiate(prefab);
  243. node.parent = main.g_canvas.node;
  244. node.getComponent(show_select_more_scene_page).show(data,cur_index,call)
  245. })
  246. }
  247. public static loadUrl(url:string,spr:Sprite){
  248. if(url.length<=0){
  249. return null;
  250. }
  251. assetManager.loadRemote<ImageAsset>(url, (err, imageAsset2)=>{
  252. if (!err && imageAsset2) {
  253. const texture = new Texture2D();
  254. texture.image = imageAsset2;
  255. let spFrame2 = new SpriteFrame();
  256. spFrame2.texture = texture;
  257. spr.spriteFrame = spFrame2;
  258. }
  259. });
  260. }
  261. public static loadSceneImg(url:string,call){
  262. if(url.length<=0){
  263. return null;
  264. }
  265. assetManager.loadRemote<ImageAsset>(url, (err, imageAsset2)=>{
  266. if (!err && imageAsset2) {
  267. const texture = new Texture2D();
  268. texture.image = imageAsset2;
  269. let spFrame2 = new SpriteFrame();
  270. spFrame2.texture = texture;
  271. spFrame2.addRef()
  272. call({"url":url,"sf":spFrame2})
  273. }
  274. });
  275. }
  276. public static loadSceneMp3(url:string,call){
  277. if(url.length<=0){
  278. return null;
  279. }
  280. assetManager.loadRemote(url, (err: any, clip: any)=> {
  281. clip.addRef()
  282. if (!err && clip) {
  283. call({"url":url,"clip":clip})
  284. }
  285. });
  286. }
  287. public static game_run(){
  288. resources.load("prefab/run/game_run",Prefab,(err, prefab)=>{
  289. let node:Node = instantiate(prefab);
  290. node.parent = main.g_canvas.node;
  291. node.getComponent(game_run).run()
  292. })
  293. }
  294. public static game_run_all(){
  295. resources.load("prefab/run/game_run",Prefab,(err, prefab)=>{
  296. let node:Node = instantiate(prefab);
  297. node.parent = main.g_canvas.node;
  298. node.getComponent(game_run).runAll()
  299. })
  300. }
  301. public static isWidgetType(type:number){
  302. return type!=config.Widget_Type_List.TEXT_SOUND
  303. }
  304. public static show_edit_event(type:number,data:event_item,delete_call){
  305. resources.load("prefab/edit_event",Prefab,(err, prefab)=>{
  306. let node:Node = instantiate(prefab);
  307. node.parent = main.g_canvas.node;
  308. node.getComponent(edit_event).show(type,data,delete_call)
  309. })
  310. }
  311. // 去除左边和右边空格
  312. public static trimLeftAndRightblank(str: string):string {
  313. const reg = /^\s+|\s+$/g;
  314. return str.replace(reg, '')
  315. }
  316. }