After I made a post about Touhou, I got to thinking about cloning (Because trying to do this without cloning during play is damn near impossible.)
We can
already clone thanks to some of arty's handy-dandy scripting, but as you might know it runs into problems.
Namely that if you press play multiple times, it clones 1 + number of times play has been pressed, where the number of times starts at 0 upon the first click. Another important one is that you can't really delete the cloned objects.
These two problems aren't really a big deal. The idea extends here:
Make a method tile, same as the Do In Order or the Do Together, but as example psuedocode, something like this
Code:
Loop [5] times{
//Assume the cloned object has the exact same position and orientation
Clone of [Object] do In Order{
//This tile creates the clone.
insert [Clone of Object] at end of CollisionList
[Object] move forward .5 meters abruptly
delete [Clone of Object] [withoutspin]
}
}
Yeah. An option to include spin or not. Outrageous right?
Of course we
could just make the clones not show up and remove them from all lists and arrays.. But
that would cause memory leaks, and Alice already takes up a lot of memory as it is.
Another extension to this tile would be to give it special properties, such as when dragging [Clone of Object] from the tile, there will be a dropdown list of every subobject in the object's hierarchy, plus "The Whole [Object]" just as if you were dropping a regular object. Essentially what I'm saying is to extend the cloned object's capabilities to be the exact same as the original object without use of scripting or "Object's variable named key" or any such roundabout method like that.