I feel like this would have an easy solution but I can't seem to find it. I want to create a one-shot visual effect at a point, similar to how the effects could be called in Warcraft 3, where if you create a Holy Light effect and destroy it, it'll appear, go through its full animation, and disappear.
More specifically, I'm looking to use the impact visuals of photon cannons and impact visuals of Yamato cannons (for now at least). I tried calling their respective impact actors but nothing seemed to happen.
Doesn't this work with "Attach Model to Unit" as long as you use OneShotSpellFX models? And if you want to place it at a point i suggest using a transparent dummy unit to place the effect on.
Well, there are natives for creating actors and models. I tried it already and it didn't work. Ideally, I would prefer to work with models than actors, but right now, I just want a way for it to work at all.
Have you tried using a "Send Actor Message" with "Animation Play" after the creation of the Actor? This allows you to play a certain animation of the Actor. It seems like that sometimes you need to force them to play the desired animation.
If you are unsure how their animation is called, look it up in the Cutscene Editor.
Well, there are natives for creating actors and models. I tried it already and it didn't work. Ideally, I would prefer to work with models than actors, but right now, I just want a way for it to work at all.
The natives work perfectly fine. The model action creates an actor internally anyway (and returns that actor, so if you want to modify it afterwards, you will need to deal with actors regardless).
Would you mind posting your trigger?
I designed it similar to how I would've done it in WC3. I tested it without the destroy function and the UnitRemove function, but it still won't work. I changed the model to Feedback impact though.
If you destroy the actor immediately, it is gone. Destroying an actor will instantly remove any visuals.
However, the basic actors usually play an animation bracket called BSD ( for Birth Stand Death, meaning they open up with the birth animation, then play the stand animation and play the death animation to finish. If only one of them exists, only that one will be played. Since most models have at least one of these animations, they usually play at least one animation, however there are exceptions). Also, they destroy themselves, after the death animation finishes.
Depending on the model, you don't even need to close the animation bracket. Many spell effect models (including the Feedback Impact) will play the animation once and then self-destruct automatically.
As I said, try it without closing the animation bracket. The closing is mainly for all models with a permanent animation (like unit models etc) or if you need the death animation of models. Most spell effects (including the feedback animations, I believe) use the birth animation, thus don't need specific closing of the bracket. If you close it, the birth animation will be cancelled, and the (most likely non-existant) death animation will be played, resulting in no visuals.
Don't worry about actor leaks, the default actors used by these actions always destroy themselves. If you still want to, you can destroy them after a wait.
I feel like this would have an easy solution but I can't seem to find it. I want to create a one-shot visual effect at a point, similar to how the effects could be called in Warcraft 3, where if you create a Holy Light effect and destroy it, it'll appear, go through its full animation, and disappear.
More specifically, I'm looking to use the impact visuals of photon cannons and impact visuals of Yamato cannons (for now at least). I tried calling their respective impact actors but nothing seemed to happen.
Doesn't this work with "Attach Model to Unit" as long as you use OneShotSpellFX models? And if you want to place it at a point i suggest using a transparent dummy unit to place the effect on.
Well, there are natives for creating actors and models. I tried it already and it didn't work. Ideally, I would prefer to work with models than actors, but right now, I just want a way for it to work at all.
@DieHappy1234: Go
Have you tried using a "Send Actor Message" with "Animation Play" after the creation of the Actor? This allows you to play a certain animation of the Actor. It seems like that sometimes you need to force them to play the desired animation.
If you are unsure how their animation is called, look it up in the Cutscene Editor.
The natives work perfectly fine. The model action creates an actor internally anyway (and returns that actor, so if you want to modify it afterwards, you will need to deal with actors regardless).
Would you mind posting your trigger?
This is the only relevant part of the trigger regarding the issue.
I designed it similar to how I would've done it in WC3. I tested it without the destroy function and the UnitRemove function, but it still won't work. I changed the model to Feedback impact though.
If you destroy the actor immediately, it is gone. Destroying an actor will instantly remove any visuals.
However, the basic actors usually play an animation bracket called BSD ( for Birth Stand Death, meaning they open up with the birth animation, then play the stand animation and play the death animation to finish. If only one of them exists, only that one will be played. Since most models have at least one of these animations, they usually play at least one animation, however there are exceptions). Also, they destroy themselves, after the death animation finishes.
So I suggest following change to your code:
Depending on the model, you don't even need to close the animation bracket. Many spell effect models (including the Feedback Impact) will play the animation once and then self-destruct automatically.
Nope. Still nothing. I copied and pasted the code exactly as you gave me, too.
As I said, try it without closing the animation bracket. The closing is mainly for all models with a permanent animation (like unit models etc) or if you need the death animation of models. Most spell effects (including the feedback animations, I believe) use the birth animation, thus don't need specific closing of the bracket. If you close it, the birth animation will be cancelled, and the (most likely non-existant) death animation will be played, resulting in no visuals.
Don't worry about actor leaks, the default actors used by these actions always destroy themselves. If you still want to, you can destroy them after a wait.
Ah, I see. The string should've just been "BSD" instead of the "AnimBracketStop BSD". Thanks, Kueken. It works perfectly now. :D
No, I mean delete the entire ActorSend action. "BSD" is not a valid actor message, so it does exactly nothing. You may as well delete the line.
Oh, I guess that explains why it worked then. Will delete it then.