|
发表于 2007-10-16 07:19:02
|
显示全部楼层
|阅读模式
来自 中国–广东–广州–白云区
3plugin_bonus1.sma
-------------------------------------------------------------------------------------------------------
/*
* AMXMOD script.
* (plugin_bonus1.sma)
* by DreamZSW <DreamZSW@hotmail.com>
* This file is provided as is (no warranties).
*
*/
#include <amxmod>
#define MAX_NAME_LENGTH 32
#define MAX_TEXT_LENGTH 512
#define ACCESS_LEVEL ADMIN_LEVEL_A
// Default on/off
new gBonusMode = 1
new gBonusCount = 0
new gBonusIndex[32] = { 50000,49000,30000,28000,5000,4001,3002,2008,1000,900,800,700,600.500,400,300,200,100,90,80,70,60,50,40,30,20,10,6,5,4,3,2, }
public admin_bonuskill(id)
{
// Check access level
if (!(get_user_flags(id)&ACCESS_LEVEL)) {
console_print(id,"[AMX] You have no access to that command")
return PLUGIN_HANDLED
}
// Check arguments
if (read_argc() < 2) {
console_print(id,"[AMX] Usage: amx_bonuskill < 1 | 0 >")
return PLUGIN_HANDLED
}
new sArg1[MAX_NAME_LENGTH]
read_argv(1,sArg1,MAX_NAME_LENGTH)
if (str_to_num(sArg1)) {
gBonusMode = 1
client_print(id,print_console,"[AMX] Bonus money for kills is now ON.")
}
else {
gBonusMode = 0
client_print(id,print_console,"[AMX] Bonus money for kills is now OFF.")
}
return PLUGIN_HANDLED
}
public event_death()
{
if (gBonusMode) {
new iKiller = read_data(1)
new iVictim = read_data(2)
new sMsg[MAX_TEXT_LENGTH]
new sName[MAX_NAME_LENGTH]
get_user_name(iKiller,sName,MAX_NAME_LENGTH)
if ((iKiller != iVictim) && (gBonusCount < sizeof gBonusIndex) && (get_user_team(iKiller) != get_user_team(iVictim))) {
gBonusCount++
set_user_money(iKiller,get_user_money(iKiller)+gBonusIndex[gBonusCount-1])
if (gBonusCount == 1) {
format(sMsg,MAX_TEXT_LENGTH,"%s first blood^n================^nget money +$%i",sName,gBonusIndex[gBonusCount-1])
client_cmd(0, "spk misc/coin01")
set_hudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.02, 0.25, 0, 6.0, 6.0, 0.5, 0.15, 3)
}
else if (gBonusCount == 2) {
format(sMsg,MAX_TEXT_LENGTH,"%s got the 2nd kill! Awarded (+$%i money)",sName,gBonusIndex[gBonusCount-1])
client_cmd(0, "spk misc/coin01")
set_hudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.02, 0.26, 0, 6.0, 6.0, 0.5, 0.15, 3)
}
else if (gBonusCount == 3) {
format(sMsg,MAX_TEXT_LENGTH,"%s got the 3rd kill! Awarded (+$%i money)",sName,gBonusIndex[gBonusCount-1])
client_cmd(0, "spk misc/coin01")
set_hudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.02, 0.27, 0, 6.0, 6.0, 0.5, 0.15, 3)
}
else if (gBonusCount == 4) {
format(sMsg,MAX_TEXT_LENGTH,"%s got the 4rd kill! Awarded (+$%i money)",sName,gBonusIndex[gBonusCount-1])
client_cmd(0, "spk misc/coin01")
set_hudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.02, 0.28, 0, 6.0, 6.0, 0.5, 0.15, 3)
}
else {
format(sMsg,MAX_TEXT_LENGTH,"%s got the %ith kill! Awarded (+$%i money)",sName,gBonusCount,gBonusIndex[gBonusCount-1])
client_cmd(0, "spk misc/coin01")
set_hudmessage(random_num(0,255), random_num(0,255), random_num(0,255), 0.02, 0.29, 0, 6.0, 6.0, 0.5, 0.15, 3)
}
show_hudmessage(0,sMsg)
}
}
return PLUGIN_CONTINUE
}
public event_round_end() {
gBonusCount = 0
}
public plugin_precache(){
precache_sound( "misc/coin01.wav")
return PLUGIN_CONTINUE
}
/************************************************************
* PLUGIN FUNCTIONS
************************************************************/
public plugin_init()
{
register_plugin("Plugin Money Bonus","1.0","DreamZSW")
register_event("DeathMsg","event_death","a")
register_event("SendAudio","event_round_end","a","2&%!MRAD_terwin","2&%!MRAD_ctwin","2&%!MRAD_rounddraw")
register_concmd("amx_bonuskill","admin_bonuskill",ACCESS_LEVEL,"amx_powers < authid | part of nick >")
}
------------------------------------------------------------------------------------------------------- |
|