mirror of
https://github.com/potato47/ccc-devtools.git
synced 2024-12-25 19:29:13 +00:00
船新版本
This commit is contained in:
parent
caf54f3d04
commit
515259a06b
176
preview-templates/boot.js
Normal file
176
preview-templates/boot.js
Normal file
@ -0,0 +1,176 @@
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
// init device resolutions
|
||||
var devices = [
|
||||
{ name: 'Apple iPhone 5', width: 320, height: 568, ratio: 2 },
|
||||
{ name: 'Apple iPhone 6', width: 375, height: 667, ratio: 2 },
|
||||
{ name: 'Apple iPhone 6 Plus', width: 414, height: 736, ratio: 3 },
|
||||
{ name: 'Apple iPhone 7', width: 375, height: 667, ratio: 2 },
|
||||
{ name: 'Apple iPhone 7 Plus', width: 414, height: 736, ratio: 3 },
|
||||
{ name: 'Apple iPhone X', width: 375, height: 812, ratio: 3 },
|
||||
|
||||
{ name: 'Apple iPad', width: 1024, height: 768, ratio: 2 },
|
||||
{ name: 'Apple iPad Air 2', width: 768, height: 1024, ratio: 2 },
|
||||
{ name: 'Apple iPad Pro 10.5-inch', width: 834, height: 1112, ratio: 2 },
|
||||
{ name: 'Apple iPad Pro 12.9-inch', width: 1024, height: 1366, ratio: 2 },
|
||||
|
||||
{ name: 'Huawei P9', width: 540, height: 960, ratio: 2 },
|
||||
{ name: 'Huawei Mate9 Pro', width: 720, height: 1280, ratio: 2 },
|
||||
|
||||
{ name: 'Goolge Nexus 5', width: 360, height: 640, ratio: 3 },
|
||||
{ name: 'Goolge Nexus 5X', width: 411, height: 731, ratio: 2.625 },
|
||||
{ name: 'Goolge Nexus 6', width: 412, height: 732, ratio: 3.5 },
|
||||
{ name: 'Goolge Nexus 7', width: 960, height: 600, ratio: 2 },
|
||||
];
|
||||
|
||||
var designWidth = _CCSettings.designWidth;
|
||||
var designHeight = _CCSettings.designHeight;
|
||||
|
||||
var rotated = false;
|
||||
|
||||
var canvas = document.getElementById('GameCanvas');
|
||||
window.onload = function () {
|
||||
if (window.__quick_compile__) {
|
||||
window.__quick_compile__.load(onload);
|
||||
}
|
||||
else {
|
||||
onload();
|
||||
}
|
||||
};
|
||||
|
||||
function getEmulatedScreenSize () {
|
||||
var w, h;
|
||||
// var idx = optsDevice.value;
|
||||
var idx = '4';
|
||||
rotated = true;
|
||||
if ( idx === '0' ) {
|
||||
w = designWidth;
|
||||
h = designHeight;
|
||||
}
|
||||
else {
|
||||
var info = devices[parseInt(idx) - 1];
|
||||
w = info.width;
|
||||
h = info.height;
|
||||
}
|
||||
|
||||
return {
|
||||
width: rotated ? h : w,
|
||||
height: rotated ? w : h
|
||||
};
|
||||
}
|
||||
|
||||
function onload() {
|
||||
|
||||
// socket
|
||||
// =======================
|
||||
|
||||
// Receives a refresh event from the editor, which triggers the reload of the page
|
||||
var socket = window.io();
|
||||
socket.on('browser:reload', function () {
|
||||
window.location.reload();
|
||||
});
|
||||
socket.on('browser:confirm-reload', function () {
|
||||
var r = confirm('Reload?');
|
||||
if (r) {
|
||||
window.location.reload();
|
||||
}
|
||||
});
|
||||
|
||||
function updateResolution () {
|
||||
var size = getEmulatedScreenSize();
|
||||
var gameDiv = document.getElementById('GameDiv');
|
||||
gameDiv.style.width = size.width + 'px';
|
||||
gameDiv.style.height = size.height + 'px';
|
||||
|
||||
cc.view.setCanvasSize(size.width, size.height);
|
||||
}
|
||||
|
||||
// init engine
|
||||
// =======================
|
||||
|
||||
var AssetOptions = {
|
||||
libraryPath: 'res/import',
|
||||
rawAssetsBase: 'res/raw-',
|
||||
rawAssets: _CCSettings.rawAssets
|
||||
};
|
||||
|
||||
// jsList
|
||||
var jsList = _CCSettings.jsList || [];
|
||||
jsList = jsList.map(function (x) { return AssetOptions.rawAssetsBase + x; });
|
||||
if (_CCSettings.jsBundleForWebPreview) {
|
||||
jsList.push(_CCSettings.jsBundleForWebPreview);
|
||||
}
|
||||
|
||||
window.__modular.init(_CCSettings.scripts);
|
||||
jsList = jsList.concat(window.__modular.srcs);
|
||||
|
||||
var option = {
|
||||
id: canvas,
|
||||
scenes: _CCSettings.scenes,
|
||||
debugMode: _CCSettings.debug ? cc.debug.DebugMode.INFO : cc.debug.DebugMode.ERROR,
|
||||
showFPS: _CCSettings.debug,
|
||||
frameRate: 60,
|
||||
groupList: _CCSettings.groupList,
|
||||
collisionMatrix: _CCSettings.collisionMatrix,
|
||||
jsList: jsList
|
||||
};
|
||||
|
||||
cc.AssetLibrary.init(AssetOptions);
|
||||
|
||||
cc.game.run(option, function () {
|
||||
|
||||
updateResolution();
|
||||
|
||||
cc.view.enableRetina(true);
|
||||
cc.debug.setDisplayStats(true);
|
||||
|
||||
// Loading splash scene
|
||||
// var splash = document.getElementById('splash');
|
||||
// var progressBar = splash.querySelector('.progress-bar span');
|
||||
|
||||
cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () {
|
||||
// splash.style.display = 'none';
|
||||
});
|
||||
|
||||
cc.game.pause();
|
||||
|
||||
// load stashed scene
|
||||
cc.loader.load('preview-scene.json', function (error, json) {
|
||||
if (error) {
|
||||
cc.error(error.stack);
|
||||
return;
|
||||
}
|
||||
|
||||
cc.loader.onProgress = function (completedCount, totalCount, item) {
|
||||
var percent = 100 * completedCount / totalCount;
|
||||
// if (progressBar) {
|
||||
// progressBar.style.width = percent.toFixed(2) + '%';
|
||||
// }
|
||||
};
|
||||
|
||||
cc.AssetLibrary.loadJson(json,
|
||||
function (err, sceneAsset) {
|
||||
if (err) {
|
||||
cc.error(err.stack);
|
||||
return;
|
||||
}
|
||||
var scene = sceneAsset.scene;
|
||||
scene._name = sceneAsset._name;
|
||||
cc.director.runSceneImmediate(scene, function () {
|
||||
// play game
|
||||
cc.game.resume();
|
||||
});
|
||||
|
||||
cc.loader.onProgress = null;
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
// purge
|
||||
//noinspection JSUnresolvedVariable
|
||||
_CCSettings = undefined;
|
||||
});
|
||||
};
|
||||
})();
|
||||
|
BIN
preview-templates/favicon.ico
Normal file
BIN
preview-templates/favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 318 B |
88
preview-templates/index.html
Normal file
88
preview-templates/index.html
Normal file
@ -0,0 +1,88 @@
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<link rel="icon" href="app/editor/static/preview-templates/favicon.ico">
|
||||
</link>
|
||||
<meta charset="utf-8">
|
||||
<title><%=title%></title>
|
||||
<link rel="stylesheet" type="text/css" href="style.css" />
|
||||
<!-- <link href="libs/css/googlefonts.css" rel="stylesheet" type="text/css"> -->
|
||||
<link href="libs/css/materialdesignicons.min.css" rel="stylesheet" type="text/css">
|
||||
<link href="libs/css/vuetify.min.css" rel="stylesheet" type="text/css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<v-app id="app">
|
||||
<v-app-bar app clipped-left color="gray" dense>
|
||||
<v-app-bar-nav-icon @click.stop="drawer = !drawer"></v-app-bar-nav-icon>
|
||||
<v-toolbar-title class="mr-5 align-center">
|
||||
<span class="title">Title</span>
|
||||
</v-toolbar-title>
|
||||
<v-spacer></v-spacer>
|
||||
</v-app-bar>
|
||||
|
||||
<v-navigation-drawer v-model="drawer" app clipped fixed width="512">
|
||||
<v-container style="height: 50%;overflow: auto;">
|
||||
<v-text-field v-model="search" dense label="Search Node or Component" dark flat solo-inverted hide-details clearable
|
||||
clear-icon="mdi-close-circle-outline"></v-text-field>
|
||||
<v-treeview :items="nodes" item-key="id" dense activatable :search="search" @click="handleNodeClick">
|
||||
<template v-slot:label="{ item, open }">
|
||||
<label v-if="item.active" style="color: white;">{{ item.name }}</label>
|
||||
<label v-else style="color: gray;">{{ item.name }}</label>
|
||||
</template>
|
||||
</v-treeview>
|
||||
</v-container>
|
||||
<v-container style="border-top: 2px solid darkgray;overflow-y: auto;">
|
||||
<v-row>
|
||||
<v-col cols="4">
|
||||
<label>Position</label>
|
||||
</v-col>
|
||||
<v-col cols="8">
|
||||
<label>12,12</label>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col cols="4">
|
||||
<label>width</label>
|
||||
</v-col>
|
||||
<v-col cols="8">
|
||||
<label>250</label>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col cols="4">
|
||||
<label>height</label>
|
||||
</v-col>
|
||||
<v-col cols="8">
|
||||
<label>250</label>
|
||||
</v-col>
|
||||
</v-row>
|
||||
</v-container>
|
||||
</v-navigation-drawer>
|
||||
|
||||
<v-content>
|
||||
<v-container fill-height>
|
||||
<v-card id="GameDiv" class="mx-auto" outlined>
|
||||
<canvas id="GameCanvas" oncontextmenu="event.preventDefault()" tabindex="0"></canvas>
|
||||
</v-card>
|
||||
</v-container>
|
||||
</v-content>
|
||||
|
||||
</v-app>
|
||||
|
||||
<!-- <div id="splash">
|
||||
<div class="progress-bar stripes">
|
||||
<span style="width: 0%"></span>
|
||||
</div>
|
||||
</div> -->
|
||||
<script src="libs/js/vue.min.js"></script>
|
||||
<script src="libs/js/vuetify.js"></script>
|
||||
<script src="preview.js"></script>
|
||||
<script src="settings.js" charset="utf-8"></script>
|
||||
<script src="app/editor/static/preview-templates/modular.js" charset="utf-8"></script>
|
||||
<script src="boot.js" charset="utf-8"></script>
|
||||
<script src="/socket.io/socket.io.js" charset="utf-8"></script>
|
||||
<script src="app/engine/bin/<%=cocos2d%>" charset="utf-8"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
336
preview-templates/libs/css/googlefonts.css
Normal file
336
preview-templates/libs/css/googlefonts.css
Normal file
@ -0,0 +1,336 @@
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff22) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff22) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff22) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff22) format('woff2');
|
||||
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff22) format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
src: local('Roboto Thin'), local('Roboto-Thin'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
src: local('Roboto Light'), local('Roboto-Light'), url(../fonts/googlefonts-base.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Roboto'), local('Roboto-Regular'), url(../fonts/googlefonts-base.woff2rmat('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
src: local('Roboto Medium'), local('Roboto-Medium'), url(../fonts/googlefonts-base.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Roboto Bold'), local('Roboto-Bold'), url(../fonts/googlefonts-base.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2f2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Roboto';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
src: local('Roboto Black'), local('Roboto-Black'), url(../fonts/googlefonts-base.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
3
preview-templates/libs/css/materialdesignicons.min.css
vendored
Normal file
3
preview-templates/libs/css/materialdesignicons.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
8
preview-templates/libs/css/vuetify.min.css
vendored
Normal file
8
preview-templates/libs/css/vuetify.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
preview-templates/libs/fonts/googlefonts-base.woff2
Normal file
BIN
preview-templates/libs/fonts/googlefonts-base.woff2
Normal file
Binary file not shown.
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.eot
Normal file
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.eot
Normal file
Binary file not shown.
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.ttf
Normal file
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.ttf
Normal file
Binary file not shown.
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.woff
Normal file
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.woff
Normal file
Binary file not shown.
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.woff2
Normal file
BIN
preview-templates/libs/fonts/materialdesignicons-webfont.woff2
Normal file
Binary file not shown.
6
preview-templates/libs/js/vue.min.js
vendored
Normal file
6
preview-templates/libs/js/vue.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
41499
preview-templates/libs/js/vuetify.js
Normal file
41499
preview-templates/libs/js/vuetify.js
Normal file
File diff suppressed because it is too large
Load Diff
103
preview-templates/preview.js
Normal file
103
preview-templates/preview.js
Normal file
@ -0,0 +1,103 @@
|
||||
/* eslint-disable no-undef */
|
||||
const app = new Vue({
|
||||
el: '#app',
|
||||
vuetify: new Vuetify({
|
||||
theme: { dark: true }
|
||||
}),
|
||||
data: {
|
||||
drawer: false,
|
||||
loading: true,
|
||||
nodes: [],
|
||||
intervalId: -1,
|
||||
search: null,
|
||||
node: null,
|
||||
nodeSchema: {},
|
||||
componentsSchema: [],
|
||||
},
|
||||
created() {
|
||||
// this.$vuetify.theme.dark = true;
|
||||
this.updateTree();
|
||||
},
|
||||
computed: {
|
||||
filter() {
|
||||
return (item, search, textKey) => item[textKey].indexOf(search) > -1;
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
showTree: function () {
|
||||
if (!this.$data.drawer || !window.cc || !cc.director.getScene() || !cc.director.getScene().children) return;
|
||||
this.$data.nodes = getChildren(cc.director.getScene());
|
||||
},
|
||||
updateTree: function () {
|
||||
this.$data.intervalId = setInterval(() => {
|
||||
this.showTree();
|
||||
}, 200);
|
||||
},
|
||||
stopUpdateTree: function () {
|
||||
clearInterval(this.$data.intervalId);
|
||||
},
|
||||
handleNodeClick(node) {
|
||||
console.log(node);
|
||||
return;
|
||||
if (node) {
|
||||
this.$data.node = node;
|
||||
if (!node.hex_color) {
|
||||
cc.js.getset(node, 'hex_color', () => {
|
||||
return '#' + node.color.toHEX('#rrggbb');
|
||||
}, (hex) => {
|
||||
node.color = new cc.Color().fromHEX(hex);
|
||||
}, false, true);
|
||||
}
|
||||
|
||||
let superPreLoad = node._onPreDestroy;
|
||||
node._onPreDestroy = () => {
|
||||
superPreLoad.apply(node);
|
||||
if (this.$data && this.$data.node === node) {
|
||||
this.$data.node = null;
|
||||
}
|
||||
}
|
||||
this.$data.nodeSchema = this.$data.is3DNode ? NEX_CONFIG.nodeSchema.node3d : NEX_CONFIG
|
||||
.nodeSchema.node2d;
|
||||
let componentsSchema = [];
|
||||
for (let component of node._components) {
|
||||
let schema = NEX_CONFIG.componentsSchema[component.__classname__];
|
||||
if (schema) {
|
||||
node[schema.key] = node.getComponent(schema.key);
|
||||
for (let i = 0; i < schema.rows.length; i++) {
|
||||
for (let j = 0; j < schema.rows[i].length; j++) {
|
||||
if (schema.rows[i][j].type === 'color') {
|
||||
if (!node[schema.key][schema.rows[i][j].field]) {
|
||||
cc.js.getset(node[schema.key], schema.rows[i][j].field, () => {
|
||||
return '#' + node.getComponent(schema.key)[schema.rows[i][j]
|
||||
.rawField].toHEX('#rrggbb');
|
||||
}, (hex) => {
|
||||
node.getComponent(schema.key)[schema.rows[i][j].rawField] =
|
||||
new cc.Color().fromHEX(hex);
|
||||
}, false, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
schema = {
|
||||
title: component.__classname__,
|
||||
key: component.__classname__
|
||||
};
|
||||
node[schema.key] = node.getComponent(schema.key);
|
||||
}
|
||||
componentsSchema.push(schema);
|
||||
}
|
||||
this.$data.componentsSchema = componentsSchema;
|
||||
} else {
|
||||
this.$data.node = null;
|
||||
}
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
function getChildren(node) {
|
||||
return node.children.map(child => {
|
||||
let children = (child.children && child.children.length > 0) ? getChildren(child) : [];
|
||||
return { id: child._id, name: child.name, active: child.activeInHierarchy, children };
|
||||
});
|
||||
}
|
BIN
preview-templates/splash.png
Normal file
BIN
preview-templates/splash.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 40 KiB |
99
preview-templates/style.css
Normal file
99
preview-templates/style.css
Normal file
@ -0,0 +1,99 @@
|
||||
body {
|
||||
cursor: default;
|
||||
color: #888;
|
||||
background-color: #333;
|
||||
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
|
||||
-webkit-flex-direction: column;
|
||||
flex-direction: column;
|
||||
|
||||
height: 100%; /* for firefox */
|
||||
width: 100%;
|
||||
|
||||
position: absolute;
|
||||
padding: 0px;
|
||||
border: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
body, canvas, div {
|
||||
outline: none;
|
||||
-moz-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
canvas {
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
/* #splash {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
|
||||
background: #171717 url(./splash.png) no-repeat center;
|
||||
background-size: 40%;
|
||||
} */
|
||||
|
||||
.content {
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
|
||||
-webkit-justify-content: center;
|
||||
justify-content: center;
|
||||
|
||||
-webkit-align-items: center;
|
||||
align-items: center;
|
||||
|
||||
-webkit-flex-direction: column;
|
||||
flex-direction: column;
|
||||
|
||||
-webkit-flex: auto;
|
||||
flex: auto;
|
||||
}
|
||||
|
||||
.progress-bar {
|
||||
background-color: #1a1a1a;
|
||||
position: absolute;
|
||||
left: 25%;
|
||||
top: 80%;
|
||||
height: 15px;
|
||||
padding: 5px;
|
||||
width: 50%;
|
||||
/*margin: 0 -175px; */
|
||||
border-radius: 5px;
|
||||
box-shadow: 0 1px 5px #000 inset, 0 1px 0 #444;
|
||||
}
|
||||
|
||||
.progress-bar span {
|
||||
display: block;
|
||||
height: 100%;
|
||||
border-radius: 3px;
|
||||
box-shadow: 0 1px 0 rgba(255, 255, 255, .5) inset;
|
||||
transition: width .4s ease-in-out;
|
||||
background-color: #34c2e3;
|
||||
}
|
||||
|
||||
.stripes span {
|
||||
background-size: 30px 30px;
|
||||
background-image: linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
|
||||
transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
|
||||
transparent 75%, transparent);
|
||||
|
||||
animation: animate-stripes 1s linear infinite;
|
||||
}
|
||||
|
||||
#GameDiv {
|
||||
margin:0 auto;
|
||||
}
|
||||
|
||||
/* #Cocos2dGameContainer {
|
||||
margin:0 auto;
|
||||
} */
|
Loading…
Reference in New Issue
Block a user