Moderator
M
Moderator
General Frank:
Simple and very nice looking birth animation. I approve.
Simple and very nice looking birth animation. I approve.
(13 ratings)
Pyritie;495337 said:You could always just use some basic triggers. Make a dummy unit with this SFX, then when a player builds a building, change the building to 100% transparency, create this SFX unit, play its birth animation, then when the building is done being constructed, you change it to 0% transparency and remove the SFX unit.
Pyritie said:No no no. Okay. I'll give you an example.
You are making a TD, and you have three towers that need this frost undead birth model. One of them takes 20 seconds to build, one takes 30 seconds, and one takes 50 seconds. So then you do this:
SFX is a Special Effect variable and Building is a unit variable.
Keep in mind that if the building is destroyed or if it is canceled, the building will be destroyed and so will the effect (but only if you attach it to the building, NOT make it at where the building is), even if the 20/30/50 seconds are not finished yet.
- Events
- Unit - A unit starts construction
- Conditions
- Or - Multiple Functions
- (Unit type of (Constructing structure)) is equal to Tower (20secs)
- (Unit type of (Constructing structure)) is equal to Tower (30secs)
- (Unit type of (Constructing structure)) is equal to Tower (50secs)
- Actions
- Custom script: local effect udg_SFX
- Custom script: local unit udg_Building
- Set Building = (Constructing Structure)
- Animation - Set vertex shading of Building to 100.00, 100.00, 100.00, 0.00
- Special Effect - Create a special effect on the origin of Building using war3mapImported\UBirth.mdx [[or whatever the path of the birth model is]]
- Set SFX = (Last created special effect)
- If Then Else - Multiple Functions
- If - Conditions
- (Unit type of (Building)) is equal to Tower (20secs)
- Then - Actions
- Wait 20.00 seconds
- Else
- If Then Else - Multiple Functions
- If - Conditions
- (Unit type of (Building)) is equal to Tower (30secs)
- Then - Actions
- Wait 30.00 seconds
- Else
- If Then Else - Multiple Functions
- If - Conditions
- (Unit type of (Building)) is equal to Tower (50secs)
- Then - Actions
- Wait 50.00 seconds
- Else
- If Then Else - Multiple Functions
- If - Conditions
- (Building is alive) equal to True
- Then - Actions
- Special effect - Destroy SFX
- Animation - Set vertex shading of Building to 100.00, 100.00, 100.00, 100.00
- Else - Actions
Well you've certainly earned them dude.
ooohhh now that is sexy <3
I request that blizzard replaces the standart one with this one -.-
You could always just use some basic triggers. Make a dummy unit with this SFX, then when a player builds a building, change the building to 100% transparency, create this SFX unit, play its birth animation, then when the building is done being constructed, you change it to 0% transparency and remove the SFX unit.
function Trig_Untitled_Trigger_001_Actions takes nothing returns nothing
local effect lastone = null
call SetUnitVertexColorBJ( GetTriggerUnit(), 100, 100, 100, 100.00 )
call AddSpecialEffectTargetUnitBJ( "origin", GetTriggerUnit(), "war3mapImported\\UBirth.mdx" )
set lastone = GetLastCreatedEffectBJ()
call PolledWait( 10.00 )
call DestroyEffectBJ( lastone )
call SetUnitVertexColorBJ( GetTriggerUnit(), 100, 100, 100, 0.00 )
endfunction
Yeah, that's what I meanBut it seems that the buildings and their original birth animation won't disappear while the custom birth animation is playing. So I have two birth animations playing. I have the exact same triggers as you in your guide except for the; Animation - Set vertex shading of Building - trigger. All I could find was Change variable's (building in my case) vertex coloring to (100.00% 100.00% 100.00%) with 00.00% transparency. Thought it was close enough.
Not a picture. Copy it as text and put it inHow about I send you a picture of my trigger so you can go through it?
If you feel like you don't want to look at my trigger then how do I get the buildings and their animation to disappear while the custom birth animation is playing?