Phase • Animations made easy!

AIX: Google Drive

Now it says "Page Not Found."

The link works fine, when google drive "opens" the file click on download (in the red rectangle)

If this isn't working, check your browser settings

2 Likes

Working for me too

This extension is very good :star_struck:.

2 Likes

Love this extension! This greatly simplifies things. Really appreciate the hard work.

1 Like

Best wishes to all the participants of the MIT App Inventor Appathon 2021. Here's my consent to use Phase as a part of your apps for the competition:

I, Shreyash Saitwal, hereby give my consent to <your_name_or_email> to use my free extension, Phase, in their project for the MIT App Inventor Appathon For Good 2021.
Also, I allow the MIT App Inventor team to redistribute the extension [Phase] as a part of the competition.

7 Likes

What is Id ??2021-07-21 (1)

It is supposed to be a number.
Like 1, 2,3,........

If there are going to be simultaneous animations taking place, make sure to give them separate ids

1 Like

Suggestion @shreyash : additional directional FlipIn and FlipOut so that it is possible to create a turning/rotating effect. The current animations flip one way, then back the same way.

2 Likes

Salve a tutti,
nella mia app di consumo carburante, avevo incorporato un'estensione per effettuare animazione di nome: Phase; ma adesso quando la vado a provare con il Companion, mi compare questo errore: :pensiero:

java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/view/ViewCompat;

Saluti
Nicola

[translation]

Hi all,
in my app, fuel consumption, I had built an extension to make animation-name: Phase; but now, when I go to try it with the Companion, I get this error: :thinking:

java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/view/ViewCompat;

Greetings
Nicola

Use latest version

3 Likes

dora_paz grazie mille per il consiglio.
Saluti
Nicola

2 Likes

dora_paz ho seguito il tuo consiglio ed ho scaricato l'ultima versione di phase; ma mi succede una cosa strana. In pratica se la utilizzo in un button, mi funziona; ma se la inserisco all'interno di Initialize, non funziona :thinking:

1 Like

A post was merged into an existing topic: Help please about my facemesh program

:sparkles: Phase v3.0 :sparkles:


After almost 2 years, here we are again with a new version of Phase. This release was mostly motivated by the recent addition of helper blocks in AI2; I wanted to test if they worked in Rush and what would be better than to test them on my own extension. Along with the helper blocks, I managed to sneak in a handful of new things.

This release deprecates all the property-type animation technique blocks in favor of the new helper blocks. You should still be able to upgrade to this version without breaking any of your existing projects. Although not mandatory, it's recommended that you switch to new counterparts of the deprecated blocks.

Changelog :eyes:


  • Switched to helper blocks for animation techniques – The old property blocks are now deprecated.

    • tech-tada

    • tech-wave

  • Added AnimateComponent2 method – This is a simpler counterpart of the original AnimateComponent method but with fewer parameters. It is perfect when you want a quick way to animate something and don't need to listen to any events.

  • Deprecated the CancelAnimation, PauseAnimation, and ResumeAnimation methods – These were ambiguous and didn't really play well with the ID system.

  • Added Cancel and CancelAll methods – These can be used to cancel running animations. When you cancel an animation, the component associated with it is brought back to its original state (the state before the animation started). Both of these methods trigger the AnimationCancelled and AnimationEnds events. Has no effect on already canceled animations.

    • cancel

    • cancel-all

  • Added Pause and PauseAll methods – These can be used to pause running animations. Triggers the AnimationPaused event. Has no effect on already paused or cancelled animations.

    • pause

    • pause-all

  • Added Resume and ResumeAll methods – These can be used to resume previously paused animations. Triggers the AnimationResumes event. Has no effect on already running or canceled animations.

    • resume

    • resume-all

  • Added IsRunning and IsPaused methods – These can be used to determine the state of an animation.

    • is-running

    • is-paused

  • Fixed a bug that allowed the use of duplicate IDs – You'll now be greeted with an exception if you try to use a duplicate ID.

  • The ID system has been reworked internally. This along with the new blocks for canceling, pausing, and resuming animations should remove the need for having multiple instances of Phase when dealing with a lot of animations simultaneously.

  • Other internal changes.

Downloads :arrow_down:


Direct: io.shreyash.phase.aix (68.2 KB)
Google Drive: io.shreyash.phase.aix - Google Drive

Links in the first post have been updated as well.


So, that's it for this release. I thought the extension was technically done after the last release but I guess no software can ever be called done, there's always something to improve. :grin:

As always, feel free to provide suggestions and report bugs here. If you like my work and feel like supporting it, you can now do that here – https://ko-fi.com/shreyash

Cheers,
Shreyash

8 Likes

I see that I tested Rush 2 in terms of helper blocks. :grin:

1 Like

Awesome Extension! Thanks. :smiley:
Received these errors when testing all the techniques:

hingeerr
dropouterr
landingerr

Everything else worked as expected.

END

1 Like

:sparkles: Phase v3.1


Changelog :eyes:


  • Fixed the java.lang.Error: Cannot init easingMethod instance exception that would show up on some animation techniques. Thanks @ScottFromScott for reporting.

Downloads :arrow_down:


Direct: io.shreyash.phase.aix (81.1 KB)
Google Drive: io.shreyash.phase.aix - Google Drive

Cheers,
Shreyash

5 Likes

Thanks for the update.

If you can add the explosion effect as the 69th technique?

Hi, is there an update to your Phase extension by any chance?