Well, I looked over that medic script and Kamma's scripting madness skills are showing again. Now, I know there's some script gods out there who can work scripting miracles, and I happen to have something that might just help out.
Awhile back I was searching for an ambulance type script that would detect a dead guy, go out to him, load him in the ambulance, and head back to the hospital and drop him off in perfect condition.
Well, I still have that script but the guy who made it for me made an error somewhere and it doesn't work fully. However, the part where it detects the dead guy and goes out to him work like a charm.
What if the medic AI's (Or a player) had the ability to detect a wounded guy after he yells "MEDIC!" and run out to him? Once the medic's distance is less than 2 (Or something suitable), the medic begins playing the heal animation and applies treatment to the guy...Then, in Kamma's script, the wounded guy is healed up and is allowed to move around and shoot again. But what if we gave him a small penatly? INstead of setting his HP back to 0, what about .2? The wounded guys chances to survive are reduced...Sound like a good trade-off?
Or, if the wounded soldier's wounds are above the damage level .9 or .8(something severe) the medic could "sustain" him until a medevac ambulance arrives. To sustain him would to put him at maybe a damage level of .4, and keep him in the 'wounded' animation (like in Kamma's demo mission/script) until a ambulance arrives at the medics location, loads the soldier up, and drives him off.
That would be a pretty good application for an AI medic, and it just might work for the player too. Except using waypoints to show him where his patient is.
I think that making a medic-scenario might be possible, if someone developes that custom menu that allows you to select what proceedure you'd like to use...You could even have fun with it: Amputate the arm of a guy who has a cold. Or even make a series out of it: Go through medical school and end up Cheif Sergeon General.
--RunAwayScientist
------------------------------------------------------------------------------
------------------------------------------------------------------------------
Ambulance.sqs:
_AmbulancePos = getPos Ambulance11
people = []
"if ({man} countType [_x] == 1) then {people = people + [_x]}" forEach _this
_nCount = count people
#MAIN
@ ("alive _x" count people) != _nCount
_i = 0
#FIND_DEAD
_u = people select _i
_i = _i + 1
? alive _u : goto "FIND_DEAD"
#Ambulance
Ambulance assignAsDriver Ambulance11
[Ambulance] orderGetin true
Ambulance move getPos _u
@ Ambulance distance _u < 15
Ambulance domove getPos Ambulance
[Ambulance] orderGetin false
unassignVehicle Ambulance
Ambulance domove getPos _u
@ unitReady Ambulance
~1
_u setDammage 0
~1
Ambulance assignAsDriver Ambulance11
[Ambulance] orderGetin true
Ambulance domove _AmbulancePos
@ unitReady Ambulance
[Ambulance] orderGetin false
unassignVehicle Ambulance
? (AliveP2 == 1) : [P2] Join Player1; AliveP2 = 0
? (AliveP22 == 1) : [P22] Join Player2; AliveP22 = 0
_u setpos getpos EMGOUT
_u setdir 90
_u switchmove "LyingToTreatedLying";
goto "MAIN"
exit