Sprzedajemy Broń
ChaoS
07.06.2008
Opis
Możemy sprzedać naszą bron za wyznaczoną przez admina cene.
Instalacja
Plik .amxx do cstrike>addons>amxmodx>plugins
Plik .sma do cstrike>addons>amxmodx>scripting
Wchodzimy w cstrike>addons>amxmodx>configs>plugins.ini i dopisujemy sell_weapons.amxx
Wchodzimy w cstrike>addons>amxmodx>configs>amxx.cfg i dopisujemy Cvary
Cvary
SW_enabled "1" //Włączony | Wyłączony Plugin 1 | 0
SW_buyzone "0" //Gracze muszą być w buy zone , aby sprzedać broń 1=Włączone 2=wyłączone
SW_annonce "120" //Czas w jakim wyświetli sie wiadomość o komendzie
SW_divide "2" //Ilość pieniędzy za sprzedaną broń 1=Cała Kasa 2=Pół kasy 3= 1/3 Kasy
Komendy
/sell - Sprzedaje Broń
Możemy sprzedać naszą bron za wyznaczoną przez admina cene.
Instalacja
Plik .amxx do cstrike>addons>amxmodx>plugins
Plik .sma do cstrike>addons>amxmodx>scripting
Wchodzimy w cstrike>addons>amxmodx>configs>plugins.ini i dopisujemy sell_weapons.amxx
Wchodzimy w cstrike>addons>amxmodx>configs>amxx.cfg i dopisujemy Cvary
Cvary
SW_enabled "1" //Włączony | Wyłączony Plugin 1 | 0
SW_buyzone "0" //Gracze muszą być w buy zone , aby sprzedać broń 1=Włączone 2=wyłączone
SW_annonce "120" //Czas w jakim wyświetli sie wiadomość o komendzie
SW_divide "2" //Ilość pieniędzy za sprzedaną broń 1=Cała Kasa 2=Pół kasy 3= 1/3 Kasy
Komendy
/sell - Sprzedaje Broń
Załączone pliki
Spokojny 10.01.2014
/* Sell Weapons By Deviance - www.the-place.co.nr .:about:. Ever wanted to sell that Deagle you never use? Tired of never having cash when you need it? Well, then Sell Weapons is something for you When you sell a weapon, you get back the cost of the weapon divided with SW_divide. At the moment you can only sell primary and secondary weapons, nade support will be added. .:Cvars:. SW_enabled (D: 1) - Enables/Disables the plugin SW_buyzone (D: 0) - If nonzero, the players need to be in a buyzone to sell weapons SW_annonce (D: 120) - Time before it prints an annonce message, set to 0 to disable SW_divide (D: 2) - Do not set to 0. Sets how much of the money you'll get when you sell a weapon (1 for the whole sum, 2 for half the money, 3 for third of the money ect ect) .:Commands:. Say /sprzedaj - Sells the weapon your currently holding. .:Screenshots:. http://www.youtube.com/watch?v=hRtLxXQSsD8 (Low Quality) http://img250.imageshack.us/my.php?image=sell1fz4.png .:To-Do:. * Menu support [0% Done] * Nade support [0% Done] * Extra cash for ammo [0% Done] .:F.A.Q:. T.B.W .:Version List:. Quote: * 1.0 - Original Version. * 1.1 - Added SW_annonce and comments in code * 1.2 - Added SW_divide * 1.3 - Added so dead people can't sprzedaj weapons * 1.4 - Changed the way of removing weapons (Thanks VEN) .:Credits:. Bo0m! - Original idea and code suggestions. VEN - Weapon removing code. */ #include <amxmodx> #include <amxmisc> #include <fakemeta> #include <cstrike> #define Plugin "sprzedaj Weapons" #define Version "1.4" #define Author "Doombringer" #define MAX_WEAPONS 33 new const g_prices[MAX_WEAPONS][] = { "0", "600", "0", "2750", "0", "3000", "0", "1400", "3500", "0", "800", "750", "1700", "4200", "2000", "2250", "500", "400", "4750", "1500", "5750", "1700", "3100", "1250", "5000", "0", "650", "3500", "2500", "0", "2350", "0", "0" } new cvar, buyzone, annonce, divide //Pcvar stuff, makes life easier public plugin_init() // Plugin_init(): Does all the "one-time" stuff. Called after plugin_precache(). { register_plugin(Plugin, Version, Author) //Register's the plugin so it can be seen in amx_help register_clcmd("say /sprzedaj", "cmd_sprzedaj") //Registers the command itself. So if someone say /sprzedaj the function will be executed register_clcmd("say_team /sprzedaj", "cmd_sprzedaj") //Save as above but for team chat cvar = register_cvar("SW_enabled", "1") //Registers the cvar SW_enabled, Default 1 (If nothing else is in server.cfg or any other .cfg file) buyzone = register_cvar("SW_buyzone", "0") //Registers the cvar SW_buyzone, Default 0 (If nothing else is in server.cfg or any other .cfg file) annonce = register_cvar("SW_annonce", "120") //Registers the cvar SW_annonce, Default 120 (If nothing else is in server.cfg or any other .cfg file) divide = register_cvar("SW_divide", "2") //Registers the cvar SW_divide, Default 2 (If nothing else is in server.cfg or any other .cfg file) if(get_pcvar_num(annonce) > 1) //If the pcvar annonce is higher then 1 set_task(get_pcvar_float(annonce), "print_annonce",_,_,_,"b") //Set a task to run the annonce function every get_pcvar_float(annonce) time } stock fm_find_ent_by_owner(index, const classname[], owner, jghgtype = 0) { // http://forums.alliedmods.net/showthread.php?t=28284 new strtype[11] = "classname", ent = index switch (jghgtype) { case 1: copy(strtype, 6, "target") case 2: copy(strtype, 10, "targetname") } while ((ent = engfunc(EngFunc_FindEntityByString, ent, strtype, classname)) && pev(ent, pev_owner) != owner) {} return ent } stock bool:fm_strip_user_gun(index, wid = 0, const wname[] = "") { // http://forums.alliedmods.net/showthread.php?t=28284 new ent_class[32] if (!wid && wname[0]) copy(ent_class, 31, wname) else { new weapon = wid, clip, ammo if (!weapon && !(weapon = get_user_weapon(index, clip, ammo))) return false get_weaponname(weapon, ent_class, 31) } new ent_weap = fm_find_ent_by_owner(-1, ent_class, index) if (!ent_weap) return false engclient_cmd(index, "drop", ent_class) new ent_box = pev(ent_weap, pev_owner) if (!ent_box || ent_box == index) return false dllfunc(DLLFunc_Think, ent_box) return true } public cmd_sprzedaj(id) //The whole main function { if(get_pcvar_num(cvar) < 1) //If the pcvar cvar is lower then one return PLUGIN_CONTINUE //Continue... if(get_pcvar_num(buyzone) == 1 && cs_get_user_buyzone(id) == 0) //If pcvar buyzone is equal to one and user is not in a buyzone { client_print(id, print_chat, "| Cs-Fresh.xaa.pl | Musisz byc w strefie kupna ,aby sprzedac bron ! |") //Prints a angry little message :) return PLUGIN_HANDLED //And ends the function } if(!is_user_alive(id)) //Isn't he alive?! { client_print(id, print_chat, "| Cs-Fresh.xaa.pl | Aby sprzedac bron musisz byc zywy! |") //Prints a angry little message :) return PLUGIN_HANDLED //And ends the function } new temp, weapon = get_user_weapon(id, temp, temp) //Fills weapon with the current hold weapon (temp is a so called dummy) new price = str_to_num(g_prices[weapon]) //Gets the price for the current weapon if(price == 0) //If it's equal to zero { client_print(id, print_chat, "| Cs-Fresh.xaa.pl | Nie mozesz tego sprzedac! |") //Prints a angry little message :) return PLUGIN_HANDLED //And ends the function } new weaponname[32] //Makes an array called weaponname, with a maximum of 32 - 1 chars get_weaponname(weapon, weaponname, 31) //Gets the weapon name new oldmoney = cs_get_user_money(id) //Gets the players money new cash = clamp(oldmoney + (price / get_pcvar_num(divide)), 0, 16000) //clamps the total amount of cash, so it doesn't extend the 16000 limit fm_strip_user_gun(id, weapon) //Calls the fm_strip_user_gun() stock cs_set_user_money(id, cash) //Sets the money from cash client_print(id, print_chat, "| Cs-Fresh.xaa.pl | Dostales %dzl za sprzedaz %s |", cs_get_user_money(id) - oldmoney, weaponname[7]) //Prints some info about what you got return PLUGIN_HANDLED //Done } //EOF
Powyżej macie kod sma ,który należy skompilować .Plugin przerobiłem tak aby działałał na komende /sprzedaj.Wziąłem go z własne serwera.