SCED/objects/Jumanji.b46db2/JumanjiCampaignLog1.eda22b.json
Buhallin 15e69d6d0e
Rounding cleanup
Looks like a lot of files got committed without the value rounding applied.  Not sure when or which PR, but this cleans it up.

This change was generated based on the current main by assembling then decomposing the mod.
2022-11-16 17:53:41 -08:00

117 lines
17 KiB
JSON

{
"AltLookAngle": {
"x": 0,
"y": 0,
"z": 0
},
"Autoraise": true,
"ColorDiffuse": {
"b": 1,
"g": 1,
"r": 1
},
"CustomImage": {
"CustomToken": {
"MergeDistancePixels": 15,
"Stackable": false,
"StandUp": false,
"Thickness": 0.2
},
"ImageScalar": 1,
"ImageSecondaryURL": "",
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/1847049778276400654/CA0CB2DFEC2369A88438155657A68BE20B90A90E/",
"WidthScale": 0
},
"Description": "",
"DragSelectable": true,
"GMNotes": "",
"GUID": "eda22b",
"Grid": true,
"GridProjection": false,
"Hands": false,
"HideWhenFaceDown": false,
"IgnoreFoW": false,
"LayoutGroupSortIndex": 0,
"Locked": false,
"LuaScriptState_path": "Jumanji.b46db2/JumanjiCampaignLog1.eda22b.luascriptstate",
"LuaScript_path": "Jumanji.b46db2/JumanjiCampaignLog1.eda22b.ttslua",
"MeasureMovement": false,
"Name": "Custom_Token",
"Nickname": "Jumanji Campaign Log 1",
"Snap": true,
"States": {
"2": {
"AltLookAngle": {
"x": 0,
"y": 0,
"z": 0
},
"Autoraise": true,
"ColorDiffuse": {
"b": 1,
"g": 1,
"r": 1
},
"CustomImage": {
"CustomToken": {
"MergeDistancePixels": 15,
"Stackable": false,
"StandUp": false,
"Thickness": 0.2
},
"ImageScalar": 1,
"ImageSecondaryURL": "",
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/1847049778276403495/316E06F3D6F35585DFA7C9F161D9B6F0C6D34558/",
"WidthScale": 0
},
"Description": "",
"DragSelectable": true,
"GMNotes": "",
"GUID": "a9628a",
"Grid": true,
"GridProjection": false,
"Hands": false,
"HideWhenFaceDown": false,
"IgnoreFoW": false,
"LayoutGroupSortIndex": 0,
"Locked": false,
"LuaScript": "--[[ Character Sheet Template by: MrStump\r\n\r\nYou can set up your own character sheet if you follow these steps.\r\n\r\nStep 1) Change the character sheet image\r\n -Right click on the character sheet, click Custom\r\n -Replace the image URL with one for your character sheet\r\n -Click import, make sure your sheet loads\r\n -SAVE THE GAME (the table setup)\r\n -LOAD FROM THAT SAVE YOU JUST MADE\r\n\r\nStep 2) Edit script to fit your character sheet\r\n -Below you will see some general options, and then the big data table\r\n -The data table is what determines how many of which buttons are made\r\n -Checkboxes\r\n -Counters\r\n -Textboxes\r\n -By default, there are 3 of each. You can add more or remove entries\r\n -If you intend to add/remove, be sure only to add/remove ENTRIES\r\n -This is what an entry looks like:\r\n {\r\n pos = {-0.977,0.1,-0.589},\r\n size = 800,\r\n state = false\r\n },\r\n -Deleting the whole thing would remove that specific item on the sheet\r\n -Copy and pasting it after another entry would create another\r\n -Each entry type has unique data points (pos, size, state, etc)\r\n -Do not try to add in your own data points or remove them individually\r\n -There is a summary of what each point does at the top of its category\r\n\r\nStep 3) Save and check script changes\r\n -Hit Save \u0026 Apply in the script window to save your code\r\n -You can edit your code as needed and Save+Apply as often as needed\r\n -When you are finished, make disableSave = false below then Save+apply\r\n -This enables saving, so your sheet will remember whats on it.\r\n\r\nBonus) Finding/Editing Positions for elements\r\n I have included a tool to get positions for buttons in {x,y,z} form\r\n Place it where you want the center of your element to be\r\n Then copy the table from the notes (lower right of screen)\r\n You can highlight it and CTRL+C\r\n Paste it into the data table where needed (pos=)\r\n If you want to manually tweek the values:\r\n {0,0,0} is the center of the character sheet\r\n {1,0,0} is right, {-1,0,0} is left\r\n {0,0,-1} is up, {0,0,1} is down\r\n 0.1 for Y is the height off of the page.\r\n If it was 0, it would be down inside the model of the sheet\r\n\r\nBegin editing below: ]]\r\n\r\n--Set this to true while editing and false when you have finished\r\ndisableSave = false\r\n--Remember to set this to false once you are done making changes\r\n--Then, after you save \u0026 apply it, save your game too\r\n\r\n--Color information for button text (r,g,b, values of 0-1)\r\nbuttonFontColor = {0,0,0}\r\n--Color information for button background\r\nbuttonColor = {1,1,1}\r\n--Change scale of button (Avoid changing if possible)\r\nbuttonScale = {0.1,0.1,0.1}\r\n\r\n--This is the button placement information\r\ndefaultButtonData = {\r\n --Add checkboxes\r\n checkbox = {\r\n --[[\r\n pos = the position (pasted from the helper tool)\r\n size = height/width/font_size for checkbox\r\n state = default starting value for checkbox (true=checked, false=not)\r\n ]]\r\n --Home Invasion\r\n {\r\n pos = {-1.370,0.1,-0.158},\r\n size = 600,\r\n state = false\r\n },\r\n --Urban Jungle\r\n {\r\n pos = {-1.352,0.1,-0.031},\r\n size = 600,\r\n state = false\r\n },\r\n --Back to Start\r\n {\r\n pos = {-1.339,0.1,0.099},\r\n size = 600,\r\n state = false\r\n },\r\n --Urban Jungle\r\n {\r\n pos = {-1.331,0.1,0.234},\r\n size = 600,\r\n state = false\r\n },\r\n --Force of Nature\r\n {\r\n pos = {-1.319,0.1,0.369},\r\n size = 600,\r\n state = false\r\n },\r\n --1: Cultist Token\r\n {\r\n pos = {-1.268,0.1,1.158},\r\n size = 600,\r\n state = false\r\n },\r\n --1: Monster Token\r\n {\r\n pos = {-0.773,0.1,1.119},\r\n size = 600,\r\n state = false\r\n },\r\n --2: Cultist Token\r\n {\r\n pos = {-1.260,0.1,1.287},\r\n size = 600,\r\n state = false\r\n },\r\n --2: Tablet Token\r\n {\r\n pos = {-0.760,0.1,1.251},\r\n size = 600,\r\n state = false\r\n },\r\n --3: Tablet Token\r\n {\r\n pos = {-1.247,0.1,1.420},\r\n size = 600,\r\n state = false\r\n },\r\n --3: Monster Token\r\n {\r\n pos = {-0.751,0.1,1.380},\r\n size = 600,\r\n state = false\r\n },\r\n --4: Cultist Token\r\n {\r\n pos = {-1.239,0.1,1.549},\r\n size = 600,\r\n state = false\r\n },\r\n --4: Tablet Token\r\n {\r\n pos = {-0.743,0.1,1.517},\r\n size = 600,\r\n state = false\r\n },\r\n --End of checkboxes\r\n },\r\n --Add counters that have a + and - button\r\n counter = {\r\n --[[\r\n pos = the position (pasted from the helper tool)\r\n size = height/width/font_size for counter\r\n value = default starting value for counter\r\n hideBG = if background of counter is hidden (true=hidden, false=not)\r\n ]]\r\n --Turns Taken\r\n {\r\n pos = {-0.880,0.1,0.737},\r\n size = 1500,\r\n value = 0,\r\n hideBG = true\r\n },\r\n --End of counters\r\n },\r\n --Add editable text boxes\r\n textbox = {\r\n --[[\r\n pos = the position (pasted from the helper tool)\r\n rows = how many lines of text you want for this box\r\n width = how wide the text box is\r\n font_size = size of text. This and \"rows\" effect overall height\r\n label = what is shown when there is no text. \"\" = nothing\r\n value = text entered into box. \"\" = nothing\r\n alignment = Number to indicate how you want text aligned\r\n (1=Automatic, 2=Left, 3=Center, 4=Right, 5=Justified)\r\n ]]\r\n --Aggressive Threats\r\n {\r\n pos = {0.640,0.1,-1.500},\r\n rows = 4,\r\n width = 3800,\r\n font_size = 450,\r\n label = \"Empty\",\r\n value = \"\",\r\n alignment = 2\r\n },\r\n --Lurking Threats\r\n {\r\n pos = {0.620,0.1,-1.000},\r\n rows = 4,\r\n width = 3800,\r\n font_size = 450,\r\n label = \"Empty\",\r\n value = \"\",\r\n alignment = 2\r\n },\r\n --Environmental Threats\r\n {\r\n pos = {0.600,0.1,-0.500},\r\n rows = 4,\r\n width = 3800,\r\n font_size = 450,\r\n label = \"Empty\",\r\n value = \"\",\r\n alignment = 2\r\n },\r\n --End of textboxes\r\n }\r\n}\r\n\r\n\r\n\r\n--Lua beyond this point, I recommend doing something more fun with your life\r\n\r\n\r\n\r\n--Save function\r\nfunction updateSave()\r\n saved_data = JSON.encode(ref_buttonData)\r\n if disableSave==true then saved_data=\"\" end\r\n self.script_state = saved_data\r\nend\r\n\r\n--Startup procedure\r\nfunction onload(saved_data)\r\n if disableSave==true then saved_data=\"\" end\r\n if saved_data ~= \"\" then\r\n local loaded_data = JSON.decode(saved_data)\r\n ref_buttonData = loaded_data\r\n else\r\n ref_buttonData = defaultButtonData\r\n end\r\n\r\n spawnedButtonCount = 0\r\n createCheckbox()\r\n createCounter()\r\n createTextbox()\r\nend\r\n\r\n\r\n\r\n--Click functions for buttons\r\n\r\n\r\n\r\n--Checks or unchecks the given box\r\nfunction click_checkbox(tableIndex, buttonIndex)\r\n if ref_buttonData.checkbox[tableIndex].state == true then\r\n ref_buttonData.checkbox[tableIndex].state = false\r\n self.editButton({index=buttonIndex, label=\"\"})\r\n else\r\n ref_buttonData.checkbox[tableIndex].state = true\r\n self.editButton({index=buttonIndex, label=string.char(10008)})\r\n end\r\n updateSave()\r\nend\r\n\r\n--Applies value to given counter display\r\nfunction click_counter(tableIndex, buttonIndex, amount)\r\n ref_buttonData.counter[tableIndex].value = ref_buttonData.counter[tableIndex].value + amount\r\n self.editButton({index=buttonIndex, label=ref_buttonData.counter[tableIndex].value})\r\n updateSave()\r\nend\r\n\r\n--Updates saved value for given text box\r\nfunction click_textbox(i, value, selected)\r\n if selected == false then\r\n ref_buttonData.textbox[i].value = value\r\n updateSave()\r\n end\r\nend\r\n\r\n--Dud function for if you have a background on a counter\r\nfunction click_none() end\r\n\r\n\r\n\r\n--Button creation\r\n\r\n\r\n\r\n--Makes checkboxes\r\nfunction createCheckbox()\r\n for i, data in ipairs(ref_buttonData.checkbox) do\r\n --Sets up reference function\r\n local buttonNumber = spawnedButtonCount\r\n local funcName = \"checkbox\"..i\r\n local func = function() click_checkbox(i, buttonNumber) end\r\n self.setVar(funcName, func)\r\n --Sets up label\r\n local label = \"\"\r\n if data.state==true then label=string.char(10008) end\r\n --Creates button and counts it\r\n self.createButton({\r\n label=label, click_function=funcName, function_owner=self,\r\n position=data.pos, height=data.size, width=data.size,\r\n font_size=data.size, scale=buttonScale,\r\n color=buttonColor, font_color=buttonFontColor\r\n })\r\n spawnedButtonCount = spawnedButtonCount + 1\r\n end\r\nend\r\n\r\n--Makes counters\r\nfunction createCounter()\r\n for i, data in ipairs(ref_buttonData.counter) do\r\n --Sets up display\r\n local displayNumber = spawnedButtonCount\r\n --Sets up label\r\n local label = data.value\r\n --Sets height/width for display\r\n local size = data.size\r\n if data.hideBG == true then size = 0 end\r\n --Creates button and counts it\r\n self.createButton({\r\n label=label, click_function=\"click_none\", function_owner=self,\r\n position=data.pos, height=size, width=size,\r\n font_size=data.size, scale=buttonScale,\r\n color=buttonColor, font_color=buttonFontColor\r\n })\r\n spawnedButtonCount = spawnedButtonCount + 1\r\n\r\n --Sets up add 1\r\n local funcName = \"counterAdd\"..i\r\n local func = function() click_counter(i, displayNumber, 1) end\r\n self.setVar(funcName, func)\r\n --Sets up label\r\n local label = \"+\"\r\n --Sets up position\r\n local offsetDistance = (data.size/2 + data.size/4) * (buttonScale[1] * 0.002)\r\n local pos = {data.pos[1] + offsetDistance, data.pos[2], data.pos[3]}\r\n --Sets up size\r\n local size = data.size / 2\r\n --Creates button and counts it\r\n self.createButton({\r\n label=label, click_function=funcName, function_owner=self,\r\n position=pos, height=size, width=size,\r\n font_size=size, scale=buttonScale,\r\n color=buttonColor, font_color=buttonFontColor\r\n })\r\n spawnedButtonCount = spawnedButtonCount + 1\r\n\r\n --Sets up subtract 1\r\n local funcName = \"counterSub\"..i\r\n local func = function() click_counter(i, displayNumber, -1) end\r\n self.setVar(funcName, func)\r\n --Sets up label\r\n local label = \"-\"\r\n --Set up position\r\n local pos = {data.pos[1] - offsetDistance, data.pos[2], data.pos[3]}\r\n --Creates button and counts it\r\n self.createButton({\r\n label=label, click_function=funcName, function_owner=self,\r\n position=pos, height=size, width=size,\r\n font_size=size, scale=buttonScale,\r\n color=buttonColor, font_color=buttonFontColor\r\n })\r\n spawnedButtonCount = spawnedButtonCount + 1\r\n end\r\nend\r\n\r\nfunction createTextbox()\r\n for i, data in ipairs(ref_buttonData.textbox) do\r\n --Sets up reference function\r\n local funcName = \"textbox\"..i\r\n local func = function(_,_,val,sel) click_textbox(i,val,sel) end\r\n self.setVar(funcName, func)\r\n\r\n self.createInput({\r\n input_function = funcName,\r\n function_owner = self,\r\n label = data.label,\r\n alignment = data.alignment,\r\n position = data.pos,\r\n scale = buttonScale,\r\n width = data.width,\r\n height = (data.font_size*data.rows)+24,\r\n font_size = data.font_size,\r\n color = buttonColor,\r\n font_color = buttonFontColor,\r\n value = data.value,\r\n })\r\n end\r\nend\r\n",
"LuaScriptState": "{\"checkbox\":[{\"pos\":[-1.37,0.1,-0.158],\"size\":600,\"state\":false},{\"pos\":[-1.352,0.1,-0.031],\"size\":600,\"state\":false},{\"pos\":[-1.339,0.1,0.099],\"size\":600,\"state\":false},{\"pos\":[-1.331,0.1,0.234],\"size\":600,\"state\":false},{\"pos\":[-1.319,0.1,0.369],\"size\":600,\"state\":false},{\"pos\":[-1.268,0.1,1.158],\"size\":600,\"state\":false},{\"pos\":[-0.773,0.1,1.119],\"size\":600,\"state\":false},{\"pos\":[-1.26,0.1,1.287],\"size\":600,\"state\":false},{\"pos\":[-0.76,0.1,1.251],\"size\":600,\"state\":false},{\"pos\":[-1.247,0.1,1.42],\"size\":600,\"state\":false},{\"pos\":[-0.751,0.1,1.38],\"size\":600,\"state\":false},{\"pos\":[-1.239,0.1,1.549],\"size\":600,\"state\":false},{\"pos\":[-0.743,0.1,1.517],\"size\":600,\"state\":false}],\"counter\":[{\"hideBG\":true,\"pos\":[-0.88,0.1,0.737],\"size\":1500,\"value\":0}],\"textbox\":[{\"alignment\":2,\"font_size\":450,\"label\":\"Empty\",\"pos\":[0.64,0.1,-1.5],\"rows\":4,\"value\":\"\",\"width\":3800},{\"alignment\":2,\"font_size\":450,\"label\":\"Empty\",\"pos\":[0.62,0.1,-1],\"rows\":4,\"value\":\"\",\"width\":3800},{\"alignment\":2,\"font_size\":450,\"label\":\"Empty\",\"pos\":[0.6,0.1,-0.5],\"rows\":4,\"value\":\"\",\"width\":3800}]}",
"MeasureMovement": false,
"Name": "Custom_Token",
"Nickname": "Jumanji Campaign Log 2",
"Snap": true,
"Sticky": true,
"Tooltip": true,
"Transform": {
"posX": 1.147618,
"posY": 1.571152,
"posZ": -29.7407913,
"rotX": 359.9201,
"rotY": 270.021973,
"rotZ": 0.0168410949,
"scaleX": 5.188961,
"scaleY": 1,
"scaleZ": 5.188961
},
"Value": 0,
"XmlUI": ""
}
},
"Sticky": true,
"Tooltip": true,
"Transform": {
"posX": 1.148,
"posY": 1.571,
"posZ": -29.741,
"rotX": 0,
"rotY": 270,
"rotZ": 0,
"scaleX": 5.19,
"scaleY": 1,
"scaleZ": 5.19
},
"Value": 0,
"XmlUI": ""
}