- Joined
- Mar 1, 2009
- Messages
- 303
I am trying to create an actual bunker system for wc3
I've run in to a problem and now know the specifics.
I've tried 2 methods both using dummy units
I've tried putting the dummy unit inside the bunker but wasn't sure if i could get the sizing right when i pulled him out still maybe also giving 'Aloc' to loading unit didn't seem to work properly just made it invincible didn't make it unselectable or remove pathing.
I've decided that putting the dummy on the out side works best because I'm giving it 'Aloc' the locust ability to get to the center of the bunker and it works properly with LastCreatedUnit.
but i have a problem how do I select this Dummy unit(with Locust) upon unload? to remove the Dummy unit...
any one have an idea?
This is the Load Trigger:
I've run in to a problem and now know the specifics.
I've tried 2 methods both using dummy units
I've tried putting the dummy unit inside the bunker but wasn't sure if i could get the sizing right when i pulled him out still maybe also giving 'Aloc' to loading unit didn't seem to work properly just made it invincible didn't make it unselectable or remove pathing.
- Custom script: call UnitAddAbility( GetLoadedUnit(), 'Aloc' )
I've decided that putting the dummy on the out side works best because I'm giving it 'Aloc' the locust ability to get to the center of the bunker and it works properly with LastCreatedUnit.
- Custom script: call UnitAddAbilityBJ( 'Aloc', GetLastCreatedUnit() )
but i have a problem how do I select this Dummy unit(with Locust) upon unload? to remove the Dummy unit...
any one have an idea?
This is the Load Trigger:
-
Bunker Load
-
Events
- Unit - A unit Is loaded into a transport
-
Conditions
-
And - All (Conditions) are true
-
Conditions
- (Unit-type of (Transporting unit)) Equal to Bunker (dark iorn)
- ((Loading unit) is A ranged attacker) Equal to True
-
Conditions
-
And - All (Conditions) are true
-
Actions
- Set VariableSet TempPoint = (Position of (Transporting unit))
- Unit - Create 1 (Unit-type of (Loading unit)) for (Owner of (Loading unit)) at TempPoint facing Default building facing degrees
- Unit Group - Add (Last created unit) to BunkersUnitGroup
- Unit - Set Unit: (Last created unit)'s Real Field: Scaling Value ('usca') to Value: 0.10
- Unit - Set Unit: (Last created unit)'s Real Field: Speed ('umvc') to Value: 0.00
- Animation - Change (Last created unit)'s size to (1.00%, 1.00%, 1.00%) of its original size
- Custom script: call UnitAddAbilityBJ( 'Aloc', GetLastCreatedUnit() )
- Unit - Move (Last created unit) instantly to TempPoint
- Custom script: call UnitRemoveAbility(GetLastCreatedUnit(), 'Amov')
- Custom script: call RemoveLocation (udg_TempPoint)
-
Events
-
Bunker Unload
-
Events
- Unit - A unit Is issued an order targeting an object
-
Conditions
-
And - All (Conditions) are true
-
Conditions
- (Issued order) Equal to (Order(unload))
- (Unit-type of (Ordered unit)) Equal to Bunker (dark iorn)
- ((Target unit of issued order) is A ranged attacker) Equal to True
-
Conditions
-
And - All (Conditions) are true
-
Actions
- Set VariableSet TempPoint2 = (Position of (Ordered unit))
-
Unit Group - Pick every unit in (Random 1 units from (Units within 100.00 of TempPoint2 matching (((Level of MM Bunker Dummy Ability (All Dummy units) for (Matching unit)) Equal to 1) and ((Unit-type of (Matching unit)) Equal to (Unit-type of (Target unit of issued order)))).)) and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ((Target unit of issued order) is A Hero) Equal to True
-
Then - Actions
- Unit - Remove (Picked unit) from the game
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
- Custom script: call RemoveLocation (udg_TempPoint2)
-
Events
Last edited: