MrMitchell was pretty explicit. If you can create a function, you should understand what it means to put another call into one.
pseudo:
For $i = 1 To 10 ; loop 10 times to see if you get diff msgbox
; Action Below
_MyActionFunc()
If @error Then
; this means that my check func returned false
MsgBox(16 + 262144, "Error", "_CheckSomethingFirst() returned False")
EndIf
Next
Func _MyActionFunc()
; now I want to go to another func first
If _CheckSomethingFirst() = False Then
; Here I've created a condition to do something in case my checking function fails
; don't do anything else, just return
Return SetError(1, 0, 0)
EndIf
MsgBox(64, "Success", "See you made it here")
Return 1
EndFunc
Func _CheckSomethingFirst()
Local $a_arr[2] = [False, True]
Return $a_arr[Random(0, 1, 1)]
EndFunc