├── .gitignore ├── Basic ├── egretProperties.json ├── favicon.ico ├── index.html ├── manifest.json ├── resource │ ├── JoyStick │ │ ├── joystick1.png │ │ ├── joystick2.png │ │ ├── joystick3.png │ │ └── joystick4.png │ ├── anim │ │ ├── hum_boy.json │ │ └── hum_boy.png │ ├── assets │ │ ├── Button │ │ │ ├── button_down.png │ │ │ └── button_up.png │ │ ├── CheckBox │ │ │ ├── checkbox_select_disabled.png │ │ │ ├── checkbox_select_down.png │ │ │ ├── checkbox_select_up.png │ │ │ └── checkbox_unselect.png │ │ ├── ItemRenderer │ │ │ └── selected.png │ │ ├── Panel │ │ │ ├── border.png │ │ │ └── header.png │ │ ├── ProgressBar │ │ │ ├── thumb_pb.png │ │ │ └── track_pb.png │ │ ├── RadioButton │ │ │ ├── radiobutton_select_disabled.png │ │ │ ├── radiobutton_select_down.png │ │ │ ├── radiobutton_select_up.png │ │ │ └── radiobutton_unselect.png │ │ ├── ScrollBar │ │ │ ├── roundthumb.png │ │ │ └── track_sb.png │ │ ├── Slider │ │ │ ├── thumb.png │ │ │ ├── track.png │ │ │ └── tracklight.png │ │ └── ToggleSwitch │ │ │ ├── handle.png │ │ │ ├── off.png │ │ │ └── on.png │ ├── config │ │ └── description.json │ ├── default.res.json │ ├── default.thm.json │ ├── eui_skins │ │ ├── AnimationSkin.exml │ │ ├── ButtonSkin.exml │ │ ├── CheckBoxSkin.exml │ │ ├── HScrollBarSkin.exml │ │ ├── HSliderSkin.exml │ │ ├── ItemRendererSkin.exml │ │ ├── PanelSkin.exml │ │ ├── ProgressBarSkin.exml │ │ ├── RadioButtonSkin.exml │ │ ├── ScrollerSkin.exml │ │ ├── TextInputSkin.exml │ │ ├── ToggleSwitchSkin.exml │ │ ├── VScrollBarSkin.exml │ │ └── VSliderSkin.exml │ ├── euix │ │ ├── ImageButton.exml │ │ └── LoginButton.exml │ ├── font │ │ ├── timefont.json │ │ └── timefont.png │ ├── gameEui.json │ ├── loading │ │ ├── loadingprogress.png │ │ └── toast-bg.png │ ├── mir2 │ │ ├── MirStory.txt │ │ ├── empty.png │ │ ├── ui │ │ │ ├── ChrSel │ │ │ │ ├── ChrSel_Taoist_mc.json │ │ │ │ ├── ChrSel_Taoist_rise_mc.json │ │ │ │ ├── ChrSel_Taoist_rise_tex.png │ │ │ │ ├── ChrSel_Taoist_rise_women_mc.json │ │ │ │ ├── ChrSel_Taoist_rise_women_tex.png │ │ │ │ ├── ChrSel_Taoist_tex.png │ │ │ │ ├── ChrSel_Taoist_women_mc.json │ │ │ │ ├── ChrSel_Taoist_women_tex.png │ │ │ │ ├── ChrSel_door_bg.png │ │ │ │ ├── ChrSel_door_mc.json │ │ │ │ ├── ChrSel_door_tex.png │ │ │ │ ├── ChrSel_rise_mc.json │ │ │ │ ├── ChrSel_rise_tex.png │ │ │ │ ├── ChrSel_warrior_mc.json │ │ │ │ ├── ChrSel_warrior_rise_mc.json │ │ │ │ ├── ChrSel_warrior_rise_tex.png │ │ │ │ ├── ChrSel_warrior_rise_women_mc.json │ │ │ │ ├── ChrSel_warrior_rise_women_tex.png │ │ │ │ ├── ChrSel_warrior_tex.png │ │ │ │ ├── ChrSel_warrior_woman_mc.json │ │ │ │ ├── ChrSel_warrior_woman_tex.png │ │ │ │ ├── ChrSel_wizard_mc.json │ │ │ │ ├── ChrSel_wizard_rise_mc.json │ │ │ │ ├── ChrSel_wizard_rise_tex.png │ │ │ │ ├── ChrSel_wizard_rise_women_mc.json │ │ │ │ ├── ChrSel_wizard_rise_women_tex.png │ │ │ │ ├── ChrSel_wizard_tex.png │ │ │ │ ├── ChrSel_wizard_women_mc.json │ │ │ │ └── ChrSel_wizard_women_tex.png │ │ │ ├── bg.jpg │ │ │ ├── fg.png │ │ │ ├── icon_music_on.png │ │ │ ├── login │ │ │ │ ├── login.json │ │ │ │ └── login.png │ │ │ ├── sound_off.png │ │ │ └── sound_on.png │ │ └── wav │ │ │ ├── Field2.wav │ │ │ ├── HeroLogin.wav │ │ │ ├── HeroLogout.wav │ │ │ ├── Log-in-long2.wav │ │ │ ├── M11-2.wav │ │ │ ├── M2-1.wav │ │ │ ├── M7-1.wav │ │ │ ├── OpenBox.wav │ │ │ ├── OpenDoor.wav │ │ │ ├── blink_home.wav │ │ │ ├── blink_random.wav │ │ │ ├── button.wav │ │ │ ├── drink.wav │ │ │ ├── drink1.wav │ │ │ ├── powerup.wav │ │ │ ├── sellect-loop2.wav │ │ │ └── sellout.wav │ └── scene │ │ ├── Game.exml │ │ ├── UIChrSel.exml │ │ └── UILogin.exml ├── scripts │ ├── api.d.ts │ ├── bricks │ │ └── bricks.ts │ ├── config.bricks.ts │ ├── config.ts │ ├── config.wxgame.ts │ ├── myplugin.ts │ ├── node.d.ts │ ├── tsconfig.json │ └── wxgame │ │ └── wxgame.ts ├── src │ ├── AssetAdapter.ts │ ├── LoadingUI.ts │ ├── Main.ts │ ├── Platform.ts │ ├── ThemeAdapter.ts │ ├── bean │ │ └── Player.ts │ ├── common │ │ └── VirtualJoystick.ts │ ├── efinal │ │ ├── App.ts │ │ ├── ArrayUtil.ts │ │ ├── BaseScene.ts │ │ ├── BgAutoScorller.ts │ │ ├── BilingBiling.ts │ │ ├── ByteUtils.ts │ │ ├── ColliderCheckUtil.ts │ │ ├── Delay.ts │ │ ├── DisplayObjectPool.ts │ │ ├── FileLoader.ts │ │ ├── GameData.ts │ │ ├── Handler.ts │ │ ├── ImageLoader.ts │ │ ├── LinkList.ts │ │ ├── ListViewImageItem.ts │ │ ├── ListViewUtil.ts │ │ ├── Loading.ts │ │ ├── MathUtils.ts │ │ ├── Music.ts │ │ ├── NetStateBar.ts │ │ ├── ResourceUtils.ts │ │ ├── SceneManager.ts │ │ ├── ShaderUtils.ts │ │ ├── SoundBase.ts │ │ ├── Tips.ts │ │ ├── Toast.ts │ │ ├── UI.ts │ │ ├── UmspManager.ts │ │ ├── ui │ │ │ └── Dialog.ts │ │ └── util │ │ │ ├── AnimaUtil.ts │ │ │ ├── JSUtil.ts │ │ │ └── UriUtil.ts │ ├── scene │ │ ├── Game.ts │ │ ├── UIChrSel.ts │ │ └── UILogin.ts │ └── tilemap │ │ ├── Tile.ts │ │ ├── TileImage.ts │ │ ├── TileLayer.ts │ │ ├── TileMap.ts │ │ └── TileSet.ts ├── template │ ├── runtime │ │ ├── native_loader.js │ │ ├── native_require.js │ │ └── runtime_loader.js │ └── web │ │ └── index.html ├── tsconfig.json └── wingProperties.json ├── ScreenShot_ChrSel.gif ├── libs ├── mta │ ├── mta.js │ └── mta.min.js ├── particle │ ├── particle.d.ts │ ├── particle.js │ └── particle.min.js ├── tiled │ ├── tiled.d.ts │ ├── tiled.js │ └── tiled.min.js └── umsp │ ├── umsp.d.ts │ ├── umsp.js │ └── umsp.min.js ├── readme.md └── res └── DragonBonesProject └── ChrSel ├── ChrSel_Taoist.dbproj ├── ChrSel_Taoist_rise.dbproj ├── ChrSel_Taoist_rise_women.dbproj ├── ChrSel_Taoist_women.dbproj ├── ChrSel_door.dbproj ├── ChrSel_rise.dbproj ├── ChrSel_warrior.dbproj ├── ChrSel_warrior_rise.dbproj ├── ChrSel_warrior_rise_women.dbproj ├── ChrSel_warrior_woman.dbproj ├── ChrSel_wizard.dbproj ├── ChrSel_wizard_rise.dbproj ├── ChrSel_wizard_rise_women.dbproj ├── ChrSel_wizard_women.dbproj └── library ├── 10.png ├── 100.png ├── 101.png ├── 102.png ├── 103.png ├── 104.png ├── 105.png ├── 106.png ├── 107.png ├── 108.png ├── 109.png ├── 11.png ├── 110.png ├── 111.png ├── 112.png ├── 12.png ├── 120.png ├── 121.png ├── 122.png ├── 123.png ├── 124.png ├── 125.png ├── 126.png ├── 127.png ├── 128.png ├── 129.png ├── 13.png ├── 130.png ├── 131.png ├── 132.png ├── 133.png ├── 134.png ├── 135.png ├── 14.png ├── 140.png ├── 141.png ├── 142.png ├── 143.png ├── 144.png ├── 145.png ├── 146.png ├── 147.png ├── 148.png ├── 149.png ├── 15.png ├── 150.png ├── 151.png ├── 152.png ├── 16.png ├── 160.png ├── 161.png ├── 162.png ├── 163.png ├── 164.png ├── 165.png ├── 166.png ├── 167.png ├── 168.png ├── 169.png ├── 17.png ├── 170.png ├── 171.png ├── 172.png ├── 173.png ├── 174.png ├── 175.png ├── 180.png ├── 181.png ├── 182.png ├── 183.png ├── 184.png ├── 185.png ├── 186.png ├── 187.png ├── 188.png ├── 189.png ├── 190.png ├── 191.png ├── 192.png ├── 200.png ├── 201.png ├── 202.png ├── 203.png ├── 204.png ├── 205.png ├── 206.png ├── 207.png ├── 208.png ├── 209.png ├── 210.png ├── 211.png ├── 212.png ├── 213.png ├── 214.png ├── 215.png ├── 22.png ├── 220.png ├── 221.png ├── 222.png ├── 223.png ├── 224.png ├── 225.png ├── 226.png ├── 227.png ├── 228.png ├── 229.png ├── 23.png ├── 230.png ├── 231.png ├── 232.png ├── 24.png ├── 240.png ├── 241.png ├── 242.png ├── 243.png ├── 244.png ├── 245.png ├── 246.png ├── 247.png ├── 248.png ├── 249.png ├── 25.png ├── 250.png ├── 251.png ├── 252.png ├── 253.png ├── 254.png ├── 255.png ├── 26.png ├── 260.png ├── 261.png ├── 262.png ├── 263.png ├── 264.png ├── 265.png ├── 266.png ├── 267.png ├── 268.png ├── 269.png ├── 27.png ├── 270.png ├── 271.png ├── 272.png ├── 28.png ├── 29.png ├── 30.png ├── 31.png ├── 32.png ├── 4.png ├── 40.png ├── 41.png ├── 42.png ├── 43.png ├── 44.png ├── 45.png ├── 46.png ├── 47.png ├── 48.png ├── 49.png ├── 5.png ├── 50.png ├── 51.png ├── 52.png ├── 53.png ├── 54.png ├── 55.png ├── 6.png ├── 60.png ├── 61.png ├── 62.png ├── 63.png ├── 64.png ├── 65.png ├── 66.png ├── 67.png ├── 68.png ├── 69.png ├── 7.png ├── 70.png ├── 71.png ├── 72.png ├── 8.png ├── 80.png ├── 81.png ├── 82.png ├── 83.png ├── 84.png ├── 85.png ├── 86.png ├── 87.png ├── 88.png ├── 89.png ├── 9.png ├── 90.png ├── 91.png ├── 92.png ├── 93.png ├── 94.png └── 95.png /.gitignore: -------------------------------------------------------------------------------- 1 | Basic/libs/ 2 | Basic/bin-debug/ 3 | Basic/.wing/ 4 | SampleListView/SampleListView/libs/ 5 | networkping/bin-debug/ 6 | networkping/bin-release/ 7 | networkping/libs/ 8 | networkping/.wing/ 9 | -------------------------------------------------------------------------------- /Basic/egretProperties.json: -------------------------------------------------------------------------------- 1 | { 2 | "engineVersion": "5.2.6", 3 | "compilerVersion": "5.2.6", 4 | "template": {}, 5 | "target": { 6 | "current": "web" 7 | }, 8 | "eui": { 9 | "exmlRoot": [ 10 | "resource/eui_skins" 11 | ], 12 | "themes": [ 13 | "resource/default.thm.json" 14 | ], 15 | "exmlPublishPolicy": "commonjs" 16 | }, 17 | "modules": [ 18 | { 19 | "name": "egret" 20 | }, 21 | { 22 | "name": "eui" 23 | }, 24 | { 25 | "name": "tween" 26 | }, 27 | { 28 | "name": "game" 29 | }, 30 | { 31 | "name": "promise" 32 | }, 33 | { 34 | "name": "assetsmanager" 35 | }, 36 | { 37 | "name": "dragonbones" 38 | }, 39 | { 40 | "name": "umsp", 41 | "path": "../libs/umsp" 42 | }, 43 | { 44 | "name": "tiled", 45 | "path": "../libs/tiled" 46 | } 47 | ] 48 | } -------------------------------------------------------------------------------- /Basic/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/favicon.ico -------------------------------------------------------------------------------- /Basic/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Egret 7 | 8 | 9 | 10 | 11 | 12 | 13 | 23 | 24 | 25 | 26 |
36 |
37 | 93 | 94 | 95 | -------------------------------------------------------------------------------- /Basic/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "initial": [ 3 | "libs/modules/egret/egret.js", 4 | "libs/modules/egret/egret.web.js", 5 | "libs/modules/eui/eui.js", 6 | "libs/modules/tween/tween.js", 7 | "libs/modules/game/game.js", 8 | "libs/modules/promise/promise.js", 9 | "libs/modules/assetsmanager/assetsmanager.js", 10 | "libs/modules/dragonBones/dragonBones.js", 11 | "libs/modules/umsp/umsp.js", 12 | "libs/modules/tiled/tiled.js" 13 | ], 14 | "game": [ 15 | "bin-debug/efinal/BaseScene.js", 16 | "bin-debug/efinal/MathUtils.js", 17 | "bin-debug/efinal/Loading.js", 18 | "bin-debug/Platform.js", 19 | "bin-debug/ThemeAdapter.js", 20 | "bin-debug/bean/Player.js", 21 | "bin-debug/common/VirtualJoystick.js", 22 | "bin-debug/efinal/App.js", 23 | "bin-debug/efinal/ArrayUtil.js", 24 | "bin-debug/AssetAdapter.js", 25 | "bin-debug/efinal/BgAutoScorller.js", 26 | "bin-debug/efinal/BilingBiling.js", 27 | "bin-debug/efinal/ByteUtils.js", 28 | "bin-debug/efinal/ColliderCheckUtil.js", 29 | "bin-debug/efinal/Delay.js", 30 | "bin-debug/efinal/DisplayObjectPool.js", 31 | "bin-debug/efinal/FileLoader.js", 32 | "bin-debug/efinal/GameData.js", 33 | "bin-debug/efinal/Handler.js", 34 | "bin-debug/efinal/ImageLoader.js", 35 | "bin-debug/efinal/LinkList.js", 36 | "bin-debug/efinal/ListViewImageItem.js", 37 | "bin-debug/efinal/ListViewUtil.js", 38 | "bin-debug/tilemap/TileSet.js", 39 | "bin-debug/Main.js", 40 | "bin-debug/efinal/Music.js", 41 | "bin-debug/efinal/NetStateBar.js", 42 | "bin-debug/efinal/ResourceUtils.js", 43 | "bin-debug/efinal/SceneManager.js", 44 | "bin-debug/efinal/ShaderUtils.js", 45 | "bin-debug/efinal/SoundBase.js", 46 | "bin-debug/efinal/Tips.js", 47 | "bin-debug/efinal/Toast.js", 48 | "bin-debug/efinal/UI.js", 49 | "bin-debug/efinal/UmspManager.js", 50 | "bin-debug/efinal/ui/Dialog.js", 51 | "bin-debug/efinal/util/AnimaUtil.js", 52 | "bin-debug/efinal/util/JSUtil.js", 53 | "bin-debug/efinal/util/UriUtil.js", 54 | "bin-debug/scene/Game.js", 55 | "bin-debug/scene/UIChrSel.js", 56 | "bin-debug/scene/UILogin.js", 57 | "bin-debug/tilemap/Tile.js", 58 | "bin-debug/tilemap/TileImage.js", 59 | "bin-debug/tilemap/TileLayer.js", 60 | "bin-debug/tilemap/TileMap.js", 61 | "bin-debug/LoadingUI.js" 62 | ] 63 | } -------------------------------------------------------------------------------- /Basic/resource/JoyStick/joystick1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/JoyStick/joystick1.png -------------------------------------------------------------------------------- /Basic/resource/JoyStick/joystick2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/JoyStick/joystick2.png -------------------------------------------------------------------------------- /Basic/resource/JoyStick/joystick3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/JoyStick/joystick3.png -------------------------------------------------------------------------------- /Basic/resource/JoyStick/joystick4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/JoyStick/joystick4.png -------------------------------------------------------------------------------- /Basic/resource/anim/hum_boy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/anim/hum_boy.png -------------------------------------------------------------------------------- /Basic/resource/assets/Button/button_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Button/button_down.png -------------------------------------------------------------------------------- /Basic/resource/assets/Button/button_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Button/button_up.png -------------------------------------------------------------------------------- /Basic/resource/assets/CheckBox/checkbox_select_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/CheckBox/checkbox_select_disabled.png -------------------------------------------------------------------------------- /Basic/resource/assets/CheckBox/checkbox_select_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/CheckBox/checkbox_select_down.png -------------------------------------------------------------------------------- /Basic/resource/assets/CheckBox/checkbox_select_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/CheckBox/checkbox_select_up.png -------------------------------------------------------------------------------- /Basic/resource/assets/CheckBox/checkbox_unselect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/CheckBox/checkbox_unselect.png -------------------------------------------------------------------------------- /Basic/resource/assets/ItemRenderer/selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ItemRenderer/selected.png -------------------------------------------------------------------------------- /Basic/resource/assets/Panel/border.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Panel/border.png -------------------------------------------------------------------------------- /Basic/resource/assets/Panel/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Panel/header.png -------------------------------------------------------------------------------- /Basic/resource/assets/ProgressBar/thumb_pb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ProgressBar/thumb_pb.png -------------------------------------------------------------------------------- /Basic/resource/assets/ProgressBar/track_pb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ProgressBar/track_pb.png -------------------------------------------------------------------------------- /Basic/resource/assets/RadioButton/radiobutton_select_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/RadioButton/radiobutton_select_disabled.png -------------------------------------------------------------------------------- /Basic/resource/assets/RadioButton/radiobutton_select_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/RadioButton/radiobutton_select_down.png -------------------------------------------------------------------------------- /Basic/resource/assets/RadioButton/radiobutton_select_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/RadioButton/radiobutton_select_up.png -------------------------------------------------------------------------------- /Basic/resource/assets/RadioButton/radiobutton_unselect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/RadioButton/radiobutton_unselect.png -------------------------------------------------------------------------------- /Basic/resource/assets/ScrollBar/roundthumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ScrollBar/roundthumb.png -------------------------------------------------------------------------------- /Basic/resource/assets/ScrollBar/track_sb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ScrollBar/track_sb.png -------------------------------------------------------------------------------- /Basic/resource/assets/Slider/thumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Slider/thumb.png -------------------------------------------------------------------------------- /Basic/resource/assets/Slider/track.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Slider/track.png -------------------------------------------------------------------------------- /Basic/resource/assets/Slider/tracklight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/Slider/tracklight.png -------------------------------------------------------------------------------- /Basic/resource/assets/ToggleSwitch/handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ToggleSwitch/handle.png -------------------------------------------------------------------------------- /Basic/resource/assets/ToggleSwitch/off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ToggleSwitch/off.png -------------------------------------------------------------------------------- /Basic/resource/assets/ToggleSwitch/on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/assets/ToggleSwitch/on.png -------------------------------------------------------------------------------- /Basic/resource/config/description.json: -------------------------------------------------------------------------------- 1 | [ 2 | "Open-source,Free,Multi-platform", 3 | "Push Game Forward", 4 | "HTML5 Game Engine" 5 | ] -------------------------------------------------------------------------------- /Basic/resource/default.thm.json: -------------------------------------------------------------------------------- 1 | { 2 | "skins": { 3 | "eui.Button": "resource/eui_skins/ButtonSkin.exml", 4 | "eui.CheckBox": "resource/eui_skins/CheckBoxSkin.exml", 5 | "eui.HScrollBar": "resource/eui_skins/HScrollBarSkin.exml", 6 | "eui.HSlider": "resource/eui_skins/HSliderSkin.exml", 7 | "eui.Panel": "resource/eui_skins/PanelSkin.exml", 8 | "eui.TextInput": "resource/eui_skins/TextInputSkin.exml", 9 | "eui.ProgressBar": "resource/eui_skins/ProgressBarSkin.exml", 10 | "eui.RadioButton": "resource/eui_skins/RadioButtonSkin.exml", 11 | "eui.Scroller": "resource/eui_skins/ScrollerSkin.exml", 12 | "eui.ToggleSwitch": "resource/eui_skins/ToggleSwitchSkin.exml", 13 | "eui.VScrollBar": "resource/eui_skins/VScrollBarSkin.exml", 14 | "eui.VSlider": "resource/eui_skins/VSliderSkin.exml", 15 | "eui.ItemRenderer": "resource/eui_skins/ItemRendererSkin.exml", 16 | "Game": "resource/scene/Game.exml", 17 | "UILogin": "resource/scene/UILogin.exml", 18 | "UIChrSel": "resource/scene/UIChrSel.exml" 19 | }, 20 | "autoGenerateExmlsList": true, 21 | "exmls": [ 22 | "resource/euix/ImageButton.exml", 23 | "resource/euix/LoginButton.exml", 24 | "resource/eui_skins/AnimationSkin.exml", 25 | "resource/eui_skins/ButtonSkin.exml", 26 | "resource/eui_skins/CheckBoxSkin.exml", 27 | "resource/eui_skins/HScrollBarSkin.exml", 28 | "resource/eui_skins/HSliderSkin.exml", 29 | "resource/eui_skins/ItemRendererSkin.exml", 30 | "resource/eui_skins/PanelSkin.exml", 31 | "resource/eui_skins/ProgressBarSkin.exml", 32 | "resource/eui_skins/RadioButtonSkin.exml", 33 | "resource/eui_skins/ScrollerSkin.exml", 34 | "resource/eui_skins/TextInputSkin.exml", 35 | "resource/eui_skins/ToggleSwitchSkin.exml", 36 | "resource/eui_skins/VScrollBarSkin.exml", 37 | "resource/eui_skins/VSliderSkin.exml", 38 | "resource/scene/Game.exml", 39 | "resource/scene/UIChrSel.exml", 40 | "resource/scene/UILogin.exml" 41 | ], 42 | "path": "resource/default.thm.json" 43 | } -------------------------------------------------------------------------------- /Basic/resource/eui_skins/AnimationSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/ButtonSkin.exml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 6 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/CheckBoxSkin.exml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 12 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/HScrollBarSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/HSliderSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/ItemRendererSkin.exml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/PanelSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/ProgressBarSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/RadioButtonSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 12 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/ScrollerSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/TextInputSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 9 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/ToggleSwitchSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 13 | 14 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/VScrollBarSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Basic/resource/eui_skins/VSliderSkin.exml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Basic/resource/euix/ImageButton.exml: -------------------------------------------------------------------------------- 1 |  2 | 4 | 6 | 8 | 9 | 10 | 12 | -------------------------------------------------------------------------------- /Basic/resource/euix/LoginButton.exml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 8 | 9 | 11 | -------------------------------------------------------------------------------- /Basic/resource/font/timefont.json: -------------------------------------------------------------------------------- 1 | {"file":"timefont.png","frames":{ 2 | "-":{"x":164,"y":149,"w":20,"h":20,"offX":35,"offY":24,"sourceW":55,"sourceH":55}, 3 | ":":{"x":145,"y":149,"w":17,"h":38,"offX":38,"offY":16,"sourceW":55,"sourceH":55}, 4 | "+":{"x":216,"y":55,"w":33,"h":38,"offX":22,"offY":16,"sourceW":55,"sourceH":55}, 5 | "0":{"x":50,"y":56,"w":48,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 6 | "1":{"x":225,"y":0,"w":23,"h":45,"offX":18,"offY":9,"sourceW":55,"sourceH":55}, 7 | "2":{"x":97,"y":148,"w":46,"h":45,"offX":7,"offY":9,"sourceW":55,"sourceH":55}, 8 | "3":{"x":49,"y":103,"w":46,"h":45,"offX":7,"offY":9,"sourceW":55,"sourceH":55}, 9 | "4":{"x":150,"y":102,"w":48,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 10 | "5":{"x":200,"y":102,"w":47,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 11 | "6":{"x":100,"y":101,"w":48,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 12 | "7":{"x":165,"y":55,"w":49,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 13 | "8":{"x":0,"y":56,"w":48,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 14 | "9":{"x":113,"y":54,"w":50,"h":45,"offX":5,"offY":9,"sourceW":55,"sourceH":55}, 15 | "x":{"x":0,"y":103,"w":47,"h":45,"offX":6,"offY":9,"sourceW":55,"sourceH":55}, 16 | "倍":{"x":57,"y":0,"w":54,"h":54,"offX":1,"offY":1,"sourceW":55,"sourceH":55}, 17 | "开":{"x":170,"y":0,"w":53,"h":53,"offX":2,"offY":2,"sourceW":55,"sourceH":55}, 18 | "人":{"x":113,"y":0,"w":55,"h":52,"offX":0,"offY":3,"sourceW":55,"sourceH":55}, 19 | "始":{"x":0,"y":0,"w":55,"h":54,"offX":0,"offY":1,"sourceW":55,"sourceH":55}}} -------------------------------------------------------------------------------- /Basic/resource/font/timefont.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/font/timefont.png -------------------------------------------------------------------------------- /Basic/resource/gameEui.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /Basic/resource/loading/loadingprogress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/loading/loadingprogress.png -------------------------------------------------------------------------------- /Basic/resource/loading/toast-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/loading/toast-bg.png -------------------------------------------------------------------------------- /Basic/resource/mir2/MirStory.txt: -------------------------------------------------------------------------------- 1 | 玛法史书记载: 公元313年,妖星现世,玛法大陆上所有禁锢上古妖兽的封印全部解开。所有妖兽倾巢而出,与人类展开了一场有史以来最血腥最残酷的战争。战争虽然最终以人类获得胜利而结束,但是为了这场胜利,人类付出了最惨痛的代价。玛法大陆上11个村落的人类死伤殆尽,最后侥幸生存下来的不到200人。 2 | 3 | 公元313年,结束了长达五年的沙巴克争夺战,玛法大陆上终于迎来了久违了的和平。虽然每个生活在玛法大陆的人们都知道,这样的和平绝不会是永恒的,但是,对于普通百姓来说,能有这样短暂的和平年代就已经够好的了。 4 | 5 | 公元313年7月7日,噩梦开始的第一天。 6 | 7 | 若不是因为后来发生的事情,今天本该是一个平凡得不能再平凡的日子。一切都和往常没有什么不同,玛法大陆上的人们都各自忙碌着,为生计而奔波。 8 | 9 | “轰!”的一声巨响从空中传来,所有人都停下了手上的活,下意识的抬头望天。所有人都惊呆了!在太阳统治一切的白天,天上居然冒出了一颗诡异的星星。这颗星星肉眼看来只有太阳的三分之一大小,放射出妖异的七色光芒,瞬间笼罩了整个玛法大陆。 10 | 11 | 所有人心里都涌出不祥之兆,可还没等他们做出什么反应,巨变紧随而来。 12 | 13 | 先是远处传来“嘶--”的几声,仿佛什么东西裂开了;之后便是“吼--”的几声,仿佛怪兽苏醒后的低吼;再接着就是“轰隆隆--”的几声,有点像雷声,又像什么东西崩塌时的声音。 14 | 15 | 正当人们惊疑不定之时,远方忽然飘来一朵褐色的云。说飘好象不太恰当,因为这朵云的速度实在有些太惊人了。 16 | 17 | “火焰沃玛!”当云渐渐飘近时,有人惊叫出声。 18 | 19 | 原来,天空中那朵褐色的“云”竟然是由数以万计的火焰沃玛组成的。只见它们一边飞一边往地面喷火,所经之处无论是草地还是森林或是其它生物瞬间都焦黑一片,灰飞烟灭。 20 | 21 | 它们是怎么从沃玛寺庙里飞出来的,难道说,那里的封印被解开了吗?眼见那片“褐云”越来越近,人们四散奔逃,大多数人却依然逃不出火焰沃玛的围剿,惨遭火噬。一时间,悲泣震天。面对那么多会飞的妖兽,即使你是天下第一的武林高手也没有用。 22 | 23 | 当天空中的火焰沃玛肆虐之时,遥远的地平线那边忽然沙尘滚滚。以地藏魔王为首,五大教主以及牛魔王、触龙神为副的妖兽军团正浩浩荡荡的向人类居住的地方进发。 24 | 25 | 妖兽军团经过的地方,没有几个人类能活着逃开。虽然妖兽军团里也有死伤,可是对于它们来说这些只是九牛一毛而已。被人类封印数百年的它们,要展开针对人类的最残酷的血洗。 26 | 27 | 得到消息的天尊、法神、圣战三位智者聚在了一块儿,他们先关掉了玛法大陆上所有的传送阵,减缓了妖兽军团血洗玛法大陆的速度。然后开启了玛法大陆上一个神秘的地方,他们把那里叫做庄园。对于现在这个陷入妖兽控制的玛法大陆来说,只有庄园里面才是最安全的地方。因为这里有最强大的封印,除非是被承认的人,否则即使你拥有开天破地的能力也无法进入庄园。 28 | 29 | 天尊、法神和圣战把玛法大陆幸存着的人类全部带入庄园,看着这200多个侥幸逃过一劫、脸上依然满是惊恐、疲累和哀伤的人们,三人的心狠狠地揪了起来。 30 | 31 | 32 | 就在一天前,玛法大陆还是一片繁华,人们还是安居乐业,过着幸福且祥和的小日子……可是现在呢?那个尸横遍野、寸草不生、被鲜血染红的大地真的是玛法大陆吗?如果这一切的一切只是一个梦该有多好啊!梦醒之后,家园依然是美丽温馨的家园,妻儿依然依偎在身边,朋友依然结伴出门冒险,那该有多好啊!可是……为什么玛法大陆会变成现在这样? 33 | 34 | 35 | “究竟是怎样强大而诡异的力量才使得玛法大陆上所有禁锢妖兽的封印全部被解开?难道就是因为那颗忽然出现的妖星么?如果那颗妖星不见了,是否所有封印又都能被还原呢?” 36 | 37 | 38 | 安顿好受惊的人类,三位智者一刻也不敢休息,聚在一起思考着对策。 39 | 40 | 41 | “看来只能动用那个了,趁着人类还有不少幸存者的时候。虽然……”圣战冷不丁冒出这么一句。 42 | 43 | 44 | “唉……只能如此了罢!整天躲在庄园里,虽然安全无忧,可继续这么下去不解决问题也不是办法啊!”天尊叹了口气,赞同道。 45 | 46 | 47 | “虽然不免牺牲近百人的性命,可拯救的是整个人类和我们赖以生存的玛法大陆。去做吧!”法神也是相同的意见。 48 | 于是,事不迟疑,三位智者很快就聚集了所有的幸存者,把他们商量的结果告之大家: 49 | 50 | 51 | “数百年之前,早有人预言过玛法大陆上的人类恐怕会遭受灭族之灾。为了保护人类,他在玛法大陆上留下了两样东西:一个就是我们现在所在的这个庄园,只要我们身在庄园之内,我们就不会受到妖兽的侵害;而另外一个就是一种战无不胜的秘密武器。开启庄园的方法由历代天尊、法神和圣战掌握着,而为了防止有人为了私利滥用秘密武器,他对使用秘密武器做出了几项规定:一是不到万不得已不能使用;二是必须要集99人之力才能使武器发挥功效;三是这99人将会在武器使用完之后力竭而亡。 52 | 53 | 54 | 现在,人类和玛法大陆已经到了最危急的时刻,秘密武器是我们最后的希望了。诚然,我们可以躲在庄园里不再管外面的事情,可是难道要让我们的子孙后代也永远都躲在狭小的庄园里,看着原本属于我们人类的玛法大陆为妖兽所占据吗?因此,我们三人决定使用这种秘密武器来消灭妖兽和妖星,希望大家能加入敢死队,拯救整个人类和玛法大陆。请大家自愿选择吧!妖兽就快要占领秘密武器的所在地了。” 55 | 56 | 57 | 没有花费太多的时间,99人就凑齐了,三位智者把他们带到了沙巴克附近的六根石柱处。 58 | “大家围着6根石柱站好,双手高举过头,手心抵住石柱,然后默念‘以神之名义,集众人之力’三遍。”圣战对大家说道 59 | 六根石柱迅速发出了耀眼的光芒,光芒每扩散到一处,那里的妖兽就忽然无踪,草地恢复鲜绿,森林恢复茂密。 60 | 当光芒对上妖星,忽然陷入僵局。僵持了好一会儿,就在人们快支持不住的时候,终于还是邪不胜正,“啪”的一声,妖星被光芒打成碎片,散落在玛法大陆四处。所有的妖兽都被封印回去了。这场浩劫终于结束了。 61 | 三位智者又封闭了庄园,人们从庄园里回到了玛法大陆上。虽然眼前的景象已经恢复原状,可是失去生命的人们却再也回不来了。幸存着的人们聚在一块儿哀悼过世的亲人,只有一个孤儿在复原了的玛法大陆上到处乱逛着。他忽然看见散落的妖星的碎片像宝石一般璀璨,便偷偷捡了一块蓝色的贴身藏着。不久,他就发现这块宝石般的碎片能提高他的能力。 62 | 当他把妖星碎片的秘密告诉其他人时,所有人都发疯似的寻找这些散落在玛法大陆四处的宝石,可是却再也没人找得到了。 63 | 据说,要聚集众人的力量,由妖星碎片变化而来的宝石才会再度出现。 -------------------------------------------------------------------------------- /Basic/resource/mir2/empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/empty.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_Taoist":{"frames":[{"y":-131,"duration":1,"res":"Sprite_0","x":-53},{"y":-131,"duration":1,"res":"Sprite_1","x":-55},{"y":-131,"duration":1,"res":"Sprite_2","x":-56},{"y":-131,"duration":1,"res":"Sprite_3","x":-56},{"y":-132,"duration":1,"res":"Sprite_4","x":-56},{"y":-132,"duration":1,"res":"Sprite_5","x":-57},{"y":-132,"duration":1,"res":"Sprite_6","x":-58},{"y":-132,"duration":1,"res":"Sprite_7","x":-57},{"y":-132,"duration":1,"res":"Sprite_8","x":-57},{"y":-132,"duration":1,"res":"Sprite_9","x":-58},{"y":-132,"duration":1,"res":"Sprite_10","x":-57},{"y":-132,"duration":1,"res":"Sprite_11","x":-57},{"y":-131,"duration":1,"res":"Sprite_12","x":-56},{"y":-131,"duration":1,"res":"Sprite_13","x":-56},{"y":-131,"duration":1,"res":"Sprite_14","x":-55},{"y":-131,"duration":1,"res":"Sprite_15","x":-53}],"labels":[{"end":16,"frame":1,"name":"Sprite"}],"frameRate":8,"events":[]}},"file":"ChrSel_Taoist_tex.png","res":{"Sprite_7":{"x":143,"y":290,"w":142,"h":290},"Sprite_14":{"x":426,"y":579,"w":135,"h":288},"Sprite_5":{"x":284,"y":580,"w":142,"h":290},"Sprite_3":{"x":425,"y":290,"w":140,"h":289},"Sprite_1":{"x":561,"y":579,"w":134,"h":288},"Sprite_11":{"x":0,"y":580,"w":142,"h":290},"Sprite_15":{"x":565,"y":288,"w":131,"h":288},"Sprite_8":{"x":142,"y":580,"w":142,"h":290},"Sprite_10":{"x":143,"y":0,"w":142,"h":290},"Sprite_6":{"x":0,"y":0,"w":143,"h":290},"Sprite_4":{"x":285,"y":0,"w":141,"h":290},"Sprite_12":{"x":285,"y":290,"w":140,"h":289},"Sprite_2":{"x":426,"y":0,"w":138,"h":289},"Sprite_0":{"x":695,"y":576,"w":131,"h":288},"Sprite_13":{"x":564,"y":0,"w":138,"h":288},"Sprite_9":{"x":0,"y":290,"w":143,"h":290}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_rise_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_Taoist_rise":{"frames":[{"y":-131,"duration":1,"res":"Sprite_0","x":-46},{"y":-131,"duration":1,"res":"Sprite_1","x":-46},{"y":-131,"duration":1,"res":"Sprite_2","x":-46},{"y":-131,"duration":1,"res":"Sprite_3","x":-46},{"y":-131,"duration":1,"res":"Sprite_4","x":-46},{"y":-131,"duration":1,"res":"Sprite_5","x":-46},{"y":-131,"duration":1,"res":"Sprite_6","x":-46},{"y":-131,"duration":1,"res":"Sprite_7","x":-46},{"y":-131,"duration":1,"res":"Sprite_8","x":-46},{"y":-131,"duration":1,"res":"Sprite_9","x":-46},{"y":-131,"duration":1,"res":"Sprite_10","x":-46},{"y":-131,"duration":1,"res":"Sprite_11","x":-46},{"y":-131,"duration":1,"res":"Sprite_12","x":-46}],"labels":[{"end":13,"frame":1,"name":"Sprite"}],"frameRate":10,"events":[]}},"file":"ChrSel_Taoist_rise_tex.png","res":{"Sprite_7":{"x":0,"y":0,"w":124,"h":288},"Sprite_5":{"x":0,"y":288,"w":124,"h":288},"Sprite_3":{"x":0,"y":576,"w":124,"h":288},"Sprite_1":{"x":124,"y":0,"w":124,"h":288},"Sprite_11":{"x":124,"y":288,"w":124,"h":288},"Sprite_8":{"x":124,"y":576,"w":124,"h":288},"Sprite_10":{"x":248,"y":0,"w":124,"h":288},"Sprite_6":{"x":248,"y":288,"w":124,"h":288},"Sprite_4":{"x":248,"y":576,"w":124,"h":288},"Sprite_12":{"x":372,"y":0,"w":124,"h":288},"Sprite_2":{"x":372,"y":288,"w":124,"h":288},"Sprite_0":{"x":372,"y":576,"w":124,"h":288},"Sprite_9":{"x":496,"y":0,"w":124,"h":288}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_rise_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_rise_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_rise_women_mc.json: -------------------------------------------------------------------------------- 1 | {"file":"ChrSel_Taoist_rise_women_tex.png","mc":{"ChrSel_Taoist_rise_women":{"labels":[{"end":13,"frame":1,"name":"Sprite"}],"frameRate":10,"frames":[{"res":"Sprite_0","y":-144,"duration":1,"x":-78},{"res":"Sprite_1","y":-144,"duration":1,"x":-78},{"res":"Sprite_2","y":-144,"duration":1,"x":-78},{"res":"Sprite_3","y":-144,"duration":1,"x":-78},{"res":"Sprite_4","y":-144,"duration":1,"x":-78},{"res":"Sprite_5","y":-144,"duration":1,"x":-78},{"res":"Sprite_6","y":-144,"duration":1,"x":-78},{"res":"Sprite_7","y":-144,"duration":1,"x":-78},{"res":"Sprite_8","y":-144,"duration":1,"x":-78},{"res":"Sprite_9","y":-144,"duration":1,"x":-78},{"res":"Sprite_10","y":-144,"duration":1,"x":-78},{"res":"Sprite_11","y":-144,"duration":1,"x":-78},{"res":"Sprite_12","y":-144,"duration":1,"x":-78}],"events":[]}},"res":{"Sprite_3":{"x":1,"y":1,"w":154,"h":288},"Sprite_11":{"x":1,"y":291,"w":154,"h":288},"Sprite_1":{"x":1,"y":581,"w":154,"h":288},"Sprite_8":{"x":157,"y":1,"w":154,"h":288},"Sprite_6":{"x":157,"y":291,"w":154,"h":288},"Sprite_2":{"x":157,"y":581,"w":154,"h":288},"Sprite_4":{"x":313,"y":1,"w":154,"h":288},"Sprite_10":{"x":313,"y":291,"w":154,"h":288},"Sprite_12":{"x":313,"y":581,"w":154,"h":288},"Sprite_9":{"x":469,"y":1,"w":154,"h":288},"Sprite_0":{"x":469,"y":291,"w":154,"h":288},"Sprite_7":{"x":469,"y":581,"w":154,"h":288},"Sprite_5":{"x":625,"y":1,"w":154,"h":288}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_rise_women_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_rise_women_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_women_mc.json: -------------------------------------------------------------------------------- 1 | {"file":"ChrSel_Taoist_women_tex.png","mc":{"ChrSel_Taoist_women":{"labels":[{"end":16,"frame":1,"name":"Sprite"}],"frameRate":10,"frames":[{"res":"Sprite_0","y":-136,"duration":1,"x":-74},{"res":"Sprite_1","y":-136,"duration":1,"x":-74},{"res":"Sprite_2","y":-136,"duration":1,"x":-76},{"res":"Sprite_3","y":-136,"duration":1,"x":-76},{"res":"Sprite_4","y":-137,"duration":1,"x":-76},{"res":"Sprite_5","y":-137,"duration":1,"x":-74},{"res":"Sprite_6","y":-137,"duration":1,"x":-73},{"res":"Sprite_7","y":-138,"duration":1,"x":-72},{"res":"Sprite_8","y":-139,"duration":1,"x":-73},{"res":"Sprite_9","y":-142,"duration":1,"x":-72},{"res":"Sprite_10","y":-142,"duration":1,"x":-73},{"res":"Sprite_11","y":-142,"duration":1,"x":-74},{"res":"Sprite_12","y":-137,"duration":1,"x":-75},{"res":"Sprite_13","y":-137,"duration":1,"x":-75},{"res":"Sprite_14","y":-137,"duration":1,"x":-75},{"res":"Sprite_15","y":-136,"duration":1,"x":-74}],"events":[]}},"res":{"Sprite_3":{"x":473,"y":581,"w":154,"h":287},"Sprite_11":{"x":1,"y":1,"w":158,"h":292},"Sprite_1":{"x":630,"y":1,"w":153,"h":286},"Sprite_14":{"x":629,"y":581,"w":154,"h":287},"Sprite_8":{"x":318,"y":584,"w":153,"h":290},"Sprite_6":{"x":785,"y":1,"w":153,"h":288},"Sprite_2":{"x":161,"y":1,"w":155,"h":287},"Sprite_4":{"x":318,"y":1,"w":155,"h":288},"Sprite_10":{"x":1,"y":295,"w":157,"h":292},"Sprite_15":{"x":475,"y":1,"w":153,"h":286},"Sprite_12":{"x":158,"y":589,"w":158,"h":287},"Sprite_13":{"x":160,"y":295,"w":157,"h":287},"Sprite_9":{"x":1,"y":589,"w":155,"h":293},"Sprite_0":{"x":785,"y":582,"w":153,"h":286},"Sprite_7":{"x":785,"y":291,"w":152,"h":289},"Sprite_5":{"x":319,"y":291,"w":154,"h":288}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_women_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_Taoist_women_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_door_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_door_bg.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_door_mc.json: -------------------------------------------------------------------------------- 1 | {"file":"ChrSel_door_tex.png","mc":{"ChrSel_door":{"labels":[{"end":10,"frame":1,"name":"Sprite"}],"frameRate":6,"frames":[{"res":"Sprite_0","y":-181,"duration":1,"x":-248},{"res":"Sprite_1","y":-181,"duration":1,"x":-248},{"res":"Sprite_2","y":-181,"duration":1,"x":-248},{"res":"Sprite_3","y":-181,"duration":1,"x":-248},{"res":"Sprite_4","y":-181,"duration":1,"x":-248},{"res":"Sprite_5","y":-181,"duration":1,"x":-248},{"res":"Sprite_6","y":-181,"duration":1,"x":-248},{"res":"Sprite_7","y":-181,"duration":1,"x":-248},{"res":"Sprite_8","y":-181,"duration":1,"x":-248},{"res":"Sprite_9","y":-181,"duration":1,"x":-248}],"events":[]}},"res":{"Sprite_3":{"x":1,"y":1,"w":495,"h":362},"Sprite_8":{"x":498,"y":1,"w":495,"h":362},"Sprite_0":{"x":1,"y":365,"w":495,"h":362},"Sprite_2":{"x":498,"y":365,"w":495,"h":362},"Sprite_9":{"x":1,"y":729,"w":495,"h":362},"Sprite_1":{"x":498,"y":729,"w":495,"h":362},"Sprite_7":{"x":1,"y":1093,"w":495,"h":362},"Sprite_6":{"x":498,"y":1093,"w":495,"h":362},"Sprite_5":{"x":1,"y":1457,"w":495,"h":362},"Sprite_4":{"x":498,"y":1457,"w":495,"h":362}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_door_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_door_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_rise_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_rise":{"frames":[{"duration":1,"y":90,"res":"Sprite_0","x":-70},{"duration":1,"y":-55,"res":"Sprite_1","x":-89},{"duration":1,"y":-40,"res":"Sprite_2","x":-110},{"duration":1,"y":-79,"res":"Sprite_3","x":-130},{"duration":1,"y":-123,"res":"Sprite_4","x":-143},{"duration":1,"y":-158,"res":"Sprite_5","x":-146},{"duration":1,"y":-158,"res":"Sprite_6","x":-145},{"duration":1,"y":-158,"res":"Sprite_7","x":-140},{"duration":1,"y":-157,"res":"Sprite_8","x":-131},{"duration":1,"y":-158,"res":"Sprite_9","x":-127},{"duration":1,"y":-158,"res":"Sprite_10","x":-130},{"duration":1,"y":-158,"res":"Sprite_11","x":-138},{"duration":1,"y":-157,"res":"Sprite_12","x":-137},{"duration":1,"y":-155,"res":"Sprite_13","x":-128}],"labels":[{"end":14,"frame":1,"name":"Sprite"}],"frameRate":10,"events":[]}},"file":"ChrSel_rise_tex.png","res":{"Sprite_0":{"x":816,"y":547,"w":138,"h":79},"Sprite_5":{"x":1,"y":1,"w":290,"h":333},"Sprite_3":{"x":555,"y":336,"w":259,"h":254},"Sprite_7":{"x":285,"y":671,"w":279,"h":327},"Sprite_12":{"x":566,"y":671,"w":277,"h":327},"Sprite_11":{"x":1,"y":671,"w":282,"h":328},"Sprite_6":{"x":1,"y":336,"w":289,"h":333},"Sprite_9":{"x":1378,"y":671,"w":261,"h":327},"Sprite_1":{"x":1037,"y":336,"w":178,"h":224},"Sprite_8":{"x":1113,"y":671,"w":263,"h":326},"Sprite_10":{"x":845,"y":671,"w":266,"h":328},"Sprite_4":{"x":1641,"y":671,"w":286,"h":298},"Sprite_2":{"x":816,"y":336,"w":219,"h":209},"Sprite_13":{"x":292,"y":336,"w":261,"h":325}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_rise_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_rise_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_warrior":{"frames":[{"duration":1,"y":-154,"res":"Sprite_0","x":-29},{"duration":1,"y":-154,"res":"Sprite_1","x":-29},{"duration":1,"y":-155,"res":"Sprite_2","x":-29},{"duration":1,"y":-155,"res":"Sprite_3","x":-29},{"duration":1,"y":-156,"res":"Sprite_4","x":-29},{"duration":1,"y":-157,"res":"Sprite_5","x":-28},{"duration":1,"y":-157,"res":"Sprite_6","x":-28},{"duration":1,"y":-157,"res":"Sprite_7","x":-27},{"duration":1,"y":-158,"res":"Sprite_8","x":-27},{"duration":1,"y":-158,"res":"Sprite_9","x":-27},{"duration":1,"y":-158,"res":"Sprite_10","x":-27},{"duration":1,"y":-157,"res":"Sprite_11","x":-27},{"duration":1,"y":-156,"res":"Sprite_12","x":-28},{"duration":1,"y":-156,"res":"Sprite_13","x":-28},{"duration":1,"y":-155,"res":"Sprite_14","x":-29},{"duration":1,"y":-154,"res":"Sprite_15","x":-29}],"labels":[{"end":16,"frame":1,"name":"Sprite"}],"frameRate":8,"events":[]}},"file":"ChrSel_warrior_tex.png","res":{"Sprite_0":{"x":0,"y":0,"w":134,"h":322},"Sprite_5":{"x":657,"y":0,"w":128,"h":325},"Sprite_15":{"x":0,"y":645,"w":133,"h":322},"Sprite_13":{"x":528,"y":0,"w":129,"h":324},"Sprite_3":{"x":133,"y":322,"w":132,"h":323},"Sprite_7":{"x":265,"y":323,"w":125,"h":325},"Sprite_6":{"x":785,"y":0,"w":127,"h":325},"Sprite_9":{"x":515,"y":324,"w":124,"h":326},"Sprite_1":{"x":134,"y":0,"w":133,"h":322},"Sprite_8":{"x":260,"y":648,"w":124,"h":326},"Sprite_11":{"x":390,"y":324,"w":125,"h":325},"Sprite_14":{"x":267,"y":0,"w":131,"h":323},"Sprite_10":{"x":384,"y":649,"w":124,"h":326},"Sprite_4":{"x":398,"y":0,"w":130,"h":324},"Sprite_12":{"x":133,"y":645,"w":127,"h":324},"Sprite_2":{"x":0,"y":322,"w":133,"h":323}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_rise_mc.json: -------------------------------------------------------------------------------- 1 | {"file":"ChrSel_warrior_rise_tex.png","mc":{"ChrSel_warrior_rise":{"labels":[{"end":13,"frame":1,"name":"Sprite"}],"frameRate":10,"frames":[{"res":"Sprite_0","y":-154,"duration":1,"x":-29},{"res":"Sprite_1","y":-154,"duration":1,"x":-29},{"res":"Sprite_2","y":-154,"duration":1,"x":-29},{"res":"Sprite_3","y":-154,"duration":1,"x":-29},{"res":"Sprite_4","y":-154,"duration":1,"x":-29},{"res":"Sprite_5","y":-154,"duration":1,"x":-29},{"res":"Sprite_6","y":-154,"duration":1,"x":-29},{"res":"Sprite_7","y":-154,"duration":1,"x":-29},{"res":"Sprite_8","y":-154,"duration":1,"x":-29},{"res":"Sprite_9","y":-154,"duration":1,"x":-29},{"res":"Sprite_10","y":-154,"duration":1,"x":-29},{"res":"Sprite_11","y":-154,"duration":1,"x":-29},{"res":"Sprite_12","y":-154,"duration":1,"x":-29}],"events":[]}},"res":{"Sprite_3":{"x":137,"y":650,"w":133,"h":322},"Sprite_12":{"x":1,"y":1,"w":134,"h":322},"Sprite_1":{"x":272,"y":325,"w":133,"h":322},"Sprite_11":{"x":408,"y":1,"w":133,"h":322},"Sprite_8":{"x":407,"y":325,"w":133,"h":322},"Sprite_10":{"x":1,"y":325,"w":134,"h":322},"Sprite_6":{"x":1,"y":649,"w":134,"h":322},"Sprite_2":{"x":273,"y":1,"w":133,"h":322},"Sprite_4":{"x":137,"y":1,"w":134,"h":322},"Sprite_9":{"x":272,"y":649,"w":133,"h":322},"Sprite_0":{"x":137,"y":325,"w":133,"h":323},"Sprite_7":{"x":407,"y":649,"w":133,"h":322},"Sprite_5":{"x":542,"y":325,"w":133,"h":322}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_rise_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_rise_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_rise_women_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_warrior_rise_women":{"frames":[{"y":-125,"duration":1,"res":"Sprite_0","x":-111},{"y":-125,"duration":1,"res":"Sprite_1","x":-111},{"y":-125,"duration":1,"res":"Sprite_2","x":-111},{"y":-125,"duration":1,"res":"Sprite_3","x":-111},{"y":-125,"duration":1,"res":"Sprite_4","x":-111},{"y":-125,"duration":1,"res":"Sprite_5","x":-111},{"y":-125,"duration":1,"res":"Sprite_6","x":-111},{"y":-125,"duration":1,"res":"Sprite_7","x":-111},{"y":-125,"duration":1,"res":"Sprite_8","x":-111},{"y":-125,"duration":1,"res":"Sprite_9","x":-111},{"y":-125,"duration":1,"res":"Sprite_10","x":-111},{"y":-125,"duration":1,"res":"Sprite_11","x":-111},{"y":-125,"duration":1,"res":"Sprite_12","x":-111}],"labels":[{"end":13,"frame":1,"name":"Sprite"}],"frameRate":10,"events":[]}},"file":"ChrSel_warrior_rise_women_tex.png","res":{"Sprite_7":{"x":0,"y":0,"w":201,"h":280},"Sprite_5":{"x":0,"y":280,"w":201,"h":280},"Sprite_3":{"x":0,"y":560,"w":201,"h":280},"Sprite_1":{"x":201,"y":0,"w":201,"h":280},"Sprite_12":{"x":201,"y":280,"w":201,"h":280},"Sprite_11":{"x":201,"y":560,"w":201,"h":280},"Sprite_8":{"x":402,"y":0,"w":201,"h":280},"Sprite_10":{"x":603,"y":0,"w":201,"h":280},"Sprite_6":{"x":804,"y":0,"w":201,"h":280},"Sprite_4":{"x":402,"y":280,"w":201,"h":280},"Sprite_2":{"x":402,"y":560,"w":201,"h":280},"Sprite_0":{"x":603,"y":280,"w":201,"h":280},"Sprite_9":{"x":804,"y":280,"w":201,"h":280}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_rise_women_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_rise_women_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_woman_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_warrior_woman":{"frames":[{"y":-125,"duration":1,"res":"Sprite_0","x":-111},{"y":-125,"duration":1,"res":"Sprite_1","x":-111},{"y":-125,"duration":1,"res":"Sprite_2","x":-114},{"y":-125,"duration":1,"res":"Sprite_3","x":-121},{"y":-125,"duration":1,"res":"Sprite_4","x":-126},{"y":-125,"duration":1,"res":"Sprite_5","x":-129},{"y":-125,"duration":1,"res":"Sprite_6","x":-132},{"y":-125,"duration":1,"res":"Sprite_7","x":-133},{"y":-125,"duration":1,"res":"Sprite_8","x":-134},{"y":-125,"duration":1,"res":"Sprite_9","x":-133},{"y":-125,"duration":1,"res":"Sprite_10","x":-131},{"y":-125,"duration":1,"res":"Sprite_11","x":-128},{"y":-125,"duration":1,"res":"Sprite_12","x":-125},{"y":-125,"duration":1,"res":"Sprite_13","x":-121},{"y":-125,"duration":1,"res":"Sprite_14","x":-117},{"y":-125,"duration":1,"res":"Sprite_15","x":-114}],"labels":[{"end":16,"frame":1,"name":"Sprite"}],"frameRate":8,"events":[]}},"file":"ChrSel_warrior_woman_tex.png","res":{"Sprite_7":{"x":0,"y":280,"w":219,"h":280},"Sprite_5":{"x":438,"y":0,"w":217,"h":280},"Sprite_3":{"x":648,"y":560,"w":210,"h":280},"Sprite_14":{"x":858,"y":560,"w":205,"h":280},"Sprite_1":{"x":860,"y":280,"w":201,"h":280},"Sprite_12":{"x":438,"y":280,"w":213,"h":280},"Sprite_11":{"x":219,"y":560,"w":215,"h":280},"Sprite_8":{"x":0,"y":0,"w":220,"h":280},"Sprite_10":{"x":220,"y":0,"w":218,"h":280},"Sprite_6":{"x":0,"y":560,"w":219,"h":280},"Sprite_13":{"x":651,"y":280,"w":209,"h":280},"Sprite_4":{"x":434,"y":560,"w":214,"h":280},"Sprite_2":{"x":655,"y":0,"w":205,"h":280},"Sprite_0":{"x":1061,"y":280,"w":201,"h":280},"Sprite_15":{"x":860,"y":0,"w":203,"h":280},"Sprite_9":{"x":219,"y":280,"w":219,"h":280}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_woman_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_warrior_woman_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_wizard":{"frames":[{"y":-122,"duration":1,"res":"Sprite_0","x":-54},{"y":-124,"duration":1,"res":"Sprite_1","x":-53},{"y":-125,"duration":1,"res":"Sprite_2","x":-50},{"y":-125,"duration":1,"res":"Sprite_3","x":-48},{"y":-141,"duration":1,"res":"Sprite_4","x":-46},{"y":-148,"duration":1,"res":"Sprite_5","x":-45},{"y":-148,"duration":1,"res":"Sprite_6","x":-55},{"y":-147,"duration":1,"res":"Sprite_7","x":-57},{"y":-145,"duration":1,"res":"Sprite_8","x":-61},{"y":-143,"duration":1,"res":"Sprite_9","x":-67},{"y":-127,"duration":1,"res":"Sprite_10","x":-68},{"y":-124,"duration":1,"res":"Sprite_11","x":-67},{"y":-122,"duration":1,"res":"Sprite_12","x":-64},{"y":-124,"duration":1,"res":"Sprite_13","x":-61},{"y":-124,"duration":1,"res":"Sprite_14","x":-59},{"y":-122,"duration":1,"res":"Sprite_15","x":-56},{"y":-122,"duration":1,"res":"Sprite_16","x":-54},{"y":-124,"duration":1,"res":"Sprite_17","x":-53},{"y":-125,"duration":1,"res":"Sprite_18","x":-50},{"y":-125,"duration":1,"res":"Sprite_19","x":-48},{"y":-141,"duration":1,"res":"Sprite_20","x":-46},{"y":-148,"duration":1,"res":"Sprite_21","x":-45},{"y":-148,"duration":1,"res":"Sprite_22","x":-55},{"y":-147,"duration":1,"res":"Sprite_23","x":-57},{"y":-145,"duration":1,"res":"Sprite_24","x":-61},{"y":-143,"duration":1,"res":"Sprite_25","x":-67},{"y":-127,"duration":1,"res":"Sprite_26","x":-68},{"y":-124,"duration":1,"res":"Sprite_27","x":-67},{"y":-122,"duration":1,"res":"Sprite_28","x":-64},{"y":-124,"duration":1,"res":"Sprite_29","x":-61},{"y":-124,"duration":1,"res":"Sprite_30","x":-59},{"y":-122,"duration":1,"res":"Sprite_31","x":-56}],"labels":[{"end":32,"frame":1,"name":"Sprite"}],"frameRate":8,"events":[]}},"file":"ChrSel_wizard_tex.png","res":{"Sprite_27":{"x":564,"y":321,"w":148,"h":297},"Sprite_31":{"x":1234,"y":296,"w":136,"h":294},"Sprite_30":{"x":993,"y":0,"w":139,"h":296},"Sprite_5":{"x":852,"y":594,"w":127,"h":321},"Sprite_1":{"x":1234,"y":590,"w":134,"h":297},"Sprite_26":{"x":148,"y":0,"w":149,"h":299},"Sprite_23":{"x":425,"y":598,"w":139,"h":319},"Sprite_20":{"x":1106,"y":297,"w":128,"h":313},"Sprite_13":{"x":852,"y":0,"w":141,"h":297},"Sprite_10":{"x":148,"y":299,"w":149,"h":299},"Sprite_6":{"x":434,"y":0,"w":137,"h":321},"Sprite_29":{"x":712,"y":297,"w":141,"h":297},"Sprite_24":{"x":143,"y":630,"w":143,"h":317},"Sprite_2":{"x":719,"y":0,"w":131,"h":297},"Sprite_17":{"x":1368,"y":590,"w":134,"h":297},"Sprite_14":{"x":1132,"y":0,"w":139,"h":296},"Sprite_21":{"x":979,"y":594,"w":127,"h":321},"Sprite_7":{"x":286,"y":598,"w":139,"h":319},"Sprite_11":{"x":571,"y":0,"w":148,"h":297},"Sprite_3":{"x":1504,"y":0,"w":130,"h":298},"Sprite_28":{"x":708,"y":618,"w":144,"h":294},"Sprite_25":{"x":0,"y":0,"w":148,"h":315},"Sprite_18":{"x":1502,"y":588,"w":131,"h":297},"Sprite_15":{"x":853,"y":297,"w":136,"h":294},"Sprite_8":{"x":0,"y":630,"w":143,"h":317},"Sprite_22":{"x":297,"y":0,"w":137,"h":321},"Sprite_4":{"x":1106,"y":610,"w":128,"h":313},"Sprite_12":{"x":564,"y":618,"w":144,"h":294},"Sprite_0":{"x":1370,"y":294,"w":134,"h":294},"Sprite_19":{"x":1633,"y":298,"w":130,"h":298},"Sprite_16":{"x":1271,"y":0,"w":134,"h":294},"Sprite_9":{"x":0,"y":315,"w":148,"h":315}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_rise_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_wizard_rise":{"frames":[{"y":-125,"duration":1,"res":"Sprite_0","x":-54},{"y":-125,"duration":1,"res":"Sprite_1","x":-54},{"y":-125,"duration":1,"res":"Sprite_2","x":-54},{"y":-125,"duration":1,"res":"Sprite_3","x":-54},{"y":-125,"duration":1,"res":"Sprite_4","x":-54},{"y":-125,"duration":1,"res":"Sprite_5","x":-54},{"y":-125,"duration":1,"res":"Sprite_6","x":-54},{"y":-125,"duration":1,"res":"Sprite_7","x":-54},{"y":-125,"duration":1,"res":"Sprite_8","x":-54},{"y":-125,"duration":1,"res":"Sprite_9","x":-54},{"y":-125,"duration":1,"res":"Sprite_10","x":-54},{"y":-125,"duration":1,"res":"Sprite_11","x":-54},{"y":-125,"duration":1,"res":"Sprite_12","x":-54}],"labels":[{"end":13,"frame":1,"name":"Sprite"}],"frameRate":10,"events":[]}},"file":"ChrSel_wizard_rise_tex.png","res":{"Sprite_7":{"x":268,"y":596,"w":134,"h":297},"Sprite_5":{"x":0,"y":0,"w":134,"h":298},"Sprite_3":{"x":0,"y":298,"w":134,"h":298},"Sprite_1":{"x":0,"y":596,"w":134,"h":298},"Sprite_11":{"x":402,"y":0,"w":134,"h":297},"Sprite_8":{"x":134,"y":0,"w":134,"h":298},"Sprite_10":{"x":134,"y":298,"w":134,"h":298},"Sprite_6":{"x":536,"y":0,"w":134,"h":297},"Sprite_4":{"x":134,"y":596,"w":134,"h":298},"Sprite_12":{"x":268,"y":0,"w":134,"h":298},"Sprite_2":{"x":402,"y":297,"w":134,"h":297},"Sprite_0":{"x":402,"y":594,"w":134,"h":297},"Sprite_9":{"x":268,"y":298,"w":134,"h":298}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_rise_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_rise_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_rise_women_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_wizard_rise_women":{"frames":[{"y":-146,"duration":1,"res":"Sprite_0","x":-66},{"y":-146,"duration":1,"res":"Sprite_1","x":-66},{"y":-146,"duration":1,"res":"Sprite_2","x":-66},{"y":-146,"duration":1,"res":"Sprite_3","x":-66},{"y":-146,"duration":1,"res":"Sprite_4","x":-66},{"y":-146,"duration":1,"res":"Sprite_5","x":-66},{"y":-146,"duration":1,"res":"Sprite_6","x":-66},{"y":-146,"duration":1,"res":"Sprite_7","x":-66},{"y":-146,"duration":1,"res":"Sprite_8","x":-66},{"y":-146,"duration":1,"res":"Sprite_9","x":-66},{"y":-146,"duration":1,"res":"Sprite_10","x":-66},{"y":-146,"duration":1,"res":"Sprite_11","x":-66},{"y":-146,"duration":1,"res":"Sprite_12","x":-66}],"labels":[{"end":13,"frame":1,"name":"Sprite"}],"frameRate":10,"events":[]}},"file":"ChrSel_wizard_rise_women_tex.png","res":{"Sprite_7":{"x":0,"y":0,"w":130,"h":292},"Sprite_5":{"x":0,"y":292,"w":130,"h":292},"Sprite_3":{"x":0,"y":584,"w":130,"h":292},"Sprite_1":{"x":130,"y":0,"w":130,"h":292},"Sprite_12":{"x":130,"y":292,"w":130,"h":292},"Sprite_11":{"x":130,"y":584,"w":130,"h":292},"Sprite_8":{"x":260,"y":0,"w":130,"h":292},"Sprite_10":{"x":260,"y":292,"w":130,"h":292},"Sprite_6":{"x":260,"y":584,"w":130,"h":292},"Sprite_4":{"x":390,"y":0,"w":130,"h":292},"Sprite_2":{"x":390,"y":292,"w":130,"h":292},"Sprite_0":{"x":390,"y":584,"w":130,"h":292},"Sprite_9":{"x":520,"y":0,"w":130,"h":292}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_rise_women_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_rise_women_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_women_mc.json: -------------------------------------------------------------------------------- 1 | {"mc":{"ChrSel_wizard_women":{"frames":[{"y":-142,"duration":1,"res":"Sprite_0","x":-58},{"y":-142,"duration":1,"res":"Sprite_1","x":-57},{"y":-142,"duration":1,"res":"Sprite_2","x":-58},{"y":-142,"duration":1,"res":"Sprite_3","x":-57},{"y":-143,"duration":1,"res":"Sprite_4","x":-57},{"y":-143,"duration":1,"res":"Sprite_5","x":-57},{"y":-143,"duration":1,"res":"Sprite_6","x":-57},{"y":-143,"duration":1,"res":"Sprite_7","x":-57},{"y":-143,"duration":1,"res":"Sprite_8","x":-57},{"y":-144,"duration":1,"res":"Sprite_9","x":-65},{"y":-144,"duration":1,"res":"Sprite_10","x":-64},{"y":-144,"duration":1,"res":"Sprite_11","x":-70},{"y":-144,"duration":1,"res":"Sprite_12","x":-66},{"y":-144,"duration":1,"res":"Sprite_13","x":-56},{"y":-143,"duration":1,"res":"Sprite_14","x":-57},{"y":-143,"duration":1,"res":"Sprite_15","x":-57}],"labels":[{"end":16,"frame":1,"name":"Sprite"}],"frameRate":8,"events":[]}},"file":"ChrSel_wizard_women_tex.png","res":{"Sprite_7":{"x":142,"y":295,"w":132,"h":294},"Sprite_5":{"x":277,"y":0,"w":131,"h":295},"Sprite_3":{"x":540,"y":0,"w":130,"h":293},"Sprite_1":{"x":540,"y":587,"w":129,"h":294},"Sprite_12":{"x":0,"y":295,"w":142,"h":295},"Sprite_13":{"x":146,"y":0,"w":131,"h":295},"Sprite_11":{"x":0,"y":0,"w":146,"h":295},"Sprite_15":{"x":280,"y":589,"w":130,"h":294},"Sprite_8":{"x":406,"y":295,"w":132,"h":294},"Sprite_10":{"x":0,"y":590,"w":140,"h":295},"Sprite_6":{"x":408,"y":0,"w":131,"h":294},"Sprite_4":{"x":410,"y":589,"w":130,"h":294},"Sprite_2":{"x":670,"y":0,"w":130,"h":293},"Sprite_0":{"x":538,"y":294,"w":130,"h":293},"Sprite_14":{"x":274,"y":295,"w":132,"h":294},"Sprite_9":{"x":140,"y":590,"w":140,"h":295}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_women_tex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/ChrSel/ChrSel_wizard_women_tex.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/bg.jpg -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/fg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/fg.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/icon_music_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/icon_music_on.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/login/login.json: -------------------------------------------------------------------------------- 1 | {"file":"login.png","frames":{ 2 | "login_73":{"x":800,"y":471,"w":298,"h":416,"offX":0,"offY":1,"sourceW":300,"sourceH":417}, 3 | "login_74":{"x":1936,"y":232,"w":44,"h":36,"offX":0,"offY":0,"sourceW":44,"sourceH":36}, 4 | "login_75":{"x":1936,"y":196,"w":44,"h":36,"offX":0,"offY":0,"sourceW":44,"sourceH":36}, 5 | "login_76":{"x":1936,"y":268,"w":44,"h":36,"offX":0,"offY":0,"sourceW":44,"sourceH":36}, 6 | "login_77":{"x":1936,"y":339,"w":44,"h":35,"offX":0,"offY":0,"sourceW":44,"sourceH":35}, 7 | "login_78":{"x":1936,"y":304,"w":44,"h":35,"offX":0,"offY":0,"sourceW":44,"sourceH":35}, 8 | "login_81":{"x":1936,"y":164,"w":76,"h":32,"offX":0,"offY":0,"sourceW":76,"sourceH":32}, 9 | "login_1140":{"x":1436,"y":0,"w":500,"h":404,"offX":0,"offY":0,"sourceW":500,"sourceH":404}, 10 | "login_50":{"x":1436,"y":404,"w":416,"h":298,"offX":0,"offY":1,"sourceW":420,"sourceH":299}, 11 | "login_52":{"x":1936,"y":32,"w":95,"h":33,"offX":0,"offY":0,"sourceW":96,"sourceH":33}, 12 | "login_53":{"x":1852,"y":404,"w":128,"h":33,"offX":0,"offY":0,"sourceW":128,"sourceH":33}, 13 | "login_60":{"x":1098,"y":471,"w":294,"h":253,"offX":0,"offY":0,"sourceW":296,"sourceH":254}, 14 | "login_61":{"x":1936,"y":0,"w":100,"h":32,"offX":0,"offY":0,"sourceW":100,"sourceH":32}, 15 | "login_62":{"x":1936,"y":98,"w":76,"h":33,"offX":0,"offY":0,"sourceW":76,"sourceH":33}, 16 | "login_63":{"x":800,"y":0,"w":636,"h":471,"offX":1,"offY":0,"sourceW":640,"sourceH":473}, 17 | "login_65":{"x":0,"y":0,"w":800,"h":600,"offX":0,"offY":0,"sourceW":800,"sourceH":600}, 18 | "login_66":{"x":1936,"y":65,"w":76,"h":33,"offX":0,"offY":0,"sourceW":76,"sourceH":33}, 19 | "login_67":{"x":1936,"y":131,"w":76,"h":33,"offX":0,"offY":0,"sourceW":76,"sourceH":33}, 20 | "login_68":{"x":1980,"y":196,"w":44,"h":21,"offX":0,"offY":0,"sourceW":44,"sourceH":21}, 21 | "login_69":{"x":1852,"y":458,"w":118,"h":21,"offX":0,"offY":0,"sourceW":120,"sourceH":21}, 22 | "login_70":{"x":1852,"y":437,"w":118,"h":21,"offX":0,"offY":0,"sourceW":120,"sourceH":21}, 23 | "login_72":{"x":1936,"y":374,"w":54,"h":20,"offX":0,"offY":0,"sourceW":56,"sourceH":20}}} -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/login/login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/login/login.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/sound_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/sound_off.png -------------------------------------------------------------------------------- /Basic/resource/mir2/ui/sound_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/ui/sound_on.png -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/Field2.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/Field2.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/HeroLogin.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/HeroLogin.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/HeroLogout.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/HeroLogout.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/Log-in-long2.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/Log-in-long2.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/M11-2.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/M11-2.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/M2-1.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/M2-1.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/M7-1.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/M7-1.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/OpenBox.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/OpenBox.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/OpenDoor.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/OpenDoor.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/blink_home.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/blink_home.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/blink_random.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/blink_random.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/button.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/button.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/drink.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/drink.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/drink1.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/drink1.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/powerup.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/powerup.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/sellect-loop2.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/sellect-loop2.wav -------------------------------------------------------------------------------- /Basic/resource/mir2/wav/sellout.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/Basic/resource/mir2/wav/sellout.wav -------------------------------------------------------------------------------- /Basic/resource/scene/Game.exml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Basic/scripts/bricks/bricks.ts: -------------------------------------------------------------------------------- 1 | import * as fs from 'fs'; 2 | import * as path from 'path'; 3 | 4 | 5 | type ManifestConfig = { 6 | 7 | initial: string[], 8 | 9 | game: string[] 10 | 11 | } 12 | 13 | export class BricksPlugin implements plugins.Command { 14 | 15 | constructor() { 16 | } 17 | async onFile(file: plugins.File) { 18 | const filename = file.origin; 19 | if (filename == 'manifest.json') { 20 | const contents = file.contents.toString(); 21 | const jsonData: ManifestConfig = JSON.parse(contents); 22 | 23 | let content = ''; 24 | 25 | for (let item of jsonData.initial) { 26 | if (item != 'js/promise.js' && item != 'js/promise.min.js') { 27 | content += `BK.Script.loadlib("GameRes://${item}");\n` 28 | } 29 | if (item == "js/egret.js" || item == 'js/egret.min.js') { 30 | content += `BK.Script.loadlib("GameRes://egret.bricks.js");\n` 31 | } 32 | } 33 | for (let item of jsonData.game) { 34 | content += `BK.Script.loadlib("GameRes://${item}");\n` 35 | } 36 | file.path = file.dirname + '/manifest.js' 37 | file.contents = new Buffer(content); 38 | } 39 | return file; 40 | } 41 | async onFinish(pluginContext) { 42 | 43 | } 44 | } -------------------------------------------------------------------------------- /Basic/scripts/config.bricks.ts: -------------------------------------------------------------------------------- 1 | /// 阅读 api.d.ts 查看文档 2 | /// 3 | 4 | import * as path from 'path'; 5 | import { UglifyPlugin, CompilePlugin, ManifestPlugin, ExmlPlugin, EmitResConfigFilePlugin, TextureMergerPlugin } from 'built-in'; 6 | import { BricksPlugin } from './bricks/bricks'; 7 | import { CustomPlugin } from './myplugin'; 8 | import * as defaultConfig from './config'; 9 | 10 | const config: ResourceManagerConfig = { 11 | 12 | buildConfig: (params) => { 13 | 14 | const { target, command, projectName, version } = params; 15 | const outputDir = `../${projectName}_bricks/PublicBrickEngineGame/Res`; 16 | return { 17 | outputDir, 18 | commands: [ 19 | new CompilePlugin({ libraryType: "debug", defines: { DEBUG: true, RELEASE: false } }), 20 | new ExmlPlugin('commonjs'), // 非 EUI 项目关闭此设置 21 | new ManifestPlugin({ output: 'manifest.json' }), 22 | new BricksPlugin() 23 | ] 24 | } 25 | }, 26 | 27 | mergeSelector: defaultConfig.mergeSelector, 28 | 29 | typeSelector: defaultConfig.typeSelector 30 | } 31 | 32 | 33 | 34 | export = config; 35 | -------------------------------------------------------------------------------- /Basic/scripts/config.ts: -------------------------------------------------------------------------------- 1 | /// 阅读 api.d.ts 查看文档 2 | /// 3 | 4 | import * as path from 'path'; 5 | import { UglifyPlugin, IncrementCompilePlugin, CompilePlugin, ManifestPlugin, ExmlPlugin, EmitResConfigFilePlugin, TextureMergerPlugin } from 'built-in'; 6 | import { WxgamePlugin } from './wxgame/wxgame'; 7 | import { BricksPlugin } from './bricks/bricks'; 8 | import { CustomPlugin } from './myplugin'; 9 | 10 | const config: ResourceManagerConfig = { 11 | 12 | 13 | buildConfig: (params) => { 14 | 15 | const { target, command, projectName, version } = params; 16 | 17 | if (command == 'build') { 18 | const outputDir = '.'; 19 | return { 20 | outputDir, 21 | commands: [ 22 | // new EmitResConfigFilePlugin({ 23 | // output: "resource/default.res.json", 24 | // typeSelector: config.typeSelector, 25 | // nameSelector: p => path.basename(p).replace(/\./gi, "_"), 26 | // groupSelector: p => "preload" 27 | // }), 28 | new ExmlPlugin('debug'), // 非 EUI 项目关闭此设置 29 | new IncrementCompilePlugin(), 30 | ] 31 | } 32 | } 33 | else if (command == 'publish') { 34 | const outputDir = `bin-release/web/${version}`; 35 | return { 36 | outputDir, 37 | commands: [ 38 | new CustomPlugin(), 39 | new CompilePlugin({ libraryType: "release", defines: { DEBUG: false, RELEASE: true } }), 40 | new ExmlPlugin('commonjs'), // 非 EUI 项目关闭此设置 41 | new UglifyPlugin([{ 42 | sources: ["main.js"], 43 | target: "main.min.js" 44 | }]), 45 | new ManifestPlugin({ output: "manifest.json", hash: "crc32" }) 46 | ] 47 | } 48 | } 49 | else { 50 | throw `unknown command : ${params.command}` 51 | } 52 | }, 53 | 54 | mergeSelector: (path) => { 55 | if (path.indexOf("assets/bitmap/") >= 0) { 56 | return "assets/bitmap/sheet.sheet" 57 | } 58 | else if (path.indexOf("armature") >= 0 && path.indexOf(".json") >= 0) { 59 | return "assets/armature/1.zip"; 60 | } 61 | }, 62 | 63 | typeSelector: (path) => { 64 | const ext = path.substr(path.lastIndexOf(".") + 1); 65 | const typeMap = { 66 | "jpg": "image", 67 | "png": "image", 68 | "webp": "image", 69 | "json": "json", 70 | "fnt": "font", 71 | "pvr": "pvr", 72 | "mp3": "sound", 73 | "zip": "zip", 74 | "sheet": "sheet", 75 | "exml": "text" 76 | } 77 | let type = typeMap[ext]; 78 | if (type == "json") { 79 | if (path.indexOf("sheet") >= 0) { 80 | type = "sheet"; 81 | } else if (path.indexOf("movieclip") >= 0) { 82 | type = "movieclip"; 83 | }; 84 | } 85 | return type; 86 | } 87 | } 88 | 89 | 90 | export = config; 91 | -------------------------------------------------------------------------------- /Basic/scripts/config.wxgame.ts: -------------------------------------------------------------------------------- 1 | /// 阅读 api.d.ts 查看文档 2 | /// 3 | 4 | import * as path from 'path'; 5 | import { UglifyPlugin, CompilePlugin, ManifestPlugin, ExmlPlugin, EmitResConfigFilePlugin, TextureMergerPlugin, CleanPlugin } from 'built-in'; 6 | import { WxgamePlugin } from './wxgame/wxgame'; 7 | import { CustomPlugin } from './myplugin'; 8 | import * as defaultConfig from './config'; 9 | 10 | const config: ResourceManagerConfig = { 11 | 12 | buildConfig: (params) => { 13 | 14 | const { target, command, projectName, version } = params; 15 | const outputDir = `../${projectName}_wxgame`; 16 | if (command == 'build') { 17 | return { 18 | outputDir, 19 | commands: [ 20 | new CleanPlugin({ matchers: ["js", "resource"] }), 21 | new CompilePlugin({ libraryType: "debug", defines: { DEBUG: true, RELEASE: false } }), 22 | new ExmlPlugin('commonjs'), // 非 EUI 项目关闭此设置 23 | new WxgamePlugin(), 24 | new ManifestPlugin({ output: 'manifest.js' }) 25 | ] 26 | } 27 | } 28 | else if (command == 'publish') { 29 | return { 30 | outputDir, 31 | commands: [ 32 | new CleanPlugin({ matchers: ["js", "resource"] }), 33 | new CompilePlugin({ libraryType: "release", defines: { DEBUG: false, RELEASE: true } }), 34 | new ExmlPlugin('commonjs'), // 非 EUI 项目关闭此设置 35 | new WxgamePlugin(), 36 | new UglifyPlugin([{ 37 | sources: ["main.js"], 38 | target: "main.min.js" 39 | } 40 | ]), 41 | new ManifestPlugin({ output: 'manifest.js' }) 42 | ] 43 | } 44 | } 45 | else { 46 | throw `unknown command : ${params.command}`; 47 | } 48 | }, 49 | 50 | mergeSelector: defaultConfig.mergeSelector, 51 | 52 | typeSelector: defaultConfig.typeSelector 53 | } 54 | 55 | 56 | 57 | export = config; 58 | -------------------------------------------------------------------------------- /Basic/scripts/myplugin.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * 示例自定义插件,您可以查阅 http://developer.egret.com/cn/2d/projectConfig/cmdExtensionPluginin/ 3 | * 了解如何开发一个自定义插件 4 | */ 5 | export class CustomPlugin implements plugins.Command { 6 | 7 | constructor() { 8 | } 9 | 10 | async onFile(file: plugins.File) { 11 | return file; 12 | } 13 | 14 | async onFinish(commandContext: plugins.CommandContext) { 15 | 16 | } 17 | } -------------------------------------------------------------------------------- /Basic/src/AssetAdapter.ts: -------------------------------------------------------------------------------- 1 | ////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // Copyright (c) 2014-present, Egret Technology. 4 | // All rights reserved. 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions are met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above copyright 11 | // notice, this list of conditions and the following disclaimer in the 12 | // documentation and/or other materials provided with the distribution. 13 | // * Neither the name of the Egret nor the 14 | // names of its contributors may be used to endorse or promote products 15 | // derived from this software without specific prior written permission. 16 | // 17 | // THIS SOFTWARE IS PROVIDED BY EGRET AND CONTRIBUTORS "AS IS" AND ANY EXPRESS 18 | // OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19 | // OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20 | // IN NO EVENT SHALL EGRET AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 21 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, 23 | // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 24 | // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 25 | // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | ////////////////////////////////////////////////////////////////////////////////////// 29 | 30 | 31 | class AssetAdapter implements eui.IAssetAdapter { 32 | /** 33 | * @language zh_CN 34 | * 解析素材 35 | * @param source 待解析的新素材标识符 36 | * @param compFunc 解析完成回调函数,示例:callBack(content:any,source:string):void; 37 | * @param thisObject callBack的 this 引用 38 | */ 39 | public getAsset(source: string, compFunc:Function, thisObject: any): void { 40 | function onGetRes(data: any): void { 41 | compFunc.call(thisObject, data, source); 42 | } 43 | if (RES.hasRes(source)) { 44 | let data = RES.getRes(source); 45 | if (data) { 46 | onGetRes(data); 47 | } 48 | else { 49 | RES.getResAsync(source, onGetRes, this); 50 | } 51 | } 52 | else { 53 | RES.getResByUrl(source, onGetRes, this, RES.ResourceItem.TYPE_IMAGE); 54 | } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /Basic/src/LoadingUI.ts: -------------------------------------------------------------------------------- 1 | ////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // Copyright (c) 2014-present, Egret Technology. 4 | // All rights reserved. 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions are met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above copyright 11 | // notice, this list of conditions and the following disclaimer in the 12 | // documentation and/or other materials provided with the distribution. 13 | // * Neither the name of the Egret nor the 14 | // names of its contributors may be used to endorse or promote products 15 | // derived from this software without specific prior written permission. 16 | // 17 | // THIS SOFTWARE IS PROVIDED BY EGRET AND CONTRIBUTORS "AS IS" AND ANY EXPRESS 18 | // OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19 | // OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20 | // IN NO EVENT SHALL EGRET AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 21 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, 23 | // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 24 | // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 25 | // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | ////////////////////////////////////////////////////////////////////////////////////// 29 | 30 | class LoadingUI extends egret.Sprite { 31 | 32 | public constructor() { 33 | super(); 34 | this.createView(); 35 | } 36 | 37 | private textField: egret.TextField; 38 | 39 | private createView(): void { 40 | this.textField = new egret.TextField(); 41 | this.addChild(this.textField); 42 | this.textField.y = 300; 43 | this.textField.width = 480; 44 | this.textField.height = 100; 45 | this.textField.textAlign = "center"; 46 | } 47 | public onLoadComplete(callback: Function, thisObj): void { 48 | callback.call(thisObj); 49 | } 50 | public onProgress(current: number, total: number): void { 51 | this.textField.text = `Loading...${current}/${total}`; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /Basic/src/Platform.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * 平台数据接口。 3 | * 由于每款游戏通常需要发布到多个平台上,所以提取出一个统一的接口用于开发者获取平台数据信息 4 | * 推荐开发者通过这种方式封装平台逻辑,以保证整体结构的稳定 5 | * 由于不同平台的接口形式各有不同,白鹭推荐开发者将所有接口封装为基于 Promise 的异步形式 6 | */ 7 | declare interface Platform { 8 | 9 | getUserInfo(): Promise; 10 | 11 | login(): Promise 12 | 13 | } 14 | 15 | class DebugPlatform implements Platform { 16 | async getUserInfo() { 17 | return { nickName: "username" } 18 | } 19 | async login() { 20 | 21 | } 22 | } 23 | 24 | 25 | if (!window.platform) { 26 | window.platform = new DebugPlatform(); 27 | } 28 | 29 | 30 | 31 | declare let platform: Platform; 32 | 33 | declare interface Window { 34 | 35 | platform: Platform 36 | } 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Basic/src/ThemeAdapter.ts: -------------------------------------------------------------------------------- 1 | ////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // Copyright (c) 2014-present, Egret Technology. 4 | // All rights reserved. 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions are met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above copyright 11 | // notice, this list of conditions and the following disclaimer in the 12 | // documentation and/or other materials provided with the distribution. 13 | // * Neither the name of the Egret nor the 14 | // names of its contributors may be used to endorse or promote products 15 | // derived from this software without specific prior written permission. 16 | // 17 | // THIS SOFTWARE IS PROVIDED BY EGRET AND CONTRIBUTORS "AS IS" AND ANY EXPRESS 18 | // OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19 | // OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20 | // IN NO EVENT SHALL EGRET AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 21 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, 23 | // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 24 | // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 25 | // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | ////////////////////////////////////////////////////////////////////////////////////// 29 | 30 | 31 | class ThemeAdapter implements eui.IThemeAdapter { 32 | 33 | /** 34 | * 解析主题 35 | * @param url 待解析的主题url 36 | * @param onSuccess 解析完成回调函数,示例:compFunc(e:egret.Event):void; 37 | * @param onError 解析失败回调函数,示例:errorFunc():void; 38 | * @param thisObject 回调的this引用 39 | */ 40 | public getTheme(url: string, onSuccess: Function, onError: Function, thisObject: any): void { 41 | 42 | function onResGet(e: string): void { 43 | onSuccess.call(thisObject, e); 44 | } 45 | function onResError(e: RES.ResourceEvent): void { 46 | if (e.resItem.url == url) { 47 | RES.removeEventListener(RES.ResourceEvent.ITEM_LOAD_ERROR, onResError, null); 48 | onError.call(thisObject); 49 | } 50 | } 51 | 52 | if (typeof generateEUI !== 'undefined') { 53 | egret.callLater(() => { 54 | onSuccess.call(thisObject, generateEUI); 55 | }, this); 56 | } 57 | else { 58 | RES.addEventListener(RES.ResourceEvent.ITEM_LOAD_ERROR, onResError, null); 59 | RES.getResByUrl(url, onResGet, this, RES.ResourceItem.TYPE_TEXT); 60 | } 61 | } 62 | } 63 | 64 | declare var generateEUI: { paths: string[], skins: any } -------------------------------------------------------------------------------- /Basic/src/bean/Player.ts: -------------------------------------------------------------------------------- 1 | class Player { 2 | public constructor(type) { 3 | this.type = type; 4 | } 5 | 6 | public userId: number = 2; 7 | public userName: string = 'Ranger'; 8 | public url: string = ''; 9 | public type: string = "b"; 10 | public score: number = 0; 11 | public blood: number = 0; 12 | public isDie: boolean = false; 13 | public comboNum: number = 0; 14 | public highComobNum: number = 0; 15 | public perfect: number = 0; 16 | public good: number = 0; 17 | public miss: number = 0; 18 | } -------------------------------------------------------------------------------- /Basic/src/efinal/App.ts: -------------------------------------------------------------------------------- 1 | class App { 2 | public static W: number = 1270; 3 | public static H: number = 720; 4 | public static IS_DEGUG: boolean = true; 5 | public constructor() { 6 | } 7 | 8 | public static init(container: egret.DisplayObjectContainer): void { 9 | Toast.initRes(container, "resource/efinal/loading/toast-bg.png"); 10 | var rootView = new egret.Sprite(); 11 | rootView.width = container.stage.stageWidth; 12 | rootView.height = container.stage.stageHeight; 13 | App.W = container.stage.stageWidth; 14 | App.H = container.stage.stageHeight; 15 | rootView.x = 0; 16 | rootView.y = 0; 17 | container.addChild(rootView); 18 | SceneManager.init(rootView); 19 | App.IS_DEGUG&&UI.buildEgretLogger(container); 20 | 21 | } 22 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ArrayUtil.ts: -------------------------------------------------------------------------------- 1 | class ArrayUtil { 2 | public static clear(arr: Array) { 3 | arr && (arr.length = 0); 4 | } 5 | } -------------------------------------------------------------------------------- /Basic/src/efinal/BgAutoScorller.ts: -------------------------------------------------------------------------------- 1 | class BgAutoScorller { 2 | constructor(v1, v2,speed) { 3 | this.bg1 = v1; 4 | this.bg2 = v2; 5 | this.speed = speed; 6 | } 7 | private bg1: egret.DisplayObject; 8 | private bg2: egret.DisplayObject; 9 | private bg1Height: number = 0; 10 | private bg2Height: number = 0; 11 | private speed: number = 0; 12 | public update(): void { 13 | if (this.bg1.y >= 0) { 14 | this.bg1.y = -this.bg1.height; 15 | } 16 | if (this.bg2.y >= this.bg2.height) { 17 | this.bg2.y = 0; 18 | } 19 | 20 | this.bg1.y += this.speed; 21 | this.bg2.y += this.speed; 22 | } 23 | 24 | public dispose(): void { 25 | this.bg1 = null; 26 | this.bg2 = null; 27 | } 28 | } -------------------------------------------------------------------------------- /Basic/src/efinal/BilingBiling.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * 闪速效果 3 | */ 4 | class BilingBiling { 5 | public static biling(view, time: number, loopCount: number) { 6 | if (loopCount > 0) { 7 | view.alpha = 0.1; 8 | egret.Tween.get(view).to({ alpha: 1.0, loop: false }, time, egret.Ease.elasticInOut).call( 9 | function () { 10 | this.biling(view, time, --loopCount); 11 | }.bind(this) 12 | ).play(); 13 | } 14 | 15 | } 16 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ByteUtils.ts: -------------------------------------------------------------------------------- 1 | function stringToUtf8ByteArray(a) { 2 | if(!(a&&(typeof a === "string"))){ 3 | return new Uint8Array(0); 4 | } 5 | for (var b = [], c = 0, d = 0; d < a.length; d++) { 6 | var e = a.charCodeAt(d); 7 | 128 > e ? b[c++] = e : (2048 > e ? b[c++] = e >> 6 | 192 : (55296 == (e & 64512) && d + 1 < a.length && 56320 == (a.charCodeAt(d + 1) & 64512) ? (e = 65536 + ((e & 1023) << 10) + (a.charCodeAt(++d) & 1023), b[c++] = e >> 18 | 240, b[c++] = e >> 12 & 63 | 128) : b[c++] = e >> 12 | 224, b[c++] = e >> 6 & 63 | 128), b[c++] = e & 63 | 128) 8 | } 9 | var buf = new Uint8Array(b.length); 10 | for (var i = 0; i < buf.length; i++) { 11 | buf[i] = b[i]; 12 | 13 | } 14 | return buf; 15 | } 16 | function utf8ByteArrayToString (a) { 17 | for (var b = [], c = 0, d = 0; c < a.length;) { 18 | var e = a[c++]; 19 | if (128 > e) b[d++] = String.fromCharCode(e); else if (191 < e && 224 > e) { 20 | var f = a[c++]; 21 | b[d++] = String.fromCharCode((e & 31) << 6 | f & 63) 22 | } else if (239 < e && 365 > e) { 23 | var f = a[c++], g = a[c++], h = a[c++],e:any = ((e & 7) << 18 | (f & 63) << 12 | (g & 63) << 6 | h & 63) - 65536; 24 | b[d++] = String.fromCharCode(55296 + (e >> 10)); 25 | b[d++] = String.fromCharCode(56320 + (e & 1023)) 26 | } else f = a[c++], g = a[c++], b[d++] = String.fromCharCode((e & 15) << 12 | (f & 63) << 6 | g & 63) 27 | } 28 | return b.join("") 29 | } 30 | function str2u8array(str) { 31 | if(str==undefined||(typeof str !== "string")){ 32 | return str; 33 | } 34 | var out = new Uint8Array(str.length*2); 35 | for(var i =0;i>8; 37 | out[i*2+1] = str.charCodeAt(i); 38 | } 39 | return out; 40 | } 41 | function u8array2str(u8array) { 42 | var buf = new Uint16Array(u8array.length/2); 43 | for(var i =0;isrc.x){ 10 | // return (dst.x+dst.width-src.x)* 11 | // } 12 | // } 13 | // // ||dst.x>src.x+src.width 14 | // return 0; 15 | // } 16 | /** 17 | * 检查两个物体在Y轴重叠的百分比 18 | * @return 0.0 ~ 1.0 19 | */ 20 | public static checkPercentage(src: egret.DisplayObject, dst: egret.DisplayObject): number { 21 | if (src.x >= dst.x && src.x < (dst.x + dst.width)) { 22 | //src进入dst一半 至 src被dst完全包含 23 | if ((src.y + src.height) >= dst.y && src.y <= (dst.y + dst.height)) { 24 | if (src.y < dst.y) { 25 | return (src.y + src.height - dst.y) / src.height; 26 | } else if ((src.y + src.height) >= (dst.y + dst.height)) { 27 | return (dst.y + dst.height - src.y) / src.height; 28 | } else { 29 | return 1.0; 30 | } 31 | } 32 | } 33 | return 0; 34 | } 35 | 36 | } -------------------------------------------------------------------------------- /Basic/src/efinal/Delay.ts: -------------------------------------------------------------------------------- 1 | class Delay{ 2 | public static run(func:any,time){ 3 | setTimeout(func,time); 4 | } 5 | } -------------------------------------------------------------------------------- /Basic/src/efinal/DisplayObjectPool.ts: -------------------------------------------------------------------------------- 1 | class DisplayObjectPool { 2 | public constructor() { 3 | } 4 | private pool: Array = []; 5 | public get(creater: Function):any { 6 | for (var i = 0; i < this.pool.length; i++) { 7 | if (this.pool[i].state === 0) { 8 | var o = creater(this.pool[i]); 9 | return o; 10 | } 11 | } 12 | 13 | var ne = creater(); 14 | this.pool.unshift(ne); 15 | return ne; 16 | } 17 | public getAll(): Array { 18 | return this.pool; 19 | } 20 | public destory(o, destoryer: Function) { 21 | if (o == null) { 22 | console.warn("[WARN] NullPointException: Can`t destory null "); 23 | return; 24 | } 25 | for (var i = 0; i < this.pool.length; i++) { 26 | if (this.pool[i] === o) { 27 | destoryer(this.pool[i]); 28 | this.pool[i].state = 0; 29 | return true; 30 | } 31 | } 32 | console.warn("[WARN] Not found the object from pool:" + JSON.stringify(o)); 33 | return false; 34 | } 35 | public destoryAll(destoryer: Function) { 36 | for (var i = 0; i < this.pool.length; i++) { 37 | this.pool[i].visible = false; 38 | destoryer(this.pool[i]); 39 | } 40 | this.pool = []; 41 | } 42 | public getItemByName(name: string): any { 43 | for (var i = 0; i < this.pool.length; i++) { 44 | if (this.pool[i].name === name) { 45 | return this.pool[i]; 46 | } 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Basic/src/efinal/FileLoader.ts: -------------------------------------------------------------------------------- 1 | class FileLoader { 2 | 3 | public constructor() { 4 | } 5 | /** 6 | * 下载文件资源 7 | * @param uri ex:"resource/map/desert.tmx" 8 | * @param callback ex:callback(data:String) 9 | */ 10 | public static load(uri: string, callback: Function) { 11 | 12 | var urlLoader: egret.URLLoader = new egret.URLLoader(); 13 | urlLoader.dataFormat = egret.URLLoaderDataFormat.TEXT; 14 | urlLoader.addEventListener(egret.Event.COMPLETE, function (event: egret.Event): void { 15 | callback(event.target.data); 16 | }, uri); 17 | urlLoader.load(new egret.URLRequest(uri)); 18 | } 19 | /** 20 | * 下载文件资源 21 | * @param uri ex:"resource/map/desert.tmx" 22 | * @param callback ex:callback(xml:egret.XML) 23 | */ 24 | 25 | public static loadXML(uri: string, callback: Function) { 26 | var urlLoader: egret.URLLoader = new egret.URLLoader(); 27 | urlLoader.dataFormat = egret.URLLoaderDataFormat.TEXT; 28 | var fc = function (event: egret.Event): void { 29 | callback(egret.XML.parse(event.target.data)); 30 | urlLoader.removeEventListener(egret.Event.COMPLETE, fc, uri); 31 | }; 32 | urlLoader.addEventListener(egret.Event.COMPLETE, fc, uri); 33 | urlLoader.load(new egret.URLRequest(uri)); 34 | } 35 | 36 | } -------------------------------------------------------------------------------- /Basic/src/efinal/GameData.ts: -------------------------------------------------------------------------------- 1 | // TypeScript file 2 | class GameData { 3 | static env: string = "fluttergo"; 4 | static userID: number = MathUtils.random(100000000); 5 | static userName:string = GameData.userID+""; 6 | static MAX_ROOM_USER_COUNT: number = 10; 7 | static FPS: number = 5; 8 | static token: string = "xxx" 9 | static gameID: number = 0; 10 | } -------------------------------------------------------------------------------- /Basic/src/efinal/Handler.ts: -------------------------------------------------------------------------------- 1 | class Handler { 2 | 3 | private listenerMap: Object = {}; 4 | private eventCacheQueue = []; 5 | private static instance = new Handler(); 6 | public static getInstance(): Handler { 7 | return Handler.instance; 8 | } 9 | private callback(cb, data) { 10 | if (cb && cb.that) { 11 | cb.call(cb.that, data); 12 | } else { 13 | cb && cb(data); 14 | } 15 | } 16 | public receive(key: string, callback: Function) { 17 | console.debug(`[Handler] reg receiver %s `, key) 18 | if (!this.listenerMap[key]) { 19 | this.listenerMap[key] = []; 20 | } 21 | this.listenerMap[key].push(callback); 22 | for (var j = 0; j < this.eventCacheQueue.length; j++) { 23 | var ekey = this.eventCacheQueue[j].key; 24 | if (ekey == key) { 25 | // console.debug("found cache : %s , len: %d", key, this.eventCacheQueue.length); 26 | for (var i = 0; i < this.listenerMap[key].length; i++) { 27 | var cb = this.listenerMap[key][i]; 28 | this.callback(cb, this.eventCacheQueue[j]); 29 | } 30 | this.eventCacheQueue.splice(j, 1); 31 | // console.debug("destroy cache : %s , len: %d", key, this.eventCacheQueue.length); 32 | j = 0; 33 | } 34 | } 35 | 36 | } 37 | 38 | public unReceive(key: string, callback?: Function) { 39 | if (!this.listenerMap[key]) return; 40 | if (callback) { 41 | for (var i = 0; i < this.listenerMap[key].length; i++) { 42 | if (this.listenerMap[key][i] == callback) { 43 | console.debug(`[Handler] remove Receiver with a callbck %s `, key) 44 | this.listenerMap[key].splice(i, 1) 45 | } 46 | } 47 | } else { 48 | console.debug(`[Handler] remove all Receiver at key: %s `, key) 49 | delete this.listenerMap[key]; 50 | } 51 | 52 | } 53 | private pushCache(key: any, data?: any) { 54 | console.debug("push cache: %s->%s", key, data); 55 | this.eventCacheQueue.push({ key: key, data: data }); 56 | } 57 | 58 | public dispatchEvent(key: any, data?: any) { 59 | if (!this.listenerMap[key]) { 60 | this.pushCache(key, data); 61 | return 62 | }; 63 | var isNeedCache = true; 64 | for (var i = 0; i < this.listenerMap[key].length; i++) { 65 | if (this.listenerMap[key][i]) { 66 | console.debug(`dispatchEvent %s success`, key) 67 | this.callback(this.listenerMap[key][i], { type: key, data: data }); 68 | isNeedCache = false; 69 | } 70 | } 71 | if (isNeedCache) { 72 | this.pushCache(key, data); 73 | } 74 | } 75 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ImageLoader.ts: -------------------------------------------------------------------------------- 1 | class ImageLoader { 2 | public constructor() { 3 | } 4 | /** 5 | * 从缓存中加载图片,如果缓存中没有,则下载图片并放入缓存,再显示 6 | */ 7 | public static showAsync(image: egret.Bitmap, name: string, x?: number, y?: number, w?: number, h?: number) { 8 | RES.getResAsync(name, function (result: egret.Texture) { 9 | image.texture = result; 10 | var index = name.indexOf("#"); 11 | if (index >= 0) {//读取子图,如果没有则创建再读取 12 | var subkey = ""; 13 | subkey = name.substr(index + 1); 14 | name = name.substr(0, index); 15 | if (null == result['subTexture']) { 16 | result['subTexture'] = new egret.SpriteSheet(result); 17 | 18 | } 19 | var spriteSheet: egret.SpriteSheet = result['subTexture']; 20 | if (null == spriteSheet.getTexture(subkey)) { 21 | spriteSheet.createTexture(subkey, x, y, w, h); 22 | } 23 | image.texture = spriteSheet.getTexture(subkey) 24 | } else { 25 | image.texture = result; 26 | } 27 | 28 | }, image); 29 | } 30 | /** 31 | * 从缓存中加载图片,如果缓存中没有,加载失败 32 | */ 33 | public static show(image: egret.Bitmap, name: string) { 34 | image.texture = RES.getRes(name); 35 | } 36 | public static showAndCreate(container: egret.DisplayObjectContainer, name: string, x?: number, y?: number, isAlignBottom?: boolean) { 37 | var texture = RES.getRes(name); 38 | 39 | if (null == texture) { 40 | console.warn("[WARN] Not be found image:'" + name + "'"); 41 | return; 42 | } 43 | var bitmap = new egret.Bitmap(texture); 44 | bitmap.x = x; 45 | // bitmap.y = y; 46 | bitmap.y = isAlignBottom ? (y - texture.textureHeight + texture.textureWidth) : y; 47 | bitmap.width = texture.textureWidth; 48 | bitmap.height = texture.textureHeight; 49 | // console.log('[INFO] showAndCreate image: ' + name +" bitmap.x:"+bitmap.x+","+bitmap.y +" size:"+bitmap.width+","+bitmap.height); 50 | container.addChild(bitmap); 51 | return bitmap; 52 | } 53 | /** 54 | * 加载远程服务器上的资源 55 | */ 56 | public static showAsyncByCrossUrl(image: egret.DisplayObjectContainer, url: string, x?: number, y?: number, w?: number, h?: number) { 57 | // RES.getResByUrl(url:string,compFunc:Function,thisObject:any,type:string=””):void 58 | var loader: egret.ImageLoader = new egret.ImageLoader() 59 | loader.crossOrigin = "anonymous"; 60 | var callback = function (e: egret.Event) { 61 | var bitmapData: egret.BitmapData = (e.target).data; 62 | var texture = new egret.Texture(); 63 | texture.bitmapData = bitmapData; 64 | var bitmap = new egret.Bitmap(texture); 65 | bitmap.x = x || 0; 66 | bitmap.y = y || 0; 67 | bitmap.width = w || texture.textureWidth; 68 | bitmap.height = h || texture.textureWidth; 69 | image.addChild(bitmap); 70 | }; 71 | loader.once(egret.Event.COMPLETE, callback, this); 72 | loader.load(url); 73 | } 74 | 75 | 76 | } -------------------------------------------------------------------------------- /Basic/src/efinal/LinkList.ts: -------------------------------------------------------------------------------- 1 | class LinkList { 2 | 3 | // var Node = function (element) {        //新元素构造 4 | // this.element = element; 5 | // this.next = null; 6 | // }; 7 | 8 | // var length = 0; 9 | // var head = null; 10 | 11 | // this.append = function (element) { 12 | // var node = new Node(element);        //构造新的元素节点 13 | // var current; 14 | // if (head === null) {             //头节点为空时 当前结点作为头节点 15 | // head = node; 16 | // } else { 17 | // current = head;               18 | // while (current.next) {          //遍历,直到节点的next为null时停止循环,当前节点为尾节点 19 | // current = current.next; 20 | // } 21 | // current.next = node;            //将尾节点指向新的元素,新元素作为尾节点 22 | // } 23 | // length++;                    //更新链表长度 24 | // }; 25 | // this.removeAt = function (position) { 26 | // if (position > -1 && position < length) { 27 | // var current = head; 28 | // var index = 0; 29 | // var previous; 30 | // if (position == 0) { 31 | // head = current.next; 32 | // } else { 33 | // while (index++ < position) { 34 | // previous = current; 35 | // current = current.next; 36 | // } 37 | // previous.next = current.next; 38 | // } 39 | // length--; 40 | // return current.element; 41 | // } else { 42 | // return null; 43 | // } 44 | // }; 45 | // this.insert = function (position, element) { 46 | // if (position > -1 && position <= length) {        //校验边界 47 | // var node = new Node(element);         48 | // current = head; 49 | // var index = 0; 50 | // var previous; 51 | // if (position == 0) {                    //作为头节点,将新节点的next指向原有的头节点。 52 | // node.next = current; 53 | // head = node;                        //新节点赋值给头节点 54 | // } else { 55 | // while (index++ < position) { 56 | // previous = current; 57 | // current = current.next; 58 | // }                                //遍历结束得到当前position所在的current节点,和上一个节点 59 | // previous.next = node;                    //上一个节点的next指向新节点 新节点指向当前结点,可以参照上图来看 60 | // node.next = current; 61 | // } 62 | // length++; 63 | // return true; 64 | // } else { 65 | // return false; 66 | // } 67 | 68 | // }; 69 | // this.toString = function () { 70 | // var current = head; 71 | // var string = ''; 72 | // while (current) { 73 | // string += ',' + current.element; 74 | // current = current.next; 75 | // } 76 | // return string; 77 | // }; 78 | // this.indexOf = function (element) { 79 | // var current = head; 80 | // var index = -1; 81 | // while (current) { 82 | // if (element === current.element) {            //从头节点开始遍历 83 | // return index; 84 | // } 85 | // index++; 86 | // current = current.next; 87 | // } 88 | // return -1; 89 | // }; 90 | // this.getLength = function () { 91 | // return length; 92 | // } 93 | 94 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ListViewImageItem.ts: -------------------------------------------------------------------------------- 1 | class ListViewItemBase extends eui.ItemRenderer { 2 | public constructor() { 3 | super(); 4 | //自定义的 ItemRenderer 5 | this.touchChildren = true; 6 | } 7 | protected labelDisplay: eui.Label; 8 | protected partAdded(partName: string, instance: any): void { 9 | super.partAdded(partName, instance); 10 | this.selected = true; 11 | instance.addEventListener(egret.TouchEvent.TOUCH_TAP, function (e: egret.Event) { 12 | 13 | instance.name = partName; 14 | if (partName === "" || (instance.touchEnabled === false)) { 15 | } else { 16 | instance.addEventListener(egret.TouchEvent.TOUCH_TAP, function (e: egret.TouchEvent) { 17 | return this.onItemClick(partName, instance); 18 | }, this); 19 | } 20 | }, this); 21 | 22 | } 23 | protected childrenCreated(): void { 24 | super.childrenCreated(); 25 | } 26 | protected dataChanged(): void { 27 | this.labelDisplay.text = this.data; 28 | console.log('[List DataChanged] : ' + JSON.stringify(this.data)); 29 | } 30 | protected onItemClick(viewName: string, view: any): void { 31 | console.log('[List OnItemClick] : ' + this.itemIndex + " ->" + viewName); 32 | 33 | } 34 | 35 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ListViewUtil.ts: -------------------------------------------------------------------------------- 1 | class ListViewUtil { 2 | 3 | public static initListView(root: egret.DisplayObjectContainer, listview: eui.List, sourceArr: any[], itemClass: any) { 4 | //用ArrayCollection包装 5 | var myCollection: eui.ArrayCollection = new eui.ArrayCollection(sourceArr); 6 | 7 | listview.dataProvider = myCollection; 8 | listview.useVirtualLayout = true; 9 | listview.itemRenderer = itemClass; 10 | //设置listview容器本身不可点击 11 | listview.touchEnabled = false; 12 | // //创建一个 Scroller 13 | var scroller = new eui.Scroller(); 14 | scroller.height = listview.height; 15 | scroller.width = listview.width; 16 | scroller.viewport = listview; 17 | // scroller.horizontalScrollBar.autoVisibility = false; 18 | // scroller.width = 200; 19 | // scroller.height = 200; 20 | scroller.x = listview.x; 21 | scroller.y = listview.y 22 | scroller.name = "scroller"; 23 | // scroller.scrollPolicyV = eui.ScrollPolicy.AUTO; 24 | // scroller.scrollPolicyH = eui.ScrollPolicy.AUTO; 25 | root.addChild(scroller); 26 | } 27 | public static refreshData(listView: any,newDataList: Array) { 28 | (listView.dataProvider).source = newDataList; 29 | (listView.dataProvider).refresh(); 30 | } 31 | } -------------------------------------------------------------------------------- /Basic/src/efinal/Loading.ts: -------------------------------------------------------------------------------- 1 | class Loading extends egret.Sprite { 2 | public constructor(w, h) { 3 | super(); 4 | this.createView(w, h) 5 | } 6 | private textField: egret.TextField; 7 | private context: egret.DisplayObjectContainer; 8 | 9 | private textField_power: egret.TextField; 10 | 11 | 12 | private uiContainer: egret.DisplayObjectContainer; 13 | 14 | private logoUrl = "resource/assets/loading_logo.png"; 15 | 16 | 17 | private w: number; 18 | 19 | private h: number; 20 | 21 | private createView(w, h): void { 22 | this.w = w; 23 | this.h = h; 24 | 25 | this.textField = new egret.TextField(); 26 | this.textField.y = 500; 27 | this.textField.textColor = 0xCCCCCC; 28 | this.textField.size = 46; 29 | this.textField.width = this.w; 30 | this.textField.height = 100; 31 | this.textField.fontFamily = "Black"; 32 | this.textField.textAlign = "center"; 33 | this.textField.text = "加载中…"; 34 | 35 | 36 | 37 | this.textField_power = new egret.TextField(); 38 | this.textField_power.text = "."; 39 | this.textField_power.textColor = 0xCCCCCC; 40 | this.textField_power.size = 80; 41 | this.textField_power.fontFamily = "White"; 42 | this.textField_power.textAlign = "center"; 43 | this.textField_power.x = this.w * 0.5; 44 | this.textField_power.y = this.h * 0.8; 45 | egret.Tween.get(this.textField_power, { loop: true }) 46 | .to({ rotation: 360 }, 800, egret.Ease.cubicIn).play(); 47 | 48 | var bg: egret.Shape = new egret.Shape(); 49 | 50 | bg.width = this.w; 51 | bg.height = this.h; 52 | bg.x = (this.w - bg.width) / 2; 53 | bg.y = (this.h - bg.height) / 2; 54 | bg.graphics.beginFill(0x333333, 0.8); 55 | bg.graphics.drawRect(0, 0, this.w, this.h); 56 | bg.graphics.endFill(); 57 | this.addChild(bg); 58 | 59 | 60 | this.addChild(this.textField); 61 | 62 | this.addChild(this.textField_power); 63 | this.touchEnabled = true; 64 | this.addEventListener(egret.TouchEvent.TOUCH_TAP, function () { 65 | console.log("touch loading"); 66 | }, this); 67 | } 68 | 69 | public setProgress(current, total): void { 70 | var num: number = Math.floor((current / total) * 100); 71 | this.textField.text = "加载中…" + num + "%"; 72 | } 73 | public static create(context: egret.DisplayObjectContainer): Loading { 74 | var loading: any = new Loading(context.width, context.height); 75 | loading.context = context; 76 | return loading; 77 | } 78 | public isShow: boolean = false; 79 | public show() { 80 | if (this.isShow) { 81 | console.log('[INFO] loading hande be show'); 82 | return; 83 | } 84 | this.isShow = true; 85 | this.context.addChild(this); 86 | } 87 | public close() { 88 | if (!this.isShow) { 89 | console.log('[INFO] loading is not showoing'); 90 | return; 91 | } 92 | this.isShow = false; 93 | this.context.removeChild(this); 94 | } 95 | 96 | } 97 | -------------------------------------------------------------------------------- /Basic/src/efinal/MathUtils.ts: -------------------------------------------------------------------------------- 1 | 2 | // 微信上的适配 3 | // 其他端可以不用那么麻烦 showAll原有的尺寸正常缩放 4 | function FakeRandom(seed) { 5 | this.next = function (range) { 6 | range = range || 100; 7 | var min = 0; 8 | seed = (seed * 9301 + 49297) % 233280; 9 | var rnd = seed / 233280.0; 10 | return Math.floor(min + rnd * (range - min)); 11 | } 12 | } 13 | 14 | class MathUtils { 15 | public static Random = new FakeRandom(new Date().getMilliseconds()); 16 | public static random(range?: number): number { 17 | if (range < 0) { 18 | range = 0; 19 | } 20 | return MathUtils.Random.next(range); 21 | } 22 | 23 | public static max(a: number, b: number) { 24 | 25 | return a > b ? a : b; 26 | } 27 | public static min(a: number, b: number) { 28 | return a < b ? a : b; 29 | } 30 | } -------------------------------------------------------------------------------- /Basic/src/efinal/Music.ts: -------------------------------------------------------------------------------- 1 | class Music { 2 | // appear_mp3: "appear_mp3", 3 | // bg_mp3: "bg_mp3", 4 | // click_mp3: "click_mp3", 5 | // die_mp3: "die_mp3", 6 | // draw_mp3: "draw_mp3", 7 | // explode_mp3: "explode_mp3", 8 | // get_mp3: "get_mp3", 9 | // lay_mp3: "lay_mp3", 10 | // save_mp3: "save_mp3", 11 | // start_mp3: " start_mp3", 12 | // win_mp3: "win_mp3", 13 | public static music = { 14 | } 15 | public static isMute = false; 16 | public static play(name, isLoop: boolean = false): SoundBase { 17 | if (Music.music[name] == null) { 18 | Music.music[name] = new SoundBase(name); 19 | } 20 | if (isLoop == true) { 21 | Music.music[name].setLoop(true); 22 | } 23 | Music.music[name].play(); 24 | return Music.music[name]; 25 | } 26 | public static stop(name) { 27 | Music.music[name].stop(); 28 | } 29 | } -------------------------------------------------------------------------------- /Basic/src/efinal/NetStateBar.ts: -------------------------------------------------------------------------------- 1 | class NetStateBar extends BaseScene implements eui.UIComponent { 2 | public static Connect: string = "connect"; 3 | public static Disconnect: string = "disconnect"; 4 | public static Slow: string = "slow"; 5 | public constructor() { 6 | super(); 7 | console.log('[INFO] NetStateBar'); 8 | } 9 | public state(state: string) { 10 | this.currentState = state; 11 | } 12 | 13 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ResourceUtils.ts: -------------------------------------------------------------------------------- 1 | class ResourceUtils { 2 | /** 3 | * 根据name关键字创建一个Bitmap对象。name属性请参考resources/resource.json配置文件的内容。 4 | */ 5 | public static createBitmapByName(name:string):egret.Bitmap { 6 | var result:egret.Bitmap = new egret.Bitmap(); 7 | 8 | // 小心, RES.getRes(name)要是找不到,并不会报错 9 | var texture:egret.Texture = RES.getRes(name); 10 | result.texture = texture; 11 | return result; 12 | } 13 | 14 | /** 15 | * 根据name关键字创建一个Bitmap对象。此name 是根据TexturePacker 组合成的一张位图 16 | */ 17 | public static createBitmapFromSheet(name:string, sheetName:string = "gameRes"):egret.Bitmap { 18 | var sheet:egret.SpriteSheet = RES.getRes(sheetName); 19 | var texture:egret.Texture = sheet.getTexture(name); 20 | var result:egret.Bitmap = new egret.Bitmap(); 21 | result.texture = texture; 22 | return result; 23 | } 24 | 25 | public static getTextureFromSheet(name:string, sheetName:string = "gameRes"):egret.Texture { 26 | var sheet:egret.SpriteSheet = RES.getRes(sheetName); 27 | var result:egret.Texture = sheet.getTexture(name); 28 | return result; 29 | } 30 | } -------------------------------------------------------------------------------- /Basic/src/efinal/Tips.ts: -------------------------------------------------------------------------------- 1 | class Tips { 2 | private step = 0; 3 | private root; 4 | private stepViewNames: Array = []; 5 | public show(root: BaseScene, stepViewName: Array) { 6 | this.stepViewNames = stepViewName; 7 | this.root = root; 8 | root.findChild(stepViewName[0]).visible = true; 9 | root.findChild(stepViewName[1]).visible = true; 10 | for (var i = 2; i < this.stepViewNames.length; i++) { 11 | root.findChild(stepViewName[i]).visible = false; 12 | } 13 | } 14 | public nextStep() { 15 | if (this.root === null) { 16 | console.warn("please call func 'Tips.show(root,stepViewNameArray)' as the first step"); 17 | return false; 18 | } 19 | this.step++; 20 | if (this.step+1 > this.stepViewNames.length-1) {// next step is exit tips ,-1 = root 21 | this.root.findChild(this.stepViewNames[0]).visible = false; 22 | return true; 23 | } else { 24 | this.root.findChild(this.stepViewNames[this.step]).visible = false; 25 | this.root.findChild(this.stepViewNames[this.step+1]).visible = true; 26 | return false; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Basic/src/efinal/Toast.ts: -------------------------------------------------------------------------------- 1 | class Toast extends egret.DisplayObjectContainer { 2 | 3 | public static init(cont: egret.DisplayObjectContainer, txtrToastBg: egret.Texture): void { 4 | console.log("Toast.init", txtrToastBg); 5 | this._cont = cont; 6 | this._txtrToastBg = txtrToastBg; 7 | } 8 | public static initRes(cont: egret.DisplayObjectContainer, img: string): void { 9 | console.log("Toast.init", img); 10 | this._cont = cont; 11 | 12 | var loader: egret.ImageLoader = new egret.ImageLoader(); 13 | //添加加载完成侦听 14 | loader.addEventListener(egret.Event.COMPLETE, function (event: egret.Event): void { 15 | var loader: egret.ImageLoader = event.target; 16 | //获取加载到的纹理对象 17 | var bitmapData: egret.BitmapData = loader.data; 18 | //创建纹理对象 19 | var texture = new egret.Texture(); 20 | texture.bitmapData = bitmapData; 21 | this._txtrToastBg = texture; 22 | //创建 Bitmap 进行显示 23 | // this.addChild(new egret.Bitmap(texture)); 24 | }, this); 25 | //开始加载 26 | loader.load(img); 27 | } 28 | 29 | public static show(msg: string): void { 30 | if (this._cont) { 31 | var toast: Toast = new Toast(msg, this._cont.stage.stageWidth, this._cont.stage.stageHeight); 32 | this._cont.addChild(toast); 33 | } 34 | } 35 | 36 | private static _txtrToastBg: egret.Texture; 37 | private static _cont: egret.DisplayObjectContainer; 38 | 39 | constructor(msg: string, w: number, h: number) { 40 | super(); 41 | 42 | // console.log("Toast:", msg); 43 | 44 | var bg: egret.Bitmap = new egret.Bitmap(Toast._txtrToastBg); 45 | this.x = w * .5; 46 | this.y = h * .85; 47 | this.addChild(bg); 48 | bg.$anchorOffsetX = bg.width/2; 49 | // bg.$anchorOffsetY = bg.height/2; 50 | 51 | var tx: egret.TextField = new egret.TextField; 52 | tx.multiline = true; 53 | tx.size = 30; 54 | tx.bold = true; 55 | tx.textColor = 0xFFFFFF; 56 | tx.stroke = 6; 57 | tx.strokeColor = 0; 58 | tx.text = msg; 59 | tx.fontFamily = "微软雅黑"; 60 | tx.textAlign = egret.HorizontalAlign.CENTER; 61 | tx.width = w * 1.0; 62 | tx.x = bg.x; 63 | tx.y = bg.y+tx.size/10; 64 | tx.anchorOffsetX = tx.width/2; 65 | 66 | this.addChild(tx); 67 | 68 | bg.height = 12 + tx.height; 69 | 70 | 71 | this.alpha = 0; 72 | 73 | egret.Tween.get(this) 74 | .to({ alpha: 1 }, 200, egret.Ease.quintOut) 75 | //.to( { scaleX: 1.2, scaleY: 1.2 }, 100, egret.Ease.quintOut ) 76 | //.call( ()=>{ console.log( "tween tween tween" ); } ) 77 | //.to( { scaleX: 1.0, scaleY: 1.0 }, 300, egret.Ease.quintIn ) 78 | .wait(600) 79 | .to({ alpha: 0 }, 200, egret.Ease.quintIn).call(() => { /* y: this.y - 50, */ 80 | if (this.parent) { 81 | this.parent.removeChild(this); 82 | } 83 | }); 84 | } 85 | } -------------------------------------------------------------------------------- /Basic/src/efinal/UI.ts: -------------------------------------------------------------------------------- 1 | class UI { 2 | 3 | private static LOGGER: any = console; 4 | 5 | public static printLog(par?: any) { 6 | UI.LOGGER.info('[INFO] : ' + par); 7 | } 8 | 9 | public static setLogger(logger) { 10 | UI.LOGGER = logger; 11 | } 12 | public static buildEgretLogger(root: egret.DisplayObjectContainer) { 13 | var text: eui.Label = new eui.Label(); 14 | text.touchEnabled = false; 15 | text.alpha = 0.8; 16 | text.textColor = 0x98e165; 17 | text.name = "Log"; 18 | var logger: any = text; 19 | logger.info = function (msg) { 20 | logger.text += msg; 21 | logger.text += "\r\n"; 22 | if (logger.text > 1024) { 23 | logger.text.substr(512, logger.text.length); 24 | } 25 | } 26 | root.addChild(logger); 27 | UI.setLogger(logger); 28 | } 29 | } -------------------------------------------------------------------------------- /Basic/src/efinal/UmspManager.ts: -------------------------------------------------------------------------------- 1 | class UmspManager { 2 | public constructor() { 3 | } 4 | 5 | public clearUser() { 6 | LocalStore_Clear(); 7 | } 8 | public static engine: UmspClient; 9 | public static init() { 10 | UmspManager.engine = new UmspClient(); 11 | UI.printLog("============================================================="); 12 | UI.printLog("=========== " + UmspManager.engine.getVersion() + " ====================="); 13 | UI.printLog("================ Envir: " + GameData.env + " ======================="); 14 | UI.printLog("============================================================="); 15 | } 16 | public static login(rsp: Function, networkListener: any) { 17 | UmspManager.init(); 18 | UmspManager.engine.login(GameData.userID, GameData.token, GameData.gameID, rsp, networkListener, GameData.env); 19 | UI.printLog("userID: " + GameData.userID + ",token:" + GameData.token + ",gameID:" + GameData.gameID); 20 | } 21 | 22 | 23 | public static match(rsp: Function, roomUserChangedListener: Function, networkListener: any, roomMsgListener: Function) { 24 | var matchOption = new Match(2); 25 | matchOption.maxUserCount = GameData.MAX_ROOM_USER_COUNT; 26 | matchOption.roomName = "开房"; 27 | matchOption.roomTag = ""; 28 | UI.printLog("matchOption: " + JSON.stringify(matchOption)); 29 | UmspManager.engine.match(rsp, roomUserChangedListener,networkListener ,roomMsgListener, matchOption ); 30 | } 31 | 32 | 33 | public static send(cmd:string,content: string) { 34 | if (!content) return; 35 | UmspManager.engine&&UmspManager.engine.broadcast("#"+cmd+"#"+ content); 36 | } 37 | public static logout() { 38 | UmspManager.engine&&UmspManager.engine.disConnect(); 39 | } 40 | } -------------------------------------------------------------------------------- /Basic/src/efinal/ui/Dialog.ts: -------------------------------------------------------------------------------- 1 | class Dialog extends eui.Component implements eui.UIComponent { 2 | public OK: eui.Button; 3 | public Cancle: eui.Button; 4 | public title: eui.Label; 5 | public message: eui.Label; 6 | public img: eui.Image; 7 | 8 | 9 | public constructor() { 10 | super(); 11 | 12 | } 13 | 14 | protected partAdded(partName: string, instance: any): void { 15 | super.partAdded(partName, instance); 16 | console.log('[INFO] partAdded'); 17 | 18 | 19 | } 20 | 21 | protected childrenCreated(): void { 22 | super.childrenCreated(); 23 | console.log('[INFO] childrenCreated'); 24 | } 25 | public show(context: egret.DisplayObjectContainer, message: string, OKListener?: Function, title?: string, cancleListener?: Function) { 26 | context.addChild(this); 27 | message && (this.message.text = message); 28 | title && (this.title.text = title); 29 | this.setOKListener(OKListener); 30 | this.setCancleListener(cancleListener); 31 | return this; 32 | 33 | } 34 | public hide() { 35 | this.parent && this.parent.removeChild(this); 36 | } 37 | public setOKListener(cb) { 38 | this.OK.addEventListener(egret.TouchEvent.TOUCH_TAP, function (e: egret.TouchEvent) { 39 | this.hide(); 40 | return cb&&cb(); 41 | }.bind(this), this.OK); 42 | } 43 | public setCancleListener(cb) { 44 | this.Cancle.addEventListener(egret.TouchEvent.TOUCH_TAP, function (e: egret.TouchEvent) { 45 | this.hide(); 46 | return cb&&cb(); 47 | }.bind(this), this.OK); 48 | } 49 | } -------------------------------------------------------------------------------- /Basic/src/efinal/util/AnimaUtil.ts: -------------------------------------------------------------------------------- 1 | class AnimaUtil { 2 | public static showMoive(frameName: string, container: egret.DisplayObjectContainer, playerCompleteCallback?: Function, isRemoveAfterComplete?: boolean, isLoop?: boolean, x?, y?, width?, high?):egret.MovieClip { 3 | var BombData = RES.getRes(frameName + "_mc_json"); 4 | var BombTxtr = RES.getRes(frameName + "_tex_png"); 5 | var mcFactory: egret.MovieClipDataFactory = new egret.MovieClipDataFactory(BombData, BombTxtr); 6 | var behavior2 = new egret.MovieClip(mcFactory.generateMovieClipData(frameName)); 7 | behavior2.x = x ? x : 0; 8 | behavior2.y = y ? y : 0; 9 | behavior2.width = width ? width : container.width; 10 | behavior2.height = high ? high : container.height; 11 | behavior2.anchorOffsetX = -1 * behavior2.width / 2; 12 | behavior2.anchorOffsetY = -1 * behavior2.height / 2; 13 | behavior2.name = container ? container.name : frameName; 14 | container && container.addChild(behavior2); 15 | behavior2.addEventListener(isLoop ? egret.Event.LOOP_COMPLETE : egret.Event.COMPLETE, function (e: egret.Event): void { 16 | console.log('[INFO] loop con'); 17 | if (isRemoveAfterComplete && isLoop == false) { 18 | container && container.removeChild(behavior2); 19 | } 20 | playerCompleteCallback && playerCompleteCallback(frameName); 21 | }, behavior2); 22 | behavior2.gotoAndPlay(0, isLoop ? -1 : 1); 23 | return behavior2; 24 | } 25 | } -------------------------------------------------------------------------------- /Basic/src/efinal/util/JSUtil.ts: -------------------------------------------------------------------------------- 1 | class JSUtil { 2 | public constructor() { 3 | } 4 | public static isArray(value) { 5 | if (typeof Array.isArray === "function") { 6 | return Array.isArray(value); 7 | } else { 8 | return Object.prototype.toString.call(value) === "[object Array]"; 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /Basic/src/efinal/util/UriUtil.ts: -------------------------------------------------------------------------------- 1 | class UriUtil { 2 | public constructor() { 3 | } 4 | public static getRequestPars(): Object { 5 | var url = location.search; //获取url中"?"符后的字串 6 | var theRequest = new Object(); 7 | if (url.indexOf("?") != -1) { 8 | var str: string = url.substr(1); 9 | var strs = str.split("&"); 10 | for (var i = 0; i < strs.length; i++) { 11 | theRequest[strs[i].split("=")[0]] = decodeURIComponent(strs[i].split("=")[1]); 12 | } 13 | } 14 | return theRequest; 15 | } 16 | } -------------------------------------------------------------------------------- /Basic/src/scene/Game.ts: -------------------------------------------------------------------------------- 1 | class Game extends BaseScene implements eui.UIComponent { 2 | private that: any = this; 3 | private loading: Loading; 4 | private xy: eui.Label; 5 | 6 | private vj: VirtualJoystick = new VirtualJoystick(); //虚拟摇杆 7 | 8 | 9 | private player: egret.DisplayObject; //人物 10 | private speedX = 0; //人物移动速度 11 | private speedY = 0; 12 | private speed = 10; 13 | 14 | 15 | public constructor() { 16 | super(); 17 | } 18 | public menuAnimation: egret.tween.TweenGroup; 19 | 20 | public onCreated() { 21 | super.onCreated(); 22 | this.loading = Loading.create(this); 23 | // this.addChild(this.vj); 24 | // this.vj.addEventListener("vj_start", this.onStart, this); 25 | // this.vj.addEventListener("vj_move", this.onChange, this); 26 | // this.vj.addEventListener("vj_end", this.onEnd, this); 27 | } 28 | 29 | 30 | public onClick(name: string, v: egret.DisplayObject) { 31 | if (name == "n1") { 32 | var xy = (
this.parent).randomMove(); 33 | 34 | Toast.show("随机传送到(" + xy.x + "," + xy.y + ")"); 35 | this.xy.text = xy.x + "," + xy.y; 36 | } else if (name == "n2") { 37 | var xy = (
this.parent).goSafeArea(); 38 | this.xy.text = xy.x + "," + xy.y; 39 | Toast.show("回程(" + xy.x + "," + xy.y + ")"); 40 | }else{ 41 | SceneManager.back(); 42 | } 43 | 44 | return true; 45 | } //摇杆启动,人物开始根据摇杆移动 46 | private onStart() { 47 | this.addEventListener(egret.Event.ENTER_FRAME, this.onEnterFrame, this); 48 | } 49 | 50 | //触摸摇杆的角度改变,人物的移动速度方向也随之改变 51 | private onChange(e: egret.Event) { 52 | var angle = e.data; 53 | // this.speedX = Math.cos(angle) * this.speed; 54 | // this.speedY = Math.sin(angle) * this.speed; 55 | } 56 | 57 | //停止摇杆,人物停止移动 58 | private onEnd() { 59 | this.removeEventListener(egret.Event.ENTER_FRAME, this.onEnterFrame, this); 60 | } 61 | 62 | //每帧更新,人物移动 63 | private onEnterFrame() { 64 | // this.player.x += this.speedX; 65 | // this.player.y += this.speedY; 66 | } 67 | } -------------------------------------------------------------------------------- /Basic/src/scene/UIChrSel.ts: -------------------------------------------------------------------------------- 1 | class UIChrSel extends BaseScene { 2 | public g_chrsel: eui.Group; 3 | public i_chrsel: eui.Image; 4 | public t_game_name: eui.Label; 5 | public g_player_info: eui.Group; 6 | public et_player_name: eui.EditableText; 7 | public b_player_warrior: eui.Button; 8 | public b_player_wizard: eui.Button; 9 | public b_player_taoist: eui.Button; 10 | public b_player_woman: eui.Button; 11 | public b_player_man: eui.Button; 12 | public b_player_sumbit: eui.Button; 13 | public g_player_apparence: eui.Group; 14 | public t_player_name1: eui.Label; 15 | public t_player_job1: eui.Label; 16 | public t_player_level1: eui.Label; 17 | public t_player_name0: eui.Label; 18 | public t_player_job0: eui.Label; 19 | public t_player_level0: eui.Label; 20 | public b_start: eui.Button; 21 | 22 | 23 | public constructor() { 24 | super(); 25 | } 26 | public onShow(): void { 27 | this.showPlayer(this.ApparenceMap[this.selecIndexSex][this.selecIndexJob]); 28 | Music.play("sellect-loop2_wav", true); 29 | } 30 | public onHide() { 31 | Music.stop("sellect-loop2_wav"); 32 | } 33 | private ApparenceMap = [ 34 | [ 35 | ["ChrSel_warrior_rise", "ChrSel_warrior", "ChrSel_rise"], 36 | ["ChrSel_wizard_rise", "ChrSel_wizard", "ChrSel_rise"], 37 | ["ChrSel_Taoist_rise", "ChrSel_Taoist", "ChrSel_rise"], 38 | ], 39 | [ 40 | ["ChrSel_warrior_rise_women", "ChrSel_warrior_woman", "ChrSel_rise"], 41 | ["ChrSel_wizard_rise_women", "ChrSel_wizard_women", "ChrSel_rise"], 42 | ["ChrSel_Taoist_rise_women", "ChrSel_Taoist_women", "ChrSel_rise"], 43 | ] 44 | ] 45 | 46 | private showPlayer(animaArray) { 47 | this.g_player_apparence.removeChildren(); 48 | var apparence = AnimaUtil.showMoive(animaArray[0], this.g_player_apparence, function () { 49 | AnimaUtil.showMoive(animaArray[1], this.g_player_apparence, function () { 50 | }.bind(this), false, true); 51 | }.bind(this), true, false); 52 | apparence.stop(); 53 | AnimaUtil.showMoive(animaArray[2], this.g_player_apparence, function () { 54 | apparence.gotoAndPlay(0, 1); 55 | }.bind(this), true, false); 56 | Music.play("HeroLogin_wav"); 57 | } 58 | private selecIndexJob: number = 0; 59 | private selecIndexSex: number = 0; 60 | public onClick(name: string, v: egret.DisplayObject) { 61 | super.onClick(name,v); 62 | switch (v) { 63 | case this.b_start: 64 | SceneManager.showScene(Game); 65 | return; 66 | case this.b_player_warrior: 67 | this.selecIndexJob = 0; 68 | break; 69 | case this.b_player_wizard: 70 | this.selecIndexJob = 1; 71 | break; 72 | case this.b_player_taoist: 73 | this.selecIndexJob = 2; 74 | break; 75 | case this.b_player_woman: 76 | this.selecIndexSex = 1; 77 | break; 78 | case this.b_player_man: 79 | this.selecIndexSex = 0; 80 | break; 81 | default: 82 | return; 83 | } 84 | this.showPlayer(this.ApparenceMap[this.selecIndexSex][this.selecIndexJob]); 85 | 86 | } 87 | } -------------------------------------------------------------------------------- /Basic/src/scene/UILogin.ts: -------------------------------------------------------------------------------- 1 | class UILogin extends BaseScene { 2 | 3 | public g_account_password: eui.Group; 4 | public i_bg: eui.Image; 5 | public i_account_password: eui.Image; 6 | public b_sumbit: eui.Button; 7 | public b_reg: eui.Button; 8 | public b_reg0: eui.Button; 9 | public et_account: eui.EditableText; 10 | public et_password: eui.EditableText; 11 | public i_fg: eui.Image; 12 | public c_sound: eui.CheckBox; 13 | public g_door: eui.Group; 14 | public g_door_open: eui.Group; 15 | public g_password_modify: eui.Group; 16 | public i_password_modify: eui.Image; 17 | public g_protocol: eui.Group; 18 | public i_protocol: eui.Image; 19 | public g_reg_input: eui.Group; 20 | public i_reg_input: eui.Image; 21 | public b_reg_cancel: eui.Button; 22 | public b_reg_sumbit: eui.Button; 23 | 24 | public constructor() { 25 | super(); 26 | } 27 | 28 | public onCreated(): void { 29 | Music.play("Field2_wav"); 30 | } 31 | public onClick(name: string, v: egret.DisplayObject) { 32 | super.onClick(name,v); 33 | switch (v) { 34 | case this.b_sumbit: 35 | Toast.show(name); 36 | this.switchViewGroup(this.g_door); 37 | AnimaUtil.showMoive("ChrSel_door", this.g_door_open, function () { 38 | this.afterDoor(); 39 | }.bind(this)); 40 | Music.play("OpenDoor_wav"); 41 | break; 42 | case this.c_sound: 43 | Music.isMute = this.c_sound.selected; 44 | if (Music.isMute) { 45 | Music.stop("Field2_wav"); 46 | } else { 47 | Music.play("Field2_wav"); 48 | } 49 | break; 50 | default: 51 | console.log("[BaseScene] No Handler for click " + name); 52 | break; 53 | } 54 | } 55 | private afterDoor() { 56 | Music.stop("Field2_wav"); 57 | SceneManager.showScene(UIChrSel, null, false); 58 | } 59 | 60 | public switchViewGroup(v: egret.DisplayObject) { 61 | for (var i = 0; i < this.numChildren; i++) { 62 | this.getChildAt(i).visible = false; 63 | } 64 | v && (v.visible = true); 65 | } 66 | } -------------------------------------------------------------------------------- /Basic/src/tilemap/Tile.ts: -------------------------------------------------------------------------------- 1 | class Tile { 2 | public id: number; 3 | public image: TileImage; 4 | public constructor() { 5 | } 6 | 7 | public static creatByXML(tileSet: TileSet, node: any) { 8 | var o: any = new Tile(); 9 | o["id"] = Number(tileSet.firstgid) + Number(node.$id) ; 10 | o["image"] = TileImage.creatByXML(o, node.children[0]); 11 | // console.log('[INFO] tileset: ' + o.id); 12 | return o; 13 | } 14 | } -------------------------------------------------------------------------------- /Basic/src/tilemap/TileImage.ts: -------------------------------------------------------------------------------- 1 | class TileImage { 2 | public width: number; 3 | public height: number; 4 | public source: string; 5 | public x: number; 6 | public y: number; 7 | public constructor(a1, a2, a3) { 8 | this.width = a1; 9 | this.height = a2; 10 | this.source = a3; 11 | } 12 | 13 | public static creatByXML(map: Tile, node: any) { 14 | var o: any = new TileImage(Number(node.$width),Number(node.$height),node.$source); 15 | // console.log('[INFO] tileset: ' + o.source); 16 | return o 17 | } 18 | } -------------------------------------------------------------------------------- /Basic/src/tilemap/TileLayer.ts: -------------------------------------------------------------------------------- 1 | class TileLayer { 2 | 3 | public width: number; 4 | public height: number; 5 | public name: string; 6 | public data = { "encoding": "", "text": "", "dataArr": [] }; 7 | public constructor() { 8 | } 9 | public static creatByXML(map: TileMap, node: any) { 10 | var layer: any = new TileLayer(); 11 | layer["width"] = Number(node.$width); 12 | layer["height"] = Number(node.$height); 13 | layer["name"] = node.$name; 14 | layer["data"] = {}; 15 | layer["data"]["encoding"] = node.children[0].$encoding; 16 | layer["data"]["text"] = node.children[0].children[0].text; 17 | if (layer.data.encoding == "csv"&&layer["data"]["text"]) { 18 | layer["data"]["dataArr"] = layer["data"]["text"].split(","); 19 | 20 | } 21 | console.log('[INFO] layer: ' + layer.name); 22 | return layer; 23 | } 24 | } -------------------------------------------------------------------------------- /Basic/src/tilemap/TileSet.ts: -------------------------------------------------------------------------------- 1 | class TileSet { 2 | public firstgid: number; 3 | public lastgid: number; 4 | public source: string; 5 | public tileArr: Tile[] = []; 6 | public constructor() { 7 | } 8 | 9 | public static creatByXML(map: TileMap, node: any, callback?: Function) { 10 | var tileset: any = new TileSet(); 11 | tileset["firstgid"] = Number(node.$firstgid); 12 | tileset["source"] = node.$source; 13 | console.log('[INFO] tileset: ' + tileset.source); 14 | 15 | var source: string = tileset["source"]; 16 | if (source.indexOf(".tsx") > 0) { 17 | FileLoader.loadXML(map.baseURL + source, function (xml: egret.XML) { 18 | for (var i = 0; i < xml.children.length; i++) { 19 | if ((xml.children[i]).name == "tile") { 20 | tileset.tileArr.push(Tile.creatByXML(tileset, xml.children[i])); 21 | } 22 | } 23 | tileset.lastgid = tileset.firstgid + tileset.tileArr.length; 24 | console.log("[INFO] parse " + source + ", the Tile count:" + tileset.tileArr.length); 25 | callback(tileset); 26 | }.bind(this)); 27 | } 28 | return tileset; 29 | } 30 | } -------------------------------------------------------------------------------- /Basic/template/runtime/native_loader.js: -------------------------------------------------------------------------------- 1 | require("launcher/native_require.js"); 2 | 3 | egret_native.egtMain = function () { 4 | egret_native.nativeType = "native"; 5 | 6 | egret_native.egretInit(); 7 | egret_native.egretStart(); 8 | }; 9 | -------------------------------------------------------------------------------- /Basic/template/runtime/native_require.js: -------------------------------------------------------------------------------- 1 | var manifest = JSON.parse(egret_native.readFileSync("manifest.json")); 2 | var game_file_list = manifest.initial.concat(manifest.game); 3 | 4 | var window = this; 5 | 6 | egret_native.setSearchPaths([""]); 7 | 8 | egret_native.requireFiles = function () { 9 | for (var key in game_file_list) { 10 | var src = game_file_list[key]; 11 | require(src); 12 | } 13 | }; 14 | 15 | egret_native.egretInit = function () { 16 | if(egret_native.featureEnable) { 17 | //控制一些优化方案是否开启 18 | //Control whether some optimization options are open 19 | var result = egret_native.featureEnable({ 20 | 21 | }); 22 | } 23 | egret_native.requireFiles(); 24 | egret.dom = {}; 25 | egret.dom.drawAsCanvas = function () { 26 | }; 27 | }; 28 | 29 | egret_native.egretStart = function () { 30 | var option = { 31 | //以下为自动修改,请勿修改 32 | //The following is automatically modified, please do not modify 33 | //----auto option start---- 34 | entryClassName: "Main", 35 | frameRate: 30, 36 | scaleMode: "showAll", 37 | contentWidth: 800, 38 | contentHeight: 600, 39 | showPaintRect: false, 40 | showFPS: false, 41 | fpsStyles: "x:0,y:0,size:12,textColor:0xffffff,bgAlpha:0.9", 42 | showLog: false, 43 | logFilter: "", 44 | maxTouches: 2, 45 | textureScaleFactor: 1 46 | //----auto option end---- 47 | }; 48 | 49 | egret.native.NativePlayer.option = option; 50 | egret.runEgret(); 51 | egret_native.Label.createLabel("/system/fonts/DroidSansFallback.ttf", 20, "", 0); 52 | egret_native.EGTView.preSetOffScreenBufferEnable(true); 53 | }; -------------------------------------------------------------------------------- /Basic/template/runtime/runtime_loader.js: -------------------------------------------------------------------------------- 1 | require("launcher/native_require.js"); 2 | 3 | egret_native.egtMain = function () { 4 | egret_native.nativeType = "runtime"; 5 | 6 | egret_native.egretInit(); 7 | egret_native.egretStart(); 8 | }; -------------------------------------------------------------------------------- /Basic/template/web/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Egret 7 | 8 | 9 | 10 | 11 | 12 | 13 | 23 | 24 | 25 | 26 |
37 |
38 | 94 | 95 | 96 | -------------------------------------------------------------------------------- /Basic/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5", 4 | "outDir": "bin-debug", 5 | "experimentalDecorators": true, 6 | "lib": [ 7 | "es5", 8 | "dom", 9 | "es2015.promise" 10 | ], 11 | "types": [] 12 | }, 13 | "include": [ 14 | "src", 15 | "libs" 16 | ] 17 | } -------------------------------------------------------------------------------- /Basic/wingProperties.json: -------------------------------------------------------------------------------- 1 | { 2 | "resourcePlugin":{ 3 | "configs":[{ 4 | "configPath":"resource/default.res.json", 5 | "relativePath":"resource/" 6 | }] 7 | }, 8 | "theme":"resource/default.thm.json" 9 | } -------------------------------------------------------------------------------- /ScreenShot_ChrSel.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/ScreenShot_ChrSel.gif -------------------------------------------------------------------------------- /libs/umsp/umsp.d.ts: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * 4 | * @constructor 5 | */ 6 | declare function LocalStore_Clear(); 7 | 8 | /** 9 | * 10 | * @param {string} key 11 | * @param {string} value 12 | * @constructor 13 | */ 14 | declare function LocalStore_Save(key:string,value:string); 15 | 16 | 17 | declare class User { 18 | constructor(userID:any, gameID:any, nickName:string); 19 | public userID :number; 20 | public gameID :number; 21 | public token:string; 22 | public nickName:string; 23 | public matchExtInfo:string; 24 | public accessFlag:number; 25 | } 26 | 27 | declare class Match { 28 | constructor(matchType:number); 29 | public matchType:number; 30 | public roomName:string; 31 | public roomPassword:string; 32 | public roomTag:string; 33 | public matchServiceIndex:number; 34 | public wantToMatchUser:User; 35 | public maxUserCount:number; 36 | } 37 | 38 | declare class UmspClient { 39 | 40 | 41 | constructor(); 42 | 43 | /** 44 | * 45 | * @param {string} cb , function 46 | * @param {string} envir , default is 'LocalConf' 47 | * @constructor 48 | */ 49 | login(userID:any, token:string, gameID:any, cb, gateWayNetWorkListener, envir?:string ); 50 | 51 | match(matchResultListener, roomUserChangedListener, roomServiceNetWorkListener,match,broadcast); 52 | 53 | getVersion():string; 54 | disConnect(); 55 | broadcast(data:string) ; 56 | } 57 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # PK 2 | 3 | #### Description 4 | 5 | 使用H5(JavaScript)+Java技术实现的 **热血传奇** MMORPG游戏. 6 | 7 | 此项目分为服务端和客户端,实现的功能包括角色移动,装备穿脱掉落,PVP/PVE打怪PK升级杀人,NPC交互,商店买卖,好友,任务,副本,擂台天梯匹配 8 | 9 | 服务端是`umsp`(Java) (https://gitee.com/geliang/Umsp-netty) 10 | 11 | 客户端是 Egret(JavaScript) 12 | 13 | > 开发日记:http://fluttergo.com/PK/0 14 | 15 | 16 | 因客户端文件有几个G,github仓库经常同步失败,故将仓库移动至gitee: 17 | > https://gitee.com/geliang/PK.git 18 | 19 | 20 | ## Demo体验 21 | 22 | 在线体验: 23 | 24 | 离线体验: 25 | 26 | ![UI](./ScreenShot_ChrSel.gif) 27 | 28 | 29 | 30 | 31 | 32 | ## 加入一起 33 | 34 | 对此项目有兴趣的朋友可以加QQ群:714472073 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_Taoist.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_Taoist.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_Taoist_rise.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_Taoist_rise.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_Taoist_rise_women.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_Taoist_rise_women.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_Taoist_women.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_Taoist_women.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_door.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_door.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_rise.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_rise.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_warrior.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_warrior.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_warrior_rise.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_warrior_rise.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_warrior_rise_women.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_warrior_rise_women.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_warrior_woman.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_warrior_woman.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_wizard.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_wizard.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_wizard_rise.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_wizard_rise.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_wizard_rise_women.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_wizard_rise_women.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/ChrSel_wizard_women.dbproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/ChrSel_wizard_women.dbproj -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/10.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/100.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/101.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/101.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/102.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/102.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/103.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/103.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/104.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/104.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/105.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/105.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/106.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/106.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/107.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/107.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/108.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/108.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/109.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/109.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/11.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/110.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/110.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/111.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/111.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/112.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/112.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/12.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/120.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/121.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/121.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/122.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/122.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/123.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/123.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/124.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/124.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/125.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/126.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/126.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/127.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/127.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/128.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/129.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/129.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/13.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/130.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/130.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/131.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/131.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/132.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/132.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/133.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/133.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/134.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/134.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/135.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/135.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/14.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/140.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/140.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/141.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/141.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/142.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/142.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/143.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/143.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/144.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/145.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/145.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/146.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/146.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/147.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/147.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/148.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/148.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/149.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/149.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/15.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/150.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/151.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/151.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/152.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/16.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/160.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/160.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/161.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/161.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/162.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/162.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/163.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/163.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/164.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/164.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/165.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/165.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/166.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/166.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/167.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/168.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/168.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/169.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/169.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/17.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/170.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/170.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/171.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/171.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/172.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/172.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/173.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/173.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/174.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/174.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/175.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/175.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/180.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/181.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/181.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/182.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/182.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/183.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/183.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/184.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/184.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/185.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/185.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/186.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/186.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/187.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/187.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/188.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/188.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/189.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/189.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/190.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/190.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/191.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/191.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/192.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/200.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/201.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/201.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/202.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/202.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/203.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/203.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/204.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/204.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/205.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/205.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/206.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/206.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/207.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/207.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/208.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/208.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/209.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/209.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/210.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/210.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/211.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/211.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/212.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/212.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/213.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/213.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/214.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/214.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/215.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/215.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/22.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/220.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/220.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/221.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/221.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/222.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/222.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/223.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/223.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/224.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/224.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/225.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/225.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/226.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/226.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/227.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/227.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/228.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/228.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/229.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/229.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/23.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/230.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/230.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/231.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/231.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/232.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/232.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/24.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/240.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/241.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/241.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/242.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/242.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/243.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/243.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/244.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/244.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/245.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/245.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/246.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/246.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/247.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/247.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/248.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/248.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/249.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/249.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/25.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/250.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/250.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/251.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/251.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/252.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/252.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/253.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/253.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/254.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/254.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/255.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/255.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/26.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/260.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/260.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/261.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/261.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/262.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/262.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/263.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/263.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/264.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/264.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/265.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/265.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/266.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/266.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/267.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/267.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/268.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/268.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/269.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/269.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/27.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/270.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/270.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/271.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/271.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/272.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/272.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/28.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/29.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/30.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/31.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/32.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/4.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/40.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/41.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/42.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/43.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/44.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/45.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/46.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/46.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/47.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/48.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/49.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/49.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/5.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/50.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/51.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/52.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/52.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/53.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/53.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/54.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/54.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/55.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/55.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/6.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/60.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/61.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/61.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/62.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/62.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/63.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/63.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/64.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/65.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/65.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/66.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/66.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/67.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/67.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/68.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/68.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/69.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/69.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/7.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/70.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/71.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/71.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/72.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/8.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/80.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/81.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/81.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/82.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/82.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/83.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/83.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/84.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/84.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/85.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/85.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/86.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/86.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/87.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/88.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/88.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/89.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/89.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/9.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/90.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/90.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/91.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/91.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/92.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/92.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/93.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/93.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/94.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/94.png -------------------------------------------------------------------------------- /res/DragonBonesProject/ChrSel/library/95.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluttergo/mir2-client-js/695c237376f770d0e7a4fd5e1dfe15f7ea426589/res/DragonBonesProject/ChrSel/library/95.png --------------------------------------------------------------------------------