Be Medic
v. 1.4.2
Features :
This plugin allows people of both team to buy (or randomly get) medic training (<sm_bemedic | say !bemedic | say_team !bemedic> ). People
with medic training can heal people. To do so, they need to be
near the wounded target, with their
knife in hand and
hold the use ('e') key. A progressbar (defusebar) will be show showing when the target will be healed.
A specific model (or an over-head icon if you don't want to make your user download the model; be sure to check the config created by the plugin) is given to the medics and a little animation can be seen when there is healing going on. Note that
if you disable models in the .cfg file, they won't be precached/downloaded. That may be wanted if you want to avoid players downloading models.
Players willing to call a medic can bind a key to "sm_medic" or "<say | say_team> !medic". A radio-shout will be used ('!' + glow on radar + radio message), unless disabled (can be replaced with an ambient shout).
Known bugs :
CVars :
- bemedicversion: Gives version -_-'
- ----------
- bemedic : Maximum medics per team. 0 = disable plugin. Def. 2.
- bemedic_random : Are the medic training given to random players ? 1=Yes, 0=No. Def. 0. New since 1.4.0.
- bemedic_announce : Announce at the beginning of every X rounds that people can be medic. (If bemedic_random = 1, then announces who are the medics) 0 = No, 1+ = Yes. Def. 2.
- bemedic_range : The maximum distance for a medic to heal someone. Def. 100.0.
- bemedic_time : How many seconds it takes for a medic to heal someone. Integer. Def. 2.
- bemedic_maxHealth : Maximum life of someone (for custom plugins/mods). Def. 100.
- bemedic_heal : How much direct healing a medic does. Def. 10.
- bemedic_icon : Show over head icon red cross ? 0 = No, 1 = Yes (Default).
- bemedic_model : Give medics specific models ? 0 = No, 1 = Yes (Default).
- bemedic_team : Resrict a certain team from becoming medic? 0 = No, 1 = Yes (restrict T), 2 = Yes (restrict CT). Def. 0.
- bemedic_target : Medics can only target their teamates? 0 = No, 1 = Yes (Default).
- ----------
- bemedic_buycost : How much it costs to become medic. Def. 1000.
- bemedic_buytime : Restrict medic training purchase with buytime. 0 = No, 1 = Yes (Default).
- bemedic_buyzone : Restrict medic training purchase to buyzones. 0 = No, 1 = Yes (Default).
- ----------
- bemedic_overtimeheal_amount : How much a heal does per wave. Def. 4.
- bemedic_overtimeheal_delay : How much time it takes between two healing wave. 0.0 = Disable overtime heal. Def. 2.0.
- bemedic_overtimeheal_number : How many waves will it takes before wearing off. 0 = Disable overtime heal. Def. 10.
- bemedic_overtimeheal_interrupt : Does damage breaks overtime healing ? 0 = No, 1 = Yes (Default).
- bemedic_overtimeheal_animation : Show healing animation ? 0 = No, 1 = Yes (Default).
- ----------
- bemedic_callmedic_radio : Handle medic shout like a radio command ? 0 = No, 1 = Yes (Default).
- bemedic_callmedic_sound : How will the sound be played ? 0 = No sound, 1 = Radio sound, 2 = Ambient sound. Def. 1.
- bemedic_callmedic_cooldown : Minimum time required between two calls for a medic. Def. 1.0.
- bemedic_callmedic_volume : How strong will the sound be played. Min = 0.0, max = 1.0 (Default).
How to install :
Extract "bemedic_ressources" at your cstrike folder...
- "redcross.vmt" and "redcross.vtf" should be in "materials\custom".
- "medic.wav" should be in "sound\misc".
- 6 different files with the prefix "ct_urban" in "models/player/smithy/ct_medic_v2".
- 2 different files with the prefix "ct_urban" in "materials/models/player/smithy/ct_medic_v2".
- 6 different files with the prefix "slow" in "models/player/slow/hl2/medic_male".
- 6 different files with the prefix (2)"eric_facemap", (2)"eyeball_l" and (2)"eyeball_r" in "materials/models/player/slow/hl2/medic_male".
Also download the plugin and its translation file ;) :
- "bemedic.smx" should be in in "plugins" folder.
- "bemedic.phrases.txt" should be in "translations" folder.
--------------
Any
suggestions/comments on the code or the plugin are
welcomed and
appreciated.
Credits to :
- Nut / toazron1 - For his [TF2] Donator Recognition plugin from where I took the show-overhead-sprite code.
- exvel for his questions (which he himself answered in the scripting section of SM)
- Twisted|Panda for his buyzone / buytime restriction examples
- psychonic for his buttons press/release code thread
- swixel and psychonic (again) for irc help
- Fredd for his "Radio Help Icon" plugin for the overhead radio icon
- javalia for his(her ?) stock functions (stocklib.inc) for how to reproduce a radio command
- tuty for his sound
- lokizito and away000 for brazilian-portuguese translation
- Leonardo for his russian translation
- Wuestenfuchs, BrianGriffin and Billy1987 for german translation
- smithy for his awesome models search. He tooks some models (including the used one below) and recompiled them server-side for my plugin. He's also the one who suggested models to be implemented.
- S-LoW for terrorist medic model conversion and his support (
http://s-low.info moved http://s-low.net/forum/viewtopic.php?t=103).
- d0nn for CT medic model (http://www.gamebanana.com/skins/26846)
- Translators of current .phrases file :
Changelog :
Todo list/my requests :
- Add a channel-beginning sound so we know someone's going to be healed (a link to a bandage-wrapping kind-a sound would be greatly appreciate ).
- A better terrorist medic would also be nice. I'm not a huge fan of terrorists that we can see the whole head's skin.
- Test http://forums.alliedmods.net/showthread.php?t=206651 for alternative sprite parenting.
- Ensure that file exist before using animation/icons; same w/ model I guess,
- Try to do it as with the sandvich in TF2 (drop a medkit).
- Tell who was randomly chosen to be medic when that's the case.
- Show when we're a medic on the HUD.
- HL2DM ?