1+ // this file not for generator only
2+
3+ const { luaGenerator } = require ( 'blockly/lua' ) ;
4+
5+ // Check if luaGenerator.forBlock is defined and initialize if necessary
6+ if ( ! luaGenerator . forBlock ) {
7+ luaGenerator . forBlock = { } ;
8+ }
9+
10+ luaGenerator . forBlock [ 'peripheral_get_names' ] = function ( block , generator ) {
11+ return [ "peripheral.getNames()" , luaGenerator . ORDER_NONE ] ;
12+ } ;
13+
14+ luaGenerator . forBlock [ 'peripheral_is_present' ] = function ( block , generator ) {
15+ var name = generator . valueToCode ( block , 'NAME' , generator . ORDER_ATOMIC ) ;
16+
17+ return [ `peripheral.isPresent(${ name } )` , luaGenerator . ORDER_NONE ] ;
18+ } ;
19+
20+ luaGenerator . forBlock [ 'peripheral_get_type' ] = function ( block , generator ) {
21+ var device = generator . valueToCode ( block , 'DEVICE' , generator . ORDER_ATOMIC ) ;
22+
23+ return [ `peripheral.getType(${ device } )` , luaGenerator . ORDER_NONE ] ;
24+ } ;
25+
26+ luaGenerator . forBlock [ 'peripheral_has_type' ] = function ( block , generator ) {
27+ var device = generator . valueToCode ( block , 'DEVICE' , generator . ORDER_ATOMIC ) ;
28+ var type = generator . valueToCode ( block , 'TYPE' , generator . ORDER_ATOMIC ) ;
29+
30+ return [ `peripheral.hasType(${ device } , ${ type } )` , luaGenerator . ORDER_NONE ] ;
31+ } ;
32+
33+ luaGenerator . forBlock [ 'peripheral_get_methods' ] = function ( block , generator ) {
34+ var name = generator . valueToCode ( block , 'NAME' , generator . ORDER_ATOMIC ) ;
35+
36+ return [ `peripheral.getMethods(${ name } )` , luaGenerator . ORDER_NONE ] ;
37+ } ;
38+
39+ luaGenerator . forBlock [ 'peripheral_get_name' ] = function ( block , generator ) {
40+ var device = generator . valueToCode ( block , 'DEVICE' , generator . ORDER_ATOMIC ) ;
41+
42+ return [ `peripheral.getName(${ device } )` , luaGenerator . ORDER_NONE ] ;
43+ } ;
44+
45+ luaGenerator . forBlock [ 'peripheral_call' ] = function ( block , generator ) {
46+ var name = generator . valueToCode ( block , 'NAME' , generator . ORDER_ATOMIC ) ;
47+ var method = generator . valueToCode ( block , 'METHOD' , generator . ORDER_ATOMIC ) ;
48+ var args = generator . valueToCode ( block , 'ARGS' , generator . ORDER_ATOMIC ) ;
49+
50+ return [ `peripheral.call(${ name } , ${ method } , ${ args } )` , luaGenerator . ORDER_NONE ] ;
51+ } ;
52+
53+ luaGenerator . forBlock [ 'peripheral_wrap' ] = function ( block , generator ) {
54+ var name = generator . valueToCode ( block , 'NAME' , generator . ORDER_ATOMIC ) ;
55+
56+ return [ `peripheral.wrap(${ name } )` , luaGenerator . ORDER_NONE ] ;
57+ } ;
58+
59+ luaGenerator . forBlock [ 'peripheral_find' ] = function ( block , generator ) {
60+ var name = generator . valueToCode ( block , 'NAME' , generator . ORDER_ATOMIC ) ;
61+
62+ return [ `peripheral.find(${ name } )` , luaGenerator . ORDER_NONE ] ;
63+ } ;
0 commit comments