Sync some constants, operators, and functions for skin editor.

This commit is contained in:
2023-03-15 00:46:19 +08:00
parent 88b959a118
commit df5133a91a
3 changed files with 141 additions and 16 deletions

View File

@@ -36,12 +36,34 @@ var inputlists = {
var statementlists = {
"statement.comp": ["input.comp"],
"statement.define": ["input.ident", "exp"],
"statement.exp.const.w": [],
"statement.exp.const.h": [],
"statement.exp.const.inf": [],
"statement.exp.const.true": [],
"statement.exp.const.false": [],
"statement.exp.literal.ident": ["input.ident"],
"statement.exp.literal.number": ["input.number"],
"statement.exp.op.add": ["exp.number", "exp.number"],
"statement.exp.op.substract": ["exp.number", "exp.number"],
"statement.exp.op.multiply": ["exp.number", "exp.number"],
"statement.exp.op.divide": ["exp.number", "exp.number"],
"statement.exp.op.sub": ["exp.number", "exp.number"],
"statement.exp.op.mul": ["exp.number", "exp.number"],
"statement.exp.op.div": ["exp.number", "exp.number"],
"statement.exp.op.mod": ["exp.number", "exp.number"],
"statement.exp.op.add1": ["exp.number"],
"statement.exp.op.sub1": ["exp.number"],
"statement.exp.op.not": ["exp.number"],
"statement.exp.op.at": ["exp.vector", "exp.number"],
"statement.exp.op.lt": ["exp.number", "exp.number"],
"statement.exp.op.eq": ["exp.number", "exp.number"],
"statement.exp.op.gt": ["exp.number", "exp.number"],
"statement.exp.op.and": ["exp", "exp"],
"statement.exp.op.or": ["exp", "exp"],
"statement.exp.func.int": ["exp.number"],
"statement.exp.func.clamp": ["exp.number", "exp.number", "exp.number"],
"statement.exp.func.min": ["exp.number", "exp.number"],
"statement.exp.func.max": ["exp.number", "exp.number"],
"statement.exp.func.abs": ["exp.number"],
"statement.exp.func.interval": ["exp.number", "exp.number", "exp.number"],
"statement.exp.func.is": ["exp", "exp"],
"statement.obj": ["block.element"],
"statement.prop": ["input.prop", "exp"],
"statement.select": ["block.select", "block.element"],
@@ -53,7 +75,22 @@ var statementlists = {
var explists = {
"exp": ["#exp.array", "#exp.error", "#exp.identifier", "#exp.null", "#exp.number", "#exp.string", "#exp.vector"],
"exp.number": ["statement.exp.literal.number", "statement.exp.op.add", "statement.exp.op.substract", "statement.exp.op.multiply", "statement.exp.op.divide", "statement.exp.literal.ident"],
"exp.any": [
"statement.exp.literal.ident",
"statement.exp.op.and", "statement.exp.op.or"
],
"exp.number": [
"statement.exp.literal.number",
"statement.exp.const.w", "statement.exp.const.h", "statement.exp.const.inf", "statement.exp.const.true", "statement.exp.const.false",
"statement.exp.op.add", "statement.exp.op.sub", "statement.exp.op.mul", "statement.exp.op.div", "statement.exp.op.mod",
"statement.exp.op.add1", "statement.exp.op.sub1", "statement.exp.op.not",
"statement.exp.op.at", "statement.exp.op.lt", "statement.exp.op.eq", "statement.exp.op.gt",
"statement.exp.func.int", "statement.exp.func.clamp", "statement.exp.func.min", "statement.exp.func.max", "statement.exp.func.abs",
"statement.exp.func.interval", "statement.exp.func.is",
"statement.exp.func.anim", "statement.exp.func.cubic_bezier", "statement.exp.func.ease", "statement.exp.func.ease_in", "statement.exp.func.ease_out", "statement.exp.func.ease_in_out",
"statement.exp.func.attack_timing", "statement.exp.func.enter_timing", "statement.exp.func.release_timing", "statement.exp.func.leave_timing", "statement.exp.func.contact_timing",
"#exp.any"
],
};
window.onload = function () {

View File

@@ -49,12 +49,34 @@ messages["en_US"] = {
"input.type.track": "track",
"list.statement.comp": "Attach component",
"list.statement.define": "Define static variable",
"list.statement.exp.const.false": "False",
"list.statement.exp.const.h": "Screen height",
"list.statement.exp.const.inf": "Infinity",
"list.statement.exp.const.true": "True",
"list.statement.exp.const.w": "Screen width",
"list.statement.exp.func.abs": "Absolute value",
"list.statement.exp.func.clamp": "Clamp",
"list.statement.exp.func.int": "Round down",
"list.statement.exp.func.interval": "Interval",
"list.statement.exp.func.is": "Is equivalent",
"list.statement.exp.func.max": "Maximum",
"list.statement.exp.func.min": "Minimum",
"list.statement.exp.literal.ident": "Variable",
"list.statement.exp.literal.number": "Number",
"list.statement.exp.op.add": "a + b",
"list.statement.exp.op.divide": "a ÷ b",
"list.statement.exp.op.multiply": "a × b",
"list.statement.exp.op.substract": "a - b",
"list.statement.exp.op.add1": "+n",
"list.statement.exp.op.and": "p and q",
"list.statement.exp.op.at": "n-th element",
"list.statement.exp.op.div": "a ÷ b",
"list.statement.exp.op.eq": "a = b",
"list.statement.exp.op.gt": "a > b",
"list.statement.exp.op.lt": "a < b",
"list.statement.exp.op.mod": "a % b",
"list.statement.exp.op.mul": "a × b",
"list.statement.exp.op.not": "Not",
"list.statement.exp.op.or": "p or q",
"list.statement.exp.op.sub": "a - b",
"list.statement.exp.op.sub1": "-n",
"list.statement.obj": "Create container",
"list.statement.prop": "Set property",
"list.statement.select": "Select elements",
@@ -64,12 +86,34 @@ messages["en_US"] = {
"list.statement.select.type": "Filter element type",
"statement.comp": "with a {0}",
"statement.define": "Define static {0} = {1}",
"statement.exp.const.false": "false",
"statement.exp.const.h": "screen height",
"statement.exp.const.inf": "infinity",
"statement.exp.const.true": "true",
"statement.exp.const.w": "screen width",
"statement.exp.func.abs": "absolute value of {0}",
"statement.exp.func.clamp": "clamp {1} between {0} and {2}",
"statement.exp.func.int": "round down {0}",
"statement.exp.func.interval": "interval between {0} and {1}",
"statement.exp.func.is": "{0} is equivalent to {1}",
"statement.exp.func.max": "maximum of {0} and {1}",
"statement.exp.func.min": "minimum of {0} and {1}",
"statement.exp.literal.ident": "{0}",
"statement.exp.literal.number": "{0}",
"statement.exp.op.add": "{0} + {1}",
"statement.exp.op.divide": "{0} ÷ {1}",
"statement.exp.op.multiply": "{0} × {1}",
"statement.exp.op.substract": "{0} - {1}",
"statement.exp.op.add1": "+{0}",
"statement.exp.op.and": "{0} and {1}",
"statement.exp.op.at": "the {1}th item of {0}",
"statement.exp.op.div": "{0} ÷ {1}",
"statement.exp.op.eq": "{0} = {1}",
"statement.exp.op.gt": "{0} > {1}",
"statement.exp.op.lt": "{0} < {1}",
"statement.exp.op.mod": "{0} % {1}",
"statement.exp.op.mul": "{0} × {1}",
"statement.exp.op.not": "not {0}",
"statement.exp.op.or": "{0} or {1}",
"statement.exp.op.sub": "{0} - {1}",
"statement.exp.op.sub1": "-{0}",
"statement.obj": "Create a container {0}",
"statement.prop": "Set its {0} to {1}",
"statement.select": "{0} {1}",

View File

@@ -49,12 +49,34 @@ messages["zh_CN"] = {
"input.type.track": "轨道",
"list.statement.comp": "附加组件",
"list.statement.define": "定义静态变量",
"list.statement.exp.const.false": "假",
"list.statement.exp.const.h": "屏幕高度",
"list.statement.exp.const.inf": "无穷大",
"list.statement.exp.const.true": "真",
"list.statement.exp.const.w": "屏幕宽度",
"list.statement.exp.func.abs": "绝对值",
"list.statement.exp.func.clamp": "限制值",
"list.statement.exp.func.int": "向下取整",
"list.statement.exp.func.interval": "区间",
"list.statement.exp.func.is": "等价",
"list.statement.exp.func.max": "最大值",
"list.statement.exp.func.min": "最小值",
"list.statement.exp.literal.ident": "变量",
"list.statement.exp.literal.number": "数字",
"list.statement.exp.op.add": "a + b",
"list.statement.exp.op.divide": "a ÷ b",
"list.statement.exp.op.multiply": "a × b",
"list.statement.exp.op.substract": "a - b",
"list.statement.exp.op.add1": "+n",
"list.statement.exp.op.and": "p 且 q",
"list.statement.exp.op.at": "索引元素",
"list.statement.exp.op.div": "a ÷ b",
"list.statement.exp.op.eq": "a = b",
"list.statement.exp.op.gt": "a > b",
"list.statement.exp.op.lt": "a < b",
"list.statement.exp.op.mod": "a % b",
"list.statement.exp.op.mul": "a × b",
"list.statement.exp.op.not": "非",
"list.statement.exp.op.or": "p 或 q",
"list.statement.exp.op.sub": "a - b",
"list.statement.exp.op.sub1": "-n",
"list.statement.obj": "创建容器",
"list.statement.prop": "设置属性",
"list.statement.select": "选择元素",
@@ -64,12 +86,34 @@ messages["zh_CN"] = {
"list.statement.select.type": "筛选元素类型",
"statement.comp": "创建一个 {0} 组件",
"statement.define": "静态定义 {0} = {1}",
"statement.exp.const.false": "假",
"statement.exp.const.h": "屏幕高度",
"statement.exp.const.inf": "无穷大",
"statement.exp.const.true": "真",
"statement.exp.const.w": "屏幕宽度",
"statement.exp.func.abs": "{0} 的绝对值",
"statement.exp.func.clamp": "限制 {1} 在 {0} 和 {2} 之间",
"statement.exp.func.int": "向下取整 {0}",
"statement.exp.func.interval": "{0} 和 {1} 之间的区间",
"statement.exp.func.is": "{0} 等价于 {1}",
"statement.exp.func.max": "{0} 和 {1} 的最大值",
"statement.exp.func.min": "{0} 和 {1} 的最小值",
"statement.exp.literal.ident": "{0}",
"statement.exp.literal.number": "{0}",
"statement.exp.op.add": "{0} + {1}",
"statement.exp.op.divide": "{0} ÷ {1}",
"statement.exp.op.multiply": "{0} × {1}",
"statement.exp.op.substract": "{0} - {1}",
"statement.exp.op.add1": "+{0}",
"statement.exp.op.and": "{0} {1}",
"statement.exp.op.at": "{0} 的第 {1} 个元素",
"statement.exp.op.div": "{0} ÷ {1}",
"statement.exp.op.eq": "{0} = {1}",
"statement.exp.op.gt": "{0} > {1}",
"statement.exp.op.lt": "{0} < {1}",
"statement.exp.op.mod": "{0} % {1}",
"statement.exp.op.mul": "{0} × {1}",
"statement.exp.op.not": "非 {0}",
"statement.exp.op.or": "{0} 或 {1}",
"statement.exp.op.sub": "{0} - {1}",
"statement.exp.op.sub1": "-{0}",
"statement.obj": "创建一个容器 {0}",
"statement.prop": "设置属性 {0} 为 {1}",
"statement.select": "{0} {1}",