Calling Functions from External Blueprints
You can also call a Function in a Blueprint from inside another Blueprint, as long as you have reference to the Blueprint that contains the Function you want to call.
Take for example below, we have a Function in our Character Blueprint (which is called MyCharacter) called Take Damage which reduces a variable called PlayerHealth by 10 whenever it is called.
Inside another Blueprint, which is a projectile that gets spawned when the player fires a weapon from the MyCharacter Blueprint, we have some script for what happens when the projectile hits something.
Click image for full size.
The script, which is the default MyProjectile Blueprint that is included with the Blueprint First Person Template Project, already does something when the projectile hits something that is simulating physics and adds impulse at the location it was hit. Say we wanted to check if we hit the player and if we did, to call the Take Damage Function.
We can do so by dragging off the Other pin of the Event Hit and Casting To our MyCharacter Blueprint.
Click image for full size.
Once we do that, we have a reference to our player character and can then drag off the As My Character pin and call the Function Take Damage that resides in that Blueprint.
Click image for full size.
We could then hook up the rest of the script to destroy the projectile after it hits the player as so:
Click image for full size.
And if we were to play in the editor, we would see something similar to below.