- Joined
- Nov 27, 2012
- Messages
- 687
Hello guys, Im wondering if my trigger below is MPI.
Now there's only 1 unit per player; so I just have to make sure it works for everyone, not every unit.
Basically, Im trying to create a warp system. You know, the ones you see in old games, where when you switch places, you can still see the character moving while the screen is fading out.
-
CRoom Port 6 TOP
-
Events
- Unit - A unit enters CloneRoomPort6TOP <gen>
-
Conditions
- CRoomWarping[(Player number of (Owner of (Triggering unit)))] Equal to False
-
Actions
- Set CRoomWarping[(Player number of (Owner of (Triggering unit)))] = True
- Set CRoomPoint[(Player number of (Owner of (Triggering unit)))] = (Center of CloneRoomPort1BTM <gen>)
- Set CRoomPoint2[(Player number of (Owner of (Triggering unit)))] = (Center of CRoom1EntBtm <gen>)
- Set CRoomPoint3[(Player number of (Owner of (Triggering unit)))] = (Position of (Triggering unit))
- Set CRoomPoint4[(Player number of (Owner of (Triggering unit)))] = (CRoomPoint3[(Player number of (Owner of (Triggering unit)))] offset by 600.00 towards 90.00 degrees)
- Unit - Make (Triggering unit) Invulnerable
- Unit - Turn collision for (Triggering unit) Off
- Unit - Order (Triggering unit) to Move To CRoomPoint4[(Player number of (Owner of (Triggering unit)))]
- Unit - Set (Triggering unit) movement speed to 300.00
- Set CRoomFilter = 0.00
- Custom script: if GetLocalPlayer() != GetOwningPlayer(GetTriggerUnit()) then
- Set CRoomFilter = 100.00
- Custom script: endif
- Cinematic - Fade out over 0.70 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with CRoomFilter% transparency
- Wait 1.00 seconds
- Unit - Set (Triggering unit) movement speed to (Default movement speed of (Triggering unit))
- Camera - Set the camera bounds for (Owner of (Triggering unit)) to CRoom1 <gen>
- Unit - Move (Triggering unit) instantly to CRoomPoint[(Player number of (Owner of (Triggering unit)))]
- Unit - Order (Triggering unit) to Move To CRoomPoint2[(Player number of (Owner of (Triggering unit)))]
- Camera - Pan camera for (Owner of (Triggering unit)) to CRoomPoint[(Player number of (Owner of (Triggering unit)))] over 0.00 seconds
- Set CRoomFilter = 0.00
- Custom script: if GetLocalPlayer() != GetOwningPlayer(GetTriggerUnit()) then
- Set CRoomFilter = 100.00
- Custom script: endif
- Cinematic - Fade in over 0.70 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with CRoomFilter% transparency
- Camera - Lock camera target for (Owner of (Triggering unit)) to (Triggering unit), offset by (0.00, 0.00) using Default rotation
- Wait 0.30 seconds
- Set CRoomWarping[(Player number of (Owner of (Triggering unit)))] = False
- Unit - Turn collision for (Triggering unit) On
- Unit - Make (Triggering unit) Vulnerable
- Selection - Select (Triggering unit) for (Owner of (Triggering unit))
- Custom script: call RemoveLocation(udg_CRoomPoint[GetConvertedPlayerId(GetOwningPlayer(GetTriggerUnit()))])
- Custom script: call RemoveLocation(udg_CRoomPoint2[GetConvertedPlayerId(GetOwningPlayer(GetTriggerUnit()))])
- Custom script: call RemoveLocation(udg_CRoomPoint3[GetConvertedPlayerId(GetOwningPlayer(GetTriggerUnit()))])
- Custom script: call RemoveLocation(udg_CRoomPoint4[GetConvertedPlayerId(GetOwningPlayer(GetTriggerUnit()))])
-
Events
Basically, Im trying to create a warp system. You know, the ones you see in old games, where when you switch places, you can still see the character moving while the screen is fading out.