11Blockly . Python . minecraft = function ( ) {
22 Blockly . Python . definitions_ [ 'import_minecraft' ] = "from mcturtle import *\n" +
3- "MCTURTLE = Turtle()\n" ;
3+ "MCTURTLE = Turtle()\n" +
4+ "STARTPOS = MCTURTLE.mc.getPos()\n" ;
45}
56
67Blockly . Python [ 'minecraft_set_block' ] = function ( block ) {
78 Blockly . Python . minecraft ( ) ;
89
910 var dropdown_block = block . getFieldValue ( 'BLOCK' ) ;
10- var value_x = Blockly . Python . valueToCode ( block , 'x' , Blockly . Python . ORDER_ATOMIC ) ;
11- var value_y = Blockly . Python . valueToCode ( block , 'y' , Blockly . Python . ORDER_ATOMIC ) ;
12- var value_z = Blockly . Python . valueToCode ( block , 'z' , Blockly . Python . ORDER_ATOMIC ) ;
13- var code = 'MCTURTLE.mc.world.setBlock(' + value_x + ',' + value_y + ',' + value_z + ',"' + dropdown_block + '")\n' ;
11+ var value_x = Blockly . Python . valueToCode ( block , 'x' , Blockly . Python . ORDER_ADDITIVE ) ;
12+ var value_y = Blockly . Python . valueToCode ( block , 'y' , Blockly . Python . ORDER_ADDITIVE ) ;
13+ var value_z = Blockly . Python . valueToCode ( block , 'z' , Blockly . Python . ORDER_ADDITIVE ) ;
14+ var code = 'MCTURTLE.mc.world.setBlock(' + value_x + '+STARTPOS.x ,' + value_y + '+STARTPOS.y ,' + value_z + '+STARTPOS.z ,"' + dropdown_block + '")\n' ;
1415 return code ;
1516} ;
1617
@@ -31,38 +32,41 @@ Blockly.Python['minecraft_post_to_chat'] = function(block) {
3132Blockly . Python [ 'minecraft_turtle_yaw' ] = function ( block ) {
3233 Blockly . Python . minecraft ( ) ;
3334 var dropdown_direction = block . getFieldValue ( 'DIRECTION' ) ;
34- var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_ATOMIC ) ;
3535 if ( dropdown_direction == '1' ) {
36+ var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_ATOMIC ) ;
3637 var code = 'MCTURTLE.yaw(' + value_angle + ')\n' ;
3738 }
3839 else {
39- var code = 'MCTURTLE.yaw(-(' + value_angle + '))\n' ;
40+ var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_UNARY_SIGN ) ;
41+ var code = 'MCTURTLE.yaw(-' + value_angle + ')\n' ;
4042 }
4143 return code ;
4244} ;
4345
4446Blockly . Python [ 'minecraft_turtle_pitch' ] = function ( block ) {
4547 Blockly . Python . minecraft ( ) ;
4648 var dropdown_direction = block . getFieldValue ( 'DIRECTION' ) ;
47- var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_ATOMIC ) ;
4849 if ( dropdown_direction == '1' ) {
49- var code = 'MCTURTLE.pitch(' + value_angle + ')\n' ;
50+ var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_ATOMIC ) ;
51+ var code = 'MCTURTLE.pitch' + value_angle + ')\n' ;
5052 }
5153 else {
52- var code = 'MCTURTLE.pitch(-(' + value_angle + '))\n' ;
54+ var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_UNARY_SIGN ) ;
55+ var code = 'MCTURTLE.pitch(-' + value_angle + ')\n' ;
5356 }
5457 return code ;
5558} ;
5659
5760Blockly . Python [ 'minecraft_turtle_roll' ] = function ( block ) {
5861 Blockly . Python . minecraft ( ) ;
5962 var dropdown_direction = block . getFieldValue ( 'DIRECTION' ) ;
60- var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_ATOMIC ) ;
6163 if ( dropdown_direction == '1' ) {
64+ var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_ATOMIC ) ;
6265 var code = 'MCTURTLE.roll(' + value_angle + ')\n' ;
6366 }
6467 else {
65- var code = 'MCTURTLE.roll(-(' + value_angle + '))\n' ;
68+ var value_angle = Blockly . Python . valueToCode ( block , 'ANGLE' , Blockly . Python . ORDER_UNARY_SIGN ) ;
69+ var code = 'MCTURTLE.roll(-' + value_angle + ')\n' ;
6670 }
6771 return code ;
6872} ;
0 commit comments