-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Broadcast and list variables in Scratch Project #35
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@evmiguel I reviewed the code but have skipped tests in this first round. I left some comments for you and will wrap up my review when I hear back from you.
return map( | ||
Object.entries(serialized), | ||
([id, [name, value, isCloud]]): VariableProperties => ({ | ||
id, | ||
name, | ||
value, | ||
isCloud: Boolean(isCloud), //when isCloud is undefined | ||
type: '', // this means scalar type in https://github.com/LLK/scratch-vm/blob/33ef283787d4ea9a90c3d0d069a6b97dee24f51b/src/engine/variable.js#L49 | ||
type: ScratchVariableTypes.SCALAR_TYPE, // this means scalar type in https://github.com/LLK/scratch-vm/blob/33ef283787d4ea9a90c3d0d069a6b97dee24f51b/src/engine/variable.js#L49 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for linking that scratch-vm reference - its super helpful! Alot doc tools (link jsdocs) support @link
for external documentation https://jsdoc.app/tags-inline-link.html
I'm hoping the TypeScript docs support that as well..
name: value, | ||
value, | ||
type: ScratchVariableTypes.BROADCAST_MESSAGE_TYPE, | ||
}), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is
name: value,
value,
intentional because it looks like you have 2 of the params with the same value?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah - for "broadcast message" variables - name === value
in the VM land
src/sb-util.ts
Outdated
}, | ||
); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm curious if defining setMetaSprite
as an inline function inside variables
is intentional? Is there any value in having it as a private function outside variables
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is probably a copy of how I did the first pass for the others - I think this will work for now but we should come up with a better setMetaPropsWhileIterating
pattern :)
src/abstracts.ts
Outdated
type?: string; | ||
isCloud: boolean; | ||
type: string; | ||
isCloud?: boolean; // this only applies to scalar type varibles |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I >really< prefer comments before the line they comment not at the end of it - mind doing this little nit?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There should be a lint we can turn on?
src/sb-util.ts
Outdated
}, | ||
); | ||
} | ||
|
||
const stage = getSpriteMeta(this.props()).project.stage(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Logically - I think this would make more sense to me if it did all three (broadcast, list, variables) on itself first.
Rather than operating on stage for these first three, operate on this
instead, then after you build taggedVariables
out of those 3 iterables, you can do:
if (!this.isStage()) {
taggedVariables = chain(
taggedVaraibles,
getSpriteMeta(this.props()).project.stage().variables().propsIterable()
);
}
return new VariableCollection(taggedVariables)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1 nit - 1 more major request
{"targets":[{"isStage":true,"name":"Stage","variables":{"1B!G;|;P6ALif|?9(Tum-glitch_Size":["glitch_Size",85],"1B!G;|;P6ALif|?9(Tum-glitch_Acceleration":["glitch_Acceleration","50"]},"lists":{"Pi3E!fcsKWLQ}5(ugkcS":["global-list",["1","2","3","4","5","6","7","8","9","10"]]},"broadcasts":{"broadcastMsgId-start glowing (accelerator)":"start glowing (accelerator)","broadcastMsgId-obj_glitch":"obj_glitch","broadcastMsgId-alt_glitch":"alt_glitch"},"blocks":{},"comments":{},"currentCostume":0,"costumes":[{"assetId":"797b03bdb8cf6ccfc30c0692d533d998","name":"backdrop1","bitmapResolution":2,"md5ext":"797b03bdb8cf6ccfc30c0692d533d998.png","dataFormat":"png","rotationCenterX":480,"rotationCenterY":360}],"sounds":[{"assetId":"83a9787d4cb6f3b7632b4ddfebf74367","name":"pop","dataFormat":"wav","format":"","rate":48000,"sampleCount":1123,"md5ext":"83a9787d4cb6f3b7632b4ddfebf74367.wav"}],"volume":100,"layerOrder":0,"tempo":60,"videoTransparency":50,"videoState":"on","textToSpeechLanguage":null},{"isStage":false,"name":"alt_othersprites","variables":{"58`Aw=nriuw[2/#s@20!-X vel":["X vel",-0.44432764720836493],"58`Aw=nriuw[2/#s@20!-Y vel":["Y vel",-0.1978274142341908]},"lists":{"2Q_=y9u5Qq|~fG25;O7V":["sprite-list",["1","2","3","4","5","6","7","8","9","10","11"]]},"broadcasts":{},"blocks":{":3apvbe~H2*H6FtapgSq":{"opcode":"event_whenflagclicked","next":"kuOzdSvlqFZ~mzL6G`ZQ","parent":null,"inputs":{},"fields":{},"shadow":false,"topLevel":true,"x":37,"y":237},"kuOzdSvlqFZ~mzL6G`ZQ":{"opcode":"control_forever","next":null,"parent":":3apvbe~H2*H6FtapgSq","inputs":{"SUBSTACK":[2,"E3^yJ.myD#N8X1N@qPH7"]},"fields":{},"shadow":false,"topLevel":false},"E3^yJ.myD#N8X1N@qPH7":{"opcode":"control_if","next":"x0%.fP[e-CMy}u#h|~8^","parent":"kuOzdSvlqFZ~mzL6G`ZQ","inputs":{"CONDITION":[2,"1.Rv~eGU*lya2riL7l:="],"SUBSTACK":[2,"K,/Slm~VH%*ZnbK1V/pH"]},"fields":{},"shadow":false,"topLevel":false},"1.Rv~eGU*lya2riL7l:=":{"opcode":"operator_and","next":null,"parent":"E3^yJ.myD#N8X1N@qPH7","inputs":{"OPERAND1":[2,"==yS,poD;PE3(I:bCn;%"],"OPERAND2":[2,"LTn0t*Q#whzwE]O[G/lY"]},"fields":{},"shadow":false,"topLevel":false},"==yS,poD;PE3(I:bCn;%":{"opcode":"sensing_touchingobject","next":null,"parent":"1.Rv~eGU*lya2riL7l:=","inputs":{"TOUCHINGOBJECTMENU":[1,"RwdS3MxE90loxMDn@EVW"]},"fields":{},"shadow":false,"topLevel":false},"RwdS3MxE90loxMDn@EVW":{"opcode":"sensing_touchingobjectmenu","next":null,"parent":"==yS,poD;PE3(I:bCn;%","inputs":{},"fields":{"TOUCHINGOBJECTMENU":["obj_accelerator"]},"shadow":true,"topLevel":false},"LTn0t*Q#whzwE]O[G/lY":{"opcode":"operator_not","next":null,"parent":"1.Rv~eGU*lya2riL7l:=","inputs":{"OPERAND":[2,"FJRK4[DUA?9LR=AtyYi*"]},"fields":{},"shadow":false,"topLevel":false},"FJRK4[DUA?9LR=AtyYi*":{"opcode":"operator_or","next":null,"parent":"LTn0t*Q#whzwE]O[G/lY","inputs":{"OPERAND1":[2,"pgS~CX=j7BKC=+TIog^w"],"OPERAND2":[2,"j96Fl}FJ:O6B1=Dy/#32"]},"fields":{},"shadow":false,"topLevel":false},"pgS~CX=j7BKC=+TIog^w":{"opcode":"operator_or","next":null,"parent":"FJRK4[DUA?9LR=AtyYi*","inputs":{"OPERAND1":[2,")`CM-63%kXK0T+2+6nv)"],"OPERAND2":[2,"td:{(1{0gbx^53.0]azK"]},"fields":{},"shadow":false,"topLevel":false},")`CM-63%kXK0T+2+6nv)":{"opcode":"operator_gt","next":null,"parent":"pgS~CX=j7BKC=+TIog^w","inputs":{"OPERAND1":[3,"G|dxJpM%T]6d~nIx)1z~",[10,""]],"OPERAND2":[1,[10,"475"]]},"fields":{},"shadow":false,"topLevel":false},"td:{(1{0gbx^53.0]azK":{"opcode":"operator_gt","next":null,"parent":"pgS~CX=j7BKC=+TIog^w","inputs":{"OPERAND1":[3,"V?Y,KQxnp#3;[[RVC-]v",[10,""]],"OPERAND2":[1,[10,"355"]]},"fields":{},"shadow":false,"topLevel":false},"j96Fl}FJ:O6B1=Dy/#32":{"opcode":"operator_and","next":null,"parent":"FJRK4[DUA?9LR=AtyYi*","inputs":{"OPERAND1":[2,"v@+Ik}jU;-CX)rHI)XCc"],"OPERAND2":[2,"BfSUpp2]f*ep82h9R_w1"]},"fields":{},"shadow":false,"topLevel":false},"v@+Ik}jU;-CX)rHI)XCc":{"opcode":"operator_gt","next":null,"parent":"j96Fl}FJ:O6B1=Dy/#32","inputs":{"OPERAND1":[3,"-i?$X%~rLG:@b)rDL)mw",[10,""]],"OPERAND2":[1,[10,"180"]]},"fields":{},"shadow":false,"topLevel":false},"BfSUpp2]f*ep82h9R_w1":{"opcode":"operator_gt","next":null,"parent":"j96Fl}FJ:O6B1=Dy/#32","inputs":{"OPERAND1":[3,"(V%2k4V/cf^T-k~vHBog",[10,""]],"OPERAND2":[1,[10,"240"]]},"fields":{},"shadow":false,"topLevel":false},"K,/Slm~VH%*ZnbK1V/pH":{"opcode":"data_changevariableby","next":"(H*i.q,-N3M)=e+]M-?H","parent":"E3^yJ.myD#N8X1N@qPH7","inputs":{"VALUE":[3,"Nu7awezRq`9V~G@[W+sY",[4,10]]},"fields":{"VARIABLE":["X vel","58`Aw=nriuw[2/#s@20!-X vel"]},"shadow":false,"topLevel":false},"Nu7awezRq`9V~G@[W+sY":{"opcode":"operator_multiply","next":null,"parent":"K,/Slm~VH%*ZnbK1V/pH","inputs":{"NUM1":[3,"wir:H,.E5t%qEX`R{G*t",[4,10]],"NUM2":[3,"~xRXi4x4.oAv9c?!tZc(",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"wir:H,.E5t%qEX`R{G*t":{"opcode":"operator_multiply","next":null,"parent":"Nu7awezRq`9V~G@[W+sY","inputs":{"NUM1":[3,"L:89b?cDvaw(}hS9Di!0",[4,10]],"NUM2":[3,"s*7J,JA{U`8Q#PJk*QKK",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"L:89b?cDvaw(}hS9Di!0":{"opcode":"operator_mathop","next":null,"parent":"wir:H,.E5t%qEX`R{G*t","inputs":{"NUM":[3,"Du@}=`_PY`Eif7;d8{W(",[4,10]]},"fields":{"OPERATOR":["sin"]},"shadow":false,"topLevel":false},"Du@}=`_PY`Eif7;d8{W(":{"opcode":"sensing_of","next":null,"parent":"L:89b?cDvaw(}hS9Di!0","inputs":{"OBJECT":[1,"l6Ab7sn6)4yU7*I^=r?9"]},"fields":{"PROPERTY":["direction"]},"shadow":false,"topLevel":false},"l6Ab7sn6)4yU7*I^=r?9":{"opcode":"sensing_of_object_menu","next":null,"parent":"Du@}=`_PY`Eif7;d8{W(","inputs":{},"fields":{"OBJECT":["obj_accelerator"]},"shadow":true,"topLevel":false},"s*7J,JA{U`8Q#PJk*QKK":{"opcode":"operator_multiply","next":null,"parent":"wir:H,.E5t%qEX`R{G*t","inputs":{"NUM1":[1,[4,2]],"NUM2":[3,"3D~el@#-hN)imv(Ah}U^",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"3D~el@#-hN)imv(Ah}U^":{"opcode":"operator_divide","next":null,"parent":"s*7J,JA{U`8Q#PJk*QKK","inputs":{"NUM1":[3,[12,"glitch_Size","1B!G;|;P6ALif|?9(Tum-glitch_Size"],[4,10]],"NUM2":[1,[4,100]]},"fields":{},"shadow":false,"topLevel":false},"~xRXi4x4.oAv9c?!tZc(":{"opcode":"operator_multiply","next":null,"parent":"Nu7awezRq`9V~G@[W+sY","inputs":{"NUM1":[1,[4,2]],"NUM2":[3,"v1BjC%[F:;VVS,kUw,fq",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"v1BjC%[F:;VVS,kUw,fq":{"opcode":"operator_divide","next":null,"parent":"~xRXi4x4.oAv9c?!tZc(","inputs":{"NUM1":[3,[12,"glitch_Acceleration","1B!G;|;P6ALif|?9(Tum-glitch_Acceleration"],[4,10]],"NUM2":[1,[4,100]]},"fields":{},"shadow":false,"topLevel":false},"(H*i.q,-N3M)=e+]M-?H":{"opcode":"data_changevariableby","next":null,"parent":"K,/Slm~VH%*ZnbK1V/pH","inputs":{"VALUE":[3,")6,oTT?4rn?9UL5V%ZPF",[4,10]]},"fields":{"VARIABLE":["Y vel","58`Aw=nriuw[2/#s@20!-Y vel"]},"shadow":false,"topLevel":false},")6,oTT?4rn?9UL5V%ZPF":{"opcode":"operator_multiply","next":null,"parent":"(H*i.q,-N3M)=e+]M-?H","inputs":{"NUM1":[3,"FlaWm6vZ3fO@.+^r.[~{",[4,10]],"NUM2":[3,")XZ0)G`;z%sC4j`G?3dV",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"FlaWm6vZ3fO@.+^r.[~{":{"opcode":"operator_multiply","next":null,"parent":")6,oTT?4rn?9UL5V%ZPF","inputs":{"NUM1":[3,"KRt}Kec7OXmDSaN}sC,v",[4,10]],"NUM2":[3,"sM07Pydd2.Ww]ih6s!UK",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"KRt}Kec7OXmDSaN}sC,v":{"opcode":"operator_mathop","next":null,"parent":"FlaWm6vZ3fO@.+^r.[~{","inputs":{"NUM":[3,"%5Zx=mfT}DgCqvzAD-~w",[4,10]]},"fields":{"OPERATOR":["cos"]},"shadow":false,"topLevel":false},"%5Zx=mfT}DgCqvzAD-~w":{"opcode":"sensing_of","next":null,"parent":"KRt}Kec7OXmDSaN}sC,v","inputs":{"OBJECT":[1,"8J;{VBbThrY=6I4vajU*"]},"fields":{"PROPERTY":["direction"]},"shadow":false,"topLevel":false},"8J;{VBbThrY=6I4vajU*":{"opcode":"sensing_of_object_menu","next":null,"parent":"%5Zx=mfT}DgCqvzAD-~w","inputs":{},"fields":{"OBJECT":["obj_accelerator"]},"shadow":true,"topLevel":false},"sM07Pydd2.Ww]ih6s!UK":{"opcode":"operator_multiply","next":null,"parent":"FlaWm6vZ3fO@.+^r.[~{","inputs":{"NUM1":[1,[4,2]],"NUM2":[3,"dsH:71!JNcWEwsy7EY_!",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"dsH:71!JNcWEwsy7EY_!":{"opcode":"operator_divide","next":null,"parent":"sM07Pydd2.Ww]ih6s!UK","inputs":{"NUM1":[3,[12,"glitch_Size","1B!G;|;P6ALif|?9(Tum-glitch_Size"],[4,10]],"NUM2":[1,[4,100]]},"fields":{},"shadow":false,"topLevel":false},")XZ0)G`;z%sC4j`G?3dV":{"opcode":"operator_multiply","next":null,"parent":")6,oTT?4rn?9UL5V%ZPF","inputs":{"NUM1":[1,[4,2]],"NUM2":[3,"_nFoQnv-WRaXmo#V;[M_",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"_nFoQnv-WRaXmo#V;[M_":{"opcode":"operator_divide","next":null,"parent":")XZ0)G`;z%sC4j`G?3dV","inputs":{"NUM1":[3,[12,"glitch_Acceleration","1B!G;|;P6ALif|?9(Tum-glitch_Acceleration"],[4,10]],"NUM2":[1,[4,100]]},"fields":{},"shadow":false,"topLevel":false},"x0%.fP[e-CMy}u#h|~8^":{"opcode":"data_setvariableto","next":"z-d6BZ1F%4o_AG%~gR=L","parent":"E3^yJ.myD#N8X1N@qPH7","inputs":{"VALUE":[3,"+.d8JGi49n`xbopL+q:;",[10,""]]},"fields":{"VARIABLE":["X vel","58`Aw=nriuw[2/#s@20!-X vel"]},"shadow":false,"topLevel":false},"+.d8JGi49n`xbopL+q:;":{"opcode":"operator_multiply","next":null,"parent":"x0%.fP[e-CMy}u#h|~8^","inputs":{"NUM1":[3,[12,"X vel","58`Aw=nriuw[2/#s@20!-X vel"],[4,10]],"NUM2":[1,[4,0.9]]},"fields":{},"shadow":false,"topLevel":false},"z-d6BZ1F%4o_AG%~gR=L":{"opcode":"data_setvariableto","next":"W_w_RJ1VaqMlci,GMi+X","parent":"x0%.fP[e-CMy}u#h|~8^","inputs":{"VALUE":[3,":ei)+pAz9En]%e/k^8Sl",[10,""]]},"fields":{"VARIABLE":["Y vel","58`Aw=nriuw[2/#s@20!-Y vel"]},"shadow":false,"topLevel":false},":ei)+pAz9En]%e/k^8Sl":{"opcode":"operator_multiply","next":null,"parent":"z-d6BZ1F%4o_AG%~gR=L","inputs":{"NUM1":[3,[12,"Y vel","58`Aw=nriuw[2/#s@20!-Y vel"],[4,10]],"NUM2":[1,[4,0.9]]},"fields":{},"shadow":false,"topLevel":false},"W_w_RJ1VaqMlci,GMi+X":{"opcode":"looks_seteffectto","next":"_8p.gXB{VT0[YEzFV2/;","parent":"z-d6BZ1F%4o_AG%~gR=L","inputs":{"VALUE":[3,"pGZNQAJj,fUQ=G)]Gf15",[4,10]]},"fields":{"EFFECT":["color"]},"shadow":false,"topLevel":false},"pGZNQAJj,fUQ=G)]Gf15":{"opcode":"operator_multiply","next":null,"parent":"W_w_RJ1VaqMlci,GMi+X","inputs":{"NUM1":[1,[4,1.2]],"NUM2":[3,"A3,g7pUjJUl{Hg1)QZ,,",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"A3,g7pUjJUl{Hg1)QZ,,":{"opcode":"operator_mathop","next":null,"parent":"pGZNQAJj,fUQ=G)]Gf15","inputs":{"NUM":[3,"LOE7}h?dR{WY;czh+ff3",[4,10]]},"fields":{"OPERATOR":["sqrt"]},"shadow":false,"topLevel":false},"LOE7}h?dR{WY;czh+ff3":{"opcode":"operator_add","next":null,"parent":"A3,g7pUjJUl{Hg1)QZ,,","inputs":{"NUM1":[3,"Y~74uRm4/4/e#!T*WuVj",[4,10]],"NUM2":[3,"n:=#x1TAZLko~uln(fhu",[4,10]]},"fields":{},"shadow":false,"topLevel":false},"Y~74uRm4/4/e#!T*WuVj":{"opcode":"operator_multiply","next":null,"parent":"LOE7}h?dR{WY;czh+ff3","inputs":{"NUM1":[3,[12,"Y vel","58`Aw=nriuw[2/#s@20!-Y vel"],[4,10]],"NUM2":[3,[12,"Y vel","58`Aw=nriuw[2/#s@20!-Y vel"],[4,10]]},"fields":{},"shadow":false,"topLevel":false},"n:=#x1TAZLko~uln(fhu":{"opcode":"operator_multiply","next":null,"parent":"LOE7}h?dR{WY;czh+ff3","inputs":{"NUM1":[3,[12,"X vel","58`Aw=nriuw[2/#s@20!-X vel"],[4,10]],"NUM2":[3,[12,"X vel","58`Aw=nriuw[2/#s@20!-X vel"],[4,10]]},"fields":{},"shadow":false,"topLevel":false},"_8p.gXB{VT0[YEzFV2/;":{"opcode":"motion_changexby","next":"uR3p5id0}Hq5jJ`rF~F^","parent":"W_w_RJ1VaqMlci,GMi+X","inputs":{"DX":[3,[12,"X vel","58`Aw=nriuw[2/#s@20!-X vel"],[4,10]]},"fields":{},"shadow":false,"topLevel":false},"uR3p5id0}Hq5jJ`rF~F^":{"opcode":"motion_changeyby","next":null,"parent":"_8p.gXB{VT0[YEzFV2/;","inputs":{"DY":[3,[12,"Y vel","58`Aw=nriuw[2/#s@20!-Y vel"],[4,10]]},"fields":{},"shadow":false,"topLevel":false},"Vc9;m(59Frrd`ND:22UR":{"opcode":"event_broadcast","next":"|DzpVMMSV]hcOhL{G}ce","parent":null,"inputs":{"BROADCAST_INPUT":[1,[11,"obj_glitch","broadcastMsgId-obj_glitch"]]},"fields":{},"shadow":false,"topLevel":true,"x":574,"y":136},"|DzpVMMSV]hcOhL{G}ce":{"opcode":"event_broadcast","next":null,"parent":"Vc9;m(59Frrd`ND:22UR","inputs":{"BROADCAST_INPUT":[1,[11,"alt_glitch","broadcastMsgId-alt_glitch"]]},"fields":{},"shadow":false,"topLevel":false},"NIdSdim!a]w{;P8KugCh":{"opcode":"event_whenflagclicked","next":"3iab[3]vW(Ku#MvOQ5f0","parent":null,"inputs":{},"fields":{},"shadow":false,"topLevel":true,"x":54,"y":1221},"3iab[3]vW(Ku#MvOQ5f0":{"opcode":"control_forever","next":null,"parent":"NIdSdim!a]w{;P8KugCh","inputs":{"SUBSTACK":[2,"Jq{YS!RJdniNJeDZVB~e"]},"fields":{},"shadow":false,"topLevel":false},"Jq{YS!RJdniNJeDZVB~e":{"opcode":"control_if","next":null,"parent":"3iab[3]vW(Ku#MvOQ5f0","inputs":{"CONDITION":[2,"?}:gb6Re!5V@Yn=3pLkO"],"SUBSTACK":[2,"W/ku@/*jRk+J3s]`b@|1"]},"fields":{},"shadow":false,"topLevel":false},"?}:gb6Re!5V@Yn=3pLkO":{"opcode":"operator_and","next":null,"parent":"Jq{YS!RJdniNJeDZVB~e","inputs":{"OPERAND1":[2,"n;1+r/UAKHv~CDPf2lt["],"OPERAND2":[2,"p~xFPH:oU9!yprMV@V}9"]},"fields":{},"shadow":false,"topLevel":false},"n;1+r/UAKHv~CDPf2lt[":{"opcode":"sensing_touchingobject","next":null,"parent":"?}:gb6Re!5V@Yn=3pLkO","inputs":{"TOUCHINGOBJECTMENU":[1,"Y-u[ZF5fU?tkc;m?f-Op"]},"fields":{},"shadow":false,"topLevel":false},"Y-u[ZF5fU?tkc;m?f-Op":{"opcode":"sensing_touchingobjectmenu","next":null,"parent":"n;1+r/UAKHv~CDPf2lt[","inputs":{},"fields":{"TOUCHINGOBJECTMENU":["obj_accelerator"]},"shadow":true,"topLevel":false},"p~xFPH:oU9!yprMV@V}9":{"opcode":"operator_not","next":null,"parent":"?}:gb6Re!5V@Yn=3pLkO","inputs":{"OPERAND":[2,"==Rty@l9TWGU*]f*oA#_"]},"fields":{},"shadow":false,"topLevel":false},"==Rty@l9TWGU*]f*oA#_":{"opcode":"operator_or","next":null,"parent":"p~xFPH:oU9!yprMV@V}9","inputs":{"OPERAND1":[2,"P^gX:(rL{V?/.mp|okkg"],"OPERAND2":[2,"Do[^V}bQh6]?CSG5(S,Q"]},"fields":{},"shadow":false,"topLevel":false},"P^gX:(rL{V?/.mp|okkg":{"opcode":"operator_or","next":null,"parent":"==Rty@l9TWGU*]f*oA#_","inputs":{"OPERAND1":[2,"9]y{XCb`WvYgdGZUTVOV"],"OPERAND2":[2,"X_UG=4Bqgp-WdN4[cAw|"]},"fields":{},"shadow":false,"topLevel":false},"9]y{XCb`WvYgdGZUTVOV":{"opcode":"operator_gt","next":null,"parent":"P^gX:(rL{V?/.mp|okkg","inputs":{"OPERAND1":[3,"6kGEQ1{gc4C)]ABh4i=:",[10,""]],"OPERAND2":[1,[10,"475"]]},"fields":{},"shadow":false,"topLevel":false},"X_UG=4Bqgp-WdN4[cAw|":{"opcode":"operator_gt","next":null,"parent":"P^gX:(rL{V?/.mp|okkg","inputs":{"OPERAND1":[3,"#T+=NNLv/piw1gEX0FyH",[10,""]],"OPERAND2":[1,[10,"355"]]},"fields":{},"shadow":false,"topLevel":false},"Do[^V}bQh6]?CSG5(S,Q":{"opcode":"operator_and","next":null,"parent":"==Rty@l9TWGU*]f*oA#_","inputs":{"OPERAND1":[2,";``kPW}@juSvbe{mh^n_"],"OPERAND2":[2,"2/0Nfcp|Uxb`k1~o_VHW"]},"fields":{},"shadow":false,"topLevel":false},";``kPW}@juSvbe{mh^n_":{"opcode":"operator_gt","next":null,"parent":"Do[^V}bQh6]?CSG5(S,Q","inputs":{"OPERAND1":[3,"E,H5STmv,+{sq(si@MY;",[10,""]],"OPERAND2":[1,[10,"180"]]},"fields":{},"shadow":false,"topLevel":false},"2/0Nfcp|Uxb`k1~o_VHW":{"opcode":"operator_gt","next":null,"parent":"Do[^V}bQh6]?CSG5(S,Q","inputs":{"OPERAND1":[3,"E9ZQl(k=:[^Hk~p93!3d",[10,""]],"OPERAND2":[1,[10,"240"]]},"fields":{},"shadow":false,"topLevel":false},"W/ku@/*jRk+J3s]`b@|1":{"opcode":"sound_play","next":"cpS7|3K4HI3!fv3tOp0Y","parent":"Jq{YS!RJdniNJeDZVB~e","inputs":{"SOUND_MENU":[1,"DEwTk8eF`_=+6L;L+liG"]},"fields":{},"shadow":false,"topLevel":false},"DEwTk8eF`_=+6L;L+liG":{"opcode":"sound_sounds_menu","next":null,"parent":"W/ku@/*jRk+J3s]`b@|1","inputs":{},"fields":{"SOUND_MENU":["Glitch_Block_Accelerator"]},"shadow":true,"topLevel":false},"cpS7|3K4HI3!fv3tOp0Y":{"opcode":"control_wait_until","next":null,"parent":"W/ku@/*jRk+J3s]`b@|1","inputs":{"CONDITION":[2,"r.4No.y~{#PsIVolM~OE"]},"fields":{},"shadow":false,"topLevel":false},"r.4No.y~{#PsIVolM~OE":{"opcode":"operator_not","next":null,"parent":"cpS7|3K4HI3!fv3tOp0Y","inputs":{"OPERAND":[2,"5W69m0~mT#+VZYg7BbQR"]},"fields":{},"shadow":false,"topLevel":false},"5W69m0~mT#+VZYg7BbQR":{"opcode":"operator_and","next":null,"parent":"r.4No.y~{#PsIVolM~OE","inputs":{"OPERAND1":[2,"Zfc{HD3Tg,4~!Mbz:4pQ"],"OPERAND2":[2,"#+Q+L.qMxc-8OYe{?tWw"]},"fields":{},"shadow":false,"topLevel":false},"Zfc{HD3Tg,4~!Mbz:4pQ":{"opcode":"sensing_touchingobject","next":null,"parent":"5W69m0~mT#+VZYg7BbQR","inputs":{"TOUCHINGOBJECTMENU":[1,"w/t`AnUk(^Cz!yfw_itw"]},"fields":{},"shadow":false,"topLevel":false},"w/t`AnUk(^Cz!yfw_itw":{"opcode":"sensing_touchingobjectmenu","next":null,"parent":"Zfc{HD3Tg,4~!Mbz:4pQ","inputs":{},"fields":{"TOUCHINGOBJECTMENU":["obj_accelerator"]},"shadow":true,"topLevel":false},"#+Q+L.qMxc-8OYe{?tWw":{"opcode":"operator_not","next":null,"parent":"5W69m0~mT#+VZYg7BbQR","inputs":{"OPERAND":[2,"Fg@`T8DxJtR|O;nd/oL@"]},"fields":{},"shadow":false,"topLevel":false},"Fg@`T8DxJtR|O;nd/oL@":{"opcode":"operator_or","next":null,"parent":"#+Q+L.qMxc-8OYe{?tWw","inputs":{"OPERAND1":[2,"[U9gwL(2RCxJ_/FZ!,CC"],"OPERAND2":[2,"47_!mj#_rDZXPNX,!-K?"]},"fields":{},"shadow":false,"topLevel":false},"[U9gwL(2RCxJ_/FZ!,CC":{"opcode":"operator_or","next":null,"parent":"Fg@`T8DxJtR|O;nd/oL@","inputs":{"OPERAND1":[2,"NsSz~f:-jC(YMQTQuX+A"],"OPERAND2":[2,"EMc{4tDH?a49qb{m9ypU"]},"fields":{},"shadow":false,"topLevel":false},"NsSz~f:-jC(YMQTQuX+A":{"opcode":"operator_gt","next":null,"parent":"[U9gwL(2RCxJ_/FZ!,CC","inputs":{"OPERAND1":[3,"~UM4Jn/YL~+=OW.Riq|U",[10,""]],"OPERAND2":[1,[10,"475"]]},"fields":{},"shadow":false,"topLevel":false},"EMc{4tDH?a49qb{m9ypU":{"opcode":"operator_gt","next":null,"parent":"[U9gwL(2RCxJ_/FZ!,CC","inputs":{"OPERAND1":[3,"cs+q_{.ZKcfox.:8KOZQ",[10,""]],"OPERAND2":[1,[10,"355"]]},"fields":{},"shadow":false,"topLevel":false},"47_!mj#_rDZXPNX,!-K?":{"opcode":"operator_and","next":null,"parent":"Fg@`T8DxJtR|O;nd/oL@","inputs":{"OPERAND1":[2,"S8PS.]~=@:}[]eT=3#4!"],"OPERAND2":[2,"V)t^q;Nc.aN18ydH:1lN"]},"fields":{},"shadow":false,"topLevel":false},"S8PS.]~=@:}[]eT=3#4!":{"opcode":"operator_gt","next":null,"parent":"47_!mj#_rDZXPNX,!-K?","inputs":{"OPERAND1":[3,"s4|98:|`0Dhx_j[[SQ}j",[10,""]],"OPERAND2":[1,[10,"180"]]},"fields":{},"shadow":false,"topLevel":false},"V)t^q;Nc.aN18ydH:1lN":{"opcode":"operator_gt","next":null,"parent":"47_!mj#_rDZXPNX,!-K?","inputs":{"OPERAND1":[3,"QN*.A+x3[7,8DWPR9b(;",[10,""]],"OPERAND2":[1,[10,"240"]]},"fields":{},"shadow":false,"topLevel":false},"O|I?qmea1=MN5ShQ{Aqo":{"opcode":"event_whenbroadcastreceived","next":"yVd-(6GlxuHR%.dDs3#E","parent":null,"inputs":{},"fields":{"BROADCAST_OPTION":["alt_glitch","broadcastMsgId-alt_glitch"]},"shadow":false,"topLevel":true,"x":261,"y":68},"yVd-(6GlxuHR%.dDs3#E":{"opcode":"data_setvariableto","next":"[KF9-(q*OWp/@/^1KH#h","parent":"O|I?qmea1=MN5ShQ{Aqo","inputs":{"VALUE":[1,[10,0]]},"fields":{"VARIABLE":["X vel","58`Aw=nriuw[2/#s@20!-X vel"]},"shadow":false,"topLevel":false},"[KF9-(q*OWp/@/^1KH#h":{"opcode":"data_setvariableto","next":null,"parent":"yVd-(6GlxuHR%.dDs3#E","inputs":{"VALUE":[1,[10,0]]},"fields":{"VARIABLE":["Y vel","58`Aw=nriuw[2/#s@20!-Y vel"]},"shadow":false,"topLevel":false},"G|dxJpM%T]6d~nIx)1z~":{"opcode":"bender_spriteInfo","next":null,"parent":")`CM-63%kXK0T+2+6nv)","inputs":{"PROPERTY":[1,"iVIaDNv[n]i2t}ZpPI;}"]},"fields":{},"shadow":false,"topLevel":false},"iVIaDNv[n]i2t}ZpPI;}":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"G|dxJpM%T]6d~nIx)1z~","inputs":{},"fields":{"SPRITE_PROPS":["width"]},"shadow":true,"topLevel":false},"-i?$X%~rLG:@b)rDL)mw":{"opcode":"bender_spriteInfo","next":null,"parent":"v@+Ik}jU;-CX)rHI)XCc","inputs":{"PROPERTY":[1,"I#B@}0K;6gI8bf7Qrafu"]},"fields":{},"shadow":false,"topLevel":false},"I#B@}0K;6gI8bf7Qrafu":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"-i?$X%~rLG:@b)rDL)mw","inputs":{},"fields":{"SPRITE_PROPS":["height"]},"shadow":true,"topLevel":false},"#T+=NNLv/piw1gEX0FyH":{"opcode":"bender_spriteInfo","next":null,"parent":"X_UG=4Bqgp-WdN4[cAw|","inputs":{"PROPERTY":[1,"LKg5}KdP[]budv+l4-sL"]},"fields":{},"shadow":false,"topLevel":false},"LKg5}KdP[]budv+l4-sL":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"#T+=NNLv/piw1gEX0FyH","inputs":{},"fields":{"SPRITE_PROPS":["height"]},"shadow":true,"topLevel":false},"(V%2k4V/cf^T-k~vHBog":{"opcode":"bender_spriteInfo","next":null,"parent":"BfSUpp2]f*ep82h9R_w1","inputs":{"PROPERTY":[1,";=50+F^u8OhGQRw|w1x3"]},"fields":{},"shadow":false,"topLevel":false},";=50+F^u8OhGQRw|w1x3":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"(V%2k4V/cf^T-k~vHBog","inputs":{},"fields":{"SPRITE_PROPS":["width"]},"shadow":true,"topLevel":false},"~UM4Jn/YL~+=OW.Riq|U":{"opcode":"bender_spriteInfo","next":null,"parent":"NsSz~f:-jC(YMQTQuX+A","inputs":{"PROPERTY":[1,"s4Dlzfz/W4sK%gl=@;Zk"]},"fields":{},"shadow":false,"topLevel":false},"s4Dlzfz/W4sK%gl=@;Zk":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"~UM4Jn/YL~+=OW.Riq|U","inputs":{},"fields":{"SPRITE_PROPS":["width"]},"shadow":true,"topLevel":false},"V?Y,KQxnp#3;[[RVC-]v":{"opcode":"bender_spriteInfo","next":null,"parent":"td:{(1{0gbx^53.0]azK","inputs":{"PROPERTY":[1,"A*M;R}(I*1X%7s+!$Ps9"]},"fields":{},"shadow":false,"topLevel":false},"A*M;R}(I*1X%7s+!$Ps9":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"V?Y,KQxnp#3;[[RVC-]v","inputs":{},"fields":{"SPRITE_PROPS":["height"]},"shadow":true,"topLevel":false},"6kGEQ1{gc4C)]ABh4i=:":{"opcode":"bender_spriteInfo","next":null,"parent":"9]y{XCb`WvYgdGZUTVOV","inputs":{"PROPERTY":[1,"n`NP!M5u?B7N`47Pw3Iu"]},"fields":{},"shadow":false,"topLevel":false},"n`NP!M5u?B7N`47Pw3Iu":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"6kGEQ1{gc4C)]ABh4i=:","inputs":{},"fields":{"SPRITE_PROPS":["width"]},"shadow":true,"topLevel":false},"s4|98:|`0Dhx_j[[SQ}j":{"opcode":"bender_spriteInfo","next":null,"parent":"S8PS.]~=@:}[]eT=3#4!","inputs":{"PROPERTY":[1,"1O`2`mK]4/Z:mX3ajBOv"]},"fields":{},"shadow":false,"topLevel":false},"1O`2`mK]4/Z:mX3ajBOv":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"s4|98:|`0Dhx_j[[SQ}j","inputs":{},"fields":{"SPRITE_PROPS":["height"]},"shadow":true,"topLevel":false},"QN*.A+x3[7,8DWPR9b(;":{"opcode":"bender_spriteInfo","next":null,"parent":"V)t^q;Nc.aN18ydH:1lN","inputs":{"PROPERTY":[1,"I`Xc:k~Mn{h5!RsgAZd_"]},"fields":{},"shadow":false,"topLevel":false},"I`Xc:k~Mn{h5!RsgAZd_":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"QN*.A+x3[7,8DWPR9b(;","inputs":{},"fields":{"SPRITE_PROPS":["width"]},"shadow":true,"topLevel":false},"cs+q_{.ZKcfox.:8KOZQ":{"opcode":"bender_spriteInfo","next":null,"parent":"EMc{4tDH?a49qb{m9ypU","inputs":{"PROPERTY":[1,"B,#-;Rx;_|u#NV!aI6r-"]},"fields":{},"shadow":false,"topLevel":false},"B,#-;Rx;_|u#NV!aI6r-":{"opcode":"bender_menu_SPRITE_PROPS","next":null,"parent":"cs+q_{.ZKcfox.:8KOZQ","inputs":{},"fields":{"SPRITE_PROPS":["height"]},"shadow":true,"topLevel":false},"E9ZQl(k=:[^Hk~p93!3d":{"opcode":"bender_spriteInfo","next":null,"parent":"2/0Nfcp|Uxb`k1~o_VHW","inputs":{"PROPERTY":[1,"Bnw)okD~mrz|,?Kw7JhT"]},"fields":{},"shadow":false,"topLevel":false},"Bnw) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you just reset this change (git checkout master tests/data/accelerator.json
and commit it?)
expect(globalVar.global()).toBeTruthy(); | ||
expect(globalVar.prop('name')).toEqual('glitch_Acceleration'); | ||
|
||
// ensure that scalar vars outside of global scope are not included |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
separate test for this please?
tests/sb-util.test.ts
Outdated
expect( | ||
globalListVar | ||
.prop('value') | ||
.map((v: string) => +v) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rather than +v
can you just use .map(Number)
?
+v
is an old trick that definitely works, but Number(v)
or parseFloat(v)
are much more readable / intentions are known
I generally like Number(v)
cuz it also works for Boolean(v)
instead of !!v
and String(v)
if you really want to make sure it's a string.
commit a2e0255 Merge: 63fd0cc 967b335 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:38:45 2019 -0400 Merge branch 'tmp-vars' into broadcast-list-variables commit 967b335 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:38:04 2019 -0400 merge commit 63fd0cc Merge: b09dbf4 8a50c6c Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:34:51 2019 -0400 Merge branch 'broadcast-list-variables' of github.com:bocoup/sb-util into broadcast-list-variables commit b09dbf4 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:17:03 2019 -0400 update comments commit 3fd98e0 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:16:07 2019 -0400 removing readme variable query and endline commit 8a50c6c Merge: c960d46 0686f35 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:31:42 2019 -0400 Merge branch 'broadcast-list-variables' of github.com:bocoup/sb-util into broadcast-list-variables commit d0a4e7c Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Sun Aug 18 17:51:51 2019 -0400 flippinf global logic on variables and lists commit c960d46 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:17:03 2019 -0400 update comments commit fc571ad Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:16:07 2019 -0400 removing readme variable query and endline commit 0686f35 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:17:03 2019 -0400 update comments commit f1c0f78 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:16:07 2019 -0400 removing readme variable query and endline commit 820d6b1 Merge: b09c120 9a48bed Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Mon Aug 19 11:15:07 2019 -0400 Merge branch 'broadcast-list-variables' of github.com:bocoup/sb-util into broadcast-list-variables commit b09c120 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Sun Aug 18 17:51:51 2019 -0400 flippinf global logic on variables and lists commit 07686e9 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:30:16 2019 -0400 set meta sprite in separate function commit a4ef817 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:24:35 2019 -0400 list variable in local and global scope accessing commit b3ff635 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 15:46:00 2019 -0400 breaking out variable tests commit 9dde03e Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 14:26:43 2019 -0400 adding support for broadcast variables commit e44ad7c Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:45:57 2019 -0400 break out tests commit 74628c6 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:38:23 2019 -0400 nit comment commit aff33d5 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:36:34 2019 -0400 broadcast vars break out commit 8e182bd Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:31:37 2019 -0400 breaking out list vars into its own method commit 3087648 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:30:16 2019 -0400 set meta sprite in separate function commit bc6cd57 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:24:35 2019 -0400 list variable in local and global scope accessing commit 9da2eee Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 15:46:00 2019 -0400 breaking out variable tests commit 44fec5d Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 14:26:43 2019 -0400 adding support for broadcast variables commit 9c3ff2a Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Wed Aug 14 16:18:05 2019 -0400 updating docblock to include broadcasts and lists commit 9a48bed Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Sun Aug 18 17:51:51 2019 -0400 flippinf global logic on variables and lists commit 8126e59 Merge: 9e7a162 d5786ba Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Sun Aug 18 17:38:19 2019 -0400 Merge branch 'broadcast-list-variables' of github.com:bocoup/sb-util into broadcast-list-variables commit 9e7a162 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:45:57 2019 -0400 break out tests commit f380ae6 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:38:23 2019 -0400 nit comment commit e1da0de Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:36:34 2019 -0400 broadcast vars break out commit 1c78b05 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:31:37 2019 -0400 breaking out list vars into its own method commit 3ee02e9 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:30:16 2019 -0400 set meta sprite in separate function commit 62fc4c4 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:24:35 2019 -0400 list variable in local and global scope accessing commit a2469c8 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 15:46:00 2019 -0400 breaking out variable tests commit 7c7957d Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 14:26:43 2019 -0400 adding support for broadcast variables commit 95aa3ae Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Wed Aug 14 16:18:05 2019 -0400 updating docblock to include broadcasts and lists commit d5786ba Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:45:57 2019 -0400 break out tests commit a6f0bf9 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:38:23 2019 -0400 nit comment commit d680d01 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:36:34 2019 -0400 broadcast vars break out commit d82d04b Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Fri Aug 16 16:31:37 2019 -0400 breaking out list vars into its own method commit 258064e Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:30:16 2019 -0400 set meta sprite in separate function commit ff44d8e Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 16:24:35 2019 -0400 list variable in local and global scope accessing commit 2fc720c Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 15:46:00 2019 -0400 breaking out variable tests commit 9786fba Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Thu Aug 15 14:26:43 2019 -0400 adding support for broadcast variables commit c025ad1 Author: Erika Miguel-Yeo <erika@bocoup.com> Date: Wed Aug 14 16:18:05 2019 -0400 updating docblock to include broadcasts and lists
a2e0255
to
11e7bfa
Compare
This PR is the partial implementation of the follow up task for accessing variables. The scope of the
variables()
function on ScratchProject now include broadcasts and lists, in addition to scalar variables.Up next after this PR is querying variables based on type.