diff --git a/.vscode/launch.json b/.vscode/launch.json index e2eca16..2b1efec 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -8,9 +8,8 @@ "type": "node", "request": "attach", "name": "Attach", - "port": 8080, - "sourceMaps": true, - "remoteRoot": "${workspaceFolder}/Content/Javascript", + "sourceMaps":true, + "port": 8081, "skipFiles": [ "/**" ], diff --git a/Config/DefaultPuerts.ini b/Config/DefaultPuerts.ini index 899c4a8..3b5bad2 100644 --- a/Config/DefaultPuerts.ini +++ b/Config/DefaultPuerts.ini @@ -1,8 +1,8 @@ [/Script/Puerts.PuertsSetting] -AutoModeEnable=True -DebugEnable=True +AutoModeEnable=False +DebugEnable=False DebugPort=8080 -WaitDebugger=True +WaitDebugger=False diff --git a/Content/JavaScript/UsingReactUMG.js b/Content/JavaScript/UsingReactUMG.js new file mode 100644 index 0000000..8f88282 --- /dev/null +++ b/Content/JavaScript/UsingReactUMG.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const puerts_1 = require("puerts"); +const react_umg_1 = require("react-umg"); +const UI = require("./ui"); +//用React来写UI +let world = puerts_1.argv.getByName("GameInstance").GetWorld(); +react_umg_1.ReactUMG.init(world); +UI.Load(); +//# sourceMappingURL=UsingReactUMG.js.map \ No newline at end of file diff --git a/Content/JavaScript/UsingReactUMG.js.map b/Content/JavaScript/UsingReactUMG.js.map new file mode 100644 index 0000000..b0fdf3a --- /dev/null +++ b/Content/JavaScript/UsingReactUMG.js.map @@ -0,0 +1 @@ +{"version":3,"file":"UsingReactUMG.js","sourceRoot":"","sources":["../../TypeScript/UsingReactUMG.ts"],"names":[],"mappings":";;AACA,mCAA4B;AAC5B,yCAAmC;AACnC,2BAA2B;AAE3B,YAAY;AACZ,IAAI,KAAK,GAAI,aAAI,CAAC,SAAS,CAAC,cAAc,CAAqB,CAAC,QAAQ,EAAE,CAAC;AAC3E,oBAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrB,EAAE,CAAC,IAAI,EAAE,CAAC"} \ No newline at end of file diff --git a/Content/JavaScript/bp/local_player.js b/Content/JavaScript/bp/local_player.js new file mode 100644 index 0000000..47731cf --- /dev/null +++ b/Content/JavaScript/bp/local_player.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const UE = require("ue"); +class TS_Actor extends UE.Actor { +} +exports.default = TS_Actor; +//# sourceMappingURL=local_player.js.map \ No newline at end of file diff --git a/Content/JavaScript/bp/local_player.js.map b/Content/JavaScript/bp/local_player.js.map new file mode 100644 index 0000000..bd540f9 --- /dev/null +++ b/Content/JavaScript/bp/local_player.js.map @@ -0,0 +1 @@ +{"version":3,"file":"local_player.js","sourceRoot":"","sources":["../../../TypeScript/bp/local_player.ts"],"names":[],"mappings":";;AAAA,yBAAwB;AAExB,MAAM,QAAS,SAAQ,EAAE,CAAC,KAAK;CAG9B;AACD,kBAAe,QAAQ,CAAC"} \ No newline at end of file diff --git a/Content/JavaScript/entry.js b/Content/JavaScript/entry.js index ad0c73c..f54b84a 100644 --- a/Content/JavaScript/entry.js +++ b/Content/JavaScript/entry.js @@ -1,4 +1,16 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -console.log("---------------------------------0---------------------"); +const puerts_1 = require("puerts"); +const react_umg_1 = require("react-umg"); +const UI = require("./ui"); +// require("./react-umg/react-umg") +// require("./ui/index") +// require("./ui/ui-components") +console.log('--------------------------0----------------------'); +debugger; +//用React来写UI +let world = puerts_1.argv.getByName("GameInstance").GetWorld(); +react_umg_1.ReactUMG.init(world); +UI.Load(); +console.log('--------------------------1----------------------'); //# sourceMappingURL=entry.js.map \ No newline at end of file diff --git a/Content/JavaScript/entry.js.map b/Content/JavaScript/entry.js.map index 2b9c0e1..3d1fc65 100644 --- a/Content/JavaScript/entry.js.map +++ b/Content/JavaScript/entry.js.map @@ -1 +1 @@ -{"version":3,"file":"entry.js","sourceRoot":"","sources":["../../TypeScript/entry.ts"],"names":[],"mappings":";;AAGA,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAA"} \ No newline at end of file +{"version":3,"file":"entry.js","sourceRoot":"","sources":["../../TypeScript/entry.ts"],"names":[],"mappings":";;AACA,mCAA4B;AAC5B,yCAAmC;AACnC,2BAA2B;AAE3B,mCAAmC;AACnC,wBAAwB;AACxB,gCAAgC;AAEhC,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAA;AAChE,QAAQ,CAAA;AACR,YAAY;AACZ,IAAI,KAAK,GAAI,aAAI,CAAC,SAAS,CAAC,cAAc,CAAqB,CAAC,QAAQ,EAAE,CAAC;AAC3E,oBAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrB,EAAE,CAAC,IAAI,EAAE,CAAC;AACV,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAA"} \ No newline at end of file diff --git a/Content/JavaScript/react-umg/react-umg.js b/Content/JavaScript/react-umg/react-umg.js new file mode 100644 index 0000000..4e0a7d2 --- /dev/null +++ b/Content/JavaScript/react-umg/react-umg.js @@ -0,0 +1,271 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReactUMG = void 0; +const Reconciler = require("react-reconciler"); +const puerts = require("puerts"); +const UE = require("ue"); +let world; +function deepEquals(x, y) { + if (x === y) + return true; + if (!(x instanceof Object) || !(y instanceof Object)) + return false; + for (var p in x) { // all x[p] in y + if (p == 'children' || p == 'Slot') + continue; + if (!deepEquals(x[p], y[p])) + return false; + } + for (var p in y) { + if (p == 'children' || p == 'Slot') + continue; + if (!x.hasOwnProperty(p)) + return false; + } + return true; +} +class UEWidget { + constructor(type, props) { + this.type = type; + this.callbackRemovers = {}; + try { + this.init(type, props); + } + catch (e) { + console.error("create " + type + " throw " + e); + } + } + init(type, props) { + let classPath = exports.lazyloadComponents[type]; + if (classPath) { + //this.nativePtr = asyncUIManager.CreateComponentByClassPathName(classPath); + this.nativePtr = UE.NewObject(UE.Class.Load(classPath)); + } + else { + this.nativePtr = new UE[type](); + } + let myProps = {}; + for (const key in props) { + let val = props[key]; + if (key == 'Slot') { + this.slot = val; + } + else if (typeof val === 'function') { + this.bind(key, val); + } + else if (key !== 'children') { + myProps[key] = val; + } + } + //console.log("UEWidget", type, JSON.stringify(myProps)) + puerts.merge(this.nativePtr, myProps); + //console.log(type + ' inited') + } + bind(name, callback) { + let nativePtr = this.nativePtr; + let prop = nativePtr[name]; + if (typeof prop.Add === 'function') { + prop.Add(callback); + this.callbackRemovers[name] = () => { + prop.Remove(callback); + }; + } + else if (typeof prop.Bind == 'function') { + prop.Bind(callback); + this.callbackRemovers[name] = () => { + prop.Unbind(); + }; + } + else { + console.warn("unsupport callback " + name); + } + } + update(oldProps, newProps) { + let myProps = {}; + let propChange = false; + for (var key in newProps) { + let oldProp = oldProps[key]; + let newProp = newProps[key]; + if (key != 'children' && oldProp != newProp) { + if (key == 'Slot') { + this.slot = newProp; + //console.log("update slot..", this.toJSON()); + puerts.merge(this.nativeSlotPtr, newProp); + UE.UMGManager.SynchronizeSlotProperties(this.nativeSlotPtr); + } + else if (typeof newProp === 'function') { + this.unbind(key); + this.bind(key, newProp); + } + else { + myProps[key] = newProp; + propChange = true; + } + } + } + if (propChange) { + //console.log("update props", this.toJSON(), JSON.stringify(myProps)); + puerts.merge(this.nativePtr, myProps); + UE.UMGManager.SynchronizeWidgetProperties(this.nativePtr); + } + } + unbind(name) { + let remover = this.callbackRemovers[name]; + this.callbackRemovers[name] = undefined; + if (remover) { + remover(); + } + } + unbindAll() { + for (var key in this.callbackRemovers) { + this.callbackRemovers[key](); + } + this.callbackRemovers = {}; + } + appendChild(child) { + let nativeSlot = this.nativePtr.AddChild(child.nativePtr); + //console.log("appendChild", (await this.nativePtr).toJSON(), (await child.nativePtr).toJSON()); + child.nativeSlot = nativeSlot; + } + removeChild(child) { + child.unbindAll(); + this.nativePtr.RemoveChild(child.nativePtr); + //console.log("removeChild", (await this.nativePtr).toJSON(), (await child.nativePtr).toJSON()) + } + set nativeSlot(value) { + this.nativeSlotPtr = value; + //console.log('setting nativeSlot', value.toJSON()); + if (this.slot) { + puerts.merge(this.nativeSlotPtr, this.slot); + UE.UMGManager.SynchronizeSlotProperties(this.nativeSlotPtr); + } + } +} +class UEWidgetRoot { + constructor(nativePtr) { + this.nativePtr = nativePtr; + } + appendChild(child) { + let nativeSlot = this.nativePtr.AddChild(child.nativePtr); + child.nativeSlot = nativeSlot; + } + removeChild(child) { + child.unbindAll(); + this.nativePtr.RemoveChild(child.nativePtr); + } + addToViewport(z) { + if (!this.Added) { + this.nativePtr.AddToViewport(z); + this.Added = true; + } + } + removeFromViewport() { + this.nativePtr.RemoveFromViewport(); + } + getWidget() { + return this.nativePtr; + } +} +const hostConfig = { + getRootHostContext() { + return {}; + }, + //CanvasPanel()的parentHostContext是getRootHostContext返回的值 + getChildHostContext(parentHostContext) { + return parentHostContext; //no use, share one + }, + appendInitialChild(parent, child) { + parent.appendChild(child); + }, + appendChildToContainer(container, child) { + container.appendChild(child); + }, + appendChild(parent, child) { + parent.appendChild(child); + }, + createInstance(type, props) { + return new UEWidget(type, props); + }, + createTextInstance(text) { + return new UEWidget("TextBlock", { Text: text }); + }, + finalizeInitialChildren() { + return false; + }, + getPublicInstance(instance) { + console.warn('getPublicInstance'); + return instance; + }, + now: Date.now, + prepareForCommit() { + //log('prepareForCommit'); + }, + resetAfterCommit(container) { + container.addToViewport(0); + }, + resetTextContent() { + console.error('resetTextContent not implemented!'); + }, + shouldSetTextContent(type, props) { + return false; + }, + commitTextUpdate(textInstance, oldText, newText) { + if (oldText != newText) { + textInstance.update({}, { Text: newText }); + } + }, + //return false表示不更新,真值将会出现到commitUpdate的updatePayload里头 + prepareUpdate(instance, type, oldProps, newProps) { + try { + return !deepEquals(oldProps, newProps); + } + catch (e) { + console.error(e.message); + return true; + } + }, + commitUpdate(instance, updatePayload, type, oldProps, newProps) { + try { + instance.update(oldProps, newProps); + } + catch (e) { + console.error("commitUpdate fail!, " + e); + } + }, + removeChildFromContainer(container, child) { + console.error('removeChildFromContainer'); + //container.removeChild(child).catch(e => { + // console.error('removeChildFromContainer , e:' + e.message); + //}); + }, + removeChild(parent, child) { + parent.removeChild(child); + }, + //useSyncScheduling: true, + supportsMutation: true, + isPrimaryRenderer: true, + supportsPersistence: false, + supportsHydration: false, + shouldDeprioritizeSubtree: undefined, + setTimeout: undefined, + clearTimeout: undefined, + cancelDeferredCallback: undefined, + noTimeout: undefined, + scheduleDeferredCallback: undefined, +}; +const reconciler = Reconciler(hostConfig); +exports.ReactUMG = { + render: function (reactElement) { + if (world == undefined) { + throw new Error("init with World first!"); + } + let root = new UEWidgetRoot(UE.UMGManager.CreateReactWidget(world)); + const container = reconciler.createContainer(root, false, false); + reconciler.updateContainer(reactElement, container, null, null); + return root; + }, + init: function (inWorld) { + world = inWorld; + } +}; +//# sourceMappingURL=react-umg.js.map \ No newline at end of file diff --git a/Content/JavaScript/react-umg/react-umg.js.map b/Content/JavaScript/react-umg/react-umg.js.map new file mode 100644 index 0000000..0a27064 --- /dev/null +++ b/Content/JavaScript/react-umg/react-umg.js.map @@ -0,0 +1 @@ +{"version":3,"file":"react-umg.js","sourceRoot":"","sources":["../../../TypeScript/react-umg/react-umg.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/Content/JavaScript/test.js b/Content/JavaScript/test.js new file mode 100644 index 0000000..7aeea87 --- /dev/null +++ b/Content/JavaScript/test.js @@ -0,0 +1,8 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +require("./entry"); +const UI = require("./ui"); +UI.Load(); +let msg = "wtf"; +console.log("wtf"); +//# sourceMappingURL=test.js.map \ No newline at end of file diff --git a/Content/JavaScript/test.js.map b/Content/JavaScript/test.js.map new file mode 100644 index 0000000..cc9610c --- /dev/null +++ b/Content/JavaScript/test.js.map @@ -0,0 +1 @@ +{"version":3,"file":"test.js","sourceRoot":"","sources":["../../TypeScript/test.ts"],"names":[],"mappings":";;AAAA,OAAO,CAAC,SAAS,CAAC,CAAA;AAClB,2BAA2B;AAC3B,EAAE,CAAC,IAAI,EAAE,CAAC;AACV,IAAI,GAAG,GAAG,KAAK,CAAA;AACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA"} \ No newline at end of file diff --git a/Content/JavaScript/ui/index.js b/Content/JavaScript/ui/index.js new file mode 100644 index 0000000..40ef77b --- /dev/null +++ b/Content/JavaScript/ui/index.js @@ -0,0 +1,38 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Load = void 0; +const React = require("react"); +const react_umg_1 = require("react-umg"); +const ui_components_1 = require("./ui-components"); +let SlotOfVerticalBox = { + LayoutData: { + Offsets: { + Left: 120, + Top: 120, + Right: 480, + Bottom: 80 + } + } +}; +class Hello extends React.Component { + constructor(props) { + super(props); + this.state = { + names: props.names, + buttonTextureIndex: 0, + }; + } + render() { + return (React.createElement(react_umg_1.CanvasPanel, null, + React.createElement(react_umg_1.VerticalBox, { Slot: SlotOfVerticalBox }, + React.createElement(react_umg_1.HorizontalBox, null, + React.createElement(react_umg_1.Button, { OnHovered: () => this.setState({ buttonTextureIndex: 1 }), OnUnhovered: () => this.setState({ buttonTextureIndex: 0 }) }, this.state.buttonTextureIndex == 0 ? 'normal' : 'hovered')), + this.state.names.map((name, idx) => React.createElement(ui_components_1.StatusBar, { name: name, key: idx }))))); + } +} +function Load() { + return react_umg_1.ReactUMG.render(React.createElement(Hello, { names: ["Health:", "Energy:"] })); +} +exports.Load = Load; +; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/Content/JavaScript/ui/index.js.map b/Content/JavaScript/ui/index.js.map new file mode 100644 index 0000000..bcaf436 --- /dev/null +++ b/Content/JavaScript/ui/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../TypeScript/ui/index.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,yCAAyH;AACzH,mDAAyC;AAUzC,IAAI,iBAAiB,GAAoB;IACrC,UAAU,EAAE;QACR,OAAO,EAAE;YACL,IAAI,EAAE,GAAG;YACT,GAAG,EAAE,GAAG;YACR,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,EAAE;SACb;KACJ;CACJ,CAAA;AAED,MAAM,KAAM,SAAQ,KAAK,CAAC,SAAuB;IAC7C,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACX,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,kBAAkB,EAAG,CAAC;SACvB,CAAC;IACJ,CAAC;IACD,MAAM;QACF,OAAO,CACH,oBAAC,uBAAW;YACR,oBAAC,uBAAW,IAAC,IAAI,EAAE,iBAAiB;gBAChC,oBAAC,yBAAa;oBACd,oBAAC,kBAAM,IAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,kBAAkB,EAAE,CAAC,EAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,kBAAkB,EAAE,CAAC,EAAC,CAAC,IACrH,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CACrD,CACO;gBACf,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,oBAAC,yBAAS,IAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAC9D,CACJ,CACjB,CAAC;IACN,CAAC;CACJ;AAED,SAAgB,IAAI;IAChB,OAAO,oBAAQ,CAAC,MAAM,CAClB,oBAAC,KAAK,IAAC,KAAK,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAC1C,CAAC;AACN,CAAC;AAJD,oBAIC;AAAA,CAAC"} \ No newline at end of file diff --git a/Content/JavaScript/ui/ui-components.js b/Content/JavaScript/ui/ui-components.js new file mode 100644 index 0000000..96a8d92 --- /dev/null +++ b/Content/JavaScript/ui/ui-components.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.StatusBar = void 0; +const React = require("react"); +const react_umg_1 = require("react-umg"); +let SlotOfProgressBar = { + Size: { + SizeRule: 1 + } +}; +class StatusBar extends React.Component { + constructor(props) { + super(props); + this.onIncrement = () => this.setState({ percent: this.state.percent + 0.01 }); + this.onDecrement = () => this.setState({ percent: this.state.percent - 0.01 }); + if ((props.initialPercent || 0) < 0) { + throw new Error('initialPercent < 0'); + } + this.state = { + percent: props.initialPercent || 0.5 + }; + } + get color() { + return { R: 1 - this.state.percent, G: 0, B: this.state.percent }; + } + render() { + return (React.createElement(react_umg_1.HorizontalBox, null, + React.createElement(react_umg_1.TextBlock, { Text: `${this.props.name}(${this.state.percent.toFixed(2)})` }), + React.createElement(react_umg_1.ProgressBar, { Percent: this.state.percent, Slot: SlotOfProgressBar, FillColorAndOpacity: this.color }), + React.createElement(react_umg_1.Button, { OnClicked: this.onIncrement }, "+"), + React.createElement(react_umg_1.Button, { OnClicked: this.onDecrement }, "-"))); + } +} +exports.StatusBar = StatusBar; +//# sourceMappingURL=ui-components.js.map \ No newline at end of file diff --git a/Content/JavaScript/ui/ui-components.js.map b/Content/JavaScript/ui/ui-components.js.map new file mode 100644 index 0000000..6f8d868 --- /dev/null +++ b/Content/JavaScript/ui/ui-components.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ui-components.js","sourceRoot":"","sources":["../../../TypeScript/ui/ui-components.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,yCAA6F;AAY7F,IAAI,iBAAiB,GAAsB;IACvC,IAAI,EAAE;QACF,QAAQ,EAAE,CAAC;KACd;CACJ,CAAA;AAED,MAAa,SAAU,SAAQ,KAAK,CAAC,SAAuB;IACxD,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,CAAC,CAAC;QAef,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,EAAC,CAAC,CAAC;QACxE,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,EAAC,CAAC,CAAC;QAdtE,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,KAAK,GAAG;YACX,OAAO,EAAE,KAAK,CAAC,cAAc,IAAI,GAAG;SACrC,CAAC;IACJ,CAAC;IAED,IAAI,KAAK;QACL,OAAO,EAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,CAAC;IACrE,CAAC;IAKD,MAAM;QACF,OAAO,CACH,oBAAC,yBAAa;YACV,oBAAC,qBAAS,IAAC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG;YAC1E,oBAAC,uBAAW,IAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,IAAI,CAAC,KAAK,GAAG;YACrG,oBAAC,kBAAM,IAAC,SAAS,EAAE,IAAI,CAAC,WAAW,QAAa;YAChD,oBAAC,kBAAM,IAAC,SAAS,EAAE,IAAI,CAAC,WAAW,QAAa,CACpC,CACnB,CAAC;IACN,CAAC;CACJ;AA9BD,8BA8BC"} \ No newline at end of file diff --git a/Content/StarterContent/Architecture/Floor_400x400.uasset b/Content/StarterContent/Architecture/Floor_400x400.uasset index 568b3e2..7245597 100644 Binary files a/Content/StarterContent/Architecture/Floor_400x400.uasset and b/Content/StarterContent/Architecture/Floor_400x400.uasset differ diff --git a/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index 4c9452a..b5b40a2 100644 Binary files a/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset and b/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset differ diff --git a/MingSimulator.code-workspace b/MingSimulator.code-workspace new file mode 100644 index 0000000..876a149 --- /dev/null +++ b/MingSimulator.code-workspace @@ -0,0 +1,8 @@ +{ + "folders": [ + { + "path": "." + } + ], + "settings": {} +} \ No newline at end of file diff --git a/Source/MingSimulator/FMCJsEnvManager.cpp b/Source/MingSimulator/FMCJsEnvManager.cpp index eedb21f..a498261 100644 --- a/Source/MingSimulator/FMCJsEnvManager.cpp +++ b/Source/MingSimulator/FMCJsEnvManager.cpp @@ -5,9 +5,9 @@ void FMCJsEnvManager::Init(TObjectPtr GameInstance) { M_GameInstance = GameInstance; //TODO:从PuertsSettings获取是否开启Debug,是否阻塞,端口号等信息 - //8080是调试端口 - M_JsEnv = MakeShared(std::make_unique(TEXT("JavaScript")), std::make_shared(), 8080); - //M_JsEnv->WaitDebugger(); + //8081是调试端口 + M_JsEnv = MakeShared(std::make_unique(TEXT("JavaScript")), std::make_shared(), 8081); + M_JsEnv->WaitDebugger(); TArray> Arguments; Arguments.Add(TPair(TEXT("GameInstance"), GameInstance)); // 可选步骤 M_JsEnv->Start("entry", Arguments); diff --git a/Source/MingSimulator/MingGameInstance.cpp b/Source/MingSimulator/MingGameInstance.cpp index 42f5879..37f9254 100644 --- a/Source/MingSimulator/MingGameInstance.cpp +++ b/Source/MingSimulator/MingGameInstance.cpp @@ -12,7 +12,7 @@ void UMingGameInstance::Init() void UMingGameInstance::OnStart() { - //Super::OnStart(); + Super::OnStart(); M_JsEnvManager = MakeShared(FMCJsEnvManager()); M_JsEnvManager->Init(this); } diff --git a/Source/MingSimulator/MingGameInstance.h b/Source/MingSimulator/MingGameInstance.h index 6aab663..ee0a3ed 100644 --- a/Source/MingSimulator/MingGameInstance.h +++ b/Source/MingSimulator/MingGameInstance.h @@ -16,6 +16,7 @@ class MINGSIMULATOR_API UMingGameInstance : public UPlatformGameInstance GENERATED_BODY() public: virtual void Init() override; + virtual void OnStart() override; virtual void Shutdown() override; private: TSharedPtr M_JsEnvManager; diff --git a/TypeScript/entry.ts b/TypeScript/entry.ts index 08f4a4d..96b2049 100644 --- a/TypeScript/entry.ts +++ b/TypeScript/entry.ts @@ -3,6 +3,10 @@ import {argv} from 'puerts'; import {ReactUMG} from 'react-umg'; import * as UI from './ui'; +// require("./react-umg/react-umg") +// require("./ui/index") +// require("./ui/ui-components") + console.log('--------------------------0----------------------') debugger //用React来写UI diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..f5b7eb9 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,43 @@ +{ + "name": "mingsimulator", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "mingsimulator", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@types/react": "^15.6.6", + "@types/react-reconciler": "^0.18.0", + "typescript": "^5.7.2" + } + }, + "node_modules/@types/react": { + "version": "15.7.30", + "resolved": "https://registry.npmjs.org/@types/react/-/react-15.7.30.tgz", + "integrity": "sha512-jPeEJc8FcLZBVcOOcEqiGAxc6OIVb9dQ8Lhwr+VoNeKvMEVsaYY9++fo9MOibZsylHq6L1l0q9iwMAMVd3U7/w==" + }, + "node_modules/@types/react-reconciler": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.18.0.tgz", + "integrity": "sha512-hLVaxzL7cGgk/2C/sc8yyyvi+aeeimv7SKOFgyuPFYqNb2rnnQApHabcxo5Xp+GloUAfMe3tyQm2nkrmbLXq4w==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/typescript": { + "version": "5.7.2", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + } + } +} diff --git a/ts_file_versions_info.json b/ts_file_versions_info.json new file mode 100644 index 0000000..ccf7740 --- /dev/null +++ b/ts_file_versions_info.json @@ -0,0 +1,548 @@ +{ + "D:/MiceCola/Projects/MingSimulator/TypeScript/entry.ts": { + "version": "90ee3bb0653cf4a58e596bd93f0798b9", + "processed": true, + "isBP": false + }, + "D:/MiceCola/Projects/MingSimulator/TypeScript/test.ts": { + "version": "bc37f9d03469dd23ee50b05926f794c5", + "processed": true, + "isBP": false + }, + "D:/MiceCola/Projects/MingSimulator/TypeScript/bp/local_player.ts": { + "version": "d08d7298081dfeeee7b6b7682cd64341", + "processed": true, + "isBP": false + }, + "D:/MiceCola/Projects/MingSimulator/TypeScript/react-umg/react-umg.ts": { + "version": "2e6f8fa012d883f53bfe7531428befae", + "processed": true, + "isBP": false + }, + "D:/MiceCola/Projects/MingSimulator/TypeScript/ui/index.tsx": { + "version": "75be7facd0d2bec06e601719b3ea57e3", + "processed": true, + "isBP": false + }, + "D:/MiceCola/Projects/MingSimulator/TypeScript/ui/ui-components.tsx": { + "version": "d35feb591dc297c18ca84d5c631d9d60", + "processed": true, + "isBP": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/react/index.d.ts": { + "version": "a6386c71ac7ef6d48c8d05574cce1c20", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/react-reconciler/index.d.ts": { + "version": "e374bc486a663fb7614d38f23dd34a02", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/cpp/index.d.ts": { + "version": "dd956b7a3c07de56359cbfa4bee0cf05", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/ffi/index.d.ts": { + "version": "a371a5609d4ee418c7557ae5aa47afae", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/puerts/index.d.ts": { + "version": "d50bfedc76d792b10b1643a43a4ffd6b", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/react-umg/index.d.ts": { + "version": "646f0cb810568f8eab5ba1f09cc88037", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/ue/index.d.ts": { + "version": "b982801b3faba925e1d56c2d2cebd82a", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/ue/puerts.d.ts": { + "version": "b35c41fa7a5a7a2cde1b14a2577628f7", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/ue/ue.d.ts": { + "version": "5f213e05e49d2120c047565c594171ba", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/ue/puerts_decorators.d.ts": { + "version": "11c14fe8093e3773ebdc2c6b8a509977", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Typing/ue/ue_bp.d.ts": { + "version": "bf4f93091c2fa668cee6872f0e25f371", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/ts5.6/index.d.ts": { + "version": "d6fc0924f7d240acab851721c6fd4069", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/compatibility/index.d.ts": { + "version": "e5411cb070ee9e1f324bf143173a82e0", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/compatibility/disposable.d.ts": { + "version": "3057e856cd232d5a3113601aea562f2e", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/compatibility/indexable.d.ts": { + "version": "d1f9c2fe24e5b3c29d78051147849d07", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/compatibility/iterators.d.ts": { + "version": "f08ff2f7b99aabbd2d5e63a8aa6f831a", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/ts5.6/globals.typedarray.d.ts": { + "version": "19d4f97fd4d5caa44d3f4b8348ff63b5", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/ts5.6/buffer.buffer.d.ts": { + "version": "1ff99b56c0fd750ea854d1a0b550eeb5", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/globals.d.ts": { + "version": "ed5a664cad5372850ec588bcf9bc86fc", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/assert.d.ts": { + "version": "4c1afe9742d6915a7f0ffc0d9b1d81a5", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/assert/strict.d.ts": { + "version": "543d7e122f76fcc38335e560dc9d4505", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/async_hooks.d.ts": { + "version": "41121c271928085c79b1f98ad2bbb38f", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/buffer.d.ts": { + "version": "63048ca470440ee2ebdafe58574b090d", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/child_process.d.ts": { + "version": "37e6b141fd9524fc6eba7eaa2a00c594", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/cluster.d.ts": { + "version": "80aa41a4edbbde3cbd661f3c62318560", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/console.d.ts": { + "version": "ffefa11669e9beffb4f52d90c63980ba", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/constants.d.ts": { + "version": "a46cf1f3859a4c34c8efd6747ca17a18", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/crypto.d.ts": { + "version": "3891c9eaedd1222bcf57b7eeff5a32b4", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/dgram.d.ts": { + "version": "d669c7b7979a181e1e847ce13a4c2ed7", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/diagnostics_channel.d.ts": { + "version": "8eba0b80ac93fba530f4d7324b69f40a", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/dns.d.ts": { + "version": "d0f63e279aa660ac2a23f80d87233049", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/dns/promises.d.ts": { + "version": "bb52034bb3ebc5dfcabed5a3e3f70829", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/domain.d.ts": { + "version": "7caa83ff02a8192b3746e48bec50fb4f", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/dom-events.d.ts": { + "version": "6c4dbe86dd6daaea307be9bc2f07b286", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/events.d.ts": { + "version": "aca5cc232c42930adeb103e328be6ba8", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/fs.d.ts": { + "version": "3a9d744eafe0b7c5ecd9cc99b9aacf36", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/fs/promises.d.ts": { + "version": "13b067c1026085137560734439eda12f", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/http.d.ts": { + "version": "4a0ca0a70f2c33b49d0325dfe5e0c93b", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/http2.d.ts": { + "version": "886bcd1c0e16915aff55662400bc6614", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/https.d.ts": { + "version": "ac945ceaccccd9ceac4e7e17d2943b7e", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/inspector.d.ts": { + "version": "25ab41070469bee4707e0e0ae9ceb617", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/module.d.ts": { + "version": "2e2a4668f13a28efb68ca80320ce9f9d", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/net.d.ts": { + "version": "da7a6f5d1df326bcab9c08e10680e59e", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/os.d.ts": { + "version": "f304a45fb39f6443552b22062e775c60", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/path.d.ts": { + "version": "7df8ef18bafb935e8a6fac70726c9b3d", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/perf_hooks.d.ts": { + "version": "d1e21df7c20351ae9354520fc14f097d", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/process.d.ts": { + "version": "d5d802ee20b8892885968342df46fa01", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/punycode.d.ts": { + "version": "bdb214ebea5ef46e19d04338b2a813d4", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/querystring.d.ts": { + "version": "50339867518e4ec724faf955942ec5e9", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/readline.d.ts": { + "version": "76778ce9828080c0eb5ad40fef1ab1f2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/readline/promises.d.ts": { + "version": "5c8c714fab640178b2f4b3931d54a73a", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/repl.d.ts": { + "version": "846089e875587016d6cb6bb2018bd717", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/sea.d.ts": { + "version": "81be4df65d63fb8cf848f90a69d18e6c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/sqlite.d.ts": { + "version": "b4686a48e31ff4cfa85608e0cffadb36", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/stream.d.ts": { + "version": "fc139bdd7a80dcfeb4f61aab2d0c3e73", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/stream/promises.d.ts": { + "version": "7a32bc44ca7bbaa4ddcf21a400a5a680", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/stream/consumers.d.ts": { + "version": "782f9ddb8649c38a9f805b778ea32887", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/stream/web.d.ts": { + "version": "f6961bcabf8c59d93b1a87595900b3d4", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/string_decoder.d.ts": { + "version": "999b885e93f28cf8cf2b8bddcfb295ad", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/test.d.ts": { + "version": "053857b4c0217a037469b33f522df692", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/timers.d.ts": { + "version": "b9e45137158765046662da09915bcc8c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/timers/promises.d.ts": { + "version": "56995daf1ede4005f6899803a44c3f8f", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/tls.d.ts": { + "version": "9b2a1ecab835bc086663c5ec79752f99", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/trace_events.d.ts": { + "version": "3c3ae30464971544a7b54889acdd947c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/tty.d.ts": { + "version": "eef25f999f31050768310c695f2bbad2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/url.d.ts": { + "version": "202ccd1ae4329e8395cddce328509527", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/util.d.ts": { + "version": "1349e0946ed69d94af515620478b6c1e", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/v8.d.ts": { + "version": "ad4127d26460726a248e363021221bdf", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/vm.d.ts": { + "version": "5fed81ae3707d384e619fa1ecefd7330", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/wasi.d.ts": { + "version": "25bb1b1eb2510fdcceeea0439fa30fde", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/worker_threads.d.ts": { + "version": "491d922640fc277e1e33ba7def85c56b", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/node_modules/@types/node/zlib.d.ts": { + "version": "062dd159e4a2f215f69dc1fb59b45284", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.d.ts": { + "version": "f37d2a516a5433f2898f2788a16fdbd2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2019.d.ts": { + "version": "68e47d32d7c6f780a58086880076bb72", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2018.d.ts": { + "version": "89a16cb892dec7a834264ec192b88107", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2017.d.ts": { + "version": "abeb6e2fceb777e7c549db9c4dbd2527", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2016.d.ts": { + "version": "64c7d6c0e06000366ecb17f886349e76", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.d.ts": { + "version": "873b7a41ac91293788e0f9533db84d7d", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es5.d.ts": { + "version": "b406c91631e86f36c6a19f76b9cb5d5c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.core.d.ts": { + "version": "374aafaac5e5701f7a6c451f3626c876", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.collection.d.ts": { + "version": "0cf3560843a7f493668ee55999ca3fc9", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.iterable.d.ts": { + "version": "a71af26b76745a01759ac05242ea6b27", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.symbol.d.ts": { + "version": "296568db5f2af0e9907b28fad2daf4f1", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.generator.d.ts": { + "version": "dbad150ea91ec88053d753526bf667ea", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.promise.d.ts": { + "version": "c862ed8c1eaca530a03c9425034e9e1e", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.proxy.d.ts": { + "version": "8d45bfffc116d514fa8d64aea5e54811", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.reflect.d.ts": { + "version": "6293955b56b0ebbc04436f897c2f70c3", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts": { + "version": "318427aea426816f7c0edf3271b62cbf", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2016.array.include.d.ts": { + "version": "5e722c0699aee0989c9462bfe474340e", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2017.object.d.ts": { + "version": "8951cafbecb71f4187ee171b78fc52f2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts": { + "version": "4468c012a9b70d2466d09ecd90a691b7", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2017.string.d.ts": { + "version": "a8a9056b8a032653eb7508f4bde662bf", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2017.intl.d.ts": { + "version": "9bb2821c36eb3f3af934782ab0639b87", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts": { + "version": "73496bf2714914d9aa045abeb24373e9", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts": { + "version": "360b4abb468053ca91a52f6c610c9914", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts": { + "version": "ddcc9baca96ac0a7e8eef17a3820767a", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2018.promise.d.ts": { + "version": "be09f12f4342a214e26a8f089bf146d7", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2018.regexp.d.ts": { + "version": "ee8d91b4b612d980d3754d94552652d2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2018.intl.d.ts": { + "version": "16bafacbb227377811d85fbe92a7cc99", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2019.array.d.ts": { + "version": "63fc677ed73cc9eadd5edf9dae95ae46", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2019.object.d.ts": { + "version": "c74651f6ad7c714fb58086928e0fdb5c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2019.string.d.ts": { + "version": "984a18f8e10b2a63e855ba72115bb29b", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2019.symbol.d.ts": { + "version": "317712a9404cb00a8b7d8586ba45c89d", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.bigint.d.ts": { + "version": "dc50bedfff5b6a66f62bed863671195c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.intl.d.ts": { + "version": "8f93d0457d17fbb5ef61f93bffd279ea", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.date.d.ts": { + "version": "ac0d0258a0ffb1097a9f610c4e262e1f", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.number.d.ts": { + "version": "d330d6ff4da1ce87ae8858bfb41f1351", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.promise.d.ts": { + "version": "35b5fdf009f122ec35f8583a5746de91", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts": { + "version": "8df15a0d1cdc7ebfb750440a93bdbe06", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.string.d.ts": { + "version": "5568f87c14d6c62dd93731a936c42d61", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts": { + "version": "837c7d2d6b5413407b0199cfc70792c0", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.esnext.full.d.ts": { + "version": "f36e4ca083840ee44ecf0aec7210b301", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.esnext.d.ts": { + "version": "0e7b7e2351ae4c5f7284273f08e32a31", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2022.d.ts": { + "version": "baccbf84639f16103f638b88648524c6", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2021.d.ts": { + "version": "ba05d0a104013fa69b0ebf27798fc4d4", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2021.promise.d.ts": { + "version": "1e59790d0552a85428e7abf33ed66146", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2021.string.d.ts": { + "version": "27d4f493e2ff151f729b815e1a624e4c", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2021.weakref.d.ts": { + "version": "806e78b5bfc32925d3ce33a5f19a51bf", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2021.intl.d.ts": { + "version": "36ccb30b7ebce7177ec11c3a6b295654", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2022.array.d.ts": { + "version": "a0ded1c38ea420e4b1666cfc5d4b23b2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2022.error.d.ts": { + "version": "32d7d7f83907777d81ecef3268499260", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2022.intl.d.ts": { + "version": "2820dcf4888b79de65ff7459d4f89643", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2022.object.d.ts": { + "version": "a4cca72aff72c60b02d39d9fe10db8f0", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.es2022.string.d.ts": { + "version": "6ecfb892244688c451b421481cf042d2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.esnext.intl.d.ts": { + "version": "6869eb80d91f1223738f267d86d7a6c2", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.dom.d.ts": { + "version": "2fdbec47f1ee1a969c0ae73e2f6e4b51", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.webworker.importscripts.d.ts": { + "version": "b18ff2d95292204e8b44009031bf2838", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.scripthost.d.ts": { + "version": "f35f86c2f3c4eb5d044748b82e2e1600", + "processed": false + }, + "D:/MiceCola/Projects/MingSimulator/Content/JavaScript/PuertsEditor/node_modules/typescript/lib/lib.dom.iterable.d.ts": { + "version": "0e79db76d8d334fb27f57b09560f4fef", + "processed": false + } +} \ No newline at end of file