I know this sounds impossible but I know how it might work.
The output has 2 fields, the event being replaced, and the events replacing it.
How it works is I would activate a brick that targets another brick. The brick would replace the other brick's event, for example, event 5, with the event on the activated brick, event 2.
Brick1 Input
0 [x]OnActivate >> Brick2>>SetEvent>>[0 1][1 2]Targets events 0 and 1 on Brick2 and replaces them with events 1 and 2 on Brick1
1 [ ]OnActive>>Self>>SetColor>>Red
2 [ ]OnActive>>Self>>PlaySound>>Beep
Targets events 0 and 1 on Brick2 and replaces them with events 1 and 2 on Brick1
Brick2 Output
0 [x]OnActive>>Self>>SetColor>>Red
1 [x]OnActive>>Self>>PlaySound>>Beep
Basically it just replaces the specified events on the target with the specified events on the first brick.