Spaces:
Running
Running
kwabs22
commited on
Commit
·
254b5bb
1
Parent(s):
03b7287
First attempt at updating repo
Browse files- 2241598.json +1 -1
- __game-scripts.js +1 -1
- __settings__.js +1 -1
- config.json +1 -1
2241598.json
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"branch_id":"1f254abe-181f-4512-ad66-4e07e4e5240c","name":"Untitled","created":"2023-11-14T11:28:19.373Z","settings":{"physics":{"gravity":[0,-9.8,0]},"render":{"lightmapFilterRange":10,"fog_end":1000,"lightmapFilterEnabled":false,"ambientBake":false,"tonemapping":4,"lightingAreaLightsEnabled":false,"lightingShadowType":0,"ambientBakeOcclusionContrast":0,"skybox":229622865,"lightingCookieAtlasResolution":2048,"fog_density":0.01,"lightmapFilterSmoothness":0.2,"gamma_correction":1,"exposure":1,"lightingShadowsEnabled":true,"fog_start":1,"skyboxIntensity":1,"global_ambient":[0.2,0.2,0.2],"ambientBakeNumSamples":1,"fog_color":[0,0,0],"lightingCells":[10,3,10],"lightmapMode":1,"lightingCookiesEnabled":false,"clusteredLightingEnabled":true,"ambientBakeSpherePart":0.4,"fog":"none","ambientBakeOcclusionBrightness":0,"lightmapMaxResolution":2048,"lightingMaxLightsPerCell":255,"lightingShadowAtlasResolution":2048,"skyboxMip":0,"lightmapSizeMultiplier":16,"skyboxRotation":[0,0,0],"skyType":"infinite","skyMeshPosition":[0,0,0],"skyMeshRotation":[0,0,0],"skyMeshScale":[100,100,100],"skyCenter":[0,0.1,0]}},"entities":{"e951e842-82e0-11ee-9eae-baf4d5e490e2":{"position":[0,0,0],"scale":[1,1,1],"name":"Root","parent":null,"resource_id":"e951e842-82e0-11ee-9eae-baf4d5e490e2","components":{"screen":{"enabled":true,"screenSpace":true,"scaleMode":"blend","scaleBlend":0.5,"resolution":[1280,720],"referenceResolution":[1280,720],"priority":0}},"rotation":[0,0,0],"tags":[],"enabled":true,"children":["356a494e-1fca-4f47-9902-19664976ab21","ecb845b1-d6c5-4077-b1ed-e378b1a3217c","7473ede9-5a87-4e3d-81ff-8fca1fbb14dc","e5a33aa9-a211-4d15-bc12-5155dc73784e","3c9d8b38-c35c-4a5c-8c16-f801f4bab68b","262ce6aa-9236-4f02-8ef5-0818548b3d7e"]},"356a494e-1fca-4f47-9902-19664976ab21":{"name":"SceneController","tags":[],"enabled":true,"resource_id":"356a494e-1fca-4f47-9902-19664976ab21","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"script":{"enabled":true,"order":["sceneScaffolder"],"scripts":{"sceneScaffolder":{"enabled":true,"attributes":{}}}}}},"ecb845b1-d6c5-4077-b1ed-e378b1a3217c":{"name":"Imageforbuild","tags":[],"enabled":true,"resource_id":"ecb845b1-d6c5-4077-b1ed-e378b1a3217c","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"image","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"7473ede9-5a87-4e3d-81ff-8fca1fbb14dc":{"name":"Boxforammobuild","tags":[],"enabled":false,"resource_id":"7473ede9-5a87-4e3d-81ff-8fca1fbb14dc","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"render":{"enabled":true,"type":"box","asset":null,"materialAssets":[null],"layers":[0],"batchGroupId":null,"castShadows":true,"castShadowsLightmap":true,"receiveShadows":true,"lightmapped":false,"lightmapSizeMultiplier":1,"castShadowsLightMap":true,"lightMapped":false,"lightMapSizeMultiplier":1,"isStatic":false,"rootBone":null},"collision":{"enabled":true,"type":"box","halfExtents":[0.5,0.5,0.5],"radius":0.5,"axis":1,"height":2,"convexHull":false,"asset":null,"renderAsset":null,"linearOffset":[0,0,0],"angularOffset":[0,0,0]},"rigidbody":{"enabled":true,"type":"static","mass":1,"linearDamping":0,"angularDamping":0,"linearFactor":[1,1,1],"angularFactor":[1,1,1],"friction":0.5,"restitution":0.5}}},"e5a33aa9-a211-4d15-bc12-5155dc73784e":{"name":"Text","tags":[],"enabled":true,"resource_id":"e5a33aa9-a211-4d15-bc12-5155dc73784e","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":true,"autoHeight":true,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"3c9d8b38-c35c-4a5c-8c16-f801f4bab68b":{"name":"GameManager","tags":[],"enabled":true,"resource_id":"3c9d8b38-c35c-4a5c-8c16-f801f4bab68b","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"script":{"enabled":true,"order":["gameManager"],"scripts":{"gameManager":{"enabled":true,"attributes":{"gameData":233252911}}}}}},"262ce6aa-9236-4f02-8ef5-0818548b3d7e":{"name":"2D Screen","tags":[],"enabled":true,"resource_id":"262ce6aa-9236-4f02-8ef5-0818548b3d7e","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":["bde8414d-b899-40f9-84d4-f4d65f1b0eb2"],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"screen":{"enabled":true,"screenSpace":true,"scaleMode":"blend","scaleBlend":0.5,"resolution":[1280,720],"referenceResolution":[1280,720],"priority":0}}},"bde8414d-b899-40f9-84d4-f4d65f1b0eb2":{"name":"GameUIPanel","tags":[],"enabled":true,"resource_id":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","parent":"262ce6aa-9236-4f02-8ef5-0818548b3d7e","children":["28bdabf7-77eb-42b1-99e7-32de20f0a011","d5217136-6e8f-49f0-8583-06c5bcaca07f","e8932e28-c0fd-482f-9acd-1d0997e36ce1"],"position":[640,144,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"group","anchor":[0,0,1,0.4],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":1312,"height":320,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false},"script":{"enabled":true,"order":["uiController"],"scripts":{"uiController":{"enabled":true,"attributes":{"descriptionElement":"28bdabf7-77eb-42b1-99e7-32de20f0a011","choicesContainer":"d5217136-6e8f-49f0-8583-06c5bcaca07f","choiceButtonTemplate":233667893}}}}}},"28bdabf7-77eb-42b1-99e7-32de20f0a011":{"name":"DescriptionText","tags":[],"enabled":true,"resource_id":"28bdabf7-77eb-42b1-99e7-32de20f0a011","parent":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":233667890,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":60.813,"height":33.781,"margin":[-30.406,-16.891,-30.406,-16.891],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":true,"autoHeight":true,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"d5217136-6e8f-49f0-8583-06c5bcaca07f":{"name":"ChoicesContainer","tags":[],"enabled":true,"resource_id":"d5217136-6e8f-49f0-8583-06c5bcaca07f","parent":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"group","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"e8932e28-c0fd-482f-9acd-1d0997e36ce1":{"name":"ChoiceButton_Template","tags":[],"enabled":false,"resource_id":"e8932e28-c0fd-482f-9acd-1d0997e36ce1","parent":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","children":["aa072fda-cbc9-47c3-b258-cff5f6a080b8"],"position":[0,-5143.958615522036,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"button":{"enabled":true,"active":true,"imageEntity":"e8932e28-c0fd-482f-9acd-1d0997e36ce1","hitPadding":[0,0,0,0],"transitionMode":0,"hoverTint":[1,1,1,1],"pressedTint":[1,1,1,1],"inactiveTint":[0.07058823529411765,0.17647058823529413,0.9254901960784314,1],"fadeDuration":0,"hoverSpriteAsset":null,"hoverSpriteFrame":0,"pressedSpriteAsset":null,"pressedSpriteFrame":0,"inactiveSpriteAsset":null,"inactiveSpriteFrame":0,"hoverTextureAsset":null,"pressedTextureAsset":null,"inactiveTextureAsset":null},"element":{"enabled":true,"type":"image","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[0.8352941176470589,0.09411764705882353,0.09411764705882353],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":200,"height":50,"margin":[-100,-5168.959,-100,5118.959],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":true,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}},"template_id":233667893,"template_ent_ids":{"e8932e28-c0fd-482f-9acd-1d0997e36ce1":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","aa072fda-cbc9-47c3-b258-cff5f6a080b8":"73eb8604-08ec-491d-a466-51a0bc96c4a7"}},"aa072fda-cbc9-47c3-b258-cff5f6a080b8":{"name":"ButtonText","tags":[],"enabled":true,"resource_id":"aa072fda-cbc9-47c3-b258-cff5f6a080b8","parent":"e8932e28-c0fd-482f-9acd-1d0997e36ce1","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0,0,1,1],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":233667890,"fontSize":32,"minFontSize":20,"maxFontSize":20,"autoFitWidth":true,"autoFitHeight":true,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[0,0,0],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[0,0,0,0],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}}},"checkpoint_id":"c3b476ee-071f-4391-a075-2e0bd04dc24e","id":2241598}
|
|
|
1 |
+
{"branch_id":"1f254abe-181f-4512-ad66-4e07e4e5240c","name":"Untitled","created":"2023-11-14T11:28:19.373Z","settings":{"physics":{"gravity":[0,-9.8,0]},"render":{"lightmapFilterRange":10,"fog_end":1000,"lightmapFilterEnabled":false,"ambientBake":false,"tonemapping":4,"lightingAreaLightsEnabled":false,"lightingShadowType":0,"ambientBakeOcclusionContrast":0,"skybox":229622865,"lightingCookieAtlasResolution":2048,"fog_density":0.01,"lightmapFilterSmoothness":0.2,"gamma_correction":1,"exposure":1,"lightingShadowsEnabled":true,"fog_start":1,"skyboxIntensity":1,"global_ambient":[0.2,0.2,0.2],"ambientBakeNumSamples":1,"fog_color":[0,0,0],"lightingCells":[10,3,10],"lightmapMode":1,"lightingCookiesEnabled":false,"clusteredLightingEnabled":true,"ambientBakeSpherePart":0.4,"fog":"none","ambientBakeOcclusionBrightness":0,"lightmapMaxResolution":2048,"lightingMaxLightsPerCell":255,"lightingShadowAtlasResolution":2048,"skyboxMip":0,"lightmapSizeMultiplier":16,"skyboxRotation":[0,0,0],"skyType":"infinite","skyMeshPosition":[0,0,0],"skyMeshRotation":[0,0,0],"skyMeshScale":[100,100,100],"skyCenter":[0,0.1,0]}},"entities":{"e951e842-82e0-11ee-9eae-baf4d5e490e2":{"position":[0,0,0],"scale":[1,1,1],"name":"Root","parent":null,"resource_id":"e951e842-82e0-11ee-9eae-baf4d5e490e2","components":{"screen":{"enabled":true,"screenSpace":true,"scaleMode":"blend","scaleBlend":0.5,"resolution":[1280,720],"referenceResolution":[1920,1080],"priority":0}},"rotation":[0,0,0],"tags":[],"enabled":true,"children":["356a494e-1fca-4f47-9902-19664976ab21","ecb845b1-d6c5-4077-b1ed-e378b1a3217c","7473ede9-5a87-4e3d-81ff-8fca1fbb14dc","e5a33aa9-a211-4d15-bc12-5155dc73784e","3c9d8b38-c35c-4a5c-8c16-f801f4bab68b","262ce6aa-9236-4f02-8ef5-0818548b3d7e","6a4e424a-c447-4cc1-8388-2ec13eedb0c8","85bf22eb-6361-4873-858a-16e839b5d4f1"]},"356a494e-1fca-4f47-9902-19664976ab21":{"name":"SceneController","tags":[],"enabled":true,"resource_id":"356a494e-1fca-4f47-9902-19664976ab21","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"script":{"enabled":true,"order":["sceneScaffolder"],"scripts":{"sceneScaffolder":{"enabled":true,"attributes":{}}}}}},"ecb845b1-d6c5-4077-b1ed-e378b1a3217c":{"name":"Imageforbuild","tags":[],"enabled":true,"resource_id":"ecb845b1-d6c5-4077-b1ed-e378b1a3217c","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"image","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"7473ede9-5a87-4e3d-81ff-8fca1fbb14dc":{"name":"Boxforammobuild","tags":[],"enabled":false,"resource_id":"7473ede9-5a87-4e3d-81ff-8fca1fbb14dc","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"render":{"enabled":true,"type":"box","asset":null,"materialAssets":[null],"layers":[0],"batchGroupId":null,"castShadows":true,"castShadowsLightmap":true,"receiveShadows":true,"lightmapped":false,"lightmapSizeMultiplier":1,"castShadowsLightMap":true,"lightMapped":false,"lightMapSizeMultiplier":1,"isStatic":false,"rootBone":null},"collision":{"enabled":true,"type":"box","halfExtents":[0.5,0.5,0.5],"radius":0.5,"axis":1,"height":2,"convexHull":false,"asset":null,"renderAsset":null,"linearOffset":[0,0,0],"angularOffset":[0,0,0]},"rigidbody":{"enabled":true,"type":"static","mass":1,"linearDamping":0,"angularDamping":0,"linearFactor":[1,1,1],"angularFactor":[1,1,1],"friction":0.5,"restitution":0.5}}},"e5a33aa9-a211-4d15-bc12-5155dc73784e":{"name":"Text","tags":[],"enabled":true,"resource_id":"e5a33aa9-a211-4d15-bc12-5155dc73784e","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":true,"autoHeight":true,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"3c9d8b38-c35c-4a5c-8c16-f801f4bab68b":{"name":"GameManager","tags":[],"enabled":true,"resource_id":"3c9d8b38-c35c-4a5c-8c16-f801f4bab68b","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"script":{"enabled":true,"order":["gameManager","simpleSceneLoader","huggingFaceSceneLoader"],"scripts":{"gameManager":{"enabled":true,"attributes":{"gameData":233252911}},"simpleSceneLoader":{"enabled":true,"attributes":{}},"huggingFaceSceneLoader":{"enabled":true,"attributes":{}}}}}},"262ce6aa-9236-4f02-8ef5-0818548b3d7e":{"name":"2D Screen","tags":[],"enabled":true,"resource_id":"262ce6aa-9236-4f02-8ef5-0818548b3d7e","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":["bde8414d-b899-40f9-84d4-f4d65f1b0eb2"],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"screen":{"enabled":true,"screenSpace":true,"scaleMode":"blend","scaleBlend":0.5,"resolution":[1280,720],"referenceResolution":[1920,1080],"priority":0}}},"bde8414d-b899-40f9-84d4-f4d65f1b0eb2":{"name":"GameUIPanel","tags":[],"enabled":true,"resource_id":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","parent":"262ce6aa-9236-4f02-8ef5-0818548b3d7e","children":["28bdabf7-77eb-42b1-99e7-32de20f0a011","d5217136-6e8f-49f0-8583-06c5bcaca07f","e8932e28-c0fd-482f-9acd-1d0997e36ce1"],"position":[881.624,206.056,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"group","anchor":[0.045321863471416056,0,0.9637425092228673,0.38158349608291664],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":1795.368,"height":444.11,"margin":[-16.06,-15.999,-15.94,-16.001],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false},"script":{"enabled":true,"order":["uiController","uiDebugFix"],"scripts":{"uiController":{"enabled":true,"attributes":{"descriptionElement":"28bdabf7-77eb-42b1-99e7-32de20f0a011","choicesContainer":"d5217136-6e8f-49f0-8583-06c5bcaca07f","choiceButtonTemplate":233667893,"uiPanel":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2"}},"uiDebugFix":{"enabled":true,"attributes":{}}}}}},"28bdabf7-77eb-42b1-99e7-32de20f0a011":{"name":"DescriptionText","tags":[],"enabled":true,"resource_id":"28bdabf7-77eb-42b1-99e7-32de20f0a011","parent":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","children":[],"position":[806.649,60.531,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0.05135957562231304,0.7768361750619927,0.9500077102145531,1],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":233667890,"fontSize":24,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":3013.404,"height":124.444,"margin":[-700.053,-1.691,-699.947,-23.644],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":true,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"d5217136-6e8f-49f0-8583-06c5bcaca07f":{"name":"ChoicesContainer","tags":[],"enabled":true,"resource_id":"d5217136-6e8f-49f0-8583-06c5bcaca07f","parent":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","children":[],"position":[0.026,-0.005,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"group","anchor":[0.44329959892705567,0.42514126884520365,0.44329959892705567,0.42514126884520365],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":983.427,"height":150,"margin":[-449.974,-75.005,-450.026,-74.995],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"e8932e28-c0fd-482f-9acd-1d0997e36ce1":{"name":"ChoiceButton_Template","tags":[],"enabled":false,"resource_id":"e8932e28-c0fd-482f-9acd-1d0997e36ce1","parent":"bde8414d-b899-40f9-84d4-f4d65f1b0eb2","children":["aa072fda-cbc9-47c3-b258-cff5f6a080b8"],"position":[0,-5143.958615522036,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"button":{"enabled":true,"active":true,"imageEntity":"e8932e28-c0fd-482f-9acd-1d0997e36ce1","hitPadding":[0,0,0,0],"transitionMode":0,"hoverTint":[1,1,1,1],"pressedTint":[1,1,1,1],"inactiveTint":[0.07058823529411765,0.17647058823529413,0.9254901960784314,1],"fadeDuration":0,"hoverSpriteAsset":null,"hoverSpriteFrame":0,"pressedSpriteAsset":null,"pressedSpriteFrame":0,"inactiveSpriteAsset":null,"inactiveSpriteFrame":0,"hoverTextureAsset":null,"pressedTextureAsset":null,"inactiveTextureAsset":null},"element":{"enabled":true,"type":"image","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[0.8352941176470589,0.09411764705882353,0.09411764705882353],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":200,"height":50,"margin":[-100,-5168.959,-100,5118.959],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":true,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}},"template_id":233667893,"template_ent_ids":{"e8932e28-c0fd-482f-9acd-1d0997e36ce1":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","aa072fda-cbc9-47c3-b258-cff5f6a080b8":"73eb8604-08ec-491d-a466-51a0bc96c4a7"}},"aa072fda-cbc9-47c3-b258-cff5f6a080b8":{"name":"ButtonText","tags":[],"enabled":true,"resource_id":"aa072fda-cbc9-47c3-b258-cff5f6a080b8","parent":"e8932e28-c0fd-482f-9acd-1d0997e36ce1","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0,0,1,1],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":233667890,"fontSize":32,"minFontSize":20,"maxFontSize":20,"autoFitWidth":true,"autoFitHeight":true,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[0,0,0],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[0,0,0,0],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"6a4e424a-c447-4cc1-8388-2ec13eedb0c8":{"name":"SceneManagement","tags":[],"enabled":true,"resource_id":"6a4e424a-c447-4cc1-8388-2ec13eedb0c8","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"script":{"enabled":true,"order":["sceneLoader","sceneIntegrationManager","storySceneBridge"],"scripts":{"sceneIntegrationManager":{"enabled":true,"attributes":{}},"storySceneBridge":{"enabled":true,"attributes":{"sceneMapping":[]}},"sceneLoader":{"enabled":true,"attributes":{"sceneSource":"url","sceneUrl":"","sceneAsset":null,"autoLoad":false}}}}}},"85bf22eb-6361-4873-858a-16e839b5d4f1":{"name":"ControlsSystem","tags":[],"enabled":true,"resource_id":"85bf22eb-6361-4873-858a-16e839b5d4f1","parent":"e951e842-82e0-11ee-9eae-baf4d5e490e2","children":[],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"script":{"enabled":true,"order":["controlManager"],"scripts":{"controlManager":{"enabled":true,"attributes":{}}}}}}},"checkpoint_id":"c3b476ee-071f-4391-a075-2e0bd04dc24e","id":2241598}
|
__game-scripts.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var sceneScaffolder=pc.createScript("sceneScaffolder");sceneScaffolder.prototype.initialize=function(){var e=this.app,t=e.root.findByName("Camera");t&&t.destroy();var o=e.root.findByName("Light");o&&o.destroy();var a=new pc.Entity("SurgeonCamera");a.addComponent("camera",{clearColor:new pc.Color(.95,.98,1),nearClip:.1,farClip:100,fov:60}),a.setPosition(0,1.7,6.5),a.addComponent("script"),a.script.create("cameraController"),a.script.create("interactionController"),e.root.addChild(a),this.createCrosshairUI(e);var n=new pc.Entity("MainSurgicalLight");n.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:3,range:15,innerConeAngle:15,outerConeAngle:35,castShadows:!0,shadowBias:.1,shadowDistance:20,shadowResolution:2048}),n.addComponent("render",{type:"box"}),n.setLocalScale(.5,.2,.5),n.addComponent("collision",{type:"box"}),n.addComponent("rigidbody",{type:"static"}),n.setPosition(0,4,0),n.setEulerAngles(90,0,0),e.root.addChild(n);var d=new pc.Entity("SecondarySurgicalLight");d.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:2.5,range:12,innerConeAngle:20,outerConeAngle:40,castShadows:!0,shadowBias:.1}),d.setPosition(-1.5,3.8,-.5),d.setEulerAngles(75,15,0),e.root.addChild(d);var i=new pc.Entity("AmbientRoomLight");i.addComponent("light",{type:"directional",color:new pc.Color(.9,.95,1),intensity:.4,castShadows:!1}),i.setEulerAngles(30,45,0),e.root.addChild(i);var s=new pc.Entity("SterileFloor"),r=new pc.StandardMaterial;r.diffuse=new pc.Color(.92,.95,.98),r.metalness=.1,r.gloss=.8,r.useMetalness=!0,r.update(),s.addComponent("render",{type:"plane",material:r,receiveShadows:!0,castShadows:!1}),s.setLocalScale(20,1,15),e.root.addChild(s),this.createWall(e,"BackWall",0,2.5,-7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"FrontWall",0,2.5,7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"LeftWall",-10,2.5,0,.2,5,15,new pc.Color(.95,.97,1)),this.createWall(e,"RightWall",10,2.5,0,.2,5,15,new pc.Color(.95,.97,1));var l=new pc.Entity("OperatingTableBase"),c=new pc.StandardMaterial;c.diffuse=new pc.Color(.8,.8,.85),c.metalness=.7,c.gloss=.6,c.useMetalness=!0,c.update(),l.addComponent("render",{type:"cylinder",material:c,castShadows:!0,receiveShadows:!0}),l.setLocalScale(.8,.7,.8),l.setPosition(0,.35,0),e.root.addChild(l);var p=new pc.Entity("OperatingTableSurface"),w=new pc.StandardMaterial;w.diffuse=new pc.Color(.9,.92,.95),w.metalness=.2,w.gloss=.9,w.useMetalness=!0,w.update(),p.addComponent("render",{type:"box",material:w,castShadows:!0,receiveShadows:!0}),p.setLocalScale(2.2,.1,.8),p.setPosition(0,.75,0),p.addComponent("collision",{type:"box",halfExtents:new pc.Vec3(1.1,.05,.4)}),p.addComponent("rigidbody",{type:"static"}),e.root.addChild(p);var C=new pc.Entity("AnesthesiaMachine"),h=new pc.StandardMaterial;h.diffuse=new pc.Color(.7,.75,.8),h.metalness=.8,h.useMetalness=!0,h.update(),C.addComponent("render",{type:"box",material:h,castShadows:!0,receiveShadows:!0}),C.setLocalScale(1.2,1.8,.8),C.setPosition(-4,.9,2),e.root.addChild(C);var m=new pc.Entity("InstrumentTable"),y=new pc.StandardMaterial;y.diffuse=new pc.Color(.85,.87,.9),y.metalness=.6,y.gloss=.8,y.useMetalness=!0,y.update(),m.addComponent("render",{type:"box",material:y,castShadows:!0,receiveShadows:!0}),m.setLocalScale(1.5,1.2,.8),m.setPosition(3,.6,-1),e.root.addChild(m);var S=new pc.Entity("XRayViewer"),u=new pc.StandardMaterial;u.diffuse=new pc.Color(.1,.1,.12),u.metalness=.9,u.useMetalness=!0,u.update(),S.addComponent("render",{type:"box",material:u,castShadows:!0,receiveShadows:!0}),S.setLocalScale(1.8,1.2,.1),S.setPosition(-4,2.5,-6),e.root.addChild(S);var g=new pc.Entity("XRayScreen"),f=new pc.StandardMaterial;f.diffuse=new pc.Color(.9,.95,1),f.emissive=new pc.Color(.3,.35,.4),f.update(),g.addComponent("render",{type:"box",material:f,castShadows:!1,receiveShadows:!1}),g.addComponent("collision",{type:"box"}),g.addComponent("rigidbody",{type:"static"}),g.setLocalScale(1.6,1,.05),g.setPosition(-4,2.5,-5.9),e.root.addChild(g);var v=new pc.Entity("SurgicalLightArm1"),M=new pc.StandardMaterial;M.diffuse=new pc.Color(.9,.9,.92),M.metalness=.8,M.useMetalness=!0,M.update(),v.addComponent("render",{type:"cylinder",material:M,castShadows:!0,receiveShadows:!0}),v.setLocalScale(.15,2,.15),v.setPosition(0,3,0),e.root.addChild(v);var E=new pc.Entity("PatientBody"),b=new pc.StandardMaterial;b.diffuse=new pc.Color(.95,.85,.75),b.metalness=.1,b.gloss=.2,b.useMetalness=!0,b.update(),E.addComponent("render",{type:"box",material:b,castShadows:!0,receiveShadows:!0}),E.addComponent("collision",{type:"box"}),E.addComponent("rigidbody",{type:"static"}),E.setLocalScale(.6,.3,1.8),E.setPosition(0,.95,0),e.root.addChild(E);var L=new pc.Entity("SurgicalDrape"),x=new pc.StandardMaterial;x.diffuse=new pc.Color(.8,.9,.95),x.metalness=0,x.gloss=.1,x.update(),L.addComponent("render",{type:"box",material:x,castShadows:!0,receiveShadows:!0}),L.setLocalScale(.8,.05,2),L.setPosition(0,1.15,0),e.root.addChild(L);var P=new pc.Entity("CArmXRayMachine"),A=new pc.StandardMaterial;A.diffuse=new pc.Color(.75,.78,.82),A.metalness=.7,A.useMetalness=!0,A.update(),P.addComponent("render",{type:"box",material:A,castShadows:!0,receiveShadows:!0}),P.setLocalScale(1,2.2,1.5),P.setPosition(5,1.1,3),P.addComponent("collision",{type:"box",halfExtents:new pc.Vec3(.5,1.1,.75)}),P.addComponent("rigidbody",{type:"static"}),e.root.addChild(P);var B=new pc.Entity("PowerToolsStation"),V=new pc.StandardMaterial;V.diffuse=new pc.Color(.6,.65,.7),V.metalness=.8,V.useMetalness=!0,V.update(),B.addComponent("render",{type:"box",material:V,castShadows:!0,receiveShadows:!0}),B.setLocalScale(.8,1.5,.6),B.setPosition(-3.5,.75,-2.5),e.root.addChild(B);var T=new pc.Entity("BoneCementMixer"),O=new pc.StandardMaterial;O.diffuse=new pc.Color(.85,.85,.88),O.metalness=.6,O.useMetalness=!0,O.update(),T.addComponent("render",{type:"cylinder",material:O,castShadows:!0,receiveShadows:!0}),T.setLocalScale(.4,.8,.4),T.setPosition(2.5,.4,2.5),e.root.addChild(T),this.createVitalSignsMonitor(e,new pc.Vec3(-2,0,3)),console.log("Orthopaedic Operating Theatre scaffolded successfully!"),console.log("Orthopaedic Operating Theatre scaffolded successfully!"),console.log("Environment includes:"),console.log("- Sterile room with clinical lighting"),console.log("- Central operating table with patient"),console.log("- Anesthesia machine and monitoring equipment"),console.log("- X-ray viewer and C-arm machine"),console.log("- Surgical instrument tables"),console.log("- Orthopaedic-specific equipment (drills, cement mixer)"),console.log("- Proper surgical lighting setup")},sceneScaffolder.prototype.createWall=function(e,t,o,a,n,d,i,s,r){var l=new pc.Entity(t),c=new pc.StandardMaterial;c.diffuse=r,c.metalness=.1,c.gloss=.3,c.useMetalness=!0,c.update(),l.addComponent("render",{type:"box",material:c,castShadows:!1,receiveShadows:!0}),l.setPosition(o,a,n),l.setLocalScale(d,i,s),e.root.addChild(l)},sceneScaffolder.prototype.createVitalSignsMonitor=function(e,t){var o=new pc.Entity("VitalSignsMonitor");o.setPosition(t);var a=new pc.Entity("MonitorCartBody"),n=new pc.StandardMaterial;n.diffuse=new pc.Color(.8,.82,.85),n.useMetalness=!0,n.metalness=.4,n.gloss=.5,n.update(),a.addComponent("render",{type:"box",material:n}),a.setLocalScale(.6,1,.5),a.setLocalPosition(0,.5,0),a.addComponent("collision",{type:"box"}),a.addComponent("rigidbody",{type:"static"}),o.addChild(a);var d=new pc.Entity("MonitorScreen"),i=new pc.StandardMaterial;i.diffuse.set(.05,.05,.1),i.emissive.set(.02,.02,.05),i.update(),d.addComponent("render",{type:"box",material:i}),d.setLocalScale(.58,.45,.03),d.setLocalPosition(0,.7,.27),d.addComponent("collision",{type:"box"}),d.addComponent("rigidbody",{type:"static"}),o.addChild(d);var s=new pc.Entity("MonitorBase");return s.addComponent("render",{type:"box",material:n}),s.setLocalScale(.7,.05,.7),s.setLocalPosition(0,.025,0),o.addChild(s),e.root.addChild(o),o},sceneScaffolder.prototype.createCrosshairUI=function(e){var t=new pc.Entity("UIScreen");t.addComponent("screen",{referenceResolution:new pc.Vec2(1280,720),scaleBlend:.5,scaleMode:pc.SCALEMODE_BLEND,screenSpace:!0}),e.root.addChild(t);var o=new pc.Entity("CrosshairOutline");o.addComponent("image",{type:pc.ELEMENTTYPE_IMAGE,anchor:new pc.Vec4(.5,.5,.5,.5),pivot:new pc.Vec2(.5,.5),width:6,height:6,color:new pc.Color(0,0,0,.5)}),t.addChild(o);var a=new pc.Entity("CrosshairDot");a.addComponent("image",{type:pc.ELEMENTTYPE_IMAGE,anchor:new pc.Vec4(.5,.5,.5,.5),pivot:new pc.Vec2(.5,.5),width:2,height:2,color:new pc.Color(1,1,1,.8)}),t.addChild(a),console.log("Compound Crosshair UI created.")};var CameraController=pc.createScript("cameraController");CameraController.attributes.add("mouseSensitivity",{type:"number",default:.5,title:"Mouse Sensitivity (Unused for Q/E)"}),CameraController.attributes.add("keyboardRotationSpeed",{type:"number",default:90,title:"Keyboard Rotation Speed"}),CameraController.attributes.add("movementSpeed",{type:"number",default:5,title:"Movement Speed"}),CameraController.attributes.add("pitchLimit",{type:"number",default:89,title:"Pitch Angle Limit"}),CameraController.prototype.initialize=function(){console.log("CameraController: Initializing script instance:",this),this.eulers=new pc.Vec3;var e=this.entity.getEulerAngles();this.eulers.set(e.x,e.y,e.z),this.pitch=this.eulers.x,this.yaw=this.eulers.y,this.moveDirection=new pc.Vec3,this.isPointerActuallyLocked=!1,console.log("CameraController initialized. Initial Pitch: "+this.pitch+", Initial Yaw: "+this.yaw),console.log("To control camera: WASD to move, Q/E to rotate left/right.")},CameraController.prototype.update=function(e){var t=this.app,i=this.movementSpeed,r=this.entity.forward,a=this.entity.right,o=0,s=0;if(t.keyboard.isPressed(pc.KEY_W)&&(s-=1),t.keyboard.isPressed(pc.KEY_S)&&(s+=1),t.keyboard.isPressed(pc.KEY_A)&&(o-=1),t.keyboard.isPressed(pc.KEY_D)&&(o+=1),0!==o||0!==s){this.moveDirection.set(0,0,0);var l=r.clone().mulScalar(-s),n=a.clone().mulScalar(o);this.moveDirection.add(l).add(n),this.moveDirection.lengthSq()>0&&(this.moveDirection.normalize().mulScalar(i*e),this.entity.translateLocal(this.moveDirection))}var c=0;t.keyboard.isPressed(pc.KEY_Q)&&(c=1),t.keyboard.isPressed(pc.KEY_E)&&(c=-1),this.yaw+=c*this.keyboardRotationSpeed*e;var d=0;t.keyboard.isPressed(pc.KEY_UP)&&(d=-1),t.keyboard.isPressed(pc.KEY_DOWN)&&(d=1),this.pitch+=d*this.keyboardRotationSpeed*e,this.pitch=pc.math.clamp(this.pitch,-this.pitchLimit,this.pitchLimit),this.entity.setLocalEulerAngles(this.pitch,this.yaw,0)};var SceneScaffolder=pc.createScript("sceneScaffolder");SceneScaffolder.prototype.initialize=function(){var e=this.app,a=e.root.findByName("Camera");a&&a.destroy();var o=e.root.findByName("Light");o&&o.destroy();var t=new pc.Entity("MyControllableCamera");t.addComponent("camera",{clearColor:new pc.Color(.1,.1,.1),nearClip:.1,farClip:1e3,fov:45}),t.setPosition(0,1.6,5),t.addComponent("script"),t.script.create("cameraController"),e.root.addChild(t);var n=new pc.Entity("MyLight");n.addComponent("light",{type:"directional",color:new pc.Color(1,1,1),intensity:1,castShadows:!0,shadowBias:.2,shadowDistance:50,normalOffsetBias:.05,shadowResolution:2048}),n.setEulerAngles(45,30,0),e.root.addChild(n);var r=new pc.Entity("GroundPlane"),d=new pc.StandardMaterial;d.diffuse=new pc.Color(.5,.5,.5),d.update(),r.addComponent("render",{type:"plane",material:d,castShadows:!1,receiveShadows:!0}),r.setLocalScale(50,1,50),e.root.addChild(r);var i=new pc.Entity("MyCube"),s=new pc.StandardMaterial;s.diffuse=new pc.Color(1,0,0),s.shininess=50,s.update(),i.addComponent("render",{type:"box",material:s,castShadows:!0,receiveShadows:!0}),i.setPosition(0,1,0),e.root.addChild(i);var l=new pc.Entity("MySphere"),c=new pc.StandardMaterial;c.diffuse=new pc.Color(0,0,1),c.shininess=70,c.metalness=.3,c.useMetalness=!0,c.update(),l.addComponent("render",{type:"sphere",material:c,castShadows:!0,receiveShadows:!0}),l.setPosition(3,1.5,2),e.root.addChild(l),console.log("Controllable 3D environment scaffolded from code!")};var OrthopaedicTheatreScaffolder=pc.createScript("orthopaedicTheatreScaffolder");OrthopaedicTheatreScaffolder.prototype.initialize=function(){var e=this.app,a=e.root.findByName("Camera");a&&a.destroy();var t=e.root.findByName("Light");t&&t.destroy();var o=new pc.Entity("SurgeonCamera");o.addComponent("camera",{clearColor:new pc.Color(.95,.98,1),nearClip:.1,farClip:100,fov:60}),o.setPosition(0,1.7,8),o.addComponent("script"),o.script.create("cameraController"),e.root.addChild(o);var n=new pc.Entity("MainSurgicalLight");n.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:3,range:15,innerConeAngle:15,outerConeAngle:35,castShadows:!0,shadowBias:.1,shadowDistance:20,shadowResolution:2048}),n.setPosition(0,4,0),n.setEulerAngles(90,0,0),e.root.addChild(n);var s=new pc.Entity("SecondarySurgicalLight");s.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:2.5,range:12,innerConeAngle:20,outerConeAngle:40,castShadows:!0,shadowBias:.1}),s.setPosition(-1.5,3.8,-.5),s.setEulerAngles(75,15,0),e.root.addChild(s);var r=new pc.Entity("AmbientRoomLight");r.addComponent("light",{type:"directional",color:new pc.Color(.9,.95,1),intensity:.4,castShadows:!1}),r.setEulerAngles(30,45,0),e.root.addChild(r);var d=new pc.Entity("SterileFloor"),l=new pc.StandardMaterial;l.diffuse=new pc.Color(.92,.95,.98),l.metalness=.1,l.gloss=.8,l.useMetalness=!0,l.update(),d.addComponent("render",{type:"plane",material:l,receiveShadows:!0,castShadows:!1}),d.setLocalScale(20,1,15),e.root.addChild(d),this.createWall(e,"BackWall",0,2.5,-7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"FrontWall",0,2.5,7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"LeftWall",-10,2.5,0,.2,5,15,new pc.Color(.95,.97,1)),this.createWall(e,"RightWall",10,2.5,0,.2,5,15,new pc.Color(.95,.97,1));var i=new pc.Entity("OperatingTableBase"),c=new pc.StandardMaterial;c.diffuse=new pc.Color(.8,.8,.85),c.metalness=.7,c.gloss=.6,c.useMetalness=!0,c.update(),i.addComponent("render",{type:"cylinder",material:c,castShadows:!0,receiveShadows:!0}),i.setLocalScale(.8,.7,.8),i.setPosition(0,.35,0),e.root.addChild(i);var p=new pc.Entity("OperatingTableSurface"),w=new pc.StandardMaterial;w.diffuse=new pc.Color(.9,.92,.95),w.metalness=.2,w.gloss=.9,w.useMetalness=!0,w.update(),p.addComponent("render",{type:"box",material:w,castShadows:!0,receiveShadows:!0}),p.setLocalScale(2.2,.1,.8),p.setPosition(0,.75,0),e.root.addChild(p);var h=new pc.Entity("AnesthesiaMachine"),S=new pc.StandardMaterial;S.diffuse=new pc.Color(.7,.75,.8),S.metalness=.8,S.useMetalness=!0,S.update(),h.addComponent("render",{type:"box",material:S,castShadows:!0,receiveShadows:!0}),h.setLocalScale(1.2,1.8,.8),h.setPosition(-4,.9,2),e.root.addChild(h);var C=new pc.Entity("InstrumentTable"),m=new pc.StandardMaterial;m.diffuse=new pc.Color(.85,.87,.9),m.metalness=.6,m.gloss=.8,m.useMetalness=!0,m.update(),C.addComponent("render",{type:"box",material:m,castShadows:!0,receiveShadows:!0}),C.setLocalScale(1.5,1.2,.8),C.setPosition(3,.6,-1),e.root.addChild(C);var u=new pc.Entity("XRayViewer"),y=new pc.StandardMaterial;y.diffuse=new pc.Color(.1,.1,.12),y.metalness=.9,y.useMetalness=!0,y.update(),u.addComponent("render",{type:"box",material:y,castShadows:!0,receiveShadows:!0}),u.setLocalScale(1.8,1.2,.1),u.setPosition(-4,2.5,-6),e.root.addChild(u);var g=new pc.Entity("XRayScreen"),f=new pc.StandardMaterial;f.diffuse=new pc.Color(.9,.95,1),f.emissive=new pc.Color(.3,.35,.4),f.update(),g.addComponent("render",{type:"box",material:f,castShadows:!1,receiveShadows:!1}),g.setLocalScale(1.6,1,.05),g.setPosition(-4,2.5,-5.9),e.root.addChild(g);var v=new pc.Entity("SurgicalLightArm1"),M=new pc.StandardMaterial;M.diffuse=new pc.Color(.9,.9,.92),M.metalness=.8,M.useMetalness=!0,M.update(),v.addComponent("render",{type:"cylinder",material:M,castShadows:!0,receiveShadows:!0}),v.setLocalScale(.15,2,.15),v.setPosition(0,3,0),e.root.addChild(v);var E=new pc.Entity("PatientBody"),L=new pc.StandardMaterial;L.diffuse=new pc.Color(.95,.85,.75),L.metalness=.1,L.gloss=.2,L.useMetalness=!0,L.update(),E.addComponent("render",{type:"box",material:L,castShadows:!0,receiveShadows:!0}),E.setLocalScale(.6,.3,1.8),E.setPosition(0,.95,0),e.root.addChild(E);var P=new pc.Entity("SurgicalDrape"),b=new pc.StandardMaterial;b.diffuse=new pc.Color(.8,.9,.95),b.metalness=0,b.gloss=.1,b.update(),P.addComponent("render",{type:"box",material:b,castShadows:!0,receiveShadows:!0}),P.setLocalScale(.8,.05,2),P.setPosition(0,1.15,0),e.root.addChild(P);var x=new pc.Entity("CArmXRayMachine"),A=new pc.StandardMaterial;A.diffuse=new pc.Color(.75,.78,.82),A.metalness=.7,A.useMetalness=!0,A.update(),x.addComponent("render",{type:"box",material:A,castShadows:!0,receiveShadows:!0}),x.setLocalScale(1,2.2,1.5),x.setPosition(5,1.1,3),e.root.addChild(x);var T=new pc.Entity("PowerToolsStation"),W=new pc.StandardMaterial;W.diffuse=new pc.Color(.6,.65,.7),W.metalness=.8,W.useMetalness=!0,W.update(),T.addComponent("render",{type:"box",material:W,castShadows:!0,receiveShadows:!0}),T.setLocalScale(.8,1.5,.6),T.setPosition(-3.5,.75,-2.5),e.root.addChild(T);var B=new pc.Entity("BoneCementMixer"),O=new pc.StandardMaterial;O.diffuse=new pc.Color(.85,.85,.88),O.metalness=.6,O.useMetalness=!0,O.update(),B.addComponent("render",{type:"cylinder",material:O,castShadows:!0,receiveShadows:!0}),B.setLocalScale(.4,.8,.4),B.setPosition(2.5,.4,2.5),e.root.addChild(B),console.log("Orthopaedic Operating Theatre scaffolded successfully!"),console.log("Environment includes:"),console.log("- Sterile room with clinical lighting"),console.log("- Central operating table with patient"),console.log("- Anesthesia machine and monitoring equipment"),console.log("- X-ray viewer and C-arm machine"),console.log("- Surgical instrument tables"),console.log("- Orthopaedic-specific equipment (drills, cement mixer)"),console.log("- Proper surgical lighting setup")},OrthopaedicTheatreScaffolder.prototype.createWall=function(e,a,t,o,n,s,r,d,l){var i=new pc.Entity(a),c=new pc.StandardMaterial;c.diffuse=l,c.metalness=.1,c.gloss=.3,c.useMetalness=!0,c.update(),i.addComponent("render",{type:"box",material:c,castShadows:!1,receiveShadows:!0}),i.setPosition(t,o,n),i.setLocalScale(s,r,d),e.root.addChild(i)};var InteractionController=pc.createScript("interactionController");InteractionController.attributes.add("interactionDistance",{type:"number",default:5,title:"Interaction Distance"}),InteractionController.attributes.add("highlightColor",{type:"rgba",default:[.4,.4,0,1],title:"Highlight Color (Emissive)"}),InteractionController.prototype.initialize=function(){this.highlightedEntity=null,this.originalEmissive=new pc.Color;const t=this.app.scene.layers.getLayerById(pc.LAYERID_IMMEDIATE),i=this.entity.camera,e=i.layers;-1===e.indexOf(t.id)&&(i.layers=e.concat(t.id)),console.log("Interaction Controller is active. Look at an object to highlight it, press 'F' to interact.")},InteractionController.prototype.update=function(t){if("undefined"!=typeof Ammo){var i=this.entity.getPosition(),e=(new pc.Vec3).copy(this.entity.forward).mulScalar(this.interactionDistance).add(i),n=this.app.systems.rigidbody.raycastFirst(i,e),o=n?n.entity:null;o!==this.highlightedEntity&&(this.highlightedEntity&&this.setHighlight(this.highlightedEntity,!1),o&&this.setHighlight(o,!0),this.highlightedEntity=o),this.app.keyboard.wasPressed(pc.KEY_F)&&this.highlightedEntity&&this.interactWith(this.highlightedEntity)}},InteractionController.prototype.interactWith=function(t){console.log("Interacting with:",t.name);var i=t;if(t.parent&&"VitalSignsMonitor"===t.parent.name&&(i=t.parent),"VitalSignsMonitor"===i.name){var e=i.findByName("MonitorScreen");if(e){void 0===e.isOn&&(e.isOn=!1),e.isOn=!e.isOn;var n=e.render.material;n.emissive.set(e.isOn?.5:0,e.isOn?.8:0,e.isOn?1:0),n.update(),console.log("Monitor screen state set to:",e.isOn?"ON":"OFF")}}else if("PatientBody"===t.name){var o=this.app.root.findByName("SurgicalDrape");o&&(o.enabled=!o.enabled,console.log("Surgical drape visibility set to:",o.enabled))}else if("MainSurgicalLight"===t.name)void 0===t.isAdjusted&&(t.isAdjusted=!1),t.isAdjusted=!t.isAdjusted,t.isAdjusted?(t.setEulerAngles(75,20,0),console.log("Surgical light adjusted.")):(t.setEulerAngles(90,0,0),console.log("Surgical light reset."));else if("XRayScreen"===t.name){void 0===t.colorIndex&&(t.colorIndex=0);var r=[new pc.Color(.9,.95,1),new pc.Color(.9,1,.9),new pc.Color(1,.9,.9)];t.colorIndex=(t.colorIndex+1)%r.length;var s=t.render.material;s.diffuse.copy(r[t.colorIndex]),s.update(),console.log("X-Ray screen color changed to index:",t.colorIndex)}},InteractionController.prototype.setHighlight=function(t,i){if((!t||"MonitorScreen"!==t.name)&&t&&t.render&&t.render.material){var e=t.render.material;i?(this.originalEmissive.copy(e.emissive),e.emissive.set(this.highlightColor.r,this.highlightColor.g,this.highlightColor.b)):e.emissive.copy(this.originalEmissive),e.update()}};var GameManager=pc.createScript("gameManager");GameManager.attributes.add("gameData",{type:"asset",assetType:"text",title:"Game Data JSON"}),GameManager.prototype.initialize=function(){this.storyData=null,this.currentLocation="tavern",this.currentRoom="start",this.isUiReady=!1,this.app.on("ui:choiceMade",this.onChoiceMade,this),this.app.on("ui:ready",this.onUiReady,this),this.gameData&&this.gameData.resource?(this.storyData=JSON.parse(this.gameData.resource),console.log("GameManager: Data loaded and parsed."),this.isUiReady&&this.displayCurrentState()):console.error("GameManager: Game Data JSON asset is not linked or has not loaded yet.")},GameManager.prototype.onUiReady=function(){console.log("GameManager: Received 'ui:ready' event."),this.isUiReady=!0,this.storyData&&this.displayCurrentState()},GameManager.prototype.displayCurrentState=function(){if(this.storyData&&this.isUiReady){var t=this.storyData[this.currentLocation][this.currentRoom];t?(console.log("GameManager: Firing 'story:display' event for room:",this.currentRoom),this.app.fire("story:display",{description:t.description,choices:t.choices})):console.error("GameManager: Could not find room data for:",this.currentLocation,this.currentRoom)}},GameManager.prototype.onChoiceMade=function(t){if(this.storyData){var a=this.storyData[this.currentLocation][this.currentRoom].transitions[t];if(a){if(a.includes("_")){var e=a.split("_");this.currentLocation=e[0],this.currentRoom=e[1]}else this.currentRoom=a;this.displayCurrentState()}else console.error("GameManager: No transition found for choice:",t)}};var UiController=pc.createScript("uiController");UiController.attributes.add("descriptionElement",{type:"entity",title:"Description Text Entity"}),UiController.attributes.add("choicesContainer",{type:"entity",title:"Choices Container Entity"}),UiController.attributes.add("choiceButtonTemplate",{type:"asset",assetType:"template",title:"Choice Button Template"}),UiController.prototype.initialize=function(){this.app.on("story:display",this.onDisplay,this),console.log("UiController: Initialized and listening for 'story:display' events."),this.validateSetup(),this.app.fire("ui:ready"),console.log("UiController: Fired 'ui:ready' event.")},UiController.prototype.validateSetup=function(){console.log("UiController: Validating setup..."),this.descriptionElement||console.error("UiController VALIDATION ERROR: 'Description Text Entity' is not assigned in the editor!"),this.choicesContainer||console.error("UiController VALIDATION ERROR: 'Choices Container Entity' is not assigned in the editor!"),this.choiceButtonTemplate?"template"!==this.choiceButtonTemplate.type&&console.error("UiController VALIDATION ERROR: The asset assigned to 'Choice Button Template' must be a Template asset."):console.error("UiController VALIDATION ERROR: 'Choice Button Template' asset is not assigned in the editor!")},UiController.prototype.onDisplay=function(t){console.log("UiController: Received 'story:display' event."),t?(this.updateDescription(t.description),this.updateChoices(t.choices)):console.error("UiController: Received event but data was null or undefined.")},UiController.prototype.updateDescription=function(t){this.descriptionElement&&this.descriptionElement.element&&(this.descriptionElement.element.text=t||"Description text is missing.")},UiController.prototype.updateChoices=function(t){if(this.choicesContainer){for(;this.choicesContainer.children.length>0;)this.choicesContainer.children[0].destroy();t&&t.length>0&&t.forEach((function(t,e){this.createChoiceButton(t,e)}),this)}},UiController.prototype.createChoiceButton=function(t,e){if(this.choiceButtonTemplate&&this.choiceButtonTemplate.resource){var i=this.choiceButtonTemplate.resource.instantiate();this.choicesContainer.addChild(i);var o=i.element,n=e%2==0,r=10+50*Math.floor(e/2);o.width=180,o.height=40,n?(o.anchor=new pc.Vec4(0,1,0,1),o.pivot=new pc.Vec2(0,1),i.setLocalPosition(10,-r,0)):(o.anchor=new pc.Vec4(1,1,1,1),o.pivot=new pc.Vec2(1,1),i.setLocalPosition(-10,-r,0));var s=i.findByName("ButtonText");s&&s.element&&(s.element.text=t),i.button&&i.button.on("click",(function(){this.app.fire("ui:choiceMade",t)}),this)}};var GameAutoLocationDatabase=pc.createScript("gameAutoLocationDatabase");GameAutoLocationDatabase.prototype.initialize=function(){},GameAutoLocationDatabase.prototype.update=function(a){};
|
|
|
1 |
+
var sceneScaffolder=pc.createScript("sceneScaffolder");sceneScaffolder.prototype.initialize=function(){var e=this.app,t=e.root.findByName("Camera");t&&t.destroy();var o=e.root.findByName("Light");o&&o.destroy();var a=new pc.Entity("SurgeonCamera");a.addComponent("camera",{clearColor:new pc.Color(.95,.98,1),nearClip:.1,farClip:100,fov:60}),a.setPosition(0,1.7,6.5),a.addComponent("script"),a.script.create("cameraController"),a.script.create("interactionController"),e.root.addChild(a),this.createCrosshairUI(e);var n=new pc.Entity("MainSurgicalLight");n.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:3,range:15,innerConeAngle:15,outerConeAngle:35,castShadows:!0,shadowBias:.1,shadowDistance:20,shadowResolution:2048}),n.addComponent("render",{type:"box"}),n.setLocalScale(.5,.2,.5),n.addComponent("collision",{type:"box"}),n.addComponent("rigidbody",{type:"static"}),n.setPosition(0,4,0),n.setEulerAngles(90,0,0),e.root.addChild(n);var d=new pc.Entity("SecondarySurgicalLight");d.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:2.5,range:12,innerConeAngle:20,outerConeAngle:40,castShadows:!0,shadowBias:.1}),d.setPosition(-1.5,3.8,-.5),d.setEulerAngles(75,15,0),e.root.addChild(d);var i=new pc.Entity("AmbientRoomLight");i.addComponent("light",{type:"directional",color:new pc.Color(.9,.95,1),intensity:.4,castShadows:!1}),i.setEulerAngles(30,45,0),e.root.addChild(i);var s=new pc.Entity("SterileFloor"),r=new pc.StandardMaterial;r.diffuse=new pc.Color(.92,.95,.98),r.metalness=.1,r.gloss=.8,r.useMetalness=!0,r.update(),s.addComponent("render",{type:"plane",material:r,receiveShadows:!0,castShadows:!1}),s.setLocalScale(20,1,15),e.root.addChild(s),this.createWall(e,"BackWall",0,2.5,-7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"FrontWall",0,2.5,7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"LeftWall",-10,2.5,0,.2,5,15,new pc.Color(.95,.97,1)),this.createWall(e,"RightWall",10,2.5,0,.2,5,15,new pc.Color(.95,.97,1));var l=new pc.Entity("OperatingTableBase"),c=new pc.StandardMaterial;c.diffuse=new pc.Color(.8,.8,.85),c.metalness=.7,c.gloss=.6,c.useMetalness=!0,c.update(),l.addComponent("render",{type:"cylinder",material:c,castShadows:!0,receiveShadows:!0}),l.setLocalScale(.8,.7,.8),l.setPosition(0,.35,0),e.root.addChild(l);var p=new pc.Entity("OperatingTableSurface"),w=new pc.StandardMaterial;w.diffuse=new pc.Color(.9,.92,.95),w.metalness=.2,w.gloss=.9,w.useMetalness=!0,w.update(),p.addComponent("render",{type:"box",material:w,castShadows:!0,receiveShadows:!0}),p.setLocalScale(2.2,.1,.8),p.setPosition(0,.75,0),p.addComponent("collision",{type:"box",halfExtents:new pc.Vec3(1.1,.05,.4)}),p.addComponent("rigidbody",{type:"static"}),e.root.addChild(p);var C=new pc.Entity("AnesthesiaMachine"),h=new pc.StandardMaterial;h.diffuse=new pc.Color(.7,.75,.8),h.metalness=.8,h.useMetalness=!0,h.update(),C.addComponent("render",{type:"box",material:h,castShadows:!0,receiveShadows:!0}),C.setLocalScale(1.2,1.8,.8),C.setPosition(-4,.9,2),e.root.addChild(C);var m=new pc.Entity("InstrumentTable"),y=new pc.StandardMaterial;y.diffuse=new pc.Color(.85,.87,.9),y.metalness=.6,y.gloss=.8,y.useMetalness=!0,y.update(),m.addComponent("render",{type:"box",material:y,castShadows:!0,receiveShadows:!0}),m.setLocalScale(1.5,1.2,.8),m.setPosition(3,.6,-1),e.root.addChild(m);var S=new pc.Entity("XRayViewer"),u=new pc.StandardMaterial;u.diffuse=new pc.Color(.1,.1,.12),u.metalness=.9,u.useMetalness=!0,u.update(),S.addComponent("render",{type:"box",material:u,castShadows:!0,receiveShadows:!0}),S.setLocalScale(1.8,1.2,.1),S.setPosition(-4,2.5,-6),e.root.addChild(S);var g=new pc.Entity("XRayScreen"),f=new pc.StandardMaterial;f.diffuse=new pc.Color(.9,.95,1),f.emissive=new pc.Color(.3,.35,.4),f.update(),g.addComponent("render",{type:"box",material:f,castShadows:!1,receiveShadows:!1}),g.addComponent("collision",{type:"box"}),g.addComponent("rigidbody",{type:"static"}),g.setLocalScale(1.6,1,.05),g.setPosition(-4,2.5,-5.9),e.root.addChild(g);var v=new pc.Entity("SurgicalLightArm1"),M=new pc.StandardMaterial;M.diffuse=new pc.Color(.9,.9,.92),M.metalness=.8,M.useMetalness=!0,M.update(),v.addComponent("render",{type:"cylinder",material:M,castShadows:!0,receiveShadows:!0}),v.setLocalScale(.15,2,.15),v.setPosition(0,3,0),e.root.addChild(v);var E=new pc.Entity("PatientBody"),b=new pc.StandardMaterial;b.diffuse=new pc.Color(.95,.85,.75),b.metalness=.1,b.gloss=.2,b.useMetalness=!0,b.update(),E.addComponent("render",{type:"box",material:b,castShadows:!0,receiveShadows:!0}),E.addComponent("collision",{type:"box"}),E.addComponent("rigidbody",{type:"static"}),E.setLocalScale(.6,.3,1.8),E.setPosition(0,.95,0),e.root.addChild(E);var L=new pc.Entity("SurgicalDrape"),x=new pc.StandardMaterial;x.diffuse=new pc.Color(.8,.9,.95),x.metalness=0,x.gloss=.1,x.update(),L.addComponent("render",{type:"box",material:x,castShadows:!0,receiveShadows:!0}),L.setLocalScale(.8,.05,2),L.setPosition(0,1.15,0),e.root.addChild(L);var P=new pc.Entity("CArmXRayMachine"),A=new pc.StandardMaterial;A.diffuse=new pc.Color(.75,.78,.82),A.metalness=.7,A.useMetalness=!0,A.update(),P.addComponent("render",{type:"box",material:A,castShadows:!0,receiveShadows:!0}),P.setLocalScale(1,2.2,1.5),P.setPosition(5,1.1,3),P.addComponent("collision",{type:"box",halfExtents:new pc.Vec3(.5,1.1,.75)}),P.addComponent("rigidbody",{type:"static"}),e.root.addChild(P);var B=new pc.Entity("PowerToolsStation"),V=new pc.StandardMaterial;V.diffuse=new pc.Color(.6,.65,.7),V.metalness=.8,V.useMetalness=!0,V.update(),B.addComponent("render",{type:"box",material:V,castShadows:!0,receiveShadows:!0}),B.setLocalScale(.8,1.5,.6),B.setPosition(-3.5,.75,-2.5),e.root.addChild(B);var T=new pc.Entity("BoneCementMixer"),O=new pc.StandardMaterial;O.diffuse=new pc.Color(.85,.85,.88),O.metalness=.6,O.useMetalness=!0,O.update(),T.addComponent("render",{type:"cylinder",material:O,castShadows:!0,receiveShadows:!0}),T.setLocalScale(.4,.8,.4),T.setPosition(2.5,.4,2.5),e.root.addChild(T),this.createVitalSignsMonitor(e,new pc.Vec3(-2,0,3)),console.log("Orthopaedic Operating Theatre scaffolded successfully!"),console.log("Orthopaedic Operating Theatre scaffolded successfully!"),console.log("Environment includes:"),console.log("- Sterile room with clinical lighting"),console.log("- Central operating table with patient"),console.log("- Anesthesia machine and monitoring equipment"),console.log("- X-ray viewer and C-arm machine"),console.log("- Surgical instrument tables"),console.log("- Orthopaedic-specific equipment (drills, cement mixer)"),console.log("- Proper surgical lighting setup")},sceneScaffolder.prototype.createWall=function(e,t,o,a,n,d,i,s,r){var l=new pc.Entity(t),c=new pc.StandardMaterial;c.diffuse=r,c.metalness=.1,c.gloss=.3,c.useMetalness=!0,c.update(),l.addComponent("render",{type:"box",material:c,castShadows:!1,receiveShadows:!0}),l.setPosition(o,a,n),l.setLocalScale(d,i,s),e.root.addChild(l)},sceneScaffolder.prototype.createVitalSignsMonitor=function(e,t){var o=new pc.Entity("VitalSignsMonitor");o.setPosition(t);var a=new pc.Entity("MonitorCartBody"),n=new pc.StandardMaterial;n.diffuse=new pc.Color(.8,.82,.85),n.useMetalness=!0,n.metalness=.4,n.gloss=.5,n.update(),a.addComponent("render",{type:"box",material:n}),a.setLocalScale(.6,1,.5),a.setLocalPosition(0,.5,0),a.addComponent("collision",{type:"box"}),a.addComponent("rigidbody",{type:"static"}),o.addChild(a);var d=new pc.Entity("MonitorScreen"),i=new pc.StandardMaterial;i.diffuse.set(.05,.05,.1),i.emissive.set(.02,.02,.05),i.update(),d.addComponent("render",{type:"box",material:i}),d.setLocalScale(.58,.45,.03),d.setLocalPosition(0,.7,.27),d.addComponent("collision",{type:"box"}),d.addComponent("rigidbody",{type:"static"}),o.addChild(d);var s=new pc.Entity("MonitorBase");return s.addComponent("render",{type:"box",material:n}),s.setLocalScale(.7,.05,.7),s.setLocalPosition(0,.025,0),o.addChild(s),e.root.addChild(o),o},sceneScaffolder.prototype.createCrosshairUI=function(e){var t=new pc.Entity("UIScreen");t.addComponent("screen",{referenceResolution:new pc.Vec2(1280,720),scaleBlend:.5,scaleMode:pc.SCALEMODE_BLEND,screenSpace:!0}),e.root.addChild(t);var o=new pc.Entity("CrosshairOutline");o.addComponent("image",{type:pc.ELEMENTTYPE_IMAGE,anchor:new pc.Vec4(.5,.5,.5,.5),pivot:new pc.Vec2(.5,.5),width:6,height:6,color:new pc.Color(0,0,0,.5)}),t.addChild(o);var a=new pc.Entity("CrosshairDot");a.addComponent("image",{type:pc.ELEMENTTYPE_IMAGE,anchor:new pc.Vec4(.5,.5,.5,.5),pivot:new pc.Vec2(.5,.5),width:2,height:2,color:new pc.Color(1,1,1,.8)}),t.addChild(a),console.log("Compound Crosshair UI created.")};var CameraController=pc.createScript("cameraController");CameraController.attributes.add("movementSpeed",{type:"number",default:5,title:"Movement Speed"}),CameraController.attributes.add("keyboardRotationSpeed",{type:"number",default:90,title:"Keyboard Rotation Speed"}),CameraController.attributes.add("pitchLimit",{type:"number",default:89,title:"Pitch Angle Limit"}),CameraController.attributes.add("useControlManager",{type:"boolean",default:!0,title:"Use Control Manager"}),CameraController.prototype.initialize=function(){console.log("CameraController: Initializing..."),this.eulers=new pc.Vec3;var e=this.entity.getEulerAngles();if(this.eulers.set(e.x,e.y,e.z),this.pitch=this.eulers.x,this.yaw=this.eulers.y,this.moveDirection=new pc.Vec3,this.controlManager=null,this.useControlManager){const e=this.app.root.findComponent("script",(e=>e.has("controlManager")));e?(this.controlManager=e.entity.script.controlManager,console.log("CameraController: Using Control Manager")):(console.warn("CameraController: Control Manager not found, using direct input"),this.useControlManager=!1)}console.log("CameraController initialized. Controls:"),console.log("- WASD: Move"),console.log("- Q/E: Rotate"),console.log("- Arrow Keys: Look up/down")},CameraController.prototype.update=function(e){this.shouldProcessInput()&&(this.processMovement(e),this.processRotation(e),this.entity.setLocalEulerAngles(this.pitch,this.yaw,0))},CameraController.prototype.shouldProcessInput=function(){return!this.useControlManager||!this.controlManager||!this.controlManager.blockedKeys.has("W")},CameraController.prototype.processMovement=function(e){var t=this.app,o=this.movementSpeed,r=this.entity.forward,i=this.entity.right,a=0,n=0;if(this.useControlManager&&this.controlManager?(this.controlManager.isKeyActive("W")&&(n-=1),this.controlManager.isKeyActive("S")&&(n+=1),this.controlManager.isKeyActive("A")&&(a-=1),this.controlManager.isKeyActive("D")&&(a+=1)):(t.keyboard.isPressed(pc.KEY_W)&&(n-=1),t.keyboard.isPressed(pc.KEY_S)&&(n+=1),t.keyboard.isPressed(pc.KEY_A)&&(a-=1),t.keyboard.isPressed(pc.KEY_D)&&(a+=1)),0!==a||0!==n){this.moveDirection.set(0,0,0);var s=r.clone().mulScalar(-n),l=i.clone().mulScalar(a);this.moveDirection.add(s).add(l),this.moveDirection.lengthSq()>0&&(this.moveDirection.normalize().mulScalar(o*e),this.entity.translateLocal(this.moveDirection))}},CameraController.prototype.processRotation=function(e){var t=this.app,o=0;this.useControlManager&&this.controlManager?(this.controlManager.isKeyActive("Q")&&(o=1),this.controlManager.isKeyActive("E")&&(o=-1)):(t.keyboard.isPressed(pc.KEY_Q)&&(o=1),t.keyboard.isPressed(pc.KEY_E)&&(o=-1)),this.yaw+=o*this.keyboardRotationSpeed*e;var r=0;this.useControlManager&&this.controlManager?(this.controlManager.isKeyActive("UP")&&(r=-1),this.controlManager.isKeyActive("DOWN")&&(r=1)):(t.keyboard.isPressed(pc.KEY_UP)&&(r=-1),t.keyboard.isPressed(pc.KEY_DOWN)&&(r=1)),this.pitch+=r*this.keyboardRotationSpeed*e,this.pitch=pc.math.clamp(this.pitch,-this.pitchLimit,this.pitchLimit)};var SceneScaffolder=pc.createScript("sceneScaffolder");SceneScaffolder.prototype.initialize=function(){var e=this.app,a=e.root.findByName("Camera");a&&a.destroy();var o=e.root.findByName("Light");o&&o.destroy();var t=new pc.Entity("MyControllableCamera");t.addComponent("camera",{clearColor:new pc.Color(.1,.1,.1),nearClip:.1,farClip:1e3,fov:45}),t.setPosition(0,1.6,5),t.addComponent("script"),t.script.create("cameraController"),e.root.addChild(t);var n=new pc.Entity("MyLight");n.addComponent("light",{type:"directional",color:new pc.Color(1,1,1),intensity:1,castShadows:!0,shadowBias:.2,shadowDistance:50,normalOffsetBias:.05,shadowResolution:2048}),n.setEulerAngles(45,30,0),e.root.addChild(n);var r=new pc.Entity("GroundPlane"),d=new pc.StandardMaterial;d.diffuse=new pc.Color(.5,.5,.5),d.update(),r.addComponent("render",{type:"plane",material:d,castShadows:!1,receiveShadows:!0}),r.setLocalScale(50,1,50),e.root.addChild(r);var i=new pc.Entity("MyCube"),s=new pc.StandardMaterial;s.diffuse=new pc.Color(1,0,0),s.shininess=50,s.update(),i.addComponent("render",{type:"box",material:s,castShadows:!0,receiveShadows:!0}),i.setPosition(0,1,0),e.root.addChild(i);var l=new pc.Entity("MySphere"),c=new pc.StandardMaterial;c.diffuse=new pc.Color(0,0,1),c.shininess=70,c.metalness=.3,c.useMetalness=!0,c.update(),l.addComponent("render",{type:"sphere",material:c,castShadows:!0,receiveShadows:!0}),l.setPosition(3,1.5,2),e.root.addChild(l),console.log("Controllable 3D environment scaffolded from code!")};var OrthopaedicTheatreScaffolder=pc.createScript("orthopaedicTheatreScaffolder");OrthopaedicTheatreScaffolder.prototype.initialize=function(){var e=this.app,a=e.root.findByName("Camera");a&&a.destroy();var t=e.root.findByName("Light");t&&t.destroy();var o=new pc.Entity("SurgeonCamera");o.addComponent("camera",{clearColor:new pc.Color(.95,.98,1),nearClip:.1,farClip:100,fov:60}),o.setPosition(0,1.7,8),o.addComponent("script"),o.script.create("cameraController"),e.root.addChild(o);var n=new pc.Entity("MainSurgicalLight");n.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:3,range:15,innerConeAngle:15,outerConeAngle:35,castShadows:!0,shadowBias:.1,shadowDistance:20,shadowResolution:2048}),n.setPosition(0,4,0),n.setEulerAngles(90,0,0),e.root.addChild(n);var s=new pc.Entity("SecondarySurgicalLight");s.addComponent("light",{type:"spot",color:new pc.Color(1,.98,.92),intensity:2.5,range:12,innerConeAngle:20,outerConeAngle:40,castShadows:!0,shadowBias:.1}),s.setPosition(-1.5,3.8,-.5),s.setEulerAngles(75,15,0),e.root.addChild(s);var r=new pc.Entity("AmbientRoomLight");r.addComponent("light",{type:"directional",color:new pc.Color(.9,.95,1),intensity:.4,castShadows:!1}),r.setEulerAngles(30,45,0),e.root.addChild(r);var d=new pc.Entity("SterileFloor"),l=new pc.StandardMaterial;l.diffuse=new pc.Color(.92,.95,.98),l.metalness=.1,l.gloss=.8,l.useMetalness=!0,l.update(),d.addComponent("render",{type:"plane",material:l,receiveShadows:!0,castShadows:!1}),d.setLocalScale(20,1,15),e.root.addChild(d),this.createWall(e,"BackWall",0,2.5,-7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"FrontWall",0,2.5,7.5,20,5,.2,new pc.Color(.95,.97,1)),this.createWall(e,"LeftWall",-10,2.5,0,.2,5,15,new pc.Color(.95,.97,1)),this.createWall(e,"RightWall",10,2.5,0,.2,5,15,new pc.Color(.95,.97,1));var i=new pc.Entity("OperatingTableBase"),c=new pc.StandardMaterial;c.diffuse=new pc.Color(.8,.8,.85),c.metalness=.7,c.gloss=.6,c.useMetalness=!0,c.update(),i.addComponent("render",{type:"cylinder",material:c,castShadows:!0,receiveShadows:!0}),i.setLocalScale(.8,.7,.8),i.setPosition(0,.35,0),e.root.addChild(i);var p=new pc.Entity("OperatingTableSurface"),w=new pc.StandardMaterial;w.diffuse=new pc.Color(.9,.92,.95),w.metalness=.2,w.gloss=.9,w.useMetalness=!0,w.update(),p.addComponent("render",{type:"box",material:w,castShadows:!0,receiveShadows:!0}),p.setLocalScale(2.2,.1,.8),p.setPosition(0,.75,0),e.root.addChild(p);var h=new pc.Entity("AnesthesiaMachine"),S=new pc.StandardMaterial;S.diffuse=new pc.Color(.7,.75,.8),S.metalness=.8,S.useMetalness=!0,S.update(),h.addComponent("render",{type:"box",material:S,castShadows:!0,receiveShadows:!0}),h.setLocalScale(1.2,1.8,.8),h.setPosition(-4,.9,2),e.root.addChild(h);var C=new pc.Entity("InstrumentTable"),m=new pc.StandardMaterial;m.diffuse=new pc.Color(.85,.87,.9),m.metalness=.6,m.gloss=.8,m.useMetalness=!0,m.update(),C.addComponent("render",{type:"box",material:m,castShadows:!0,receiveShadows:!0}),C.setLocalScale(1.5,1.2,.8),C.setPosition(3,.6,-1),e.root.addChild(C);var u=new pc.Entity("XRayViewer"),y=new pc.StandardMaterial;y.diffuse=new pc.Color(.1,.1,.12),y.metalness=.9,y.useMetalness=!0,y.update(),u.addComponent("render",{type:"box",material:y,castShadows:!0,receiveShadows:!0}),u.setLocalScale(1.8,1.2,.1),u.setPosition(-4,2.5,-6),e.root.addChild(u);var g=new pc.Entity("XRayScreen"),f=new pc.StandardMaterial;f.diffuse=new pc.Color(.9,.95,1),f.emissive=new pc.Color(.3,.35,.4),f.update(),g.addComponent("render",{type:"box",material:f,castShadows:!1,receiveShadows:!1}),g.setLocalScale(1.6,1,.05),g.setPosition(-4,2.5,-5.9),e.root.addChild(g);var v=new pc.Entity("SurgicalLightArm1"),M=new pc.StandardMaterial;M.diffuse=new pc.Color(.9,.9,.92),M.metalness=.8,M.useMetalness=!0,M.update(),v.addComponent("render",{type:"cylinder",material:M,castShadows:!0,receiveShadows:!0}),v.setLocalScale(.15,2,.15),v.setPosition(0,3,0),e.root.addChild(v);var E=new pc.Entity("PatientBody"),L=new pc.StandardMaterial;L.diffuse=new pc.Color(.95,.85,.75),L.metalness=.1,L.gloss=.2,L.useMetalness=!0,L.update(),E.addComponent("render",{type:"box",material:L,castShadows:!0,receiveShadows:!0}),E.setLocalScale(.6,.3,1.8),E.setPosition(0,.95,0),e.root.addChild(E);var P=new pc.Entity("SurgicalDrape"),b=new pc.StandardMaterial;b.diffuse=new pc.Color(.8,.9,.95),b.metalness=0,b.gloss=.1,b.update(),P.addComponent("render",{type:"box",material:b,castShadows:!0,receiveShadows:!0}),P.setLocalScale(.8,.05,2),P.setPosition(0,1.15,0),e.root.addChild(P);var x=new pc.Entity("CArmXRayMachine"),A=new pc.StandardMaterial;A.diffuse=new pc.Color(.75,.78,.82),A.metalness=.7,A.useMetalness=!0,A.update(),x.addComponent("render",{type:"box",material:A,castShadows:!0,receiveShadows:!0}),x.setLocalScale(1,2.2,1.5),x.setPosition(5,1.1,3),e.root.addChild(x);var T=new pc.Entity("PowerToolsStation"),W=new pc.StandardMaterial;W.diffuse=new pc.Color(.6,.65,.7),W.metalness=.8,W.useMetalness=!0,W.update(),T.addComponent("render",{type:"box",material:W,castShadows:!0,receiveShadows:!0}),T.setLocalScale(.8,1.5,.6),T.setPosition(-3.5,.75,-2.5),e.root.addChild(T);var B=new pc.Entity("BoneCementMixer"),O=new pc.StandardMaterial;O.diffuse=new pc.Color(.85,.85,.88),O.metalness=.6,O.useMetalness=!0,O.update(),B.addComponent("render",{type:"cylinder",material:O,castShadows:!0,receiveShadows:!0}),B.setLocalScale(.4,.8,.4),B.setPosition(2.5,.4,2.5),e.root.addChild(B),console.log("Orthopaedic Operating Theatre scaffolded successfully!"),console.log("Environment includes:"),console.log("- Sterile room with clinical lighting"),console.log("- Central operating table with patient"),console.log("- Anesthesia machine and monitoring equipment"),console.log("- X-ray viewer and C-arm machine"),console.log("- Surgical instrument tables"),console.log("- Orthopaedic-specific equipment (drills, cement mixer)"),console.log("- Proper surgical lighting setup")},OrthopaedicTheatreScaffolder.prototype.createWall=function(e,a,t,o,n,s,r,d,l){var i=new pc.Entity(a),c=new pc.StandardMaterial;c.diffuse=l,c.metalness=.1,c.gloss=.3,c.useMetalness=!0,c.update(),i.addComponent("render",{type:"box",material:c,castShadows:!1,receiveShadows:!0}),i.setPosition(t,o,n),i.setLocalScale(s,r,d),e.root.addChild(i)};var InteractionController=pc.createScript("interactionController");InteractionController.attributes.add("interactionDistance",{type:"number",default:5,title:"Interaction Distance"}),InteractionController.attributes.add("highlightColor",{type:"rgba",default:[.4,.4,0,1],title:"Highlight Color (Emissive)"}),InteractionController.prototype.initialize=function(){this.highlightedEntity=null,this.originalEmissive=new pc.Color;const t=this.app.scene.layers.getLayerById(pc.LAYERID_IMMEDIATE),i=this.entity.camera,e=i.layers;-1===e.indexOf(t.id)&&(i.layers=e.concat(t.id)),console.log("Interaction Controller is active. Look at an object to highlight it, press 'F' to interact.")},InteractionController.prototype.update=function(t){if("undefined"!=typeof Ammo){var i=this.entity.getPosition(),e=(new pc.Vec3).copy(this.entity.forward).mulScalar(this.interactionDistance).add(i),n=this.app.systems.rigidbody.raycastFirst(i,e),o=n?n.entity:null;o!==this.highlightedEntity&&(this.highlightedEntity&&this.setHighlight(this.highlightedEntity,!1),o&&this.setHighlight(o,!0),this.highlightedEntity=o),this.app.keyboard.wasPressed(pc.KEY_F)&&this.highlightedEntity&&this.interactWith(this.highlightedEntity)}},InteractionController.prototype.interactWith=function(t){console.log("Interacting with:",t.name);var i=t;if(t.parent&&"VitalSignsMonitor"===t.parent.name&&(i=t.parent),"VitalSignsMonitor"===i.name){var e=i.findByName("MonitorScreen");if(e){void 0===e.isOn&&(e.isOn=!1),e.isOn=!e.isOn;var n=e.render.material;n.emissive.set(e.isOn?.5:0,e.isOn?.8:0,e.isOn?1:0),n.update(),console.log("Monitor screen state set to:",e.isOn?"ON":"OFF")}}else if("PatientBody"===t.name){var o=this.app.root.findByName("SurgicalDrape");o&&(o.enabled=!o.enabled,console.log("Surgical drape visibility set to:",o.enabled))}else if("MainSurgicalLight"===t.name)void 0===t.isAdjusted&&(t.isAdjusted=!1),t.isAdjusted=!t.isAdjusted,t.isAdjusted?(t.setEulerAngles(75,20,0),console.log("Surgical light adjusted.")):(t.setEulerAngles(90,0,0),console.log("Surgical light reset."));else if("XRayScreen"===t.name){void 0===t.colorIndex&&(t.colorIndex=0);var r=[new pc.Color(.9,.95,1),new pc.Color(.9,1,.9),new pc.Color(1,.9,.9)];t.colorIndex=(t.colorIndex+1)%r.length;var s=t.render.material;s.diffuse.copy(r[t.colorIndex]),s.update(),console.log("X-Ray screen color changed to index:",t.colorIndex)}},InteractionController.prototype.setHighlight=function(t,i){if((!t||"MonitorScreen"!==t.name)&&t&&t.render&&t.render.material){var e=t.render.material;i?(this.originalEmissive.copy(e.emissive),e.emissive.set(this.highlightColor.r,this.highlightColor.g,this.highlightColor.b)):e.emissive.copy(this.originalEmissive),e.update()}};var GameManager=pc.createScript("gameManager");GameManager.attributes.add("gameData",{type:"asset",assetType:"text",title:"Game Data JSON"}),GameManager.prototype.initialize=function(){this.storyData=null,this.currentLocation="tavern",this.currentRoom="start",this.isUiReady=!1,this.app.on("ui:choiceMade",this.onChoiceMade,this),this.app.on("ui:ready",this.onUiReady,this),this.gameData&&this.gameData.resource?(this.storyData=JSON.parse(this.gameData.resource),console.log("GameManager: Data loaded and parsed."),this.isUiReady&&this.displayCurrentState()):console.error("GameManager: Game Data JSON asset is not linked or has not loaded yet.")},GameManager.prototype.onUiReady=function(){console.log("GameManager: Received 'ui:ready' event."),this.isUiReady=!0,this.storyData&&this.displayCurrentState()},GameManager.prototype.displayCurrentState=function(){if(this.storyData&&this.isUiReady){var t=this.storyData[this.currentLocation][this.currentRoom];t?(console.log("GameManager: Firing 'story:display' event for room:",this.currentRoom),this.app.fire("story:display",{description:t.description,choices:t.choices})):console.error("GameManager: Could not find room data for:",this.currentLocation,this.currentRoom)}},GameManager.prototype.onChoiceMade=function(t){if(this.storyData){var a=this.storyData[this.currentLocation][this.currentRoom].transitions[t];if(a){if(a.includes("_")){var e=a.split("_");this.currentLocation=e[0],this.currentRoom=e[1]}else this.currentRoom=a;this.displayCurrentState()}else console.error("GameManager: No transition found for choice:",t)}};var GameAutoLocationDatabase=pc.createScript("gameAutoLocationDatabase");GameAutoLocationDatabase.prototype.initialize=function(){},GameAutoLocationDatabase.prototype.update=function(a){};var SceneIntegrationManager=pc.createScript("sceneIntegrationManager");SceneIntegrationManager.attributes.add("integrationRules",{type:"json",schema:[{name:"tagMatch",type:"string",default:"interactive"},{name:"scriptToAdd",type:"string",default:"interactionController"},{name:"componentConfig",type:"json",default:{}}],array:!0,title:"Integration Rules"}),SceneIntegrationManager.prototype.initialize=function(){this.sceneTypes={MEDICAL:"medical",SCIFI:"scifi",FANTASY:"fantasy",CUSTOM:"custom"},this.currentSceneType=null,this.mappings=new Map,this.app.on("scene:loaded",this.onSceneLoaded,this),this.app.on("scene:analyze",this.analyzeScene,this),this.integrationRules&&0!==this.integrationRules.length||this.setupDefaultRules(),console.log("[Integration] Scene Integration Manager ready")},SceneIntegrationManager.prototype.setupDefaultRules=function(){this.integrationRules=[{tagMatch:"interactive",scriptToAdd:"dynamicInteraction",componentConfig:{interactionDistance:5}},{tagMatch:"character",scriptToAdd:"characterBehavior",componentConfig:{dialogueEnabled:!0}}]},SceneIntegrationManager.prototype.onSceneLoaded=function(e){switch(console.log("[Integration] Processing loaded scene..."),this.currentSceneType=this.detectSceneType(e),console.log(`[Integration] Detected scene type: ${this.currentSceneType}`),this.currentSceneType){case this.sceneTypes.MEDICAL:this.integrateMedicalScene(e);break;case this.sceneTypes.SCIFI:this.integrateSciFiScene(e);break;default:this.integrateGenericScene(e)}this.applyIntegrationRules(e),this.generateSceneReport(e)},SceneIntegrationManager.prototype.detectSceneType=function(e){const t=[],n=new Set,collectData=e=>{t.push(e.name.toLowerCase()),e.tags._list.forEach((e=>n.add(e.toLowerCase()))),e.children.forEach(collectData)};return e.children.forEach(collectData),t.some((e=>e.includes("patient")||e.includes("surgical")||e.includes("medical")))?this.sceneTypes.MEDICAL:n.has("alien")||n.has("robot")||n.has("spacecraft")?this.sceneTypes.SCIFI:this.sceneTypes.CUSTOM},SceneIntegrationManager.prototype.integrateSciFiScene=function(e){console.log("[Integration] Applying Sci-Fi scene integration...");e.findByTag("interactive").forEach((e=>{let t="default";e.tags._list.forEach((e=>{e.startsWith("ui_display_")&&(t=e.replace("ui_display_",""))})),this.mappings.set(e.name,{type:"interactive",interactionType:t,gameEvent:this.mapInteractionToGameEvent(t)}),this.addInteractionFeedback(e)}));e.findByTag("character").forEach((e=>{this.processSciFiCharacter(e)}))},SceneIntegrationManager.prototype.mapInteractionToGameEvent=function(e){return{toggle:"story:choice",button:"story:action",screen:"story:display",overlay:"ui:overlay",cursor:"ui:focus",window:"ui:window"}[e]||"interaction:generic"},SceneIntegrationManager.prototype.processSciFiCharacter=function(e){const t={name:e.name,role:null,background:null,skills:[],traits:[],equipment:[]};e.tags._list.forEach((e=>{e.startsWith("role_")?t.role=e.replace("role_",""):e.startsWith("background_")?t.background=e.replace("background_",""):e.startsWith("skill_")?t.skills.push(e.replace("skill_","")):e.startsWith("trait_")?t.traits.push(e.replace("trait_","")):e.startsWith("equipment_")&&t.equipment.push(e.replace("equipment_",""))})),this.mappings.set(e.name,{type:"character",data:t}),e.script||e.addComponent("script"),this.addCharacterController(e,t)},SceneIntegrationManager.prototype.addCharacterController=function(e,t){const n=pc.createScript("characterBehavior_"+e.name);n.prototype.initialize=function(){this.data=t,this.interactionDistance=3,this.player=this.app.root.findByName("SurgeonCamera")||this.app.root.findByName("player")},n.prototype.update=function(e){if(!this.player)return;this.entity.getPosition().distance(this.player.getPosition())<this.interactionDistance?this.nearPlayer||(this.nearPlayer=!0,this.app.fire("character:nearby",this.entity.name,this.data)):this.nearPlayer=!1},pc.registerScript(n,"characterBehavior_"+e.name),e.script.create("characterBehavior_"+e.name)},SceneIntegrationManager.prototype.addInteractionFeedback=function(e){if(!e.render)return;const t=e.render.material;t&&(e.originalEmissive=t.emissive.clone(),e.highlightColor=new pc.Color(.3,.3,.5))},SceneIntegrationManager.prototype.applyIntegrationRules=function(e){console.log("[Integration] Applying custom integration rules..."),this.integrationRules.forEach((t=>{e.findByTag(t.tagMatch).forEach((e=>{if(console.log(`[Integration] Applying rule to ${e.name}: ${t.scriptToAdd}`),e.script||e.addComponent("script"),pc.ScriptRegistry.get(t.scriptToAdd)){if(!e.script.has(t.scriptToAdd)){e.script.create(t.scriptToAdd,{attributes:t.componentConfig})}}else console.warn(`[Integration] Script '${t.scriptToAdd}' not found in registry`)}))}))},SceneIntegrationManager.prototype.generateSceneReport=function(e){const t={sceneType:this.currentSceneType,stats:{totalEntities:0,characters:[],interactives:[],unmappedEntities:[]},mappings:[]},processEntity=e=>{t.stats.totalEntities++;const n=this.mappings.get(e.name);n?(t.mappings.push({entity:e.name,mapping:n}),"character"===n.type?t.stats.characters.push(n.data):"interactive"===n.type&&t.stats.interactives.push({name:e.name,type:n.interactionType,event:n.gameEvent})):e.script&&e.script._scripts.length>0&&t.stats.unmappedEntities.push(e.name),e.children.forEach(processEntity)};return e.children.forEach(processEntity),console.log("[Integration] Scene Report:"),console.log("========================"),console.log(`Type: ${t.sceneType}`),console.log(`Total Entities: ${t.stats.totalEntities}`),console.log(`Characters: ${t.stats.characters.length}`),console.log(`Interactives: ${t.stats.interactives.length}`),console.log(`Unmapped: ${t.stats.unmappedEntities.length}`),console.log("========================"),this.lastReport=t,this.app.fire("scene:report",t),t},SceneIntegrationManager.prototype.getEntityMapping=function(e){return this.mappings.get(e)},SceneIntegrationManager.prototype.getMappingsByType=function(e){const t=[];return this.mappings.forEach(((n,a)=>{n.type===e&&t.push({entity:a,...n})})),t},SceneIntegrationManager.prototype.analyzeScene=function(){const e=this.app.root.findComponent("sceneLoader");return e&&e.currentSceneRoot?this.generateSceneReport(e.currentSceneRoot):null};var StorySceneBridge=pc.createScript("storySceneBridge");StorySceneBridge.attributes.add("sceneMapping",{type:"json",schema:[{name:"storyLocation",type:"string",default:"tavern"},{name:"sceneUrl",type:"string",default:""},{name:"sceneType",type:"string",default:"medical"}],array:!0,title:"Story Location to Scene Mapping"}),StorySceneBridge.prototype.initialize=function(){this.gameManager=null,this.sceneLoader=null,this.integrationManager=null,this.currentStoryLocation=null,this.interactionMappings=new Map,this.findRequiredComponents(),this.app.on("story:display",this.onStoryDisplay,this),this.app.on("ui:choiceMade",this.onChoiceMade,this),this.app.on("interaction:triggered",this.onSceneInteraction,this),this.app.on("character:nearby",this.onCharacterNearby,this),this.setupDebugCommands(),console.log("[Bridge] Story-Scene Bridge initialized")},StorySceneBridge.prototype.findRequiredComponents=function(){const e=this.app.root.findComponent("script",(e=>e.has("gameManager")));e&&(this.gameManager=e.entity.script.gameManager);const t=this.app.root.findComponent("script",(e=>e.has("sceneLoader")));t&&(this.sceneLoader=t.entity.script.sceneLoader);const n=this.app.root.findComponent("script",(e=>e.has("sceneIntegrationManager")));n&&(this.integrationManager=n.entity.script.sceneIntegrationManager)},StorySceneBridge.prototype.setupDebugCommands=function(){this.app.keyboard.on(pc.EVENT_KEYDOWN,(e=>{switch(e.key){case pc.KEY_I:this.showCurrentState();break;case pc.KEY_M:this.showMappings();break;case pc.KEY_T:this.testInteraction()}}))},StorySceneBridge.prototype.onStoryDisplay=function(e){if(this.gameManager){const e=this.gameManager.currentLocation;e!==this.currentStoryLocation&&(console.log(`[Bridge] Story location changed: ${this.currentStoryLocation} -> ${e}`),this.currentStoryLocation=e,this.checkSceneTransition(e))}this.mapChoicesToScene(e.choices)},StorySceneBridge.prototype.checkSceneTransition=function(e){const t=this.sceneMapping.find((t=>t.storyLocation===e));t?(console.log(`[Bridge] Loading scene for location: ${e}`),this.sceneLoader&&(this.currentSceneMapping=t,t.sceneUrl&&(this.sceneLoader.sceneSource="url",this.sceneLoader.sceneUrl=t.sceneUrl,this.sceneLoader.loadScene()))):console.log(`[Bridge] No scene mapping for location: ${e}`)},StorySceneBridge.prototype.mapChoicesToScene=function(e){if(!e||!this.integrationManager)return;this.interactionMappings.clear();const t=this.integrationManager.getMappingsByType("interactive");e.forEach(((e,n)=>{if(n<t.length){const o=t[n];this.interactionMappings.set(o.entity,{choice:e,index:n}),console.log(`[Bridge] Mapped "${e}" to ${o.entity}`),this.updateInteractiveVisual(o.entity,e)}}))},StorySceneBridge.prototype.updateInteractiveVisual=function(e,t){if(!this.sceneLoader)return;const n=this.sceneLoader.findInScene(e);if(n&&!n.findByName("ChoiceLabel")){const e=new pc.Entity("ChoiceLabel");e.addComponent("element",{type:"text",text:t,fontSize:16,color:new pc.Color(1,1,1),opacity:.8}),e.setLocalPosition(0,2,0),n.addChild(e),e.addComponent("script");const o=pc.createScript("billboard");o.prototype.update=function(){const e=this.app.root.findByName("SurgeonCamera");e&&this.entity.lookAt(e.getPosition())},pc.registerScript(o,"billboard"),e.script.create("billboard")}},StorySceneBridge.prototype.onSceneInteraction=function(e){console.log(`[Bridge] Scene interaction with: ${e}`);const t=this.interactionMappings.get(e);t?(console.log(`[Bridge] Triggering story choice: "${t.choice}"`),this.app.fire("ui:choiceMade",t.choice)):this.handleUnmappedInteraction(e)},StorySceneBridge.prototype.onCharacterNearby=function(e,t){console.log(`[Bridge] Character nearby: ${e}`,t);const n=this.generateCharacterDescription(t);this.app.fire("story:display",{description:n,choices:this.generateCharacterChoices(t)})},StorySceneBridge.prototype.generateCharacterDescription=function(e){const{role:t,background:n,traits:o}=e;let i=`You encounter a ${t}`;return n&&(i+=` with a ${n} background`),o&&o.length>0&&(i+=`. They appear to be ${o.join(" and ")}`),i+=".",i},StorySceneBridge.prototype.generateCharacterChoices=function(e){const t=[];return e.skills&&e.skills.includes("Diplomacy")&&t.push("Negotiate peacefully"),e.equipment&&e.equipment.includes("Scanner")&&t.push("Ask about their equipment"),t.push("Greet them"),t.push("Walk away"),t},StorySceneBridge.prototype.handleUnmappedInteraction=function(e){if(!this.integrationManager)return;const t=this.integrationManager.getEntityMapping(e);t&&t.gameEvent&&(console.log(`[Bridge] Firing game event: ${t.gameEvent}`),this.app.fire(t.gameEvent,e))},StorySceneBridge.prototype.onChoiceMade=function(e){console.log(`[Bridge] Story choice made: "${e}"`),this.interactionMappings.forEach(((t,n)=>{t.choice===e&&this.showChoiceFeedback(n)}))},StorySceneBridge.prototype.showChoiceFeedback=function(e){if(!this.sceneLoader)return;const t=this.sceneLoader.findInScene(e);if(!t)return;const n=t.getLocalScale().clone();t.setLocalScale(1.2*n.x,1.2*n.y,1.2*n.z),setTimeout((()=>{t.setLocalScale(n)}),200)},StorySceneBridge.prototype.showCurrentState=function(){if(console.log("[Bridge] Current State:"),console.log("==================="),console.log(`Story Location: ${this.currentStoryLocation}`),console.log(`Active Mappings: ${this.interactionMappings.size}`),this.sceneLoader){const e=this.sceneLoader.getSceneStats();console.log(`Scene Loaded: ${e.loaded}`),e.loaded&&(console.log(`- Entities: ${e.entityCount}`),console.log(`- Characters: ${e.characters.length}`),console.log(`- Interactives: ${e.interactives.length}`))}console.log("===================")},StorySceneBridge.prototype.showMappings=function(){console.log("[Bridge] Current Interaction Mappings:"),console.log("===================================="),this.interactionMappings.forEach(((e,t)=>{console.log(`${t} -> "${e.choice}"`)})),console.log("====================================")},StorySceneBridge.prototype.testInteraction=function(){console.log("[Bridge] Testing first mapped interaction...");const e=this.interactionMappings.entries().next().value;if(e){const[t,n]=e;console.log(`[Bridge] Simulating interaction with ${t}`),this.onSceneInteraction(t)}else console.log("[Bridge] No mappings available to test")};var SceneLoader=pc.createScript("sceneLoader");SceneLoader.attributes.add("sceneSource",{type:"string",enum:[{url:"URL"},{asset:"Asset"},{text:"Text Input"}],default:"url",title:"Scene Source Type"}),SceneLoader.attributes.add("sceneUrl",{type:"string",default:"",title:"Scene URL",description:"URL to fetch dynamic scene from"}),SceneLoader.attributes.add("sceneAsset",{type:"asset",assetType:"text",title:"Scene Asset",description:"Text asset containing scene code"}),SceneLoader.attributes.add("autoLoad",{type:"boolean",default:!1,title:"Auto Load on Start"}),SceneLoader.prototype.initialize=function(){this.currentSceneRoot=null,this.preservedEntities=new Set,this.app.on("scene:load",this.loadScene,this),this.app.on("scene:unload",this.unloadCurrentScene,this),this.app.on("scene:reload",this.reloadScene,this),this.setupDebugUI(),this.autoLoad&&this.loadScene(),console.log("SceneLoader initialized. Commands:"),console.log("- Press L to load dynamic scene"),console.log("- Press U to unload dynamic scene"),console.log("- Press R to reload scene")},SceneLoader.prototype.setupDebugUI=function(){this.app.keyboard.on(pc.EVENT_KEYDOWN,(function(e){switch(e.key){case pc.KEY_L:console.log("[SceneLoader] Loading dynamic scene..."),this.loadScene();break;case pc.KEY_U:console.log("[SceneLoader] Unloading dynamic scene..."),this.unloadCurrentScene();break;case pc.KEY_R:console.log("[SceneLoader] Reloading scene..."),this.reloadScene()}}),this)},SceneLoader.prototype.loadScene=function(e){this.unloadCurrentScene();let t="";if(e&&"string"==typeof e)t=e;else switch(this.sceneSource){case"url":return void this.loadFromUrl(this.sceneUrl);case"asset":if(!this.sceneAsset||!this.sceneAsset.resource)return void console.error("[SceneLoader] Scene asset not found");t=this.sceneAsset.resource;break;case"text":t=this._textSceneCode||""}t&&this.executeSceneCode(t)},SceneLoader.prototype.loadFromUrl=function(e){e?fetch(e).then((e=>e.text())).then((e=>{console.log("[SceneLoader] Scene loaded from URL"),this.executeSceneCode(e)})).catch((e=>{console.error("[SceneLoader] Failed to load scene from URL:",e)})):console.error("[SceneLoader] No URL specified")},SceneLoader.prototype.executeSceneCode=function(e){console.log("[SceneLoader] Executing scene code..."),this.currentSceneRoot=new pc.Entity("DynamicSceneRoot"),this.app.root.addChild(this.currentSceneRoot);const t={pc:pc,app:this.app,sceneRoot:this.currentSceneRoot,_originalAddChild:this.app.root.addChild.bind(this.app.root)},n=`\n (function() {\n // Store original app.root.addChild\n const originalAddChild = app.root.addChild.bind(app.root);\n \n // Override to add to scene root instead\n app.root.addChild = function(entity) {\n // Check if this is a preserved entity\n if (entity.tags.has('preserve') || \n entity.name === 'SurgeonCamera' || \n entity.name === 'UIScreen') {\n originalAddChild(entity);\n } else {\n sceneRoot.addChild(entity);\n }\n };\n \n // Execute the scene code\n ${e}\n \n // Restore original function\n app.root.addChild = originalAddChild;\n \n // Post-process the scene\n app.fire('scene:loaded', sceneRoot);\n })();\n `;try{new Function(...Object.keys(t),n)(...Object.values(t)),console.log("[SceneLoader] Scene loaded successfully"),this.integrateScene()}catch(e){console.error("[SceneLoader] Failed to execute scene code:",e),this.currentSceneRoot&&(this.currentSceneRoot.destroy(),this.currentSceneRoot=null)}},SceneLoader.prototype.integrateScene=function(){if(!this.currentSceneRoot)return;console.log("[SceneLoader] Integrating dynamic scene...");this.currentSceneRoot.findComponents("script").forEach((e=>{const t=e.entity;t.tags.has("interactive")&&(t.script.has("interactionController")||console.log(`[SceneLoader] Adding interactionController to ${t.name}`)),t.tags.has("character")&&console.log(`[SceneLoader] Found character: ${t.name}`)})),this.resolveConflicts(),this.app.fire("scene:integrated",this.currentSceneRoot)},SceneLoader.prototype.resolveConflicts=function(){this.currentSceneRoot.findComponents("camera").forEach((e=>{console.log(`[SceneLoader] Disabling dynamic camera: ${e.entity.name}`),e.enabled=!1}));const e=this.currentSceneRoot.findComponents("light");e.length>0&&console.log(`[SceneLoader] Found ${e.length} dynamic lights`)},SceneLoader.prototype.unloadCurrentScene=function(){this.currentSceneRoot&&(console.log("[SceneLoader] Unloading current scene..."),this.currentSceneRoot.destroy(),this.currentSceneRoot=null,this.app.fire("scene:unloaded"))},SceneLoader.prototype.reloadScene=function(){console.log("[SceneLoader] Reloading scene..."),this.loadScene()},SceneLoader.prototype.setTextScene=function(e){this._textSceneCode=e},SceneLoader.prototype.getSceneRoot=function(){return this.currentSceneRoot},SceneLoader.prototype.findInScene=function(e){return this.currentSceneRoot?this.currentSceneRoot.findByName(e):null},SceneLoader.prototype.getSceneStats=function(){if(!this.currentSceneRoot)return{loaded:!1};const e={loaded:!0,entityCount:0,characters:[],interactives:[],scripts:[]},processEntity=t=>{e.entityCount++,t.tags.has("character")&&e.characters.push({name:t.name,tags:Array.from(t.tags._list)}),t.tags.has("interactive")&&e.interactives.push({name:t.name,tags:Array.from(t.tags._list)}),t.script&&t.script._scripts.forEach((n=>{e.scripts.push({entity:t.name,script:n.__scriptType.__name})})),t.children.forEach(processEntity)};return this.currentSceneRoot.children.forEach(processEntity),e};var ControlManager=pc.createScript("controlManager");ControlManager.attributes.add("showControlsOnStart",{type:"boolean",default:!0,title:"Show Controls on Start"}),ControlManager.prototype.initialize=function(){this.modes={GAMEPLAY:"gameplay",UI_INTERACTION:"ui_interaction",DEBUG:"debug"},this.currentMode=this.modes.GAMEPLAY,this.controlMappings={[this.modes.GAMEPLAY]:{W:"move_forward",S:"move_backward",A:"move_left",D:"move_right",Q:"rotate_left",E:"rotate_right",UP:"look_up",DOWN:"look_down",F:"interact",TAB:"toggle_ui",SPACE:"jump"},[this.modes.UI_INTERACTION]:{TAB:"toggle_ui",ESCAPE:"close_ui","1-9":"select_choice"},[this.modes.DEBUG]:{L:"load_scene",U:"unload_scene",R:"reload_scene",C:"show_catalog",I:"show_info",M:"show_mappings",H:"show_help"}},this.activeKeys=new Set,this.blockedKeys=new Set,this.setupInputListeners(),this.app.on("ui:toggled",this.onUIToggled,this),this.showControlsOnStart&&this.showCurrentControls(),console.log("[ControlManager] Initialized - Press F1 for help")},ControlManager.prototype.setupInputListeners=function(){this.app.keyboard.on(pc.EVENT_KEYDOWN,this.onKeyDown,this),this.app.keyboard.on(pc.EVENT_KEYUP,this.onKeyUp,this)},ControlManager.prototype.onKeyDown=function(o){const e=this.getKeyName(o.key);if(o.key===pc.KEY_F1)return o.event.preventDefault(),void this.showFullHelp();if(this.blockedKeys.has(e))return;this.activeKeys.add(e);const t=this.getActionForKey(e);t&&(this.app.fire(`control:${this.currentMode}:${t}`,o),this.app.fire("control:action",{mode:this.currentMode,action:t,key:e}),["TAB","SPACE"].includes(e)&&o.event.preventDefault())},ControlManager.prototype.onKeyUp=function(o){const e=this.getKeyName(o.key);this.activeKeys.delete(e)},ControlManager.prototype.getKeyName=function(o){const e={[pc.KEY_W]:"W",[pc.KEY_A]:"A",[pc.KEY_S]:"S",[pc.KEY_D]:"D",[pc.KEY_Q]:"Q",[pc.KEY_E]:"E",[pc.KEY_F]:"F",[pc.KEY_R]:"R",[pc.KEY_L]:"L",[pc.KEY_U]:"U",[pc.KEY_C]:"C",[pc.KEY_I]:"I",[pc.KEY_M]:"M",[pc.KEY_H]:"H",[pc.KEY_TAB]:"TAB",[pc.KEY_SPACE]:"SPACE",[pc.KEY_ESCAPE]:"ESCAPE",[pc.KEY_UP]:"UP",[pc.KEY_DOWN]:"DOWN",[pc.KEY_LEFT]:"LEFT",[pc.KEY_RIGHT]:"RIGHT",[pc.KEY_F1]:"F1"};for(let o=1;o<=9;o++)e[pc.KEY_1+o-1]=o.toString();return e[o]||"UNKNOWN"},ControlManager.prototype.getActionForKey=function(o){const e=this.controlMappings[this.currentMode];return e[o]?e[o]:this.currentMode===this.modes.UI_INTERACTION&&/^[1-9]$/.test(o)?"select_choice_"+o:null},ControlManager.prototype.setMode=function(o){if(void 0===this.modes[o])return void console.error(`[ControlManager] Unknown mode: ${o}`);const e=this.currentMode;this.currentMode=this.modes[o],console.log(`[ControlManager] Mode changed: ${e} -> ${this.currentMode}`),this.activeKeys.clear(),this.app.fire("control:modeChanged",{previous:e,current:this.currentMode}),this.showCurrentControls()},ControlManager.prototype.onUIToggled=function(o){o?this.blockGameplayControls():this.unblockGameplayControls()},ControlManager.prototype.blockGameplayControls=function(){["W","A","S","D","Q","E","UP","DOWN","SPACE","F"].forEach((o=>this.blockedKeys.add(o))),console.log("[ControlManager] Gameplay controls blocked (UI active)")},ControlManager.prototype.unblockGameplayControls=function(){this.blockedKeys.clear(),console.log("[ControlManager] Gameplay controls unblocked")},ControlManager.prototype.showCurrentControls=function(){console.log(`\n=== CONTROLS (${this.currentMode.toUpperCase()}) ===`);const o=this.controlMappings[this.currentMode];Object.entries({movement:["W","S","A","D"],camera:["Q","E","UP","DOWN"],interaction:["F","TAB"],debug:["L","U","R","C","I","M","H"]}).forEach((([e,t])=>{const n=t.filter((e=>o[e]));n.length>0&&(console.log(`\n${e.toUpperCase()}:`),n.forEach((e=>{console.log(` ${e} - ${o[e].replace(/_/g," ")}`)})))})),this.blockedKeys.size>0&&console.log("\nBLOCKED: "+Array.from(this.blockedKeys).join(", ")),console.log("\nPress F1 for full help"),console.log("===================\n")},ControlManager.prototype.showFullHelp=function(){console.log("\n=== COMPLETE CONTROL REFERENCE ==="),console.log("\nGAMEPLAY MODE:"),console.log(" Movement: WASD"),console.log(" Camera: Q/E (rotate), Arrow Keys (pitch)"),console.log(" Interact: F (with objects)"),console.log(" UI: TAB (toggle story panel)"),console.log("\nUI INTERACTION MODE:"),console.log(" TAB - Close UI and return to game"),console.log(" 1-9 - Select story choices"),console.log(" ESC - Close UI"),console.log("\nDEBUG MODE (when implemented):"),console.log(" L - Load dynamic scene"),console.log(" U - Unload scene"),console.log(" R - Reload scene"),console.log(" C - Show scene catalog"),console.log(" I - Show current info"),console.log(" M - Show mappings"),console.log("\nCURRENT STATE:"),console.log(` Mode: ${this.currentMode}`),console.log(` Active Keys: ${Array.from(this.activeKeys).join(", ")||"none"}`),console.log(` Blocked Keys: ${Array.from(this.blockedKeys).join(", ")||"none"}`),console.log("================================\n")},ControlManager.prototype.isKeyActive=function(o){return this.activeKeys.has(o)},ControlManager.prototype.isActionActive=function(o){for(const e of this.activeKeys)if(this.getActionForKey(e)===o)return!0;return!1},ControlManager.prototype.blockKey=function(o){this.blockedKeys.add(o)},ControlManager.prototype.unblockKey=function(o){this.blockedKeys.delete(o)},ControlManager.prototype.getCurrentMode=function(){return this.currentMode};var UiController=pc.createScript("uiController");UiController.attributes.add("descriptionElement",{type:"entity",title:"Description Text Entity"}),UiController.attributes.add("choicesContainer",{type:"entity",title:"Choices Container Entity"}),UiController.attributes.add("choiceButtonTemplate",{type:"asset",assetType:"template",title:"Choice Button Template"}),UiController.attributes.add("uiPanel",{type:"entity",title:"UI Panel Entity",description:"The main panel that contains all UI elements"}),UiController.prototype.initialize=function(){this.app.on("story:display",this.onDisplay,this),console.log("UiController: Initialized and listening for 'story:display' events."),this.isVisible=!0,this.setupToggleControls(),this.setupTextWrapping(),this.validateSetup(),console.log("=== UI CONTROLS ==="),console.log("Press TAB to toggle story UI"),console.log("Press H to show/hide this help"),console.log("=================="),this.app.fire("ui:ready"),console.log("UiController: Fired 'ui:ready' event.")},UiController.prototype.setupToggleControls=function(){this.app.keyboard.on(pc.EVENT_KEYDOWN,(function(e){switch(e.key){case pc.KEY_TAB:e.event.preventDefault(),this.toggleUI();break;case pc.KEY_H:this.showHelp()}}),this)},UiController.prototype.setupTextWrapping=function(){this.descriptionElement&&this.descriptionElement.element&&(this.descriptionElement.element.autoWidth=!1,this.descriptionElement.element.wrapLines=!0,this.descriptionElement.element.width=600,this.descriptionElement.element.fontSize||(this.descriptionElement.element.fontSize=16),this.descriptionElement.element.alignment=pc.Vec2.ZERO,this.descriptionElement.element.margin=new pc.Vec4(20,20,20,20),console.log("UiController: Text wrapping configured"))},UiController.prototype.toggleUI=function(){this.isVisible=!this.isVisible,this.uiPanel?this.uiPanel.enabled=this.isVisible:(this.descriptionElement&&(this.descriptionElement.enabled=this.isVisible),this.choicesContainer&&(this.choicesContainer.enabled=this.isVisible)),console.log("[UI] Story UI "+(this.isVisible?"shown":"hidden")),this.app.fire("ui:toggled",this.isVisible)},UiController.prototype.showHelp=function(){console.log("\n=== UI HELP ==="),console.log("TAB - Toggle story UI visibility"),console.log("H - Show this help"),console.log("F - Interact with objects (when UI is hidden)"),console.log("WASD - Move"),console.log("Q/E - Rotate camera"),console.log("===============\n")},UiController.prototype.validateSetup=function(){console.log("UiController: Validating setup..."),this.descriptionElement||console.error("UiController VALIDATION ERROR: 'Description Text Entity' is not assigned in the editor!"),this.choicesContainer||console.error("UiController VALIDATION ERROR: 'Choices Container Entity' is not assigned in the editor!"),this.choiceButtonTemplate?"template"!==this.choiceButtonTemplate.type&&console.error("UiController VALIDATION ERROR: The asset assigned to 'Choice Button Template' must be a Template asset."):console.error("UiController VALIDATION ERROR: 'Choice Button Template' asset is not assigned in the editor!"),this.uiPanel||console.warn("UiController: 'UI Panel Entity' not assigned. Toggle will affect individual elements.")},UiController.prototype.onDisplay=function(e){console.log("UiController: Received 'story:display' event."),e?(this.isVisible||this.toggleUI(),this.updateDescription(e.description),this.updateChoices(e.choices)):console.error("UiController: Received event but data was null or undefined.")},UiController.prototype.updateDescription=function(e){this.descriptionElement&&this.descriptionElement.element&&(this.descriptionElement.element.text=e||"Description text is missing.",this.descriptionElement.element._text.width=this.descriptionElement.element.width,this.descriptionElement.element._text.autoFitWidth=!1,this.descriptionElement.element._text.wrapLines=!0)},UiController.prototype.updateChoices=function(e){if(this.choicesContainer){for(;this.choicesContainer.children.length>0;)this.choicesContainer.children[0].destroy();e&&e.length>0&&e.forEach(((e,t)=>{this.createChoiceButton(e,t)}))}},UiController.prototype.createChoiceButton=function(e,t){if(this.choiceButtonTemplate&&this.choiceButtonTemplate.resource){var i=this.choiceButtonTemplate.resource.instantiate();this.choicesContainer.addChild(i);var o=i.element,n=t%2,s=Math.floor(t/2);o.width=280,o.height=50;var l=0===n?10:-290,r=-(60*s+20);0===n?(o.anchor=new pc.Vec4(0,1,0,1),o.pivot=new pc.Vec2(0,1)):(o.anchor=new pc.Vec4(1,1,1,1),o.pivot=new pc.Vec2(1,1)),i.setLocalPosition(l,r,0);var c=i.findByName("ButtonText");c&&c.element&&(c.element.text=e,c.element.wrapLines=!0,c.element.width=260,c.element.fontSize=14,c.element.alignment=new pc.Vec2(.5,.5)),i.button&&(i.button.on("click",(function(){console.log(`[UI] Choice selected: "${e}"`),this.app.fire("ui:choiceMade",e)}),this),i.button.on("mouseenter",(function(){i.setLocalScale(1.05,1.05,1)})),i.button.on("mouseleave",(function(){i.setLocalScale(1,1,1)})))}},UiController.prototype.show=function(){this.isVisible||this.toggleUI()},UiController.prototype.hide=function(){this.isVisible&&this.toggleUI()},UiController.prototype.isUIVisible=function(){return this.isVisible};var UiDebugFix=pc.createScript("uiDebugFix");UiDebugFix.prototype.initialize=function(){console.log("=== UI DEBUG STARTING ==="),setTimeout((()=>{this.debugAndFix()}),100),this.app.on("story:display",(()=>{setTimeout((()=>{this.debugAndFix()}),100)}))},UiDebugFix.prototype.debugAndFix=function(){console.log("\n=== CHECKING UI ELEMENTS ===");const e=this.app.root.findByName("DescriptionText");e&&e.element?(console.log("DescriptionText found!"),console.log("- Current width:",e.element.width),console.log("- Auto width:",e.element.autoWidth),console.log("- Wrap lines:",e.element.wrapLines),console.log("- Font size:",e.element.fontSize),console.log("- Text content:",e.element.text?.substring(0,50)+"..."),console.log("\nFIXING TEXT SETTINGS..."),e.element.autoWidth=!1,e.element.width=1400,e.element.wrapLines=!0,e.element.fontSize=20,e.element.lineHeight=30,e.element.anchor=e.element.anchor,e.element._calculateSize(),console.log("Text settings fixed!")):console.error("DescriptionText NOT FOUND!");const o=this.app.root.findByName("ChoicesContainer");if(o){console.log("\nChoicesContainer found!"),console.log("- Number of buttons:",o.children.length),console.log("- Container width:",o.element?.width||"No element component");const e=o.children;if(e.length>0){console.log("\nFIXING BUTTON POSITIONS...");const o=350,n=60,t=20,l=e.length,i=-(o*l+t*(l-1))/2+o/2;e.forEach(((e,l)=>{e.element&&(e.element.width=o,e.element.height=n,e.enabled=!0,console.log(`- Button ${l+1}: "${e.name}"`));const s=i+l*(o+t);e.setLocalPosition(s,0,0);const c=e.findByName("ButtonText");c&&c.element&&(c.element.width=o-30,c.element.wrapLines=!0,console.log(` Text: "${c.element.text}"`))})),console.log("Button positions fixed!")}else console.log("No buttons found in container!")}else console.error("ChoicesContainer NOT FOUND!");const n=this.app.root.findByName("GameUIPanel");n&&(console.log("\nGameUIPanel found!"),n.element&&(console.log("- Width:",n.element.width),console.log("- Height:",n.element.height),console.log("- Type:",n.element.type))),console.log("\n=== DEBUG COMPLETE ===\n")},UiDebugFix.prototype.update=function(e){if(this.app.keyboard.wasPressed(pc.KEY_X)&&(console.log("Manual fix triggered!"),this.debugAndFix()),this.app.keyboard.wasPressed(pc.KEY_V)){const e=this.app.root.findByName("ChoicesContainer");e&&e.children.forEach(((e,o)=>{e.enabled=!0,console.log(`Button ${o} enabled:`,e.name)}))}};var SimpleSceneLoader=pc.createScript("simpleSceneLoader");SimpleSceneLoader.prototype.initialize=function(){console.log("=== SCENE LOADER READY ==="),console.log("Press 1 to load a test scene"),console.log("Press 2 to unload test scene"),console.log("========================"),this.testSceneRoot=null,this.app.keyboard.on(pc.EVENT_KEYDOWN,this.onKeyDown,this)},SimpleSceneLoader.prototype.onKeyDown=function(e){e.key===pc.KEY_1?this.loadTestScene():e.key===pc.KEY_2&&this.unloadTestScene()},SimpleSceneLoader.prototype.loadTestScene=function(){if(this.testSceneRoot)console.log("Test scene already loaded");else{console.log("Loading test scene..."),this.testSceneRoot=new pc.Entity("TestSceneRoot"),this.app.root.addChild(this.testSceneRoot);var e=new pc.Entity("TestCube");e.addComponent("render",{type:"box"}),e.setPosition(3,1,-3),e.setLocalScale(.5,2,.5);var t=new pc.StandardMaterial;t.diffuse.set(0,.5,1),t.emissive.set(0,.2,.5),t.update(),e.render.material=t,e.addComponent("script"),e.script.create("rotator",{attributes:{speed:30}}),this.testSceneRoot.addChild(e),console.log("Test scene loaded!")}},SimpleSceneLoader.prototype.unloadTestScene=function(){this.testSceneRoot&&(this.testSceneRoot.destroy(),this.testSceneRoot=null,console.log("Test scene unloaded"))};var Rotator=pc.createScript("rotator");Rotator.attributes.add("speed",{type:"number",default:30}),Rotator.prototype.update=function(e){this.entity.rotate(0,this.speed*e,0)};var HuggingFaceSceneLoader=pc.createScript("huggingFaceSceneLoader");HuggingFaceSceneLoader.prototype.initialize=function(){this.baseUrl="https://huggingface.co/datasets/KwabsHug/playcanvas-scenes-experiment/resolve/main/",this.currentSceneRoot=null,this.catalog=null,this.catalogLoaded=!1,console.log("=== HF SCENE LOADER READY ==="),console.log("Dataset: KwabsHug/playcanvas-scenes-experiment"),console.log("Press C to load scene catalog"),console.log("Press 1-9 to load scenes from catalog"),console.log("Press 0 to unload current scene"),console.log("============================="),this.app.keyboard.on(pc.EVENT_KEYDOWN,this.onKeyDown,this),this.loadCatalog()},HuggingFaceSceneLoader.prototype.onKeyDown=function(e){if(e.key>=pc.KEY_1&&e.key<=pc.KEY_9){const o=e.key-pc.KEY_1;this.loadSceneByIndex(o)}else switch(e.key){case pc.KEY_C:this.loadCatalog();break;case pc.KEY_0:this.unloadCurrentScene()}},HuggingFaceSceneLoader.prototype.loadCatalog=async function(){const e=this.baseUrl+"scene_catalog.json";console.log("Loading scene catalog...");try{const o=await fetch(e);if(!o.ok)throw new Error(`HTTP ${o.status}`);this.catalog=await o.json(),this.catalogLoaded=!0,console.log("\n=== AVAILABLE SCENES ==="),this.catalog.scenes.forEach(((e,o)=>{console.log(`[${o+1}] ${e.name}`),console.log(` ${e.description}`)})),console.log("Press 1-9 to load a scene"),console.log("Press 0 to unload"),console.log("======================\n")}catch(e){console.error("Failed to load catalog:",e),console.log("Using fallback scene list..."),this.catalog={scenes:[{name:"Test Crystal",file:"scenes/test_scene.js",description:"Simple floating crystal"},{name:"Sci-Fi Environment",file:"scenes/scifi_scene.js",description:"Futuristic scene with holograms"},{name:"Medical Lab",file:"scenes/medical_lab_scene.js",description:"Additional medical equipment"}]},this.catalogLoaded=!0}},HuggingFaceSceneLoader.prototype.loadSceneByIndex=function(e){if(!this.catalogLoaded||!this.catalog)return void console.log("Catalog not loaded yet. Press C to load catalog.");if(e>=this.catalog.scenes.length)return void console.log(`No scene at index ${e+1}`);const o=this.catalog.scenes[e];console.log(`Loading scene: ${o.name}`),this.loadScene(o.file)},HuggingFaceSceneLoader.prototype.loadScene=async function(e){this.unloadCurrentScene();const o=this.baseUrl+e;console.log(`Loading scene from: ${o}`);try{const e=await fetch(o);if(!e.ok)throw new Error(`HTTP ${e.status}: ${e.statusText}`);const n=await e.text();console.log(`Loaded ${n.length} bytes of scene code`),this.currentSceneRoot=new pc.Entity("DynamicSceneRoot"),this.app.root.addChild(this.currentSceneRoot);const t=`\n (function() {\n // Store original addChild\n const originalAddChild = app.root.addChild.bind(app.root);\n \n // Redirect entities to scene root\n app.root.addChild = function(entity) {\n // Keep cameras and UI at root level\n if (entity.camera || entity.screen || entity.name === 'SurgeonCamera') {\n originalAddChild(entity);\n } else {\n sceneRoot.addChild(entity);\n }\n };\n \n try {\n ${n}\n } catch (error) {\n console.error('Scene execution error:', error);\n }\n \n // Restore original function\n app.root.addChild = originalAddChild;\n })();\n `;new Function("app","pc","sceneRoot",t)(this.app,pc,this.currentSceneRoot),console.log("Scene loaded successfully!"),this.postProcessScene()}catch(e){console.error("Failed to load scene:",e)}},HuggingFaceSceneLoader.prototype.postProcessScene=function(){if(!this.currentSceneRoot)return;this.currentSceneRoot.findComponents("camera").forEach((e=>{console.log(`Disabling camera: ${e.entity.name}`),e.enabled=!1}));const e=this.currentSceneRoot.findComponents("light");console.log(`Scene contains ${e.length} lights`)},HuggingFaceSceneLoader.prototype.unloadCurrentScene=function(){if(this.currentSceneRoot){const e=this.currentSceneRoot.name;this.currentSceneRoot.destroy(),this.currentSceneRoot=null,console.log(`Scene unloaded: ${e}`)}};
|
__settings__.js
CHANGED
@@ -8,7 +8,7 @@ window.CONTEXT_OPTIONS = {
|
|
8 |
'deviceTypes': [`webgl2`, `webgl1`],
|
9 |
'powerPreference': "high-performance"
|
10 |
};
|
11 |
-
window.SCRIPTS = [ 229622890, 229623301, 231069532, 231069534, 231153551, 233252909,
|
12 |
window.CONFIG_FILENAME = "config.json";
|
13 |
window.INPUT_SETTINGS = {
|
14 |
useKeyboard: true,
|
|
|
8 |
'deviceTypes': [`webgl2`, `webgl1`],
|
9 |
'powerPreference': "high-performance"
|
10 |
};
|
11 |
+
window.SCRIPTS = [ 229622890, 229623301, 231069532, 231069534, 231153551, 233252909, 233728142, 234709287, 234709288, 234709364, 234710061, 234712674, 234712675, 235086646, 235092651 ];
|
12 |
window.CONFIG_FILENAME = "config.json";
|
13 |
window.INPUT_SETTINGS = {
|
14 |
useKeyboard: true,
|
config.json
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"application_properties":{"i18nAssets":[],"useTouch":true,"layerOrder":[{"layer":0,"enabled":true,"transparent":false},{"layer":1,"enabled":true,"transparent":false},{"layer":2,"enabled":true,"transparent":false},{"layer":0,"enabled":true,"transparent":true},{"layer":3,"enabled":true,"transparent":false},{"layer":3,"enabled":true,"transparent":true},{"layer":4,"enabled":true,"transparent":true}],"externalScripts":[],"height":720,"vr":false,"useModelV2":false,"antiAlias":true,"layers":{"0":{"transparentSortMode":3,"opaqueSortMode":2,"name":"World"},"1":{"transparentSortMode":3,"opaqueSortMode":2,"name":"Depth"},"2":{"transparentSortMode":3,"opaqueSortMode":0,"name":"Skybox"},"3":{"transparentSortMode":3,"opaqueSortMode":0,"name":"Immediate"},"4":{"transparentSortMode":1,"opaqueSortMode":1,"name":"UI"}},"width":1280,"useDevicePixelRatio":true,"useKeyboard":true,"maxAssetRetries":5,"powerPreference":"high-performance","batchGroups":[],"preserveDrawingBuffer":false,"useLegacyScripts":false,"enableSharedArrayBuffer":false,"fillMode":"FILL_WINDOW","scripts":[229622890,229623301,231069532,231069534,231153551,233252909,233663885,233728142],"useMouse":true,"use3dPhysics":false,"transparentCanvas":false,"resolutionMode":"AUTO","loadingScreenScript":null,"useGamepads":false,"engineV2":true,"editor":{},"libraries":[]},"scenes":[{"name":"Untitled","url":"2241598.json"}],"assets":{"229622863":{"name":"sky_posy.png","type":"texture","file":{"filename":"sky_posy.png","hash":"f11af8966b2e0fe99e343108d777403d","size":170046,"variants":{},"url":"files/assets/229622863/1/sky_posy.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622863"},"229622865":{"name":"sky","type":"cubemap","file":{"filename":"sky.png","size":147883,"hash":"9a07d61f34e67a5e96fb6e579ce5c813","url":"files/assets/229622865/1/sky.png"},"data":{"name":"New Cubemap","textures":[229622870,229622866,229622863,229622869,229622867,229622868],"minFilter":5,"magFilter":1,"anisotropy":1,"rgbm":true},"preload":true,"tags":[],"i18n":{},"id":"229622865"},"229622866":{"name":"sky_negx.png","type":"texture","file":{"filename":"sky_negx.png","hash":"34f64e48aa3125598094e24eeb02d574","size":155167,"variants":{},"url":"files/assets/229622866/1/sky_negx.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622866"},"229622867":{"name":"sky_posz.png","type":"texture","file":{"filename":"sky_posz.png","hash":"53a9aab04b23a2e8f7be2d99115ca09d","size":198593,"variants":{},"url":"files/assets/229622867/1/sky_posz.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622867"},"229622868":{"name":"sky_negz.png","type":"texture","file":{"filename":"sky_negz.png","hash":"2be10e522c5e12bc0b791b48181895b9","size":147065,"variants":{},"url":"files/assets/229622868/1/sky_negz.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622868"},"229622869":{"name":"sky_negy.png","type":"texture","file":{"filename":"sky_negy.png","hash":"ff5cfefbc0d5d485bf9a0b9a31b25810","size":152642,"variants":{},"url":"files/assets/229622869/1/sky_negy.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622869"},"229622870":{"name":"sky_posx.png","type":"texture","file":{"filename":"sky_posx.png","hash":"bb45a6c2eed8c3763777eaed6f44527f","size":172680,"variants":{},"url":"files/assets/229622870/1/sky_posx.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622870"},"229622890":{"name":"sceneScaffolder.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"sceneScaffolder":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"229622890"},"229623301":{"name":"CameraController.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"orbitCamera":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"229623301"},"231069532":{"name":"sceneScaffolderOriginal.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"sceneScaffolderOriginal":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"231069532"},"231069534":{"name":"sceneScaffolderOrthoOT.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"sceneScaffolderOrthoOt":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"231069534"},"231153551":{"name":"interactionController.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"231153551"},"231387411":{"name":"ammo.js","type":"script","file":{"filename":"ammo.js","size":1895438,"hash":"34480c72ed787337db20c105cb9ba69d","url":"files/assets/231387411/1/ammo.js"},"data":{"order":100,"scripts":{},"loadingType":0},"preload":false,"tags":[],"i18n":{},"id":"231387411"},"231387412":{"name":"ammo.wasm.js","type":"script","file":{"filename":"ammo.wasm.js","size":391789,"hash":"6b7ab3989e4f9f17c86e44380f9181c6","url":"files/assets/231387412/1/ammo.wasm.js"},"data":{"order":100,"scripts":{},"loadingType":0},"preload":false,"tags":[],"i18n":{},"id":"231387412"},"231387413":{"name":"ammo.wasm.wasm","type":"wasm","file":{"filename":"ammo.wasm.wasm","size":659433,"hash":"a6819ea71a53e67f1dfe3e42957c2971","url":"files/assets/231387413/1/ammo.wasm.wasm"},"data":{"moduleName":"Ammo","glueScriptId":231387412,"fallbackScriptId":231387411,"loadingType":0},"preload":false,"tags":[],"i18n":{},"id":"231387413"},"233177358":{"name":"Link for GEMINI chat.txt","type":"text","file":{"filename":"Link for GEMINI chat.txt","size":1,"hash":"68b329da9893e34099c7d8ad5cb9c940","url":"files/assets/233177358/1/Link%20for%20GEMINI%20chat.txt"},"data":null,"preload":true,"tags":[],"i18n":{},"id":"233177358"},"233252909":{"name":"gameManager.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"gameManager":{"attributesOrder":["gameData"],"attributes":{"gameData":{"type":"asset","assetType":"text","title":"Game Data JSON"}}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"233252909"},"233252911":{"name":"gameData.txt","type":"text","file":{"filename":"gameData.txt","size":10769,"hash":"1393a3cfadb808259906eac7789bc4e8","url":"files/assets/233252911/1/gameData.txt"},"data":null,"preload":true,"tags":[],"i18n":{},"id":"233252911"},"233663885":{"name":"uiController.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"uiController":{"attributesOrder":["descriptionElement","choicesContainer","choiceButtonTemplate"],"attributes":{"descriptionElement":{"type":"entity","title":"Description Text Entity"},"choicesContainer":{"type":"entity","title":"Choices Container Entity"},"choiceButtonTemplate":{"type":"asset","assetType":"template","title":"Choice Button Template"}}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"233663885"},"233667890":{"name":"Roboto-Regular.ttf","type":"font","file":{"filename":"Roboto-Regular.png","hash":"abcf92f0e0ff7e330802c19de17bbe70","size":96129,"url":"files/assets/233667890/1/Roboto-Regular.png"},"data":{"version":2,"intensity":0,"info":{"face":"Roboto-Regular","maps":[{"width":1024,"height":512}]},"chars":{"32":{"id":32,"letter":" ","x":1,"y":1,"width":64,"height":64,"map":0,"xadvance":7.921875,"xoffset":31.5,"yoffset":31.5,"scale":1,"range":8},"33":{"id":33,"letter":"!","x":67,"y":1,"width":64,"height":64,"map":0,"xadvance":8.234375,"xoffset":27.7890625,"yoffset":20.7109375,"scale":1,"range":8,"bounds":[2.5,-0.171875,5.921875,22.75]},"34":{"id":34,"letter":"\"","x":133,"y":1,"width":64,"height":64,"map":0,"xadvance":10.234375,"xoffset":26.6640625,"yoffset":11.859375,"scale":1,"range":8,"bounds":[2.125,16.28125,8.546875,24]},"35":{"id":35,"letter":"#","x":199,"y":1,"width":64,"height":64,"map":0,"xadvance":19.703125,"xoffset":21.421875,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.859375,0,19.296875,22.75]},"36":{"id":36,"letter":"$","x":265,"y":1,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.0078125,"yoffset":20.40625,"scale":1,"range":8,"bounds":[1.71875,-3.25,16.265625,26.4375]},"37":{"id":37,"letter":"%","x":331,"y":1,"width":64,"height":64,"map":0,"xadvance":23.4375,"xoffset":20.15625,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.640625,-0.328125,22.046875,23.078125]},"38":{"id":38,"letter":"&","x":397,"y":1,"width":64,"height":64,"map":0,"xadvance":19.890625,"xoffset":21.3125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.578125,-0.3125,19.796875,23.0625]},"39":{"id":39,"letter":"'","x":463,"y":1,"width":64,"height":64,"map":0,"xadvance":5.578125,"xoffset":29.21875,"yoffset":11.7421875,"scale":1,"range":8,"bounds":[1.609375,16.515625,3.953125,24]},"40":{"id":40,"letter":"(","x":529,"y":1,"width":64,"height":64,"map":0,"xadvance":10.9375,"xoffset":25.796875,"yoffset":22.8359375,"scale":1,"range":8,"bounds":[2.078125,-7.34375,10.328125,25.671875]},"41":{"id":41,"letter":")","x":595,"y":1,"width":64,"height":64,"map":0,"xadvance":11.125,"xoffset":27.2734375,"yoffset":22.8359375,"scale":1,"range":8,"bounds":[0.59375,-7.34375,8.859375,25.671875]},"42":{"id":42,"letter":"*","x":661,"y":1,"width":64,"height":64,"map":0,"xadvance":13.78125,"xoffset":25.1171875,"yoffset":15.8671875,"scale":1,"range":8,"bounds":[0.4375,9.515625,13.328125,22.75]},"43":{"id":43,"letter":"+","x":727,"y":1,"width":64,"height":64,"map":0,"xadvance":18.140625,"xoffset":22.984375,"yoffset":21.4375,"scale":1,"range":8,"bounds":[1.21875,2.28125,16.8125,18.84375]},"44":{"id":44,"letter":",","x":793,"y":1,"width":64,"height":64,"map":0,"xadvance":6.28125,"xoffset":29.3671875,"yoffset":32.5546875,"scale":1,"range":8,"bounds":[0.453125,-4.53125,4.8125,3.421875]},"45":{"id":45,"letter":"-","x":859,"y":1,"width":64,"height":64,"map":0,"xadvance":8.828125,"xoffset":27.609375,"yoffset":22.3359375,"scale":1,"range":8,"bounds":[0.578125,8.484375,8.203125,10.84375]},"46":{"id":46,"letter":".","x":925,"y":1,"width":64,"height":64,"map":0,"xadvance":8.421875,"xoffset":27.953125,"yoffset":30.453125,"scale":1,"range":8,"bounds":[2.25,-0.171875,5.84375,3.265625]},"47":{"id":47,"letter":"/","x":1,"y":67,"width":64,"height":64,"map":0,"xadvance":13.1875,"xoffset":25.734375,"yoffset":21.6015625,"scale":1,"range":8,"bounds":[0.28125,-1.953125,12.25,22.75]},"48":{"id":48,"letter":"0","x":67,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.0234375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.796875,-0.3125,16.15625,23.0625]},"49":{"id":49,"letter":"1","x":133,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":24.9765625,"yoffset":20.5703125,"scale":1,"range":8,"bounds":[2.65625,0,11.390625,22.859375]},"50":{"id":50,"letter":"2","x":199,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.875,"yoffset":20.46875,"scale":1,"range":8,"bounds":[1.453125,0,16.796875,23.0625]},"51":{"id":51,"letter":"3","x":265,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.3203125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.46875,-0.3125,15.890625,23.0625]},"52":{"id":52,"letter":"4","x":331,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.9609375,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.828125,0,17.25,22.75]},"53":{"id":53,"letter":"5","x":397,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.4453125,"yoffset":20.78125,"scale":1,"range":8,"bounds":[2.40625,-0.3125,16.703125,22.75]},"54":{"id":54,"letter":"6","x":463,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.75,"yoffset":20.7734375,"scale":1,"range":8,"bounds":[2.0625,-0.3125,16.4375,22.765625]},"55":{"id":55,"letter":"7","x":529,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.109375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.203125,0,16.578125,22.75]},"56":{"id":56,"letter":"8","x":595,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.015625,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.75,-0.3125,16.21875,23.0625]},"57":{"id":57,"letter":"9","x":661,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.28125,"yoffset":20.4765625,"scale":1,"range":8,"bounds":[1.5625,-0.015625,15.875,23.0625]},"58":{"id":58,"letter":":","x":727,"y":67,"width":64,"height":64,"map":0,"xadvance":7.75,"xoffset":28.1015625,"yoffset":23.5546875,"scale":1,"range":8,"bounds":[2.09375,-0.171875,5.703125,17.0625]},"59":{"id":59,"letter":";","x":793,"y":67,"width":64,"height":64,"map":0,"xadvance":6.765625,"xoffset":29.015625,"yoffset":25.734375,"scale":1,"range":8,"bounds":[0.640625,-4.53125,5.328125,17.0625]},"60":{"id":60,"letter":"<","x":859,"y":67,"width":64,"height":64,"map":0,"xadvance":16.265625,"xoffset":24.484375,"yoffset":21.8984375,"scale":1,"range":8,"bounds":[1.125,3.046875,13.90625,17.15625]},"61":{"id":61,"letter":"=","x":925,"y":67,"width":64,"height":64,"map":0,"xadvance":17.5625,"xoffset":23.109375,"yoffset":21.265625,"scale":1,"range":8,"bounds":[2.375,6.234375,15.40625,15.234375]},"62":{"id":62,"letter":">","x":1,"y":133,"width":64,"height":64,"map":0,"xadvance":16.71875,"xoffset":23.234375,"yoffset":21.8828125,"scale":1,"range":8,"bounds":[2.09375,3.0625,15.4375,17.171875]},"63":{"id":63,"letter":"?","x":67,"y":133,"width":64,"height":64,"map":0,"xadvance":15.109375,"xoffset":24.4921875,"yoffset":20.5546875,"scale":1,"range":8,"bounds":[1.171875,-0.171875,13.84375,23.0625]},"64":{"id":64,"letter":"@","x":133,"y":133,"width":64,"height":64,"map":0,"xadvance":28.734375,"xoffset":17.4997749775,"yoffset":24.359375,"scale":1,"range":8,"bounds":[1.82147277228,-7.078125,27.1789772727,22.359375]},"65":{"id":65,"letter":"A","x":199,"y":133,"width":64,"height":64,"map":0,"xadvance":20.875,"xoffset":21.5546875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.4375,0,20.453125,22.75]},"66":{"id":66,"letter":"B","x":265,"y":133,"width":64,"height":64,"map":0,"xadvance":19.921875,"xoffset":21.6171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,18.125,22.75]},"67":{"id":67,"letter":"C","x":331,"y":133,"width":64,"height":64,"map":0,"xadvance":20.828125,"xoffset":21.3828125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.859375,-0.3125,19.375,23.0625]},"68":{"id":68,"letter":"D","x":397,"y":133,"width":64,"height":64,"map":0,"xadvance":20.984375,"xoffset":21.1328125,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,19.09375,22.75]},"69":{"id":69,"letter":"E","x":463,"y":133,"width":64,"height":64,"map":0,"xadvance":18.1875,"xoffset":22.1328125,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,17.09375,22.75]},"70":{"id":70,"letter":"F","x":529,"y":133,"width":64,"height":64,"map":0,"xadvance":17.6875,"xoffset":22.3125,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,16.734375,22.75]},"71":{"id":71,"letter":"G","x":595,"y":133,"width":64,"height":64,"map":0,"xadvance":21.796875,"xoffset":21.328125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.90625,-0.3125,19.4375,23.0625]},"72":{"id":72,"letter":"H","x":661,"y":133,"width":64,"height":64,"map":0,"xadvance":22.8125,"xoffset":20.6171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,20.125,22.75]},"73":{"id":73,"letter":"I","x":727,"y":133,"width":64,"height":64,"map":0,"xadvance":8.703125,"xoffset":27.640625,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.859375,0,5.859375,22.75]},"74":{"id":74,"letter":"J","x":793,"y":133,"width":64,"height":64,"map":0,"xadvance":17.65625,"xoffset":23.9921875,"yoffset":20.78125,"scale":1,"range":8,"bounds":[0.828125,-0.3125,15.1875,22.75]},"75":{"id":75,"letter":"K","x":859,"y":133,"width":64,"height":64,"map":0,"xadvance":20.0625,"xoffset":20.640625,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,20.078125,22.75]},"76":{"id":76,"letter":"L","x":925,"y":133,"width":64,"height":64,"map":0,"xadvance":17.21875,"xoffset":22.4609375,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,16.4375,22.75]},"77":{"id":77,"letter":"M","x":1,"y":199,"width":64,"height":64,"map":0,"xadvance":27.9375,"xoffset":18.0390625,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,25.28125,22.75]},"78":{"id":78,"letter":"N","x":67,"y":199,"width":64,"height":64,"map":0,"xadvance":22.8125,"xoffset":20.6171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,20.125,22.75]},"79":{"id":79,"letter":"O","x":133,"y":199,"width":64,"height":64,"map":0,"xadvance":22,"xoffset":21.0078125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.84375,-0.3125,20.140625,23.0625]},"80":{"id":80,"letter":"P","x":199,"y":199,"width":64,"height":64,"map":0,"xadvance":20.1875,"xoffset":21.1796875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,19,22.75]},"81":{"id":81,"letter":"Q","x":265,"y":199,"width":64,"height":64,"map":0,"xadvance":22,"xoffset":21.1015625,"yoffset":22.390625,"scale":1,"range":8,"bounds":[1.703125,-3.84375,20.09375,23.0625]},"82":{"id":82,"letter":"R","x":331,"y":199,"width":64,"height":64,"map":0,"xadvance":19.703125,"xoffset":21.1171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.625,0,19.140625,22.75]},"83":{"id":83,"letter":"S","x":397,"y":199,"width":64,"height":64,"map":0,"xadvance":18.984375,"xoffset":22.484375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.25,-0.3125,17.78125,23.0625]},"84":{"id":84,"letter":"T","x":463,"y":199,"width":64,"height":64,"map":0,"xadvance":19.09375,"xoffset":22.4375,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.765625,0,18.359375,22.75]},"85":{"id":85,"letter":"U","x":529,"y":199,"width":64,"height":64,"map":0,"xadvance":20.75,"xoffset":21.578125,"yoffset":20.78125,"scale":1,"range":8,"bounds":[2.1875,-0.3125,18.65625,22.75]},"86":{"id":86,"letter":"V","x":595,"y":199,"width":64,"height":64,"map":0,"xadvance":20.359375,"xoffset":21.8046875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.4375,0,19.953125,22.75]},"87":{"id":87,"letter":"W","x":661,"y":199,"width":64,"height":64,"map":0,"xadvance":28.390625,"xoffset":17.671875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.953125,0,27.703125,22.75]},"88":{"id":88,"letter":"X","x":727,"y":199,"width":64,"height":64,"map":0,"xadvance":20.0625,"xoffset":21.9453125,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.890625,0,19.21875,22.75]},"89":{"id":89,"letter":"Y","x":793,"y":199,"width":64,"height":64,"map":0,"xadvance":19.21875,"xoffset":22.421875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.234375,0,18.921875,22.75]},"90":{"id":90,"letter":"Z","x":859,"y":199,"width":64,"height":64,"map":0,"xadvance":19.15625,"xoffset":22.375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.34375,0,17.90625,22.75]},"91":{"id":91,"letter":"[","x":925,"y":199,"width":64,"height":64,"map":0,"xadvance":8.484375,"xoffset":26.7734375,"yoffset":21.4375,"scale":1,"range":8,"bounds":[2.28125,-4.875,8.171875,26]},"92":{"id":92,"letter":"\\","x":1,"y":265,"width":64,"height":64,"map":0,"xadvance":13.125,"xoffset":25.25,"yoffset":21.6015625,"scale":1,"range":8,"bounds":[0.625,-1.953125,12.875,22.75]},"93":{"id":93,"letter":"]","x":67,"y":265,"width":64,"height":64,"map":0,"xadvance":8.484375,"xoffset":28.90625,"yoffset":21.4375,"scale":1,"range":8,"bounds":[0.140625,-4.875,6.046875,26]},"94":{"id":94,"letter":"^","x":133,"y":265,"width":64,"height":64,"map":0,"xadvance":13.375,"xoffset":25.34375,"yoffset":14.9296875,"scale":1,"range":8,"bounds":[1,11.390625,12.3125,22.75]},"95":{"id":95,"letter":"_","x":199,"y":265,"width":64,"height":64,"map":0,"xadvance":14.4375,"xoffset":24.78125,"yoffset":33.1796875,"scale":1,"range":8,"bounds":[0.0625,-2.359375,14.375,0]},"96":{"id":96,"letter":"`","x":265,"y":265,"width":64,"height":64,"map":0,"xadvance":9.890625,"xoffset":27.8515625,"yoffset":10.296875,"scale":1,"range":8,"bounds":[0.890625,19.40625,7.40625,24]},"97":{"id":97,"letter":"a","x":331,"y":265,"width":64,"height":64,"map":0,"xadvance":17.40625,"xoffset":23.3203125,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.703125,-0.3125,15.65625,17.21875]},"98":{"id":98,"letter":"b","x":397,"y":265,"width":64,"height":64,"map":0,"xadvance":17.953125,"xoffset":22.65625,"yoffset":20.15625,"scale":1,"range":8,"bounds":[2.1875,-0.3125,16.5,24]},"99":{"id":99,"letter":"c","x":463,"y":265,"width":64,"height":64,"map":0,"xadvance":16.75,"xoffset":23.4375,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.4375,-0.3125,15.6875,17.21875]},"100":{"id":100,"letter":"d","x":529,"y":265,"width":64,"height":64,"map":0,"xadvance":18.046875,"xoffset":23.3828125,"yoffset":20.15625,"scale":1,"range":8,"bounds":[1.484375,-0.3125,15.75,24]},"101":{"id":101,"letter":"e","x":595,"y":265,"width":64,"height":64,"map":0,"xadvance":16.953125,"xoffset":23.375,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.453125,-0.3125,15.796875,17.21875]},"102":{"id":102,"letter":"f","x":661,"y":265,"width":64,"height":64,"map":0,"xadvance":11.109375,"xoffset":25.953125,"yoffset":19.8359375,"scale":1,"range":8,"bounds":[0.9375,0,11.15625,24.328125]},"103":{"id":103,"letter":"g","x":727,"y":265,"width":64,"height":64,"map":0,"xadvance":17.953125,"xoffset":23.359375,"yoffset":26.71875,"scale":1,"range":8,"bounds":[1.5,-6.65625,15.78125,17.21875]},"104":{"id":104,"letter":"h","x":793,"y":265,"width":64,"height":64,"map":0,"xadvance":17.625,"xoffset":23.1640625,"yoffset":20,"scale":1,"range":8,"bounds":[2.1875,0,15.484375,24]},"105":{"id":105,"letter":"i","x":859,"y":265,"width":64,"height":64,"map":0,"xadvance":7.765625,"xoffset":28.0859375,"yoffset":20.46875,"scale":1,"range":8,"bounds":[2.203125,0,5.625,23.0625]},"106":{"id":106,"letter":"j","x":925,"y":265,"width":64,"height":64,"map":0,"xadvance":7.640625,"xoffset":29.8125,"yoffset":23.8828125,"scale":1,"range":8,"bounds":[-1.015625,-6.828125,5.390625,23.0625]},"107":{"id":107,"letter":"k","x":1,"y":331,"width":64,"height":64,"map":0,"xadvance":16.21875,"xoffset":22.8046875,"yoffset":20,"scale":1,"range":8,"bounds":[2.203125,0,16.1875,24]},"108":{"id":108,"letter":"l","x":67,"y":331,"width":64,"height":64,"map":0,"xadvance":7.765625,"xoffset":28.1171875,"yoffset":20,"scale":1,"range":8,"bounds":[2.4375,0,5.328125,24]},"109":{"id":109,"letter":"m","x":133,"y":331,"width":64,"height":64,"map":0,"xadvance":28.046875,"xoffset":17.9765625,"yoffset":23.390625,"scale":1,"range":8,"bounds":[2.171875,0,25.875,17.21875]},"110":{"id":110,"letter":"n","x":199,"y":331,"width":64,"height":64,"map":0,"xadvance":17.65625,"xoffset":23.1640625,"yoffset":23.390625,"scale":1,"range":8,"bounds":[2.1875,0,15.484375,17.21875]},"111":{"id":111,"letter":"o","x":265,"y":331,"width":64,"height":64,"map":0,"xadvance":18.25,"xoffset":22.8828125,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.421875,-0.3125,16.8125,17.21875]},"112":{"id":112,"letter":"p","x":331,"y":331,"width":64,"height":64,"map":0,"xadvance":17.953125,"xoffset":22.671875,"yoffset":26.640625,"scale":1,"range":8,"bounds":[2.1875,-6.5,16.46875,17.21875]},"113":{"id":113,"letter":"q","x":397,"y":331,"width":64,"height":64,"map":0,"xadvance":18.1875,"xoffset":23.390625,"yoffset":26.640625,"scale":1,"range":8,"bounds":[1.484375,-6.5,15.734375,17.21875]},"114":{"id":114,"letter":"r","x":463,"y":331,"width":64,"height":64,"map":0,"xadvance":10.828125,"xoffset":25.7265625,"yoffset":23.390625,"scale":1,"range":8,"bounds":[2.1875,0,10.359375,17.21875]},"115":{"id":115,"letter":"s","x":529,"y":331,"width":64,"height":64,"map":0,"xadvance":16.5,"xoffset":23.796875,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.484375,-0.3125,14.921875,17.21875]},"116":{"id":116,"letter":"t","x":595,"y":331,"width":64,"height":64,"map":0,"xadvance":10.453125,"xoffset":27.2578125,"yoffset":21.65625,"scale":1,"range":8,"bounds":[0.140625,-0.3125,9.34375,21]},"117":{"id":117,"letter":"u","x":661,"y":331,"width":64,"height":64,"map":0,"xadvance":17.640625,"xoffset":23.21875,"yoffset":23.703125,"scale":1,"range":8,"bounds":[2.125,-0.3125,15.4375,16.90625]},"118":{"id":118,"letter":"v","x":727,"y":331,"width":64,"height":64,"map":0,"xadvance":15.5,"xoffset":24.2890625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[0.515625,0,14.90625,16.90625]},"119":{"id":119,"letter":"w","x":793,"y":331,"width":64,"height":64,"map":0,"xadvance":24.046875,"xoffset":20.015625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[0.671875,0,23.296875,16.90625]},"120":{"id":120,"letter":"x","x":859,"y":331,"width":64,"height":64,"map":0,"xadvance":15.859375,"xoffset":24.1015625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[0.640625,0,15.15625,16.90625]},"121":{"id":121,"letter":"y","x":925,"y":331,"width":64,"height":64,"map":0,"xadvance":15.140625,"xoffset":24.453125,"yoffset":26.9609375,"scale":1,"range":8,"bounds":[0.34375,-6.828125,14.75,16.90625]},"122":{"id":122,"letter":"z","x":1,"y":397,"width":64,"height":64,"map":0,"xadvance":15.859375,"xoffset":23.9140625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.375,0,14.796875,16.90625]},"123":{"id":123,"letter":"{","x":67,"y":397,"width":64,"height":64,"map":0,"xadvance":10.828125,"xoffset":26.265625,"yoffset":22.3828125,"scale":1,"range":8,"bounds":[1,-5.71875,10.46875,24.953125]},"124":{"id":124,"letter":"|","x":133,"y":397,"width":64,"height":64,"map":0,"xadvance":7.796875,"xoffset":28.1015625,"yoffset":22.734375,"scale":1,"range":8,"bounds":[2.734375,-4.21875,5.0625,22.75]},"125":{"id":125,"letter":"}","x":199,"y":397,"width":64,"height":64,"map":0,"xadvance":10.828125,"xoffset":26.9609375,"yoffset":22.3828125,"scale":1,"range":8,"bounds":[0.296875,-5.71875,9.78125,24.953125]},"126":{"id":126,"letter":"~","x":265,"y":397,"width":64,"height":64,"map":0,"xadvance":21.765625,"xoffset":21.109375,"yoffset":22.59375,"scale":1,"range":8,"bounds":[2.046875,6.28125,19.734375,12.53125]}},"kerning":{"32":{"84":-0.625},"34":{"39":-1.671875,"65":-1.875,"97":-0.78125,"99":-0.921875,"100":-0.921875,"101":-0.921875,"103":-0.921875,"109":-0.3125,"110":-0.3125,"111":-0.953125,"112":-0.3125,"113":-0.921875,"115":-1.25,"119":0.171875},"39":{"34":-1.671875,"65":-1.875,"97":-0.78125,"99":-0.921875,"100":-0.921875,"101":-0.921875,"103":-0.921875,"109":-0.3125,"110":-0.3125,"111":-0.953125,"112":-0.3125,"113":-0.921875,"115":-1.25,"119":0.171875},"40":{"86":0.3125,"87":0.28125,"89":0.34375},"44":{"34":-2.65625,"39":-2.65625},"46":{"34":-2.65625,"39":-2.65625},"65":{"34":-1.875,"39":-1.875,"63":-0.953125,"67":-0.171875,"71":-0.171875,"79":-0.171875,"81":-0.171875,"84":-2.015625,"85":-0.265625,"86":-1.359375,"87":-1.078125,"89":-1.46875,"111":-0.1875,"116":-0.265625,"117":-0.171875,"118":-0.78125,"119":-0.515625,"121":-0.78125,"122":0.1875},"66":{"84":-0.421875,"86":-0.375,"89":-0.859375},"67":{"41":-0.40625,"84":-0.453125,"93":-0.1875,"125":-0.265625},"68":{"44":-1.59375,"46":-1.59375,"65":-0.328125,"84":-0.421875,"86":-0.34375,"88":-0.34375,"89":-0.671875,"90":-0.359375},"69":{"84":0.3125,"99":-0.296875,"100":-0.296875,"101":-0.296875,"102":-0.28125,"103":-0.296875,"111":-0.296875,"113":-0.296875,"117":-0.265625,"118":-0.40625,"119":-0.34375,"121":-0.40625},"70":{"44":-3.65625,"46":-3.65625,"65":-2.65625,"74":-4.125,"84":0.3125,"97":-0.53125,"99":-0.328125,"100":-0.328125,"101":-0.328125,"103":-0.328125,"111":-0.328125,"113":-0.328125,"114":-0.40625,"117":-0.34375,"118":-0.375,"121":-0.375},"72":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"73":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"74":{"65":-0.34375},"75":{"45":-1,"67":-0.484375,"71":-0.484375,"79":-0.484375,"81":-0.484375,"99":-0.40625,"100":-0.40625,"101":-0.40625,"103":-0.40625,"109":-0.359375,"110":-0.359375,"111":-0.421875,"112":-0.359375,"113":-0.40625,"117":-0.359375,"118":-0.625,"119":-0.984375,"121":-0.625},"76":{"34":-5.25,"39":-5.25,"65":0.296875,"67":-1.015625,"71":-1.015625,"79":-1.015625,"81":-1.015625,"84":-4.296875,"85":-0.84375,"86":-2.734375,"87":-2.234375,"89":-3.734375,"117":-0.6875,"118":-2.078125,"119":-1.4375,"121":-2.078125},"77":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"78":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"79":{"44":-1.59375,"46":-1.59375,"65":-0.328125,"84":-0.421875,"86":-0.34375,"88":-0.34375,"89":-0.671875,"90":-0.359375},"80":{"44":-5.0625,"46":-5.0625,"65":-2.15625,"74":-3.125,"88":-0.484375,"90":-0.40625,"97":-0.171875,"99":-0.203125,"100":-0.203125,"101":-0.203125,"103":-0.203125,"111":-0.203125,"113":-0.203125,"116":0.21875,"118":0.234375,"121":0.234375},"81":{"84":-0.671875,"86":-0.4375,"87":-0.3125,"89":-0.546875},"82":{"84":-1.25,"86":-0.296875,"89":-0.75},"84":{"32":-0.625,"44":-3.40625,"45":-3.625,"46":-3.40625,"65":-1.234375,"67":-0.4375,"71":-0.4375,"74":-3.75,"79":-0.4375,"81":-0.4375,"83":-0.25,"86":0.25,"87":0.234375,"89":0.25,"97":-1.765625,"99":-1.546875,"100":-1.546875,"101":-1.546875,"103":-1.546875,"109":-1.703125,"110":-1.703125,"111":-1.546875,"112":-1.703125,"113":-1.546875,"114":-1.171875,"115":-1.8125,"117":-1.484375,"118":-1.125,"119":-0.890625,"120":-1.203125,"121":-1.125,"122":-0.9375},"85":{"65":-0.34375},"86":{"41":0.3125,"44":-3.515625,"45":-0.578125,"46":-3.515625,"65":-1.171875,"67":-0.203125,"71":-0.203125,"79":-0.203125,"81":-0.203125,"93":0.265625,"97":-0.71875,"99":-0.6875,"100":-0.6875,"101":-0.6875,"103":-0.6875,"111":-0.71875,"113":-0.6875,"114":-0.46875,"117":-0.4375,"118":-0.171875,"121":-0.171875,"125":0.296875},"87":{"41":0.234375,"44":-1.921875,"45":-0.9375,"46":-1.921875,"65":-0.671875,"84":0.21875,"93":0.1875,"97":-0.515625,"99":-0.484375,"100":-0.484375,"101":-0.484375,"103":-0.484375,"111":-0.484375,"113":-0.484375,"114":-0.328125,"117":-0.296875,"125":0.21875},"88":{"45":-0.71875,"67":-0.390625,"71":-0.390625,"79":-0.390625,"81":-0.390625,"86":0.21875,"99":-0.40625,"100":-0.40625,"101":-0.40625,"103":-0.40625,"111":-0.328125,"113":-0.40625,"117":-0.328125,"118":-0.484375,"121":-0.484375},"89":{"38":-0.46875,"41":0.3125,"42":-0.765625,"44":-3.296875,"45":-0.8125,"46":-3.296875,"65":-1.46875,"67":-0.453125,"71":-0.453125,"74":-1.5,"79":-0.453125,"81":-0.453125,"83":-0.25,"84":0.265625,"85":-1.5,"86":0.28125,"87":0.265625,"88":0.203125,"93":0.28125,"97":-1.140625,"99":-1.015625,"100":-1.015625,"101":-1.015625,"102":-0.34375,"103":-1.015625,"109":-0.625,"110":-0.625,"111":-1.015625,"112":-0.625,"113":-1.015625,"114":-0.625,"115":-0.90625,"116":-0.34375,"117":-0.609375,"118":-0.3125,"120":-0.359375,"121":-0.3125,"122":-0.46875,"125":0.296875},"90":{"65":0.203125,"67":-0.40625,"71":-0.40625,"79":-0.40625,"81":-0.40625,"99":-0.328125,"100":-0.328125,"101":-0.328125,"103":-0.328125,"111":-0.328125,"113":-0.328125,"117":-0.296875,"118":-0.421875,"119":-0.421875,"121":-0.421875},"91":{"74":-0.28125,"85":-0.28125},"97":{"34":-1.046875,"39":-1.046875,"118":-0.234375,"121":-0.234375},"98":{"34":-0.453125,"39":-0.453125,"118":-0.171875,"120":-0.234375,"121":-0.171875,"122":-0.234375},"99":{"34":-0.171875,"39":-0.171875},"101":{"34":-0.21875,"39":-0.21875,"118":-0.203125,"121":-0.203125},"102":{"34":0.25,"39":0.25,"41":0.3125,"93":0.28125,"99":-0.375,"100":-0.375,"101":-0.375,"103":-0.375,"113":-0.375,"125":0.296875},"104":{"34":-1.625,"39":-1.625},"107":{"99":-0.3125,"100":-0.3125,"101":-0.3125,"103":-0.3125,"113":-0.3125},"109":{"34":-1.625,"39":-1.625},"110":{"34":-1.625,"39":-1.625},"111":{"34":-2.125,"39":-2.125,"118":-0.234375,"120":-0.328125,"121":-0.234375,"122":-0.25},"112":{"34":-0.453125,"39":-0.453125,"118":-0.171875,"120":-0.234375,"121":-0.171875,"122":-0.234375},"114":{"34":0.25,"39":0.25,"44":-1.921875,"46":-1.921875,"97":-0.625,"99":-0.296875,"100":-0.296875,"101":-0.296875,"102":0.234375,"103":-0.296875,"111":-0.3125,"113":-0.296875,"116":0.78125,"118":0.28125,"119":0.265625,"121":0.28125},"116":{"111":-0.3125},"118":{"34":0.234375,"39":0.234375,"44":-1.671875,"46":-1.671875,"97":-0.234375,"99":-0.203125,"100":-0.203125,"101":-0.203125,"102":0.203125,"103":-0.203125,"111":-0.234375,"113":-0.203125},"119":{"44":-1.9375,"46":-1.9375},"120":{"99":-0.3125,"100":-0.3125,"101":-0.3125,"103":-0.3125,"111":-0.3125,"113":-0.3125},"121":{"34":0.234375,"39":0.234375,"44":-1.671875,"46":-1.671875,"97":-0.234375,"99":-0.203125,"100":-0.203125,"101":-0.203125,"102":0.203125,"103":-0.203125,"111":-0.234375,"113":-0.203125},"122":{"99":-0.25,"100":-0.25,"101":-0.25,"103":-0.25,"111":-0.25,"113":-0.25},"123":{"74":-0.3125,"85":-0.3125}}},"preload":true,"tags":[],"i18n":{},"id":"233667890"},"233667893":{"name":"ChoiceButton_Template","type":"template","file":null,"data":{"entities":{"1efadbcf-af96-4369-82a9-f5eba8baf0f7":{"name":"ChoiceButton_Template","tags":[],"enabled":true,"resource_id":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","parent":null,"children":["73eb8604-08ec-491d-a466-51a0bc96c4a7"],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"button":{"enabled":true,"active":true,"imageEntity":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","hitPadding":[0,0,0,0],"transitionMode":0,"hoverTint":[1,1,1,1],"pressedTint":[1,1,1,1],"inactiveTint":[1,1,1,1],"fadeDuration":0,"hoverSpriteAsset":null,"hoverSpriteFrame":0,"pressedSpriteAsset":null,"pressedSpriteFrame":0,"inactiveSpriteAsset":null,"inactiveSpriteFrame":0,"hoverTextureAsset":null,"pressedTextureAsset":null,"inactiveTextureAsset":null},"element":{"enabled":true,"type":"image","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":true,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"73eb8604-08ec-491d-a466-51a0bc96c4a7":{"name":"ButtonText","tags":[],"enabled":true,"resource_id":"73eb8604-08ec-491d-a466-51a0bc96c4a7","parent":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","children":[],"position":[16,16,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0,0,1,1],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":233667890,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":true,"autoFitHeight":true,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[0,0,0],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[0,0,0,0],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}}}},"preload":true,"tags":[],"i18n":{},"id":"233667893"},"233728142":{"name":"gameAutoLocationDatabase.js","type":"script","file":{"filename":"__game-scripts.js","size":25352,"hash":"e4d1053521fb8014cdf548efbd8a6917","url":"__game-scripts.js"},"data":{"scripts":{"gameAutoLocationDatabase":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"233728142"}}}
|
|
|
1 |
+
{"application_properties":{"i18nAssets":[],"useTouch":true,"layerOrder":[{"layer":0,"enabled":true,"transparent":false},{"layer":1,"enabled":true,"transparent":false},{"layer":2,"enabled":true,"transparent":false},{"layer":0,"enabled":true,"transparent":true},{"layer":3,"enabled":true,"transparent":false},{"layer":3,"enabled":true,"transparent":true},{"layer":4,"enabled":true,"transparent":true}],"externalScripts":[],"height":720,"vr":false,"useModelV2":false,"antiAlias":true,"layers":{"0":{"transparentSortMode":3,"opaqueSortMode":2,"name":"World"},"1":{"transparentSortMode":3,"opaqueSortMode":2,"name":"Depth"},"2":{"transparentSortMode":3,"opaqueSortMode":0,"name":"Skybox"},"3":{"transparentSortMode":3,"opaqueSortMode":0,"name":"Immediate"},"4":{"transparentSortMode":1,"opaqueSortMode":1,"name":"UI"}},"width":1280,"useDevicePixelRatio":true,"useKeyboard":true,"maxAssetRetries":5,"powerPreference":"high-performance","batchGroups":[],"preserveDrawingBuffer":false,"useLegacyScripts":false,"enableSharedArrayBuffer":false,"fillMode":"FILL_WINDOW","scripts":[229622890,229623301,231069532,231069534,231153551,233252909,233728142,234709287,234709288,234709364,234710061,234712674,234712675,235086646,235092651],"useMouse":true,"use3dPhysics":false,"transparentCanvas":false,"resolutionMode":"AUTO","loadingScreenScript":null,"useGamepads":false,"engineV2":true,"editor":{},"libraries":[]},"scenes":[{"name":"Untitled","url":"2241598.json"}],"assets":{"229622863":{"name":"sky_posy.png","type":"texture","file":{"filename":"sky_posy.png","hash":"f11af8966b2e0fe99e343108d777403d","size":170046,"variants":{},"url":"files/assets/229622863/1/sky_posy.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622863"},"229622865":{"name":"sky","type":"cubemap","file":{"filename":"sky.png","size":147883,"hash":"9a07d61f34e67a5e96fb6e579ce5c813","url":"files/assets/229622865/1/sky.png"},"data":{"name":"New Cubemap","textures":[229622870,229622866,229622863,229622869,229622867,229622868],"minFilter":5,"magFilter":1,"anisotropy":1,"rgbm":true},"preload":true,"tags":[],"i18n":{},"id":"229622865"},"229622866":{"name":"sky_negx.png","type":"texture","file":{"filename":"sky_negx.png","hash":"34f64e48aa3125598094e24eeb02d574","size":155167,"variants":{},"url":"files/assets/229622866/1/sky_negx.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622866"},"229622867":{"name":"sky_posz.png","type":"texture","file":{"filename":"sky_posz.png","hash":"53a9aab04b23a2e8f7be2d99115ca09d","size":198593,"variants":{},"url":"files/assets/229622867/1/sky_posz.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622867"},"229622868":{"name":"sky_negz.png","type":"texture","file":{"filename":"sky_negz.png","hash":"2be10e522c5e12bc0b791b48181895b9","size":147065,"variants":{},"url":"files/assets/229622868/1/sky_negz.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622868"},"229622869":{"name":"sky_negy.png","type":"texture","file":{"filename":"sky_negy.png","hash":"ff5cfefbc0d5d485bf9a0b9a31b25810","size":152642,"variants":{},"url":"files/assets/229622869/1/sky_negy.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622869"},"229622870":{"name":"sky_posx.png","type":"texture","file":{"filename":"sky_posx.png","hash":"bb45a6c2eed8c3763777eaed6f44527f","size":172680,"variants":{},"url":"files/assets/229622870/1/sky_posx.png"},"data":{"addressu":"repeat","addressv":"repeat","minfilter":"linear_mip_linear","magfilter":"linear","anisotropy":1,"rgbm":true,"mipmaps":true,"srgb":false},"preload":true,"tags":[],"i18n":{},"id":"229622870"},"229622890":{"name":"sceneScaffolder.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"sceneScaffolder":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"229622890"},"229623301":{"name":"CameraController.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"orbitCamera":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"229623301"},"231069532":{"name":"sceneScaffolderOriginal.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"sceneScaffolderOriginal":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"231069532"},"231069534":{"name":"sceneScaffolderOrthoOT.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"sceneScaffolderOrthoOt":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"231069534"},"231153551":{"name":"interactionController.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"231153551"},"231387411":{"name":"ammo.js","type":"script","file":{"filename":"ammo.js","size":1895438,"hash":"34480c72ed787337db20c105cb9ba69d","url":"files/assets/231387411/1/ammo.js"},"data":{"order":100,"scripts":{},"loadingType":0},"preload":false,"tags":[],"i18n":{},"id":"231387411"},"231387412":{"name":"ammo.wasm.js","type":"script","file":{"filename":"ammo.wasm.js","size":391789,"hash":"6b7ab3989e4f9f17c86e44380f9181c6","url":"files/assets/231387412/1/ammo.wasm.js"},"data":{"order":100,"scripts":{},"loadingType":0},"preload":false,"tags":[],"i18n":{},"id":"231387412"},"231387413":{"name":"ammo.wasm.wasm","type":"wasm","file":{"filename":"ammo.wasm.wasm","size":659433,"hash":"a6819ea71a53e67f1dfe3e42957c2971","url":"files/assets/231387413/1/ammo.wasm.wasm"},"data":{"moduleName":"Ammo","glueScriptId":231387412,"fallbackScriptId":231387411,"loadingType":0},"preload":false,"tags":[],"i18n":{},"id":"231387413"},"233177358":{"name":"Link for GEMINI chat.txt","type":"text","file":{"filename":"Link for GEMINI chat.txt","size":1,"hash":"68b329da9893e34099c7d8ad5cb9c940","url":"files/assets/233177358/1/Link%20for%20GEMINI%20chat.txt"},"data":null,"preload":true,"tags":[],"i18n":{},"id":"233177358"},"233252909":{"name":"gameManager.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"gameManager":{"attributesOrder":["gameData"],"attributes":{"gameData":{"type":"asset","assetType":"text","title":"Game Data JSON"}}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"233252909"},"233252911":{"name":"gameData.txt","type":"text","file":{"filename":"gameData.txt","size":10769,"hash":"1393a3cfadb808259906eac7789bc4e8","url":"files/assets/233252911/1/gameData.txt"},"data":null,"preload":true,"tags":[],"i18n":{},"id":"233252911"},"233667890":{"name":"Roboto-Regular.ttf","type":"font","file":{"filename":"Roboto-Regular.png","hash":"abcf92f0e0ff7e330802c19de17bbe70","size":96129,"url":"files/assets/233667890/1/Roboto-Regular.png"},"data":{"version":2,"intensity":0,"info":{"face":"Roboto-Regular","maps":[{"width":1024,"height":512}]},"chars":{"32":{"id":32,"letter":" ","x":1,"y":1,"width":64,"height":64,"map":0,"xadvance":7.921875,"xoffset":31.5,"yoffset":31.5,"scale":1,"range":8},"33":{"id":33,"letter":"!","x":67,"y":1,"width":64,"height":64,"map":0,"xadvance":8.234375,"xoffset":27.7890625,"yoffset":20.7109375,"scale":1,"range":8,"bounds":[2.5,-0.171875,5.921875,22.75]},"34":{"id":34,"letter":"\"","x":133,"y":1,"width":64,"height":64,"map":0,"xadvance":10.234375,"xoffset":26.6640625,"yoffset":11.859375,"scale":1,"range":8,"bounds":[2.125,16.28125,8.546875,24]},"35":{"id":35,"letter":"#","x":199,"y":1,"width":64,"height":64,"map":0,"xadvance":19.703125,"xoffset":21.421875,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.859375,0,19.296875,22.75]},"36":{"id":36,"letter":"$","x":265,"y":1,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.0078125,"yoffset":20.40625,"scale":1,"range":8,"bounds":[1.71875,-3.25,16.265625,26.4375]},"37":{"id":37,"letter":"%","x":331,"y":1,"width":64,"height":64,"map":0,"xadvance":23.4375,"xoffset":20.15625,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.640625,-0.328125,22.046875,23.078125]},"38":{"id":38,"letter":"&","x":397,"y":1,"width":64,"height":64,"map":0,"xadvance":19.890625,"xoffset":21.3125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.578125,-0.3125,19.796875,23.0625]},"39":{"id":39,"letter":"'","x":463,"y":1,"width":64,"height":64,"map":0,"xadvance":5.578125,"xoffset":29.21875,"yoffset":11.7421875,"scale":1,"range":8,"bounds":[1.609375,16.515625,3.953125,24]},"40":{"id":40,"letter":"(","x":529,"y":1,"width":64,"height":64,"map":0,"xadvance":10.9375,"xoffset":25.796875,"yoffset":22.8359375,"scale":1,"range":8,"bounds":[2.078125,-7.34375,10.328125,25.671875]},"41":{"id":41,"letter":")","x":595,"y":1,"width":64,"height":64,"map":0,"xadvance":11.125,"xoffset":27.2734375,"yoffset":22.8359375,"scale":1,"range":8,"bounds":[0.59375,-7.34375,8.859375,25.671875]},"42":{"id":42,"letter":"*","x":661,"y":1,"width":64,"height":64,"map":0,"xadvance":13.78125,"xoffset":25.1171875,"yoffset":15.8671875,"scale":1,"range":8,"bounds":[0.4375,9.515625,13.328125,22.75]},"43":{"id":43,"letter":"+","x":727,"y":1,"width":64,"height":64,"map":0,"xadvance":18.140625,"xoffset":22.984375,"yoffset":21.4375,"scale":1,"range":8,"bounds":[1.21875,2.28125,16.8125,18.84375]},"44":{"id":44,"letter":",","x":793,"y":1,"width":64,"height":64,"map":0,"xadvance":6.28125,"xoffset":29.3671875,"yoffset":32.5546875,"scale":1,"range":8,"bounds":[0.453125,-4.53125,4.8125,3.421875]},"45":{"id":45,"letter":"-","x":859,"y":1,"width":64,"height":64,"map":0,"xadvance":8.828125,"xoffset":27.609375,"yoffset":22.3359375,"scale":1,"range":8,"bounds":[0.578125,8.484375,8.203125,10.84375]},"46":{"id":46,"letter":".","x":925,"y":1,"width":64,"height":64,"map":0,"xadvance":8.421875,"xoffset":27.953125,"yoffset":30.453125,"scale":1,"range":8,"bounds":[2.25,-0.171875,5.84375,3.265625]},"47":{"id":47,"letter":"/","x":1,"y":67,"width":64,"height":64,"map":0,"xadvance":13.1875,"xoffset":25.734375,"yoffset":21.6015625,"scale":1,"range":8,"bounds":[0.28125,-1.953125,12.25,22.75]},"48":{"id":48,"letter":"0","x":67,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.0234375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.796875,-0.3125,16.15625,23.0625]},"49":{"id":49,"letter":"1","x":133,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":24.9765625,"yoffset":20.5703125,"scale":1,"range":8,"bounds":[2.65625,0,11.390625,22.859375]},"50":{"id":50,"letter":"2","x":199,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.875,"yoffset":20.46875,"scale":1,"range":8,"bounds":[1.453125,0,16.796875,23.0625]},"51":{"id":51,"letter":"3","x":265,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.3203125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.46875,-0.3125,15.890625,23.0625]},"52":{"id":52,"letter":"4","x":331,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.9609375,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.828125,0,17.25,22.75]},"53":{"id":53,"letter":"5","x":397,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.4453125,"yoffset":20.78125,"scale":1,"range":8,"bounds":[2.40625,-0.3125,16.703125,22.75]},"54":{"id":54,"letter":"6","x":463,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":22.75,"yoffset":20.7734375,"scale":1,"range":8,"bounds":[2.0625,-0.3125,16.4375,22.765625]},"55":{"id":55,"letter":"7","x":529,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.109375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.203125,0,16.578125,22.75]},"56":{"id":56,"letter":"8","x":595,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.015625,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.75,-0.3125,16.21875,23.0625]},"57":{"id":57,"letter":"9","x":661,"y":67,"width":64,"height":64,"map":0,"xadvance":17.96875,"xoffset":23.28125,"yoffset":20.4765625,"scale":1,"range":8,"bounds":[1.5625,-0.015625,15.875,23.0625]},"58":{"id":58,"letter":":","x":727,"y":67,"width":64,"height":64,"map":0,"xadvance":7.75,"xoffset":28.1015625,"yoffset":23.5546875,"scale":1,"range":8,"bounds":[2.09375,-0.171875,5.703125,17.0625]},"59":{"id":59,"letter":";","x":793,"y":67,"width":64,"height":64,"map":0,"xadvance":6.765625,"xoffset":29.015625,"yoffset":25.734375,"scale":1,"range":8,"bounds":[0.640625,-4.53125,5.328125,17.0625]},"60":{"id":60,"letter":"<","x":859,"y":67,"width":64,"height":64,"map":0,"xadvance":16.265625,"xoffset":24.484375,"yoffset":21.8984375,"scale":1,"range":8,"bounds":[1.125,3.046875,13.90625,17.15625]},"61":{"id":61,"letter":"=","x":925,"y":67,"width":64,"height":64,"map":0,"xadvance":17.5625,"xoffset":23.109375,"yoffset":21.265625,"scale":1,"range":8,"bounds":[2.375,6.234375,15.40625,15.234375]},"62":{"id":62,"letter":">","x":1,"y":133,"width":64,"height":64,"map":0,"xadvance":16.71875,"xoffset":23.234375,"yoffset":21.8828125,"scale":1,"range":8,"bounds":[2.09375,3.0625,15.4375,17.171875]},"63":{"id":63,"letter":"?","x":67,"y":133,"width":64,"height":64,"map":0,"xadvance":15.109375,"xoffset":24.4921875,"yoffset":20.5546875,"scale":1,"range":8,"bounds":[1.171875,-0.171875,13.84375,23.0625]},"64":{"id":64,"letter":"@","x":133,"y":133,"width":64,"height":64,"map":0,"xadvance":28.734375,"xoffset":17.4997749775,"yoffset":24.359375,"scale":1,"range":8,"bounds":[1.82147277228,-7.078125,27.1789772727,22.359375]},"65":{"id":65,"letter":"A","x":199,"y":133,"width":64,"height":64,"map":0,"xadvance":20.875,"xoffset":21.5546875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.4375,0,20.453125,22.75]},"66":{"id":66,"letter":"B","x":265,"y":133,"width":64,"height":64,"map":0,"xadvance":19.921875,"xoffset":21.6171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,18.125,22.75]},"67":{"id":67,"letter":"C","x":331,"y":133,"width":64,"height":64,"map":0,"xadvance":20.828125,"xoffset":21.3828125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.859375,-0.3125,19.375,23.0625]},"68":{"id":68,"letter":"D","x":397,"y":133,"width":64,"height":64,"map":0,"xadvance":20.984375,"xoffset":21.1328125,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,19.09375,22.75]},"69":{"id":69,"letter":"E","x":463,"y":133,"width":64,"height":64,"map":0,"xadvance":18.1875,"xoffset":22.1328125,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,17.09375,22.75]},"70":{"id":70,"letter":"F","x":529,"y":133,"width":64,"height":64,"map":0,"xadvance":17.6875,"xoffset":22.3125,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,16.734375,22.75]},"71":{"id":71,"letter":"G","x":595,"y":133,"width":64,"height":64,"map":0,"xadvance":21.796875,"xoffset":21.328125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.90625,-0.3125,19.4375,23.0625]},"72":{"id":72,"letter":"H","x":661,"y":133,"width":64,"height":64,"map":0,"xadvance":22.8125,"xoffset":20.6171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,20.125,22.75]},"73":{"id":73,"letter":"I","x":727,"y":133,"width":64,"height":64,"map":0,"xadvance":8.703125,"xoffset":27.640625,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.859375,0,5.859375,22.75]},"74":{"id":74,"letter":"J","x":793,"y":133,"width":64,"height":64,"map":0,"xadvance":17.65625,"xoffset":23.9921875,"yoffset":20.78125,"scale":1,"range":8,"bounds":[0.828125,-0.3125,15.1875,22.75]},"75":{"id":75,"letter":"K","x":859,"y":133,"width":64,"height":64,"map":0,"xadvance":20.0625,"xoffset":20.640625,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,20.078125,22.75]},"76":{"id":76,"letter":"L","x":925,"y":133,"width":64,"height":64,"map":0,"xadvance":17.21875,"xoffset":22.4609375,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,16.4375,22.75]},"77":{"id":77,"letter":"M","x":1,"y":199,"width":64,"height":64,"map":0,"xadvance":27.9375,"xoffset":18.0390625,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,25.28125,22.75]},"78":{"id":78,"letter":"N","x":67,"y":199,"width":64,"height":64,"map":0,"xadvance":22.8125,"xoffset":20.6171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,20.125,22.75]},"79":{"id":79,"letter":"O","x":133,"y":199,"width":64,"height":64,"map":0,"xadvance":22,"xoffset":21.0078125,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.84375,-0.3125,20.140625,23.0625]},"80":{"id":80,"letter":"P","x":199,"y":199,"width":64,"height":64,"map":0,"xadvance":20.1875,"xoffset":21.1796875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.640625,0,19,22.75]},"81":{"id":81,"letter":"Q","x":265,"y":199,"width":64,"height":64,"map":0,"xadvance":22,"xoffset":21.1015625,"yoffset":22.390625,"scale":1,"range":8,"bounds":[1.703125,-3.84375,20.09375,23.0625]},"82":{"id":82,"letter":"R","x":331,"y":199,"width":64,"height":64,"map":0,"xadvance":19.703125,"xoffset":21.1171875,"yoffset":20.625,"scale":1,"range":8,"bounds":[2.625,0,19.140625,22.75]},"83":{"id":83,"letter":"S","x":397,"y":199,"width":64,"height":64,"map":0,"xadvance":18.984375,"xoffset":22.484375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.25,-0.3125,17.78125,23.0625]},"84":{"id":84,"letter":"T","x":463,"y":199,"width":64,"height":64,"map":0,"xadvance":19.09375,"xoffset":22.4375,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.765625,0,18.359375,22.75]},"85":{"id":85,"letter":"U","x":529,"y":199,"width":64,"height":64,"map":0,"xadvance":20.75,"xoffset":21.578125,"yoffset":20.78125,"scale":1,"range":8,"bounds":[2.1875,-0.3125,18.65625,22.75]},"86":{"id":86,"letter":"V","x":595,"y":199,"width":64,"height":64,"map":0,"xadvance":20.359375,"xoffset":21.8046875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.4375,0,19.953125,22.75]},"87":{"id":87,"letter":"W","x":661,"y":199,"width":64,"height":64,"map":0,"xadvance":28.390625,"xoffset":17.671875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.953125,0,27.703125,22.75]},"88":{"id":88,"letter":"X","x":727,"y":199,"width":64,"height":64,"map":0,"xadvance":20.0625,"xoffset":21.9453125,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.890625,0,19.21875,22.75]},"89":{"id":89,"letter":"Y","x":793,"y":199,"width":64,"height":64,"map":0,"xadvance":19.21875,"xoffset":22.421875,"yoffset":20.625,"scale":1,"range":8,"bounds":[0.234375,0,18.921875,22.75]},"90":{"id":90,"letter":"Z","x":859,"y":199,"width":64,"height":64,"map":0,"xadvance":19.15625,"xoffset":22.375,"yoffset":20.625,"scale":1,"range":8,"bounds":[1.34375,0,17.90625,22.75]},"91":{"id":91,"letter":"[","x":925,"y":199,"width":64,"height":64,"map":0,"xadvance":8.484375,"xoffset":26.7734375,"yoffset":21.4375,"scale":1,"range":8,"bounds":[2.28125,-4.875,8.171875,26]},"92":{"id":92,"letter":"\\","x":1,"y":265,"width":64,"height":64,"map":0,"xadvance":13.125,"xoffset":25.25,"yoffset":21.6015625,"scale":1,"range":8,"bounds":[0.625,-1.953125,12.875,22.75]},"93":{"id":93,"letter":"]","x":67,"y":265,"width":64,"height":64,"map":0,"xadvance":8.484375,"xoffset":28.90625,"yoffset":21.4375,"scale":1,"range":8,"bounds":[0.140625,-4.875,6.046875,26]},"94":{"id":94,"letter":"^","x":133,"y":265,"width":64,"height":64,"map":0,"xadvance":13.375,"xoffset":25.34375,"yoffset":14.9296875,"scale":1,"range":8,"bounds":[1,11.390625,12.3125,22.75]},"95":{"id":95,"letter":"_","x":199,"y":265,"width":64,"height":64,"map":0,"xadvance":14.4375,"xoffset":24.78125,"yoffset":33.1796875,"scale":1,"range":8,"bounds":[0.0625,-2.359375,14.375,0]},"96":{"id":96,"letter":"`","x":265,"y":265,"width":64,"height":64,"map":0,"xadvance":9.890625,"xoffset":27.8515625,"yoffset":10.296875,"scale":1,"range":8,"bounds":[0.890625,19.40625,7.40625,24]},"97":{"id":97,"letter":"a","x":331,"y":265,"width":64,"height":64,"map":0,"xadvance":17.40625,"xoffset":23.3203125,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.703125,-0.3125,15.65625,17.21875]},"98":{"id":98,"letter":"b","x":397,"y":265,"width":64,"height":64,"map":0,"xadvance":17.953125,"xoffset":22.65625,"yoffset":20.15625,"scale":1,"range":8,"bounds":[2.1875,-0.3125,16.5,24]},"99":{"id":99,"letter":"c","x":463,"y":265,"width":64,"height":64,"map":0,"xadvance":16.75,"xoffset":23.4375,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.4375,-0.3125,15.6875,17.21875]},"100":{"id":100,"letter":"d","x":529,"y":265,"width":64,"height":64,"map":0,"xadvance":18.046875,"xoffset":23.3828125,"yoffset":20.15625,"scale":1,"range":8,"bounds":[1.484375,-0.3125,15.75,24]},"101":{"id":101,"letter":"e","x":595,"y":265,"width":64,"height":64,"map":0,"xadvance":16.953125,"xoffset":23.375,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.453125,-0.3125,15.796875,17.21875]},"102":{"id":102,"letter":"f","x":661,"y":265,"width":64,"height":64,"map":0,"xadvance":11.109375,"xoffset":25.953125,"yoffset":19.8359375,"scale":1,"range":8,"bounds":[0.9375,0,11.15625,24.328125]},"103":{"id":103,"letter":"g","x":727,"y":265,"width":64,"height":64,"map":0,"xadvance":17.953125,"xoffset":23.359375,"yoffset":26.71875,"scale":1,"range":8,"bounds":[1.5,-6.65625,15.78125,17.21875]},"104":{"id":104,"letter":"h","x":793,"y":265,"width":64,"height":64,"map":0,"xadvance":17.625,"xoffset":23.1640625,"yoffset":20,"scale":1,"range":8,"bounds":[2.1875,0,15.484375,24]},"105":{"id":105,"letter":"i","x":859,"y":265,"width":64,"height":64,"map":0,"xadvance":7.765625,"xoffset":28.0859375,"yoffset":20.46875,"scale":1,"range":8,"bounds":[2.203125,0,5.625,23.0625]},"106":{"id":106,"letter":"j","x":925,"y":265,"width":64,"height":64,"map":0,"xadvance":7.640625,"xoffset":29.8125,"yoffset":23.8828125,"scale":1,"range":8,"bounds":[-1.015625,-6.828125,5.390625,23.0625]},"107":{"id":107,"letter":"k","x":1,"y":331,"width":64,"height":64,"map":0,"xadvance":16.21875,"xoffset":22.8046875,"yoffset":20,"scale":1,"range":8,"bounds":[2.203125,0,16.1875,24]},"108":{"id":108,"letter":"l","x":67,"y":331,"width":64,"height":64,"map":0,"xadvance":7.765625,"xoffset":28.1171875,"yoffset":20,"scale":1,"range":8,"bounds":[2.4375,0,5.328125,24]},"109":{"id":109,"letter":"m","x":133,"y":331,"width":64,"height":64,"map":0,"xadvance":28.046875,"xoffset":17.9765625,"yoffset":23.390625,"scale":1,"range":8,"bounds":[2.171875,0,25.875,17.21875]},"110":{"id":110,"letter":"n","x":199,"y":331,"width":64,"height":64,"map":0,"xadvance":17.65625,"xoffset":23.1640625,"yoffset":23.390625,"scale":1,"range":8,"bounds":[2.1875,0,15.484375,17.21875]},"111":{"id":111,"letter":"o","x":265,"y":331,"width":64,"height":64,"map":0,"xadvance":18.25,"xoffset":22.8828125,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.421875,-0.3125,16.8125,17.21875]},"112":{"id":112,"letter":"p","x":331,"y":331,"width":64,"height":64,"map":0,"xadvance":17.953125,"xoffset":22.671875,"yoffset":26.640625,"scale":1,"range":8,"bounds":[2.1875,-6.5,16.46875,17.21875]},"113":{"id":113,"letter":"q","x":397,"y":331,"width":64,"height":64,"map":0,"xadvance":18.1875,"xoffset":23.390625,"yoffset":26.640625,"scale":1,"range":8,"bounds":[1.484375,-6.5,15.734375,17.21875]},"114":{"id":114,"letter":"r","x":463,"y":331,"width":64,"height":64,"map":0,"xadvance":10.828125,"xoffset":25.7265625,"yoffset":23.390625,"scale":1,"range":8,"bounds":[2.1875,0,10.359375,17.21875]},"115":{"id":115,"letter":"s","x":529,"y":331,"width":64,"height":64,"map":0,"xadvance":16.5,"xoffset":23.796875,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.484375,-0.3125,14.921875,17.21875]},"116":{"id":116,"letter":"t","x":595,"y":331,"width":64,"height":64,"map":0,"xadvance":10.453125,"xoffset":27.2578125,"yoffset":21.65625,"scale":1,"range":8,"bounds":[0.140625,-0.3125,9.34375,21]},"117":{"id":117,"letter":"u","x":661,"y":331,"width":64,"height":64,"map":0,"xadvance":17.640625,"xoffset":23.21875,"yoffset":23.703125,"scale":1,"range":8,"bounds":[2.125,-0.3125,15.4375,16.90625]},"118":{"id":118,"letter":"v","x":727,"y":331,"width":64,"height":64,"map":0,"xadvance":15.5,"xoffset":24.2890625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[0.515625,0,14.90625,16.90625]},"119":{"id":119,"letter":"w","x":793,"y":331,"width":64,"height":64,"map":0,"xadvance":24.046875,"xoffset":20.015625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[0.671875,0,23.296875,16.90625]},"120":{"id":120,"letter":"x","x":859,"y":331,"width":64,"height":64,"map":0,"xadvance":15.859375,"xoffset":24.1015625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[0.640625,0,15.15625,16.90625]},"121":{"id":121,"letter":"y","x":925,"y":331,"width":64,"height":64,"map":0,"xadvance":15.140625,"xoffset":24.453125,"yoffset":26.9609375,"scale":1,"range":8,"bounds":[0.34375,-6.828125,14.75,16.90625]},"122":{"id":122,"letter":"z","x":1,"y":397,"width":64,"height":64,"map":0,"xadvance":15.859375,"xoffset":23.9140625,"yoffset":23.546875,"scale":1,"range":8,"bounds":[1.375,0,14.796875,16.90625]},"123":{"id":123,"letter":"{","x":67,"y":397,"width":64,"height":64,"map":0,"xadvance":10.828125,"xoffset":26.265625,"yoffset":22.3828125,"scale":1,"range":8,"bounds":[1,-5.71875,10.46875,24.953125]},"124":{"id":124,"letter":"|","x":133,"y":397,"width":64,"height":64,"map":0,"xadvance":7.796875,"xoffset":28.1015625,"yoffset":22.734375,"scale":1,"range":8,"bounds":[2.734375,-4.21875,5.0625,22.75]},"125":{"id":125,"letter":"}","x":199,"y":397,"width":64,"height":64,"map":0,"xadvance":10.828125,"xoffset":26.9609375,"yoffset":22.3828125,"scale":1,"range":8,"bounds":[0.296875,-5.71875,9.78125,24.953125]},"126":{"id":126,"letter":"~","x":265,"y":397,"width":64,"height":64,"map":0,"xadvance":21.765625,"xoffset":21.109375,"yoffset":22.59375,"scale":1,"range":8,"bounds":[2.046875,6.28125,19.734375,12.53125]}},"kerning":{"32":{"84":-0.625},"34":{"39":-1.671875,"65":-1.875,"97":-0.78125,"99":-0.921875,"100":-0.921875,"101":-0.921875,"103":-0.921875,"109":-0.3125,"110":-0.3125,"111":-0.953125,"112":-0.3125,"113":-0.921875,"115":-1.25,"119":0.171875},"39":{"34":-1.671875,"65":-1.875,"97":-0.78125,"99":-0.921875,"100":-0.921875,"101":-0.921875,"103":-0.921875,"109":-0.3125,"110":-0.3125,"111":-0.953125,"112":-0.3125,"113":-0.921875,"115":-1.25,"119":0.171875},"40":{"86":0.3125,"87":0.28125,"89":0.34375},"44":{"34":-2.65625,"39":-2.65625},"46":{"34":-2.65625,"39":-2.65625},"65":{"34":-1.875,"39":-1.875,"63":-0.953125,"67":-0.171875,"71":-0.171875,"79":-0.171875,"81":-0.171875,"84":-2.015625,"85":-0.265625,"86":-1.359375,"87":-1.078125,"89":-1.46875,"111":-0.1875,"116":-0.265625,"117":-0.171875,"118":-0.78125,"119":-0.515625,"121":-0.78125,"122":0.1875},"66":{"84":-0.421875,"86":-0.375,"89":-0.859375},"67":{"41":-0.40625,"84":-0.453125,"93":-0.1875,"125":-0.265625},"68":{"44":-1.59375,"46":-1.59375,"65":-0.328125,"84":-0.421875,"86":-0.34375,"88":-0.34375,"89":-0.671875,"90":-0.359375},"69":{"84":0.3125,"99":-0.296875,"100":-0.296875,"101":-0.296875,"102":-0.28125,"103":-0.296875,"111":-0.296875,"113":-0.296875,"117":-0.265625,"118":-0.40625,"119":-0.34375,"121":-0.40625},"70":{"44":-3.65625,"46":-3.65625,"65":-2.65625,"74":-4.125,"84":0.3125,"97":-0.53125,"99":-0.328125,"100":-0.328125,"101":-0.328125,"103":-0.328125,"111":-0.328125,"113":-0.328125,"114":-0.40625,"117":-0.34375,"118":-0.375,"121":-0.375},"72":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"73":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"74":{"65":-0.34375},"75":{"45":-1,"67":-0.484375,"71":-0.484375,"79":-0.484375,"81":-0.484375,"99":-0.40625,"100":-0.40625,"101":-0.40625,"103":-0.40625,"109":-0.359375,"110":-0.359375,"111":-0.421875,"112":-0.359375,"113":-0.40625,"117":-0.359375,"118":-0.625,"119":-0.984375,"121":-0.625},"76":{"34":-5.25,"39":-5.25,"65":0.296875,"67":-1.015625,"71":-1.015625,"79":-1.015625,"81":-1.015625,"84":-4.296875,"85":-0.84375,"86":-2.734375,"87":-2.234375,"89":-3.734375,"117":-0.6875,"118":-2.078125,"119":-1.4375,"121":-2.078125},"77":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"78":{"65":0.28125,"84":-0.453125,"88":0.265625,"89":-0.4375},"79":{"44":-1.59375,"46":-1.59375,"65":-0.328125,"84":-0.421875,"86":-0.34375,"88":-0.34375,"89":-0.671875,"90":-0.359375},"80":{"44":-5.0625,"46":-5.0625,"65":-2.15625,"74":-3.125,"88":-0.484375,"90":-0.40625,"97":-0.171875,"99":-0.203125,"100":-0.203125,"101":-0.203125,"103":-0.203125,"111":-0.203125,"113":-0.203125,"116":0.21875,"118":0.234375,"121":0.234375},"81":{"84":-0.671875,"86":-0.4375,"87":-0.3125,"89":-0.546875},"82":{"84":-1.25,"86":-0.296875,"89":-0.75},"84":{"32":-0.625,"44":-3.40625,"45":-3.625,"46":-3.40625,"65":-1.234375,"67":-0.4375,"71":-0.4375,"74":-3.75,"79":-0.4375,"81":-0.4375,"83":-0.25,"86":0.25,"87":0.234375,"89":0.25,"97":-1.765625,"99":-1.546875,"100":-1.546875,"101":-1.546875,"103":-1.546875,"109":-1.703125,"110":-1.703125,"111":-1.546875,"112":-1.703125,"113":-1.546875,"114":-1.171875,"115":-1.8125,"117":-1.484375,"118":-1.125,"119":-0.890625,"120":-1.203125,"121":-1.125,"122":-0.9375},"85":{"65":-0.34375},"86":{"41":0.3125,"44":-3.515625,"45":-0.578125,"46":-3.515625,"65":-1.171875,"67":-0.203125,"71":-0.203125,"79":-0.203125,"81":-0.203125,"93":0.265625,"97":-0.71875,"99":-0.6875,"100":-0.6875,"101":-0.6875,"103":-0.6875,"111":-0.71875,"113":-0.6875,"114":-0.46875,"117":-0.4375,"118":-0.171875,"121":-0.171875,"125":0.296875},"87":{"41":0.234375,"44":-1.921875,"45":-0.9375,"46":-1.921875,"65":-0.671875,"84":0.21875,"93":0.1875,"97":-0.515625,"99":-0.484375,"100":-0.484375,"101":-0.484375,"103":-0.484375,"111":-0.484375,"113":-0.484375,"114":-0.328125,"117":-0.296875,"125":0.21875},"88":{"45":-0.71875,"67":-0.390625,"71":-0.390625,"79":-0.390625,"81":-0.390625,"86":0.21875,"99":-0.40625,"100":-0.40625,"101":-0.40625,"103":-0.40625,"111":-0.328125,"113":-0.40625,"117":-0.328125,"118":-0.484375,"121":-0.484375},"89":{"38":-0.46875,"41":0.3125,"42":-0.765625,"44":-3.296875,"45":-0.8125,"46":-3.296875,"65":-1.46875,"67":-0.453125,"71":-0.453125,"74":-1.5,"79":-0.453125,"81":-0.453125,"83":-0.25,"84":0.265625,"85":-1.5,"86":0.28125,"87":0.265625,"88":0.203125,"93":0.28125,"97":-1.140625,"99":-1.015625,"100":-1.015625,"101":-1.015625,"102":-0.34375,"103":-1.015625,"109":-0.625,"110":-0.625,"111":-1.015625,"112":-0.625,"113":-1.015625,"114":-0.625,"115":-0.90625,"116":-0.34375,"117":-0.609375,"118":-0.3125,"120":-0.359375,"121":-0.3125,"122":-0.46875,"125":0.296875},"90":{"65":0.203125,"67":-0.40625,"71":-0.40625,"79":-0.40625,"81":-0.40625,"99":-0.328125,"100":-0.328125,"101":-0.328125,"103":-0.328125,"111":-0.328125,"113":-0.328125,"117":-0.296875,"118":-0.421875,"119":-0.421875,"121":-0.421875},"91":{"74":-0.28125,"85":-0.28125},"97":{"34":-1.046875,"39":-1.046875,"118":-0.234375,"121":-0.234375},"98":{"34":-0.453125,"39":-0.453125,"118":-0.171875,"120":-0.234375,"121":-0.171875,"122":-0.234375},"99":{"34":-0.171875,"39":-0.171875},"101":{"34":-0.21875,"39":-0.21875,"118":-0.203125,"121":-0.203125},"102":{"34":0.25,"39":0.25,"41":0.3125,"93":0.28125,"99":-0.375,"100":-0.375,"101":-0.375,"103":-0.375,"113":-0.375,"125":0.296875},"104":{"34":-1.625,"39":-1.625},"107":{"99":-0.3125,"100":-0.3125,"101":-0.3125,"103":-0.3125,"113":-0.3125},"109":{"34":-1.625,"39":-1.625},"110":{"34":-1.625,"39":-1.625},"111":{"34":-2.125,"39":-2.125,"118":-0.234375,"120":-0.328125,"121":-0.234375,"122":-0.25},"112":{"34":-0.453125,"39":-0.453125,"118":-0.171875,"120":-0.234375,"121":-0.171875,"122":-0.234375},"114":{"34":0.25,"39":0.25,"44":-1.921875,"46":-1.921875,"97":-0.625,"99":-0.296875,"100":-0.296875,"101":-0.296875,"102":0.234375,"103":-0.296875,"111":-0.3125,"113":-0.296875,"116":0.78125,"118":0.28125,"119":0.265625,"121":0.28125},"116":{"111":-0.3125},"118":{"34":0.234375,"39":0.234375,"44":-1.671875,"46":-1.671875,"97":-0.234375,"99":-0.203125,"100":-0.203125,"101":-0.203125,"102":0.203125,"103":-0.203125,"111":-0.234375,"113":-0.203125},"119":{"44":-1.9375,"46":-1.9375},"120":{"99":-0.3125,"100":-0.3125,"101":-0.3125,"103":-0.3125,"111":-0.3125,"113":-0.3125},"121":{"34":0.234375,"39":0.234375,"44":-1.671875,"46":-1.671875,"97":-0.234375,"99":-0.203125,"100":-0.203125,"101":-0.203125,"102":0.203125,"103":-0.203125,"111":-0.234375,"113":-0.203125},"122":{"99":-0.25,"100":-0.25,"101":-0.25,"103":-0.25,"111":-0.25,"113":-0.25},"123":{"74":-0.3125,"85":-0.3125}}},"preload":true,"tags":[],"i18n":{},"id":"233667890"},"233667893":{"name":"ChoiceButton_Template","type":"template","file":null,"data":{"entities":{"1efadbcf-af96-4369-82a9-f5eba8baf0f7":{"name":"ChoiceButton_Template","tags":[],"enabled":true,"resource_id":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","parent":null,"children":["73eb8604-08ec-491d-a466-51a0bc96c4a7"],"position":[0,0,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"button":{"enabled":true,"active":true,"imageEntity":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","hitPadding":[0,0,0,0],"transitionMode":0,"hoverTint":[1,1,1,1],"pressedTint":[1,1,1,1],"inactiveTint":[1,1,1,1],"fadeDuration":0,"hoverSpriteAsset":null,"hoverSpriteFrame":0,"pressedSpriteAsset":null,"pressedSpriteFrame":0,"inactiveSpriteAsset":null,"inactiveSpriteFrame":0,"hoverTextureAsset":null,"pressedTextureAsset":null,"inactiveTextureAsset":null},"element":{"enabled":true,"type":"image","anchor":[0.5,0.5,0.5,0.5],"pivot":[0.5,0.5],"text":"","key":null,"fontAsset":null,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":false,"autoFitHeight":false,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[1,1,1],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[-16,-16,-16,-16],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":true,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}},"73eb8604-08ec-491d-a466-51a0bc96c4a7":{"name":"ButtonText","tags":[],"enabled":true,"resource_id":"73eb8604-08ec-491d-a466-51a0bc96c4a7","parent":"1efadbcf-af96-4369-82a9-f5eba8baf0f7","children":[],"position":[16,16,0],"rotation":[0,0,0],"scale":[1,1,1],"components":{"element":{"enabled":true,"type":"text","anchor":[0,0,1,1],"pivot":[0.5,0.5],"text":"Text","key":null,"fontAsset":233667890,"fontSize":32,"minFontSize":8,"maxFontSize":32,"autoFitWidth":true,"autoFitHeight":true,"maxLines":null,"lineHeight":32,"wrapLines":true,"spacing":1,"color":[0,0,0],"opacity":1,"textureAsset":null,"spriteAsset":null,"spriteFrame":0,"pixelsPerUnit":null,"width":32,"height":32,"margin":[0,0,0,0],"alignment":[0.5,0.5],"outlineColor":[0,0,0,1],"outlineThickness":0,"shadowColor":[0,0,0,1],"shadowOffset":[0,0],"rect":[0,0,1,1],"materialAsset":null,"autoWidth":false,"autoHeight":false,"fitMode":"stretch","useInput":false,"batchGroupId":null,"mask":false,"layers":[4],"enableMarkup":false}}}}},"preload":true,"tags":[],"i18n":{},"id":"233667893"},"233728142":{"name":"gameAutoLocationDatabase.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"gameAutoLocationDatabase":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"233728142"},"234709287":{"name":"sceneIntegrationManager.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"sceneIntegrationManager":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"234709287"},"234709288":{"name":"storySceneBridge.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"storySceneBridge":{"attributesOrder":["sceneMapping"],"attributes":{"sceneMapping":{"type":"json","schema":[{"name":"storyLocation","type":"string","default":"tavern"},{"name":"sceneUrl","type":"string","default":""},{"name":"sceneType","type":"string","default":"medical"}],"array":true,"title":"Story Location to Scene Mapping"}}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"234709288"},"234709364":{"name":"SceneLoader.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"sceneLoader":{"attributesOrder":["sceneSource","sceneUrl","sceneAsset","autoLoad"],"attributes":{"sceneSource":{"type":"string","enum":{"order":["url","asset","text"],"options":{"url":"URL","asset":"Asset","text":"Text Input"}},"default":"url","title":"Scene Source Type"},"sceneUrl":{"type":"string","default":"","title":"Scene URL","description":"URL to fetch dynamic scene from"},"sceneAsset":{"type":"asset","assetType":"text","title":"Scene Asset","description":"Text asset containing scene code"},"autoLoad":{"type":"boolean","default":false,"title":"Auto Load on Start"}}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"234709364"},"234710061":{"name":"controlManager.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"controlManager":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"234710061"},"234712674":{"name":"uiController.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"uiController":{"attributesOrder":["descriptionElement","choicesContainer","choiceButtonTemplate","uiPanel"],"attributes":{"descriptionElement":{"type":"entity","title":"Description Text Entity"},"choicesContainer":{"type":"entity","title":"Choices Container Entity"},"choiceButtonTemplate":{"type":"asset","assetType":"template","title":"Choice Button Template"},"uiPanel":{"type":"entity","title":"UI Panel Entity","description":"The main panel that contains all UI elements"}}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"234712674"},"234712675":{"name":"uiDebugFix.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"uiDebugFix":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"234712675"},"235086646":{"name":"SimpleSceneLoader.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"simpleSceneLoader":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"235086646"},"235092651":{"name":"huggingFaceSceneLoader.js","type":"script","file":{"filename":"__game-scripts.js","size":60901,"hash":"a8c49a20707a83936401ed08a5ed5aae","url":"__game-scripts.js"},"data":{"scripts":{"huggingFaceSceneLoader":{"attributesOrder":[],"attributes":{}}},"loading":false,"loadingType":0},"preload":true,"tags":[],"i18n":{},"id":"235092651"}}}
|