?velocity vehicle == [0,0,0]
This is wrong...
Should be
(velocity vehicle select 0) == 0 && (velocity vehicle select 1) == 0 && (velocity vehicle select 2) == 0
You can't check array as a whole, only element by element...
Also, if checking whether speed of the vehicle is 0 use
speed vehicleName == 0But when checking if the vehicle is immobilized it is very reasonable to use
!canMove vehiclename
That means that whenever that vehicleName becomes immobilized the trigger activates...