// Do not edit this file; automatically generated by build.py. "use strict"; Blockly.cake=new Blockly.Generator("cake");Blockly.cake.C_VARIABLE_TYPES=[["float","float"],["int","int"],["unsigned int","unsigned int"],["short","short"],["unsigned short","unsigned short"],["bool","bool"]];Blockly.cake.C_GLOBAL_VARS=[];Blockly.cake.addReservedWords(",alignas,alignof,and,and_eq,asm,auto,bitand,bitor,bool,break,case,catch,char,char16_t,char32_t,class,compl,const,constexpr,const_cast,continue,decltype,default,delete,do,double,dynamic_cast,else,enum,explicit,export,extern,false,float,for,friend,goto,if,inline,int,long,long double,long long,mutable,namespace,new,noexcept,not,not_eq,nullptr,operator,or,or_eq,private,protected,public,register,reinterpret_cast,return,short,signed,sizeof,static,static_assert,static_cast,struct,switch,template,this,thread_local,throw,true,try,typedef,typeid,typename,union,unsigned,using,virtual,void,volatile,wchar_t,while,xor,xor_eq,posix,game,api,PI,PI2,PI3,PI4,DEG2RAD,RAD2DEG,ZRMS,ZR2D,ZR3D,ALLIANCE"); Blockly.cake.ORDER_ATOMIC=0;Blockly.cake.ORDER_MEMBER=2;Blockly.cake.ORDER_FUNCTION_CALL=2;Blockly.cake.ORDER_INCREMENT=3;Blockly.cake.ORDER_DECREMENT=3;Blockly.cake.ORDER_LOGICAL_NOT=3;Blockly.cake.ORDER_BITWISE_NOT=3;Blockly.cake.ORDER_UNARY_PLUS=3;Blockly.cake.ORDER_UNARY_NEGATION=3;Blockly.cake.ORDER_MULTIPLICATION=5;Blockly.cake.ORDER_DIVISION=5;Blockly.cake.ORDER_MODULUS=5;Blockly.cake.ORDER_ADDITION=6;Blockly.cake.ORDER_SUBTRACTION=6;Blockly.cake.ORDER_BITWISE_SHIFT=7; Blockly.cake.ORDER_RELATIONAL=8;Blockly.cake.ORDER_EQUALITY=9;Blockly.cake.ORDER_BITWISE_AND=10;Blockly.cake.ORDER_BITWISE_XOR=11;Blockly.cake.ORDER_BITWISE_OR=12;Blockly.cake.ORDER_LOGICAL_AND=13;Blockly.cake.ORDER_LOGICAL_OR=14;Blockly.cake.ORDER_CONDITIONAL=15;Blockly.cake.ORDER_ASSIGNMENT=15;Blockly.cake.ORDER_COMMA=17;Blockly.cake.ORDER_NONE=99;Blockly.cake.INFINITE_LOOP_TRAP=null; Blockly.cake.init=function(){Blockly.cake.definitions_=Object.create(null);Blockly.cake.times_=Object.create(null);Blockly.cake.functionNames_=Object.create(null);if(Blockly.Variables){Blockly.cake.variableDB_?Blockly.cake.variableDB_.reset():Blockly.cake.variableDB_=new Blockly.Names(Blockly.cake.RESERVED_WORDS_);var a=[],b=Blockly.Variables.allVariables();Blockly.Structure.allStructure();for(var c=0;c",GTE:">="}[a.getFieldValue("OP")],c="=="==b||"!="==b?Blockly.cake.ORDER_EQUALITY:Blockly.cake.ORDER_RELATIONAL,d=Blockly.cake.valueToCode(a,"A",c)||"0";a=Blockly.cake.valueToCode(a,"B",c)||"0";return[d+" "+b+" "+a,c]}; Blockly.cake.logic_operation=function(a){var b="AND"==a.getFieldValue("OP")?"&&":"||",c="&&"==b?Blockly.cake.ORDER_LOGICAL_AND:Blockly.cake.ORDER_LOGICAL_OR,d=Blockly.cake.valueToCode(a,"A",c);a=Blockly.cake.valueToCode(a,"B",c);if(d||a){var e="&&"==b?"1":"0";d||(d=e);a||(a=e)}else a=d="0";return[d+" "+b+" "+a,c]};Blockly.cake.logic_negate=function(a){var b=Blockly.cake.ORDER_LOGICAL_NOT;return["!"+(Blockly.cake.valueToCode(a,"BOOL",b)||"1"),b]}; Blockly.cake.logic_boolean=function(a){return["TRUE"==a.getFieldValue("BOOL")?"1":"0",Blockly.cake.ORDER_ATOMIC]};Blockly.cake.logic_null=function(a){return["NULL",Blockly.cake.ORDER_ATOMIC]};Blockly.cake.logic_ternary=function(a){var b=Blockly.cake.valueToCode(a,"IF",Blockly.cake.ORDER_CONDITIONAL)||"0",c=Blockly.cake.valueToCode(a,"THEN",Blockly.cake.ORDER_CONDITIONAL)||"null";a=Blockly.cake.valueToCode(a,"ELSE",Blockly.cake.ORDER_CONDITIONAL)||"null";return[b+" ? "+c+" : "+a,Blockly.cake.ORDER_CONDITIONAL]}; Blockly.cake.controls_switch=function(a){for(var b=0,c=Blockly.cake.valueToCode(a,"SWITCH",Blockly.cake.ORDER_NONE)||"0",d=Blockly.cake.valueToCode(a,"CASE"+b,Blockly.cake.ORDER_NONE)||b,e=Blockly.cake.statementToCode(a,"DO"+b),b=Blockly.cake.statementToCode(a,"DEFAULT"),c="switch ("+c+") {\ndefault :\n"+b+"\ncase "+d+" : \n"+e,b=1;b<=a.caseCount_;b++)d=Blockly.cake.valueToCode(a,"CASE"+b,Blockly.cake.ORDER_NONE)||b,e=Blockly.cake.statementToCode(a,"DO"+b),c+="\ncase "+d+" : \n"+e;return c+"}\n"}; Blockly.cake.controls_switch_break=function(a){return"break;\n"}; // Copyright 2012 Google Inc. Apache License 2.0 Blockly.cake.loops={};Blockly.cake.controls_whileUntil=function(a){var b="UNTIL"==a.getFieldValue("MODE"),c=Blockly.cake.valueToCode(a,"BOOL",b?Blockly.cake.ORDER_LOGICAL_NOT:Blockly.cake.ORDER_NONE)||"0",d=Blockly.cake.statementToCode(a,"DO"),d=Blockly.cake.addLoopTrap(d,a.id);b&&(c="!"+c);return"while ("+c+") {\n"+d+"}\n"}; Blockly.cake.controls_doWhile=function(a){var b="UNTIL"==a.getFieldValue("MODE"),c=Blockly.cake.valueToCode(a,"BOOL",b?Blockly.cake.ORDER_LOGICAL_NOT:Blockly.cake.ORDER_NONE)||"0",d=Blockly.cake.statementToCode(a,"DO"),d=Blockly.cake.addLoopTrap(d,a.id);b&&(c="!"+c);return"do {\n"+d+"} while ("+c+");\n"}; // 2018/06/07 Blockly.cake.controls_for=function(b){var a=Blockly.cake.variableDB_.getName(b.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);if("___EC_84_A0_ED_83_9D__"==a||"--Select--"==a||"-Item-"==a)a="unselected";var e=Blockly.cake.valueToCode(b,"FROM",Blockly.cake.ORDER_ASSIGNMENT)||"0",f=Blockly.cake.valueToCode(b,"TO",Blockly.cake.ORDER_ASSIGNMENT)||"0",c=Blockly.cake.valueToCode(b,"BY",Blockly.cake.ORDER_ASSIGNMENT)||"1",d=Blockly.cake.statementToCode(b,"DO");d=Blockly.cake.addLoopTrap(d,b.id);a=(b="TRUE"== b.getFieldValue("ORDER"))?"for ("+a+"="+e+"; "+a+"<="+f+"; "+a:"for ("+a+"="+e+"; "+a+">="+f+"; "+a;Blockly.isNumber(c)?(c=Math.abs(parseFloat(c)),a=1==c?a+(b?"++":"--"):a+((b?"+=":"-=")+c)):a+=(b?"+=":"-=")+c;return a+(") {\n"+d+"}\n")}; Blockly.cake.controls_flow_statements=function(a){switch(a.getFieldValue("FLOW")){case "BREAK":return"break;\n";case "CONTINUE":return"continue;\n"}throw"Unknown flow statement.";}; // Copyright 2012 Google Inc. Apache License 2.0 Blockly.cake.math={}; // Blockly.cake.math_number=function(a){return[parseFloat(a.getFieldValue("NUM")),Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.math_number=function(a){var b=parseFloat(a.getFieldValue("NUM"));return a.getFieldValue("NUM").endsWith(".0")?[b+".0",Blockly.cake.ORDER_ATOMIC]:[b,Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.math_arithmetic=function(a){var b={ADD:[" + ",Blockly.cake.ORDER_ADDITION],MINUS:[" - ",Blockly.cake.ORDER_SUBTRACTION],MULTIPLY:[" * ",Blockly.cake.ORDER_MULTIPLICATION],DIVIDE:[" / ",Blockly.cake.ORDER_DIVISION]}[a.getFieldValue("OP")],c=b[0],b=b[1],d=Blockly.cake.valueToCode(a,"A",b)||"0";a=Blockly.cake.valueToCode(a,"B",b)||"0";return["("+d+c+a+")",b]}; Blockly.cake.math_modulo=function(a){var b=Blockly.cake.valueToCode(a,"DIVIDEND",Blockly.cake.ORDER_MODULUS)||"0";a=Blockly.cake.valueToCode(a,"DIVISOR",Blockly.cake.ORDER_MODULUS)||"0";return[b+" % "+a,Blockly.cake.ORDER_MODULUS]}; Blockly.cake.library_math_abs=function(a){a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"''";Blockly.cake.definitions_.include_cake_math="#include ";return["fabs("+a+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_trig=function(a){var b=a.getFieldValue("OP");a=Blockly.cake.valueToCode(a,"NUM",Blockly.cake.ORDER_NONE)||"0";switch(b){case "SIN":b="sin("+a+")";break;case "COS":b="cos("+a+")";break;case "TAN":b="tan("+a+")";break;default:throw"Unknown math operator: "+b;}Blockly.cake.definitions_.include_cake_math="#include ";return[b,Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_logs=function(a){var b=a.getFieldValue("OP");a=Blockly.cake.valueToCode(a,"NUM",Blockly.cake.ORDER_NONE)||"0";switch(b){case "LOG":b="log("+a+")";break;case "LOG10":b="log10("+a+")";break;case "LOG2":b="log2("+a+")";break;default:throw"Unknown math operator: "+b;}Blockly.cake.definitions_.include_cake_math="#include ";return[b,Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_pow=function(a){var b=Blockly.cake.valueToCode(a,"BASE",Blockly.cake.ORDER_NONE)||"''";a=Blockly.cake.valueToCode(a,"EXPO",Blockly.cake.ORDER_NONE)||"''";Blockly.cake.definitions_.include_cake_math="#include ";return["pow("+b+","+a+")",Blockly.cake.ORDER_NONE]};Blockly.cake.library_math_exp=function(a){a=Blockly.cake.valueToCode(a,"EXPO",Blockly.cake.ORDER_NONE)||"''";Blockly.cake.definitions_.include_cake_math="#include ";return["exp("+a+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_sqrt=function(a){a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"''";Blockly.cake.definitions_.include_cake_math="#include ";return["sqrt("+a+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_round=function(a){var b=a.getFieldValue("OP");a=Blockly.cake.valueToCode(a,"NUM",Blockly.cake.ORDER_NONE)||"''";switch(b){case "ROUND":b="round("+a+")";break;case "CEIL":b="ceil("+a+")";break;case "FLOOR":b="floor("+a+")";break;case "TRUNC":b="trunc("+a+")";break;default:throw"Unknown math operator: "+b;}Blockly.cake.definitions_.include_cake_math="#include ";return[b,Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_numcheck=function(a){var b=a.getFieldValue("CONDITIONS");a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"''";switch(b){case "ISFINITE":b="isfinite("+a+")";break;case "ISINF":b="isinf("+a+")";break;case "SIGNBIT":b="signbit("+a+")";break;case "ISNAN":b="isnan("+a+")";break;default:throw"Unknown math operator: "+b;}Blockly.cake.definitions_.include_cake_math="#include ";return[b,Blockly.cake.ORDER_NONE]}; Blockly.cake.library_math_numcompare=function(a){var b=a.getFieldValue("CONDITIONS"),c=Blockly.cake.valueToCode(a,"VAR1",Blockly.cake.ORDER_NONE)||"''";a=Blockly.cake.valueToCode(a,"VAR2",Blockly.cake.ORDER_NONE)||"''";switch(b){case "ISGREATER":b="isgreater("+c+","+a+")";break;case "ISLESS":b="isless("+c+","+a+")";break;case "ISGREQ":b="isgreaterequal("+c+","+a+")";break;case "ISLEEQ":b="islessequal("+c+","+a+")";break;case "ISLEGR":b="islessgreater("+c+","+a+")";break;case "ISUNORDER":b="isunordered("+ c+","+a+")";break;default:throw"Unknown math operator: "+b;}Blockly.cake.definitions_.include_cake_math="#include ";return[b,Blockly.cake.ORDER_NONE]}; // Copyright 2012 Google Inc. Apache License 2.0 Blockly.cake.procedures={}; Blockly.cake.main_block=function(c){var b=Blockly.cake.statementToCode(c,"STACK");Blockly.cake.STATEMENT_PREFIX&&(b=Blockly.cake.prefixLines(Blockly.cake.STATEMENT_PREFIX.replace(/%1/g,"'"+c.id+"'"),Blockly.cake.INDENT)+b);Blockly.cake.INFINITE_LOOP_TRAP&&(b=Blockly.cake.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+c.id+"'")+b);var g=Blockly.cake.valueToCode(c,"RETURN",Blockly.cake.ORDER_NONE)||"";g=g?" return "+g+";\n":" return 0;\n";for(var d=[],e=[],h=[],a=0;ak&&"char"==d[e][0]){a="%s";break}else b.isSuperior()?b.targetBlock().setParent(null):b.sourceBlock_.setParent(null),b.sourceBlock_.bumpNeighbours_()}return a}; Blockly.cake.comment=function(f){for(var b="",a="",c=0,d=0;d<=f.commentAddCount_;d++){b=Blockly.cake.valueToCode(f,"VAR"+d,Blockly.cake.ORDER_NONE)||"";var e=f.inputList[d].connection,g=e.targetBlock();g&&"library_stdio_text"!=g.type&&(e.isSuperior()?e.targetBlock().setParent(null):e.sourceBlock_.setParent(null),e.sourceBlock_.bumpNeighbours_());""!=b&&(a+=b+"\n");c+=1}return 1==c?""!=b?"//"+a:"//\n":"/*\n"+a+"*/\n"}; Blockly.cake.varTypeCheckInPrintScan2=function(f){for(var b="",a=Blockly.Variables.allVariables(),c=0;ck&&"char"==d[e][0]){a="%s";break}else b.isSuperior()?b.targetBlock().setParent(null):b.sourceBlock_.setParent(null), b.sourceBlock_.bumpNeighbours_()}return a}; Blockly.cake.comment=function(a){for(var b="",c="",d=0,e=0;e<=a.commentAddCount_;e++){var b=Blockly.cake.valueToCode(a,"VAR"+e,Blockly.cake.ORDER_NONE)||"",g=a.inputList[e].connection,h=g.targetBlock();h&&"library_stdio_text"!=h.type&&(g.isSuperior()?g.targetBlock().setParent(null):g.sourceBlock_.setParent(null),g.sourceBlock_.bumpNeighbours_());""!=b&&(c+=b+"\n");d+=1}return 1==d?""!=b?"//"+c:"//\n":"/*\n"+c+"*/\n"}; Blockly.cake.stdlib={}; Blockly.cake.library_stdlib_abs=function(a){a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"''";Blockly.cake.definitions_.include_cake_stdlib="#include ";return["abs("+a+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.library_stdlib_convert=function(a){var b=a.getFieldValue("OPERATORS");a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||'""';switch(b){case "INT":b="atoi("+a+")";break;case "DOUBLE":b="atof("+a+")";break;default:throw"Unknown math operator: "+b;}Blockly.cake.definitions_.include_cake_stdlib="#include ";return[b,Blockly.cake.ORDER_NONE]}; Blockly.cake.library_stdlib_rand=function(b){var a=Blockly.cake.valueToCode(b,"VAR",Blockly.cake.ORDER_NONE)||"0";Blockly.cake.definitions_.include_cake_stdlib="#include ";Blockly.cake.definitions_.include_cake_time="#include ";a="0"==a?"rand()":"rand()"+a;Blockly.cake.getUpperLine(b);return[a,Blockly.cake.ORDER_NONE]}; Blockly.cake.getUpperLine=function(a){a=a.getScope();Blockly.cake.times_.cake_time_srand=[a,"\nsrand(time(NULL));"]}; Blockly.cake.library_stdlib_rand_scope=function(a){var b=Blockly.cake.valueToCode(a,"A",Blockly.cake.ORDER_NONE)||"0";a=Blockly.cake.valueToCode(a,"B",Blockly.cake.ORDER_NONE)||"0";return[1==b?" % "+a+" + "+b:" % ("+a+"-"+b+"+1) + "+b,Blockly.cake.ORDER_NONE]};Blockly.cake.library_stdlib_number_forRandScope1=function(a){return[parseFloat(a.getFieldValue("NUM")),Blockly.cake.ORDER_ATOMIC]};Blockly.cake.library_stdlib_number_forRandScope100=function(a){return[parseFloat(a.getFieldValue("NUM")),Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.library_stdlib_malloc=function(a){var b=Blockly.FieldDropdown.prototype.getParentType(a,"variables_pointer");a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0";Blockly.cake.definitions_.include_cake_stdlib="#include ";return["("+b+" *)malloc("+a+")",Blockly.cake.ORDER_NONE]};Blockly.cake.library_stdlib_sizeof_forMalloc=function(a){return["sizeof("+(Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0")+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.library_stdlib_arithmetic_forMalloc=function(a){var b=Blockly.cake.valueToCode(a,"A",Blockly.cake.ORDER_NONE)||"0";a=Blockly.cake.valueToCode(a,"B",Blockly.cake.ORDER_NONE)||"0";return[b+" * "+a,Blockly.cake.ORDER_NONE]};Blockly.cake.library_stdlib_number_forMalloc=function(a){return[parseFloat(a.getFieldValue("NUM")),Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.library_stdlib_free=function(a){a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0";Blockly.cake.definitions_.include_cake_stdlib="#include ";return"free("+a+");\n"};Blockly.cake.library_stdlib_exit=function(a){a=a.getFieldValue("OPERATORS");switch(a){case "SUCCESS":a="exit(0);\n";break;case "FAILURE":a="exit(1);\n";break;default:throw"Unknown math operator: "+a;}Blockly.cake.definitions_.include_cake_stdlib="#include ";return a}; Blockly.cake.string={}; Blockly.cake.library_string_strlen=function(a){a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||'""';Blockly.cake.definitions_.include_cake_string="#include ";return["strlen("+a+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.library_string_strcat=function(a){var b=Blockly.cake.valueToCode(a,"STR1",Blockly.cake.ORDER_NONE)||'""';a=Blockly.cake.valueToCode(a,"STR2",Blockly.cake.ORDER_NONE)||'""';Blockly.cake.definitions_.include_cake_string="#include ";return"strcat("+b+", "+a+");\n"}; Blockly.cake.library_string_strcpy=function(a){var b=Blockly.cake.valueToCode(a,"STR1",Blockly.cake.ORDER_NONE)||'""';a=Blockly.cake.valueToCode(a,"STR2",Blockly.cake.ORDER_NONE)||'""';Blockly.cake.definitions_.include_cake_string="#include ";return"strcpy("+a+", "+b+");\n"}; Blockly.cake.library_string_strcmp=function(a){var b=Blockly.cake.valueToCode(a,"STR1",Blockly.cake.ORDER_NONE)||'""';a=Blockly.cake.valueToCode(a,"STR2",Blockly.cake.ORDER_NONE)||'""';Blockly.cake.definitions_.include_cake_string="#include ";return["strcmp("+b+", "+a+")",Blockly.cake.ORDER_NONE]}; Blockly.cake.structure={}; Blockly.cake.structure_define=function(a){for(var c=Blockly.cake.variableDB_.getName(a.getFieldValue("NAME"),null),d=[],e=[],f=[],h=[],g=[],b=0;btm_year + 1900, t->tm_mon + 1, t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec);\n'}; Blockly.cake.library_time_requiredTime=function(a){var b=Blockly.cake.valueToCode(a,"SAVE",Blockly.cake.ORDER_NONE)||"",c=Blockly.cake.statementToCode(a,"DO");a=a.getScope();Blockly.cake.times_.time_requiredTime=[a,"time_t start, end;"];Blockly.cake.definitions_.include_cake_time="#include ";return"start = time(NULL);\n"+c+"end = time(NULL);\n"+b+" = difftime(end, start);\n"}; // Copyright 2012 Google Inc. Apache License 2.0 Blockly.cake.variables={}; Blockly.cake.define_get=function(a){a=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);a=Blockly.Blocks.checkUnselect(a);return[a,Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.define_declare=function(a){var b=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"0",c=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);-1==Blockly.Blocks.checkLegalName(Blockly.Msg.VARIABLES_ILLEGALNAME,c)&&this.initVar();a=Blockly.cake.scrub_(a,"#define "+c+" "+b);Blockly.cake.definitions_["define_"+c]=a;return null}; Blockly.cake.variables_get=function(a){a=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);a=Blockly.Blocks.checkUnselect(a);return[a,Blockly.cake.ORDER_ATOMIC]};Blockly.cake.variables_set=function(a){var b=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"0";a=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);a=Blockly.Blocks.checkUnselect(a);return a+" = "+b+";\n"}; Blockly.cake.variables_declare=function(a){var b=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"0",c=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);a=a.getFieldValue("TYPES");-1==Blockly.Blocks.checkLegalName(Blockly.Msg.VARIABLES_ILLEGALNAME,c)&&this.initVar();"float"==a?"0"==b?b="0.0f":-1!=b.indexOf(".")&&(b+="f"):"double"==a&&"0"==b&&(b="0.0");return a+" "+c+" = "+b+";\n"}; Blockly.cake.variables_pointer_get=function(a){a=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);a=Blockly.Blocks.checkUnselect(a);return[a,Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.variables_pointer_set=function(a){var b=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"NULL";a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_ASSIGNMENT);a=Blockly.Blocks.checkUnselect(a);return a+" = "+b+";\n"}; Blockly.cake.variables_pointer_declare=function(a){var b=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"NULL",c=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE),d=a.getFieldValue("TYPES");if("*"==a.getFieldValue("ITERATION")||"**"==a.getFieldValue("ITERATION")||"***"==a.getFieldValue("ITERATION"))a=a.getFieldValue("ITERATION");else return window.alert("please confirm asterisk. that must be among *, **, and ***."),0;-1==Blockly.Blocks.checkLegalName(Blockly.Msg.VARIABLES_ILLEGALNAME, c)&&this.initVar();return d+" "+a+c+" = "+b+";\n"}; Blockly.cake["variables_pointer_&"]=function(a){return["&"+Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT),Blockly.cake.ORDER_ATOMIC]}; Blockly.cake["variables_pointer_*"]=function(a){return["*"+Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT),Blockly.cake.ORDER_ATOMIC]}; // 2018/06/23 change error msg to english and inital output code variable Blockly.cake.variables_array_get=function(a){var e=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);e=Blockly.Blocks.checkUnselect(e);var f=Blockly.cake.valueToCode(a,"LENGTH_1",Blockly.cake.ORDER_NONE)||"-1",h=Blockly.cake.valueToCode(a,"LENGTH_2",Blockly.cake.ORDER_NONE)||"-1",k=Blockly.cake.valueToCode(a,"LENGTH_3",Blockly.cake.ORDER_NONE)||"-1",g=Blockly.Blocks.getWantedBlockArray("a"),b=Blockly.Blocks.getIndexArray(g,e);g="";var c=Blockly.Blocks.checkArrayIndex(f, b[0]);var d=Blockly.Blocks.checkArrayIndex(h,b[1]);b=Blockly.Blocks.checkArrayIndex(k,b[2]);0==c&&-1!=f||0==d&&-1!=h||0==b&&-1!=k?(window.alert("Error: Array index out of bounds..."),a.initIdx(c,d,b)):1==c&&0==d&&0==b?g=e+"["+f+"]":1==c&&1==d&&0==b?g=e+"["+f+"]["+h+"]":1==c&&1==d&&1==b?g=e+"["+f+"]["+h+"]["+k+"]":0==c&&0==d&&0==b?(a=this.getFieldValue("VAR"),a=Blockly.FieldVariableArray.getBlockIdxLength(a),g=1==a?e+"[]":2==a?e+"[][]":e+"[][][]"):a.initIdx(c,d,b);return[g,Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.variables_array_set=function(a){var e=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"0",f=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE);f=Blockly.Blocks.checkUnselect(f);var h=Blockly.cake.valueToCode(a,"LENGTH_1",Blockly.cake.ORDER_NONE)||"-1",k=Blockly.cake.valueToCode(a,"LENGTH_2",Blockly.cake.ORDER_NONE)||"-1",g=Blockly.cake.valueToCode(a,"LENGTH_3",Blockly.cake.ORDER_NONE)||"-1",b=Blockly.Blocks.getWantedBlockArray("a"), c=Blockly.Blocks.getIndexArray(b,f);b="";var d=Blockly.Blocks.checkArrayIndex(h,c[0]);var l=Blockly.Blocks.checkArrayIndex(k,c[1]);c=Blockly.Blocks.checkArrayIndex(g,c[2]);0==d&&-1!=h||0==l&&-1!=k||0==c&&-1!=g?(window.alert("Error: Array index out of bounds..."),a.initIdx(d,l,c)):1==d&&0==l?b=f+"["+h+"] = "+e+";\n":1==d&&1==l&&0==c?b=f+"["+h+"]["+k+"] = "+e+";\n":1==d&&1==l&&1==c?b=f+"["+h+"]["+k+"]["+g+"] = "+e+";\n":a.initIdx(d,l,c);return b}; Blockly.cake.variables_array_declare=function(a){var g=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||"0",d=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE),f=a.getFieldValue("TYPES"),b=Blockly.cake.valueToCode(a,"LENGTH_1",Blockly.cake.ORDER_NONE)||"0",c=Blockly.cake.valueToCode(a,"LENGTH_2",Blockly.cake.ORDER_NONE)||"0";a=Blockly.cake.valueToCode(a,"LENGTH_3",Blockly.cake.ORDER_NONE)||"0";var e;0==g?0!=b&&0==c&&0==a?e=f+" "+d+"["+b+"];\n": 0!=b&&0!=c&&0==a?e=f+" "+d+"["+b+"]["+c+"];\n":0!=b&&0!=c&&0!=a&&(e=f+" "+d+"["+b+"]["+c+"]["+a+"];\n"):0!=b&&0==c&&0==a?e=f+" "+d+"["+b+"]="+g+";\n":0!=b&&0!=c&&0==a?e=f+" "+d+"["+b+"]["+c+"]="+g+";\n":0!=b&&0!=c&&0!=a&&(e=f+" "+d+"["+b+"]["+c+"]["+a+"]="+g+";\n");-1==Blockly.Blocks.checkLegalName(Blockly.Msg.VARIABLES_ILLEGALNAME,d)&&this.initVar();return e}; Blockly.cake.math_convert_type=function(a){var b=a.getFieldValue("NEWTYPE");a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0";return["("+b+")"+a,Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.variables_array_pointer=function(a){return[Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE),Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.variables_string_null=function(a){return["'\\0'",Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.variables_string_declare=function(a){var b=Blockly.cake.valueToCode(a,"VALUE",Blockly.cake.ORDER_ASSIGNMENT)||'""',c=Blockly.cake.variableDB_.getName(a.getFieldValue("VAR"),Blockly.Variables.NAME_TYPE),d=a.getFieldValue("TYPES");a=Blockly.cake.valueToCode(a,"LENGTH_1",Blockly.cake.ORDER_NONE)||"0";b=d+" "+c+"["+a+"] = "+b+";\n";-1==Blockly.Blocks.checkLegalName(Blockly.Msg.VARIABLES_ILLEGALNAME,c)&&this.initVar();return b}; Blockly.cake.math_prev_inc_decrement=function(a){var b=a.getFieldValue("NEWOP");a=Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0";return[b+a,Blockly.cake.ORDER_INCREMENT]}; Blockly.cake.math_post_inc_decrement=function(a){var b=a.getFieldValue("NEWOP");return[(Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0")+b,Blockly.cake.ORDER_INCREMENT]}; Blockly.cake.math_increment_expression=function(a){return(Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0")+"++;\n"}; Blockly.cake.math_decrement_expression=function(a){return(Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0")+"--;\n"}; Blockly.cake.math_auto_convert_type=function(a){return[Blockly.cake.valueToCode(a,"VAR",Blockly.cake.ORDER_NONE)||"0",Blockly.cake.ORDER_ATOMIC]}; Blockly.cake.variables_array_initial=function(c){for(var a=Array(c.itemCount_),b=0;b="+f+"; "+a;Blockly.isNumber(c)?(c=Math.abs(parseFloat(c)),a=1==c?a+(b?"++":"--"):a+((b?"+=":"-=")+c)):a+=(b?"+=":"-=")+c;return a+(") {\n"+d+"}\n")};