Spawning Rain
Counting with Proximity
April 26th, 2024
Difficulty: Challenging
(Calendar & Rules)
Share a screenshot of how to count the number of objects selected with proximity. This can be coins, enemies, or items. Make a version of code that uses once to count the objects, and then another version with always that shows a live count in the proximity.
Also I’m cheating a bit because I’ve viewed all of JR’s examples in the past lol, wealth of knowledge there
Answer
Always
If it’s just visual display, no need to get the Number Afterward as you’ll only see the final result and it’s just a minor amount worse on performance (though actually probably better because you can use a Number instead of an expression), but for something that needs to count the enemies to perform a certain action you’d want only the total value, not all the values leading up to the total.
Once
These are correct, you can use a proximity to count the number of objects inside the proximity.
Back in the day, this is also how I counted how many coins were in each level of Escape the Rewind. The proximity works alot better nowadays, but a huge proximity set to an item used for just the first frame didn’t effect performance all that bad. You just have to be carefule on how you decide to use them.
I’ve been meaning to do one of these for a while but been pretty busy irl, but here’s the first Expert challenge. Also we may change the calender a bit since not many participates in the beginner challenges.
Spawn a wave of spikes
April 29th, 2024
Difficulty: Expert
(Calendar & Rules)
Use an expression and spawn behaviors to spawn a wave of spikes in a strait line towards the player from an enemy. This is perspective to a topdown game. Share a screenshot of the code and the math used in the expression on how to do this. Be sure the read the rules above.
You should use extractors, globals, expressions, spawns and timers.
not quite sure if this is what you’re talking about…
Answer
Flowlab Game Creator - New Game
I’m just using math that outputs x,y based off of a beginning point, rotation, and distance.
I decided not to the challenge because I was too lazy/just didn’t wanna do it.
Yours looks super cool though! Do you think I could save the code for later projects of mine or just to research it so I could learn from it?
yeah that’s fine
Answers
There’s some room for interpretation within the question, so I’ll give two possible solutions for it.
This will send out the objects towards the objects. An extra bit of code should be added to determine how many you’d like to spawn depending on the distance to the player. (Eases are set to Linear)
Also, technically the “Numbers” aren’t needed, just assumed I would be expanding the system more.
{"data":{"behavior":{"v":"2","nodes":[{"inputCount":3,"outputCount":1,"name":"Global","behaviorType":"logic.logic.Global","x":-180,"y":-64,"group":"2c65bc40ccecfb45","id":"2c668d5c9713bf43","tag":"Object 2 X:Number","version":2,"dataType":2},{"inputCount":3,"outputCount":1,"name":"Global","behaviorType":"logic.logic.Global","x":-180,"y":144,"group":"2c65bc40ccecfb45","id":"2c668dd7dc6abe4e","tag":"Object 2 Y:Number","version":2,"dataType":2},{"inputCount":1,"outputCount":1,"name":"Extractor","behaviorType":"logic.properties.Extractor","x":0,"y":-160,"group":"2c65bc40ccecfb45","id":"2c66c879c04dec4b","targetId":0,"prop":"x","version":2},{"inputCount":1,"outputCount":1,"name":"Extractor","behaviorType":"logic.properties.Extractor","x":0,"y":48,"group":"2c65bc40ccecfb45","id":"2c66c8e50b9fd040","targetId":0,"prop":"y","version":2},{"inputCount":6,"outputCount":2,"name":"Ease","behaviorType":"logic.logic.Ease2","x":180,"y":-160,"group":"2c65bc40ccecfb45","id":"2c6ba58158897247","duration":3,"from":0,"to":100,"easeFunc":"Linear","easeType":0,"smartRot":false},{"inputCount":6,"outputCount":2,"name":"Ease","behaviorType":"logic.logic.Ease2","x":180,"y":48,"group":"2c65bc40ccecfb45","id":"2c6ba5efd838334a","duration":3,"from":0,"to":100,"easeFunc":"Linear","easeType":0,"smartRot":false},{"inputCount":3,"outputCount":1,"name":"Number","behaviorType":"logic.logic.Value","x":0,"y":144,"group":"2c65bc40ccecfb45","id":"2c6bb9ebfef8bc47","startVal":0,"roundMode":1},{"inputCount":3,"outputCount":1,"name":"Number","behaviorType":"logic.logic.Value","x":0,"y":-64,"group":"2c65bc40ccecfb45","id":"2c6bba61695c7d40","startVal":0,"roundMode":1},{"inputCount":3,"outputCount":1,"name":"Spawn","behaviorType":"logic.components.Spawn2","x":450,"y":48,"group":"2c65bc40ccecfb45","id":"2c6cd3dfcc07f14a","entityClassId":15364132,"spawnX":0,"spawnY":0},{"delay":5,"count":6,"version":2,"inputCount":3,"outputCount":1,"name":"Timer","behaviorType":"logic.triggers.Timer","x":180,"y":176,"group":"2c65bc40ccecfb45","id":"2c6ce9d86f698142"},{"inputCount":0,"outputCount":2,"name":"Keyboard","behaviorType":"logic.triggers.Keyboard","x":-180,"y":48,"group":"2c65bc40ccecfb45","id":"2c6737f6e205414e","keyCode":32}],"links":[{"input_id":"2c6bba61695c7d40i0","output_id":"2c668d5c9713bf43o0"},{"input_id":"2c6bb9ebfef8bc47i0","output_id":"2c668dd7dc6abe4eo0"},{"input_id":"2c66c879c04dec4bi0","output_id":"2c6737f6e205414eo0"},{"input_id":"2c6ba58158897247i1","output_id":"2c66c879c04dec4bo0"},{"input_id":"2c66c8e50b9fd040i0","output_id":"2c6737f6e205414eo0"},{"input_id":"2c6ba5efd838334ai1","output_id":"2c66c8e50b9fd040o0"},{"input_id":"2c6ba58158897247i1","output_id":"2c66c879c04dec4bo0"},{"input_id":"2c6ba58158897247i2","output_id":"2c6bba61695c7d40o0"},{"input_id":"2c6ba58158897247i3","output_id":"2c6bba61695c7d40o0"},{"input_id":"2c6cd3dfcc07f14ai0","output_id":"2c6ba58158897247o0"},{"input_id":"2c6ba5efd838334ai1","output_id":"2c66c8e50b9fd040o0"},{"input_id":"2c6ba5efd838334ai2","output_id":"2c6bb9ebfef8bc47o0"},{"input_id":"2c6ba5efd838334ai3","output_id":"2c6bb9ebfef8bc47o0"},{"input_id":"2c6cd3dfcc07f14ai1","output_id":"2c6ba5efd838334ao0"},{"input_id":"2c6bb9ebfef8bc47i0","output_id":"2c668dd7dc6abe4eo0"},{"input_id":"2c6bb9ebfef8bc47i1","output_id":"2c6737f6e205414eo0"},{"input_id":"2c6ba5efd838334ai2","output_id":"2c6bb9ebfef8bc47o0"},{"input_id":"2c6ba5efd838334ai3","output_id":"2c6bb9ebfef8bc47o0"},{"input_id":"2c6ce9d86f698142i0","output_id":"2c6bb9ebfef8bc47o0"},{"input_id":"2c6bba61695c7d40i0","output_id":"2c668d5c9713bf43o0"},{"input_id":"2c6bba61695c7d40i1","output_id":"2c6737f6e205414eo0"},{"input_id":"2c6ba58158897247i2","output_id":"2c6bba61695c7d40o0"},{"input_id":"2c6ba58158897247i3","output_id":"2c6bba61695c7d40o0"},{"input_id":"2c6cd3dfcc07f14ai0","output_id":"2c6ba58158897247o0"},{"input_id":"2c6cd3dfcc07f14ai1","output_id":"2c6ba5efd838334ao0"},{"input_id":"2c6cd3dfcc07f14ai2","output_id":"2c6ce9d86f698142o0"},{"input_id":"2c6ce9d86f698142i0","output_id":"2c6bb9ebfef8bc47o0"},{"input_id":"2c6cd3dfcc07f14ai2","output_id":"2c6ce9d86f698142o0"},{"input_id":"2c66c879c04dec4bi0","output_id":"2c6737f6e205414eo0"},{"input_id":"2c6bba61695c7d40i1","output_id":"2c6737f6e205414eo0"},{"input_id":"2c66c8e50b9fd040i0","output_id":"2c6737f6e205414eo0"},{"input_id":"2c6bb9ebfef8bc47i1","output_id":"2c6737f6e205414eo0"}]}}}
Then I realized that the first solution I thought of probably wasn’t intentional. I’m assuming JR wanted some like in WITW, so it spawns along that line for a preset distance.
Just a pretty simple thing, surprised this is Expert, it’s decently easy if you know basic geometry.
Also technically (wouldn’t recommend) you can do some funky stuff to loop the expression back on itself and expand the expression, and that would remove the need for the “Distance” expression. But again, wouldn’t recommend as there is basically no benefit in this case and is just unneeded extra time to figure it out.
Expression
C+Math.cos(A*Math.PI/180)*B
// C = Enemy X/Y
// A = Angle (Math.PI/180 converts to radians)
// B = The distance between "spikes"
{"data":{"behavior":{"v":"2","nodes":[{"inputCount":3,"outputCount":1,"name":"Global","behaviorType":"logic.logic.Global","x":-270,"y":-80,"group":"2c65bc40ccecfb45","id":"2c75e7b817ad7543","tag":"Object 2 Y:Number","version":2,"dataType":2},{"inputCount":3,"outputCount":1,"name":"Global","behaviorType":"logic.logic.Global","x":-270,"y":-176,"group":"2c65bc40ccecfb45","id":"2c75e8394c1d1f4c","tag":"Object 2 X:Number","version":2,"dataType":2},{"inputCount":0,"outputCount":2,"name":"Keyboard","behaviorType":"logic.triggers.Keyboard","x":-270,"y":112,"group":"2c65bc40ccecfb45","id":"2c767dc7ea224349","keyCode":32},{"expression":"C+Math.cos(A*Math.PI/180)*B","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":3,"version":2,"tag":"X Position","inputCount":4,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":270,"y":-176,"group":"2c65bc40ccecfb45","id":"2c76cb26ef72ab4f","notes":"Adjusts X position based on the angle to the player","n_o":1},{"expression":"C+Math.sin(A*Math.PI/180)*B","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":3,"version":2,"tag":"Y Position","inputCount":4,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":270,"y":16,"group":"2c65bc40ccecfb45","id":"2c76d7c1b2628f47","notes":"Adjusts X position based \non the angle to the player","n_o":1},{"expression":"A+48","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":1,"version":2,"tag":"Distance","inputCount":2,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":90,"y":112,"group":"2c65bc40ccecfb45","id":"2c77309ebf05c649"},{"inputCount":2,"outputCount":1,"name":"PointAt","behaviorType":"logic.components.PointAt","x":90,"y":-176,"group":"2c65bc40ccecfb45","id":"2c77901db8961545","skipRot":true},{"inputCount":3,"outputCount":1,"name":"Number","behaviorType":"logic.logic.Value","x":-90,"y":-176,"group":"2c65bc40ccecfb45","id":"2c77a4c821479e40","notes":"Just so the angle is not constantly updated","n_o":1,"startVal":0,"tag":"Player X","roundMode":1},{"inputCount":3,"outputCount":1,"name":"Number","behaviorType":"logic.logic.Value","x":-90,"y":-80,"group":"2c65bc40ccecfb45","id":"2c77a68d5263434a","startVal":0,"tag":"Player Y","roundMode":1},{"delay":1,"count":10,"version":2,"inputCount":3,"outputCount":1,"name":"Timer","behaviorType":"logic.triggers.Timer","x":-90,"y":112,"group":"2c65bc40ccecfb45","id":"2c78a73aa9fc1346"},{"inputCount":3,"outputCount":1,"name":"Spawn","behaviorType":"logic.components.Spawn2","x":450,"y":-80,"group":"2c65bc40ccecfb45","id":"2c7bb48a148e5742","entityClassId":15364132,"spawnX":0,"spawnY":0},{"inputCount":1,"outputCount":1,"name":"Extractor","behaviorType":"logic.properties.Extractor","x":90,"y":-80,"group":"2c65bc40ccecfb45","id":"2c7c4bbf45d7b042","targetId":0,"prop":"x","version":2},{"inputCount":1,"outputCount":1,"name":"Extractor","behaviorType":"logic.properties.Extractor","x":90,"y":16,"group":"2c65bc40ccecfb45","id":"2c7c5ce2b56de74f","targetId":0,"prop":"y","version":2}],"links":[{"input_id":"2c77a68d5263434ai0","output_id":"2c75e7b817ad7543o0"},{"input_id":"2c77a4c821479e40i0","output_id":"2c75e8394c1d1f4co0"},{"input_id":"2c77a4c821479e40i1","output_id":"2c767dc7ea224349o0"},{"input_id":"2c77a68d5263434ai1","output_id":"2c767dc7ea224349o0"},{"input_id":"2c78a73aa9fc1346i0","output_id":"2c767dc7ea224349o0"},{"input_id":"2c77309ebf05c649i1","output_id":"2c767dc7ea224349o0"},{"input_id":"2c76cb26ef72ab4fi0","output_id":"2c77901db8961545o0"},{"input_id":"2c76cb26ef72ab4fi1","output_id":"2c77309ebf05c649o0"},{"input_id":"2c76cb26ef72ab4fi2","output_id":"2c7c4bbf45d7b042o0"},{"input_id":"2c76cb26ef72ab4fi3","output_id":"2c77309ebf05c649o0"},{"input_id":"2c7bb48a148e5742i0","output_id":"2c76cb26ef72ab4fo0"},{"input_id":"2c76d7c1b2628f47i0","output_id":"2c77901db8961545o0"},{"input_id":"2c76d7c1b2628f47i1","output_id":"2c77309ebf05c649o0"},{"input_id":"2c76d7c1b2628f47i2","output_id":"2c7c5ce2b56de74fo0"},{"input_id":"2c76d7c1b2628f47i3","output_id":"2c77309ebf05c649o0"},{"input_id":"2c7bb48a148e5742i1","output_id":"2c76d7c1b2628f47o0"},{"input_id":"2c7bb48a148e5742i2","output_id":"2c76d7c1b2628f47o0"},{"input_id":"2c77309ebf05c649i0","output_id":"2c77309ebf05c649o0"},{"input_id":"2c77309ebf05c649i1","output_id":"2c78a73aa9fc1346o0"},{"input_id":"2c77309ebf05c649i1","output_id":"2c767dc7ea224349o0"},{"input_id":"2c76cb26ef72ab4fi1","output_id":"2c77309ebf05c649o0"},{"input_id":"2c76cb26ef72ab4fi3","output_id":"2c77309ebf05c649o0"},{"input_id":"2c76d7c1b2628f47i1","output_id":"2c77309ebf05c649o0"},{"input_id":"2c76d7c1b2628f47i3","output_id":"2c77309ebf05c649o0"},{"input_id":"2c77309ebf05c649i0","output_id":"2c77309ebf05c649o0"},{"input_id":"2c77901db8961545i0","output_id":"2c77a4c821479e40o0"},{"input_id":"2c77901db8961545i1","output_id":"2c77a68d5263434ao0"},{"input_id":"2c76cb26ef72ab4fi0","output_id":"2c77901db8961545o0"},{"input_id":"2c76d7c1b2628f47i0","output_id":"2c77901db8961545o0"},{"input_id":"2c77a4c821479e40i0","output_id":"2c75e8394c1d1f4co0"},{"input_id":"2c77a4c821479e40i1","output_id":"2c767dc7ea224349o0"},{"input_id":"2c77901db8961545i0","output_id":"2c77a4c821479e40o0"},{"input_id":"2c7c4bbf45d7b042i0","output_id":"2c77a4c821479e40o0"},{"input_id":"2c77a68d5263434ai0","output_id":"2c75e7b817ad7543o0"},{"input_id":"2c77a68d5263434ai1","output_id":"2c767dc7ea224349o0"},{"input_id":"2c77901db8961545i1","output_id":"2c77a68d5263434ao0"},{"input_id":"2c7c5ce2b56de74fi0","output_id":"2c77a68d5263434ao0"},{"input_id":"2c78a73aa9fc1346i0","output_id":"2c767dc7ea224349o0"},{"input_id":"2c77309ebf05c649i1","output_id":"2c78a73aa9fc1346o0"},{"input_id":"2c7bb48a148e5742i0","output_id":"2c76cb26ef72ab4fo0"},{"input_id":"2c7bb48a148e5742i1","output_id":"2c76d7c1b2628f47o0"},{"input_id":"2c7bb48a148e5742i2","output_id":"2c76d7c1b2628f47o0"},{"input_id":"2c7c4bbf45d7b042i0","output_id":"2c77a4c821479e40o0"},{"input_id":"2c76cb26ef72ab4fi2","output_id":"2c7c4bbf45d7b042o0"},{"input_id":"2c7c5ce2b56de74fi0","output_id":"2c77a68d5263434ao0"},{"input_id":"2c76d7c1b2628f47i2","output_id":"2c7c5ce2b56de74fo0"}]}}}
can I have the game link pretty please
Sure, though it’s a mess of just random tests.
Go to the last level in the “!Bundles” object. There is a bundle labeled “Coding Challenge”, it’s next to the Once.
@Flying_Fajita is the first one to get it, but @CodeAlpaca are wright too. Using an ease would simplify this too, but yeah I was looking for methods with cos and sin because not only does it help with a wave of spikes, I also used the unit circle with disance to spawn accorns in the day scenes in the boss fight where the angle is randomized from the center location.
Answer
Exrepssion Cos X
(C*Math.cos(B*(Math.PI/180)))+A
Expression Sin Y
(C*Math.sin(B*(Math.PI/180)))+A
// A = This X/Y
// B = Angle
// C = Distance
{"data":{"behavior":{"v":"2","nodes":[{"inputCount":3,"outputCount":1,"name":"Spawn","behaviorType":"logic.components.Spawn2","x":540,"y":-80,"id":"35a6a13d53c32242","entityClassId":19255613,"spawnX":0,"spawnY":0},{"expression":"(C*Math.sin(B*(Math.PI/180)))+A","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":3,"version":2,"tag":"Sin Y","inputCount":4,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":360,"y":48,"id":"35a6a13f1e1d7b4e"},{"expression":"(C*Math.cos(B*(Math.PI/180)))+A","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":3,"version":2,"tag":"Cos X","inputCount":4,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":360,"y":-80,"id":"35a6a13f6d705c40","notes":"A = Starting Location\nB = Angle\nC = Distance","n_o":1},{"expression":"A*32","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":1,"version":2,"tag":"Distance","inputCount":2,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":180,"y":48,"id":"35a6a13f870ebc4d"},{"inputCount":0,"outputCount":1,"name":"Once","behaviorType":"logic.triggers.Once","x":0,"y":-288,"id":"35a6a13fe3a19c4e","resetOnLevelStart":false},{"inputCount":1,"outputCount":1,"name":"Extractor","behaviorType":"logic.properties.Extractor","x":180,"y":-288,"id":"35a6a13fb6858244","targetId":0,"prop":"x","version":2},{"inputCount":1,"outputCount":1,"name":"Extractor","behaviorType":"logic.properties.Extractor","x":180,"y":-192,"id":"35a6a13f164e2343","targetId":0,"prop":"y","version":2},{"delay":0,"count":10,"version":2,"inputCount":3,"outputCount":1,"name":"Timer","behaviorType":"logic.triggers.Timer","x":-180,"y":48,"group":"","id":"35a701402ba64a4e","notes":"0 w/ repeat 10","n_o":1},{"inputCount":3,"outputCount":1,"name":"Global","behaviorType":"logic.logic.Global","x":0,"y":-80,"group":"","id":"35a78916ca942e47","tag":"Player Y:Number","version":2,"dataType":2},{"inputCount":3,"outputCount":1,"name":"Global","behaviorType":"logic.logic.Global","x":0,"y":-192,"group":"","id":"35a789b26a891142","tag":"Player X:Number","version":2,"dataType":2},{"inputCount":2,"outputCount":1,"name":"PointAt","behaviorType":"logic.components.PointAt","x":180,"y":-80,"group":"","id":"35a7ae28a90bb948","skipRot":true},{"expression":"A+1>10?1:A+1","default0":0,"default1":0,"default2":0,"default3":0,"default4":0,"default5":0,"params":1,"version":2,"tag":"Count","inputCount":2,"outputCount":1,"name":"Expression","behaviorType":"logic.logic.Expression","x":0,"y":48,"group":"","id":"35a94d1069bdb041"},{"delay":20,"count":0,"version":2,"inputCount":3,"outputCount":1,"name":"Timer","behaviorType":"logic.triggers.Timer","x":-360,"y":48,"group":"","id":"35aae8801375f648","notes":"20 w/ repeat forever","n_o":1},{"inputCount":0,"outputCount":1,"name":"Once","behaviorType":"logic.triggers.Once","x":-360,"y":160,"group":"","id":"35abcb76afe83442","resetOnLevelStart":false}],"links":[{"input_id":"35a6a13d53c32242i0","output_id":"35a6a13f6d705c40o0"},{"input_id":"35a6a13d53c32242i1","output_id":"35a6a13f1e1d7b4eo0"},{"input_id":"35a6a13d53c32242i2","output_id":"35a6a13f1e1d7b4eo0"},{"input_id":"35a6a13f1e1d7b4ei0","output_id":"35a6a13f164e2343o0"},{"input_id":"35a6a13f1e1d7b4ei1","output_id":"35a7ae28a90bb948o0"},{"input_id":"35a6a13f1e1d7b4ei2","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13f1e1d7b4ei3","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13d53c32242i1","output_id":"35a6a13f1e1d7b4eo0"},{"input_id":"35a6a13d53c32242i2","output_id":"35a6a13f1e1d7b4eo0"},{"input_id":"35a6a13f6d705c40i0","output_id":"35a6a13fb6858244o0"},{"input_id":"35a6a13f6d705c40i1","output_id":"35a7ae28a90bb948o0"},{"input_id":"35a6a13f6d705c40i2","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13f6d705c40i3","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13d53c32242i0","output_id":"35a6a13f6d705c40o0"},{"input_id":"35a6a13f870ebc4di0","output_id":"35a94d1069bdb041o0"},{"input_id":"35a6a13f870ebc4di1","output_id":"35a94d1069bdb041o0"},{"input_id":"35a6a13f6d705c40i2","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13f6d705c40i3","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13f1e1d7b4ei2","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13f1e1d7b4ei3","output_id":"35a6a13f870ebc4do0"},{"input_id":"35a6a13fb6858244i0","output_id":"35a6a13fe3a19c4eo0"},{"input_id":"35a6a13f164e2343i0","output_id":"35a6a13fe3a19c4eo0"},{"input_id":"35a6a13fb6858244i0","output_id":"35a6a13fe3a19c4eo0"},{"input_id":"35a6a13f6d705c40i0","output_id":"35a6a13fb6858244o0"},{"input_id":"35a6a13f164e2343i0","output_id":"35a6a13fe3a19c4eo0"},{"input_id":"35a6a13f1e1d7b4ei0","output_id":"35a6a13f164e2343o0"},{"input_id":"35a701402ba64a4ei0","output_id":"35aae8801375f648o0"},{"input_id":"35a701402ba64a4ei0","output_id":"35abcb76afe83442o0"},{"input_id":"35a94d1069bdb041i1","output_id":"35a701402ba64a4eo0"},{"input_id":"35a7ae28a90bb948i1","output_id":"35a78916ca942e47o0"},{"input_id":"35a7ae28a90bb948i0","output_id":"35a789b26a891142o0"},{"input_id":"35a7ae28a90bb948i0","output_id":"35a789b26a891142o0"},{"input_id":"35a7ae28a90bb948i1","output_id":"35a78916ca942e47o0"},{"input_id":"35a6a13f6d705c40i1","output_id":"35a7ae28a90bb948o0"},{"input_id":"35a6a13f1e1d7b4ei1","output_id":"35a7ae28a90bb948o0"},{"input_id":"35a94d1069bdb041i0","output_id":"35a94d1069bdb041o0"},{"input_id":"35a94d1069bdb041i1","output_id":"35a701402ba64a4eo0"},{"input_id":"35a94d1069bdb041i0","output_id":"35a94d1069bdb041o0"},{"input_id":"35a6a13f870ebc4di0","output_id":"35a94d1069bdb041o0"},{"input_id":"35a6a13f870ebc4di1","output_id":"35a94d1069bdb041o0"},{"input_id":"35a701402ba64a4ei0","output_id":"35aae8801375f648o0"},{"input_id":"35a701402ba64a4ei0","output_id":"35abcb76afe83442o0"}]}}}
Make UI Controller Buttons
May 1st, 2024
Difficulty: Intermediate
(Rules)
Show a screenshot of code on how you would turn a Mouse Click into a repeating button like the keyboard behavior. This can be done with MouseClick or Gestures, and this is only to replicate button presses.
I think that one is how the auto click exists. (the first one)
I think this is what you mean?
Summary
A timer or switch is usually the best choice for replicatinga keyboard press with UI buttons.
Answer
Every time I use this method, I think it’s funny how I have been on flowlab for quite a while, and I did not think of it until a couple months ago.
Using thumbsticks on controllers
May 3rd, 2024
Difficulty: Challenging
(Rules)
In this challenge, do one of the following:
- Show a screenshot of code of how you would use thumbsticks to move the player.
- Show screentshots and code in the expressions of how to get the thumbstick angle and force.
I prefer if you did not use my examples, try to make this yourselves.