diff --git a/boards/default_src/python_mixpy/blocks/turtle.js b/boards/default_src/python_mixpy/blocks/turtle.js index 4766a487..bd562069 100644 --- a/boards/default_src/python_mixpy/blocks/turtle.js +++ b/boards/default_src/python_mixpy/blocks/turtle.js @@ -424,7 +424,6 @@ export const turtle_visible = { } }; - export const turtle_bgcolor = { init: function () { @@ -438,6 +437,25 @@ export const turtle_bgcolor = { } }; +export const turtle_tracer = { + init: function () { + this.setColour(TURTLE_HUE); + this.appendDummyInput() + .appendField(Blockly.Msg.MIXLY_TURTLE_TRACER); + this.appendValueInput('STEP') + .setCheck(null) + .setAlign(Blockly.inputs.Align.RIGHT) + .appendField(Blockly.Msg.MIXLY_TURTLE_TRACER_STEP); + this.appendValueInput('DELAY') + .setCheck(null) + .setAlign(Blockly.inputs.Align.RIGHT) + .appendField(Blockly.Msg.MIXLY_TURTLE_TRACER_DELAY_MS); + this.setInputsInline(true); + this.setPreviousStatement(true); + this.setNextStatement(true); + } +}; + export const turtle_pencolor = { init: function () { this.appendValueInput('TUR') diff --git a/boards/default_src/python_mixpy/generators/turtle.js b/boards/default_src/python_mixpy/generators/turtle.js index 80002b68..61750603 100644 --- a/boards/default_src/python_mixpy/generators/turtle.js +++ b/boards/default_src/python_mixpy/generators/turtle.js @@ -173,6 +173,14 @@ export const turtle_bgcolor = function (_, generator) { return code; } +export const turtle_tracer = function (_, generator) { + generator.definitions_.import_turtle = "import turtle"; + const STEP = generator.valueToCode(this, 'STEP', generator.ORDER_ASSIGNMENT) || '1'; + const DELAY = generator.valueToCode(this, 'DELAY', generator.ORDER_ASSIGNMENT) || 'None'; + var code = `turtle.tracer(${STEP}, delay=${DELAY})\n`; + return code; +} + export const turtle_pencolor = function (_, generator) { generator.definitions_.import_turtle = "import turtle"; var varName = generator.valueToCode(this, 'TUR', generator.ORDER_ASSIGNMENT) || '0'; diff --git a/boards/default_src/python_mixpy/template.xml b/boards/default_src/python_mixpy/template.xml index a70b5b49..811fe224 100644 --- a/boards/default_src/python_mixpy/template.xml +++ b/boards/default_src/python_mixpy/template.xml @@ -1921,6 +1921,19 @@ + + + + 1 + + + + + 1000 + + + + diff --git a/common/msg/blockly/en.js b/common/msg/blockly/en.js index 70499081..d5a3fefb 100644 --- a/common/msg/blockly/en.js +++ b/common/msg/blockly/en.js @@ -4108,5 +4108,9 @@ En.MIXLY_SOUND_VOLUME_SET_TOOLTIP='Set volume'; En.MIXLY_SOUND_VOLUME_ADD_TOOLTIP='Change volume'; En.MIXLY_SOUND_EFFECT_SET_TOOLTIP='Set sound effect'; En.MIXLY_SOUND_EFFECT_CLEAR_TOOLTIP='Clear sound effects'; -En.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='Change sound effect'; +En.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='Change sound effect'; +En.MIXLY_TURTLE_TRACER = 'Set the drawing refresh rate'; +En.MIXLY_TURTLE_TRACER_STEP = 'Number of steps'; +En.MIXLY_TURTLE_TRACER_DELAY_MS = 'Delay (milliseconds)'; + })(); diff --git a/common/msg/blockly/zh-hans.js b/common/msg/blockly/zh-hans.js index 50af2e11..eb809bf5 100644 --- a/common/msg/blockly/zh-hans.js +++ b/common/msg/blockly/zh-hans.js @@ -4291,6 +4291,9 @@ ZhHans.MIXLY_SOUND_VOLUME_SET_TOOLTIP='设置音量'; ZhHans.MIXLY_SOUND_VOLUME_ADD_TOOLTIP='增加音量'; ZhHans.MIXLY_SOUND_EFFECT_SET_TOOLTIP='将音效设为'; ZhHans.MIXLY_SOUND_EFFECT_CLEAR_TOOLTIP='清除音效'; -ZhHans.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='将音效增加'; +ZhHans.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='将音效增加'; +ZhHans.MIXLY_TURTLE_TRACER = '设置绘图刷新频率'; +ZhHans.MIXLY_TURTLE_TRACER_STEP = '步数'; +ZhHans.MIXLY_TURTLE_TRACER_DELAY_MS = '延迟 (毫秒)'; })(); \ No newline at end of file diff --git a/common/msg/blockly/zh-hant.js b/common/msg/blockly/zh-hant.js index 0578dbe5..d83b107e 100644 --- a/common/msg/blockly/zh-hant.js +++ b/common/msg/blockly/zh-hant.js @@ -4261,5 +4261,9 @@ ZhHant.MIXLY_SOUND_VOLUME_SET_TOOLTIP='設置音量'; ZhHant.MIXLY_SOUND_VOLUME_ADD_TOOLTIP='增加音量'; ZhHant.MIXLY_SOUND_EFFECT_SET_TOOLTIP='將音效設為'; ZhHant.MIXLY_SOUND_EFFECT_CLEAR_TOOLTIP='清除音效'; -ZhHant.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='將音效增加'; +ZhHant.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='將音效增加'; +ZhHant.MIXLY_TURTLE_TRACER = '設定繪圖刷新頻率'; +ZhHant.MIXLY_TURTLE_TRACER_STEP = '步數'; +ZhHant.MIXLY_TURTLE_TRACER_DELAY_MS = '延遲 (毫秒)'; + })();