I do one better from Ali. This script will find the entity from the scene,
you can attach it to any entity or of course to the entity you want to
animate.
As Ali said
- Create EC_Script, open it up to edit the attributes.
- Run mode: Client
- Run on load: true
- script ref: local://startanimation.js
Save the following text as statanimation.js to the folder where your scene
is (or a subfolder there).
You can also give --console param to the client so its easy to see syntax
errors and all the prints. When the whole thing is running you can edit the
script file live. Every time you hit save Tundra will reload and run the
script!
*Note: I did not run the script, it might have typo and what not. The idea
is there. Also define your entity name and animation name to the variables
on top!*
var entityNameToFind = "VaibhavsAnimationEntity";
var animationNameToStart = "Walk";
funtion StartAnimation()
{
var objectToAnimate = scene.GetEntityByName(entityNameToFind);
if (objectToAnimate != null && objectToAnimate.animationcontroller !=
null)
{
// See usage from
http://realxtend.org/doxygen/class_e_c___animation_controller.html
console.LogInfo("Hey great, I found " + entityNameToFind +.
Starting animation);
var availableAnims =
objectToAnimate.animationcontroller.GetAvailableAnimations();
var animFound = false;
for(var i=0; i<availableAnims.length; i++)
{
if (availableAnims[i] == animationNameToStart)
{
animFound = true;
break;
}
}
if (animFound)
{
//
http://realxtend.org/doxygen/class_e_c___animation_controller.html#a91684343e20c92509c973327d820827b
objectToAnimate.animationcontroller.EnableAnimation(animationNameToStart,
true);
}
else
console.LogError("Entity was found but it has no animation
named " + animationNameToStart + ", cannot proceed!");
}
else
{
console.LogWarning("Entity " + entityNameToFind + " was not found
or animation controller component is not there! Trying again in 1 second.);
frame.DelayedExecute(1.0).Triggered.connect(StartAnimation);
}
}
// Only run on client. One time animation enabling.
if (!server.IsRunning() && !framework.IsHeadless())
{
StartAnimation();
}
Best regards,
Jonne Nauha
Adminotech developer
On Fri, Mar 23, 2012 at 3:50 PM, Ali Kämäräinen <[email protected]>wrote:
> Assuming you have an entity in the scene with Mesh, Placeable et al,
> 1) Create the script. For example:
> console.LogInfo("Hello, my name is " + me.name);
> 2) Save as Test.js to the folder you're scene is.
> 3) Add Script component to your entity, set "Run on load" true, set
> Test.js to the "Script ref"
> 4) Hit F1 to see the console, you should see the print there
> 5) Continue from there, see avatar scripts for example
>
> Grey skies,
> Ali Kämäräinen
>
> --
> http://groups.google.com/group/realxtend
> http://www.realxtend.org
>
--
http://groups.google.com/group/realxtend
http://www.realxtend.org