Hi there,Playing on a lot of race maps of different kinds (race, sliderace, xc, mg maps,
etc...), I noticed that a lot of them were just "missing" a reward for the first player reaching the goal.I often thought the other players would be teleported to the winner and a fight would start, like in some mg maps... but in many cases, nothing: not a weapon, not a vehicule, nada.I think it's a pity because a lot of these old maps are great and would deserve to be played on more servers.So I had the idea to create a plugin which would:- allow admins to draw defined zones in any map- allow them to reward a player who reaches the zone- allow them to execute a file as soon as a zone is reached (to allow many more outputs than just a normal reward.)I took the code of Peace-Maker's Anti Rush plugin to create and manage zones, and Andi67's sm_skinchooser plugin sourcecode for the skin reward stuff.Big thanks to them for making their respective plugins (and allowing me to use them).
Installation:Drop sm_zones_cmds.smx in your addons/sourcemod/plugins folder.Drop sm_zones_cmds.sp in your addons/sourcemod/scripting folder.Drop sm_zones_cmds.phrases.txt in your addons/sourcemod/translations folder.Drop zones_commands.cfg and zones_newround.cfg in your cfg/sourcemod folder.Drop sm_zones_cmds folder in your addons/sourcemod/configs folder.Drop the 3 ini files in your addons/sourcemod/configs folder.Fill sm_zones_cmds_skin_t.ini with a valid model name that will be used if the winner is a Terro. Fill sm_zones_cmds_skin_ct.ini with a valid CT model.List all files regarding skins in sm_zones_cmds_skins_downloads.ini.
I attached ini files as an example so you can see how they should look like.It works the same way as sm_skinchooser plugin.I'll attach the example model pack later on for those who need it.cvars / command: Code: sm_zones_cmds_enabled - Enable/Disable zones detections.sm_zones_cmds_postaction - How should the plugin behave when a player reaches a zone. 1: Announce in chat, 2: Announce, reward, execute config file, 3: Slay.sm_zones_cmds_fencecolor - Which color should the fences have? RGBA: red green blue alpha.sm_zones_cmds_showzones - Show created zones?sm_zones_cmds_newround - Enable/Disable config file executed at roundstart, regardless of sm_zones_cmds_enabled (can be useful as a stand alone function).sm_zones_cmds_fragreward - Enable/Disable frag reward.sm_zones_cmds_cash - Enable/Disable cash reward ($16000).sm_zones_cmds_skin_enabled - Enable/Disable skin reward.sm_zones_cmds_skin_timer - Enable/Disable timer before a skin is applied at spawn (to override other plugins).sm_zones_cmds_config_file - File to be executed when a zone is reached, located in cfg/sourcemod folder (default: zones_commands.cfg).sm_zones_cmds_newround_file - File to be executed at roundstart, located in cfg/sourcemod folder (default: zones_newround.cfg).
Admin command: sm_zones_cmds_menu: Opens the zones edit menu.
Additional Information:This plugin requires SDK Hooks:
http://forums.allied...ad.php?t=106748.For this reason, you can't compile it with the web compiler. Please download the provided smx file.
Why did I add a config file to be launched when a zone is reached? (and another one at roundstart)?-> I use this plugin on sliderace maps where I
enable auto respawn. Thus, I
set mp_ignore_round_win_conditions to 1 at roundstart.When a player finishes the map, he gets cash (to buy powerful weapons next round), 50 points (the map should give that!) and is also rewarded with a server side skin.
At that point, I deactivate the respawn, and (very important)
set mp_ignore_round_win_conditions back to 0 to allow the round to end (and the map to finish if timelimit is reached).Otherwise, the round would never end and other players would hardly know there is a winner
Plus, some traps would certainly need to be restarted.For all this, config files are very useful.I also launch a sound when the zone is reached using sm_play @all
in the zones_commands.cfg file.There are a lot of commands that you can play with using cfg files.Please note that this plugin can be used/edited freely and I even encourage you to do so to fit your needs. There are a lot of stuff that could be added like making vehicules spawn or changing players glow/color/alpha or many other things.For now, when a player reaches a zone, the zone output is disabled (like there can be only one winner for a zone, it was meant to be used on race maps...) but it could easily be modified if needed.All comments are, as usual, welcome.St00ne


Attached Files
Get Plugin or Get Source (sm_zones_cmds.sp - 66.5 KB)
sm_zones_cmds.smx (28.9 KB)
sm_zones_cmds.phrases.txt (4.8 KB)
zones_commands.cfg (123 Bytes)
zones_newround.cfg (82 Bytes)
sm_zones_cmds_skins_downloads.ini (1.8 KB)
sm_zones_cmds_skin_t.ini (51 Bytes)
sm_zones_cmds_skin_ct.ini (39 Bytes)
Wyświetl pełny artykuł