Subversion Repository Public Repository

Nextrek

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
    "uid": "4BC1A1F97C9DF54AF66847850D28A7141D5F",
    "isLoaded": true,
    "lastModificationTime": 0,
    "items": {
        "name": "Message Batcher",
        "type": "objj_script",
        "parentId": "AA3A4BE42F4D544A1509F6044F8DC9BF1969",
        "order": 3,
        "content": "KGZ1bmN0aW9uKCkKewogICAgcmV0dXJuIHsibmFtZSI6ICJNZXNzYWdlIEJhdGNoZXIiLCAidHlwZSI6ICJHU1NjcmlwdEFnZW50IiwgImNhdGVnb3J5IjogeyJuYW1lIjogIkRlZmF1bHQiLCAiaWRlbnRpZmllciI6ICJncy5kZWZhdWx0In0sICJ0YXJnZXQiOiAibm9uZSIsICJwcm9jZXNzIjogeyJkZXNjcmlwdGlvbiI6ICJNZXNzYWdlIEJhdGNoZXIiLCAicnVuIjogZnVuY3Rpb24ob2JqZWN0LCBjb250ZXh0KQogICAgewogICAgICAgIHRyeSAgICAgICAgewogICAgICAgICAgICB2YXIgbWVzc2FnZSA9IChudy5DbGlwYm9hcmQuZ2V0KCkpLmdldCgidGV4dCIpOwogICAgICAgICAgICB2YXIgbWVzc2FnZXMgPSBtZXNzYWdlLnNwbGl0KC8jKC4rKS9naW0pOwogICAgICAgICAgICBtZXNzYWdlcyA9IG1lc3NhZ2VzLndoZXJlKGZ1bmN0aW9uKG0pCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBtLmxlbmd0aCA+IDA7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgYmF0Y2ggPSBbXTsKICAgICAgICAgICAgdmFyIGNoYXJhY3RlcnMgPSAoY29udGV4dC5nZXREb2N1bWVudHNCeVR5cGUoImRhdGFfcmVjb3JkIikpLndoZXJlKGZ1bmN0aW9uKHIpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiByLml0ZW1zLmNhdGVnb3J5ID09ICJjaGFyYWN0ZXJzIjsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciBjb21tYW5kID0gKGNvbnRleHQuZ2V0RG9jdW1lbnRzQnlUeXBlKCJldmVudF9jb21tYW5kIikpLmZpcnN0KGZ1bmN0aW9uKGMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBjLml0ZW1zLmlkID09ICJncy5TaG93TWVzc2FnZSI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG1lc3NhZ2VzLmxlbmd0aDsgaSArPSAyKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgY2hhcmFjdGVyID0gY2hhcmFjdGVycy5maXJzdChmdW5jdGlvbihjKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBjLml0ZW1zLm5hbWUgPT0gbWVzc2FnZXNbaV07CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZhciBjb21tYW5kRGF0YSA9IE9iamVjdC5jb3B5KGNvbW1hbmQuaXRlbXMuZGVmYXVsdFZhbHVlKTsKICAgICAgICAgICAgICAgIGNvbW1hbmREYXRhLm1lc3NhZ2UgPSB7ImxjSWQiOiBudWxsLCAiZGVmYXVsdFRleHQiOiBtZXNzYWdlc1tpICsgMV0udHJpbSgpfTsKICAgICAgICAgICAgICAgIGNvbW1hbmREYXRhLmNoYXJhY3RlcklkID0gY2hhcmFjdGVyID8gY2hhcmFjdGVyLml0ZW1zLmlkIDogMDsKICAgICAgICAgICAgICAgIGNvbW1hbmREYXRhLmZpZWxkRmxhZ3MgPSB7ImR1cmF0aW9uIjogMX07CiAgICAgICAgICAgICAgICBiYXRjaC5wdXNoKHsiaWQiOiAiZ3MuU2hvd01lc3NhZ2UiLCAicGFyYW1zIjogeyJ3YWl0Rm9yQ29tcGxldGlvbiI6IDEsICJkdXJhdGlvbiI6IDE1LCAiZXhwcmVzc2lvbklkIjogbnVsbCwgImN1c3RvbSI6IHsib2JqZWN0IjogeyJ4IjogMCwgInkiOiAwLCAic2l6ZSI6IHsid2lkdGgiOiAzMDAsICJoZWlnaHQiOiAxMDB9fX0sICJtZXNzYWdlIjogeyJsY0lkIjogbnVsbCwgImRlZmF1bHRUZXh0IjogbWVzc2FnZXNbaSArIDFdLnRyaW0oKX0sICJwb3NpdGlvbiI6IDAsICJjaGFyYWN0ZXJJZCI6IGNoYXJhY3RlciA/IGNoYXJhY3Rlci5pdGVtcy5pZCA6IDAsICJwYXJ0aWFsIjogMCwgImZpZWxkRmxhZ3MiOiB7ImR1cmF0aW9uIjogMX0sICJleHByZXNzaW9ucyI6IFtdLCAiYW5pbWF0aW9ucyI6IFtdfSwgImluZGVudCI6IDAsICJ1aWQiOiBjb250ZXh0LmdlbmVyYXRlVWlkKCksICJleHBhbmRlZCI6IHRydWV9KTsKICAgICAgICAgICAgfQogICAgICAgICAgICAoKF9fX3IxID0gQ1BQYXN0ZWJvYXJkLmlzYS5vYmpqX21zZ1NlbmQwKENQUGFzdGVib2FyZCwgImdlbmVyYWxQYXN0ZWJvYXJkIikpLCBfX19yMSA9PSBudWxsID8gbnVsbCA6IF9fX3IxLmlzYS5vYmpqX21zZ1NlbmQxKF9fX3IxLCAic2V0U3RyaW5nOiIsIEpTT04uc3RyaW5naWZ5KGJhdGNoKSArICIubm92ZWxzaGFycC92bi1zY2VuZS1jb21tYW5kIikpOwogICAgICAgICAgICBjb250ZXh0LmZpbmlzaEV4ZWN1dGlvbigiTWVzc2FnZXMgc3VjY2Vzc2Z1bGx5IGNvcGllZCBpbnRvIHlvdXIgY2xpcGJvYXJkISIpOwogICAgICAgIH0KICAgICAgICBjYXRjaChleCkgICAgICAgICB7CiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXgpOwogICAgICAgICAgICBjb250ZXh0LmZpbmlzaEV4ZWN1dGlvbigiQW4gZXJyb3Igb2NjdXJlZC4gUGxlYXNlIGNoZWNrIHRoZSBEZWJ1ZyBDb25zb2xlIGZvciBtb3JlIGRldGFpbHMuIik7CiAgICAgICAgfSAgICAgICAgdmFyIF9fX3IxOwogICAgfX19Owp9KSgpOwo=",
        "rawContent": "/*\n*   Message Batcher\n*\n*   Converts messages in the format:\n*   \n*   #Miku\n    Hey how is it going?\n    I feel so good today!\n    \n    #Sana\n    I feel great too!\n    \n*/\n\n(function() {\n    return {\n        \"name\": \"Message Batcher\",\n        \"type\": \"GSScriptAgent\",\n        \"category\": { \"name\": \"Default\", \"identifier\": \"gs.default\" },\n        \"target\": \"none\",\n        \"process\": {\n            \"description\": \"Message Batcher\",\n            \"run\": function(object, context){\n                try {\n                    var message = nw.Clipboard.get().get(\"text\");\n                    var messages = message.split(/#(.+)/gim);\n                    messages = messages.where(function(m){ return m.length > 0 });\n                    var batch = []\n                    var characters = context.getDocumentsByType(\"data_record\").where(function(r){return r.items.category == \"characters\"; });\n                    var command = context.getDocumentsByType(\"event_command\").first(function(c){return c.items.id == \"gs.ShowMessage\"});\n                    \n                    for(var i = 0; i < messages.length; i += 2)\n                    {\n                        var character = characters.first(function(c){ return c.items.name == messages[i] });\n                        var commandData = Object.copy(command.items.defaultValue);\n                        commandData.message = {\"lcId\": null,\"defaultText\":messages[i+1].trim() };\n                        commandData.characterId = character ? character.items.id : 0;\n                        commandData.fieldFlags = { \"duration\":1 };\n                        \n                        batch.push({\n                            \"id\":\"gs.ShowMessage\",\n                            \"params\":\n                            {\n                                \"waitForCompletion\":1,\n                                \"duration\":15,\n                                \"expressionId\":null,\n                                \"custom\":{\"object\":{\"x\":0,\"y\":0,\"size\":{\"width\":300,\"height\":100}}},\n                                \"message\":{\"lcId\": null,\"defaultText\":messages[i+1].trim() },\n                                \"position\":0,\n                                \"characterId\": character ? character.items.id : 0,\n                                \"partial\":0,\n                                \"fieldFlags\":{\"duration\":1},\n                                \"expressions\":[],\n                                \"animations\":[]\n                            },\n                            \"indent\":0,\n                            \"uid\": context.generateUid(),\n                            \"expanded\":true\n                        });\n                    }\n                    \n                    [[CPPasteboard generalPasteboard] setString:JSON.stringify(batch)+\".novelsharp/vn-scene-command\"];\n                    context.finishExecution(\"Messages successfully copied into your clipboard!\");\n                } catch(ex) {\n                    console.error(ex)\n                    context.finishExecution(\"An error occured. Please check the Debug Console for more details.\")\n                }\n            }\n        }\n    }\n})()"
    },
    "summary": [
        "name",
        "type"
    ]
}

Commits for Nextrek/s2s/data/4BC1A1F97C9DF54AF66847850D28A7141D5F.json

Diff revisions: vs.
Revision Author Commited Message
1084 MOliva picture MOliva Fri 11 May, 2018 12:41:55 +0000