AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Approved Plugins (https://forums.alliedmods.net/forumdisplay.php?f=8)
-   -   Bomb Explosion Features (https://forums.alliedmods.net/showthread.php?t=22092)

VEN 12-18-2005 14:43

Bomb Explosion Features
 
1 Attachment(s)
        • Bomb Explosion Features
Description
  • Plugin provide extra features for bomb explosion event.
Features
  • - planter frags -3 (remove CS standard) and + 1 for each victim (can be disabled)
    - victim deaths + 1 (can be disabled)
    - death messages: top-right screen corner icon and console text (can be disabled)
    - death log messages (can be disabled)
    - "Target Successfully Bombed!" message for every bomb explosion (can be disabled)
Modules
  • cstrike
    fun
CVARs
  • amx_explosion_frags (0: OFF, 1: ON, default: 1) - frags feature
    amx_explosion_deaths (0: OFF, 1: ON, default: 1) - deaths feature
    amx_explosion_msgs (0: OFF, 1: ON, default: 1) - death messages feature
    amx_explosion_logs (0: OFF, 1: ON, default: 1) - death log messages feature
    To disable the plugin set all CVARs to 0.
Thanks
  • Ryan - for perfect bomb explosion event
    Damaged Soul - for great "Message Logging" plugin

v3x 12-18-2005 22:30

Nice plugin, I like the features.

Dizzy 12-18-2005 23:54

Wait,

If you kill a person during the bomb explosion you get a frag???

What else?

I like this plugin =D

VEN 12-19-2005 09:54

This plugin must be installed on every CS server since it fixes a lot of bomb explosion valve's mistakes. =)

Now more comments on features.
Quote:

- planter frags -3 (remove CS standard) and + 1 for each victim (can be disabled)
"Victim" = only enemy
Quote:

- victim deaths + 1 (can be disabled)
"Victim" = any player
Quote:

- death messages: top-right screen corner icon and console text (can be disabled)
- death log messages (can be disabled)
Why not? I don't like silent kills (without any messages).
Quote:

- "Target Successfully Bombed!" message for every bomb explosion (can be disabled)
By default in CS this message displayed only if target bombed before round end. My plugin dysplay this message every explosion (round end independent).

BTW: Did anyone know why valve had removed (deaths + 1) for every victim on bomb explosion death?

10Stars 03-13-2006 03:42

nice pluhin i definetly like the bomb kills addon, it gives terrorists a want to plant the bomb instead of camping. Definetly a recommended plugin!

SylverRat 07-06-2006 11:19

Re: Bomb Explosion Features
 
hi! nice plugin!
but can u somehow modify it so, that the CT defusing the bomb doesn't get the 3 frags?
or can sy plz hlp me how to modify this script?

tnx!

UPDATE: errr... i think i've solved it myself...
Code:


#include <amxmodx>
#include <cstrike>
#include <fun>
#define MAX_PLAYERS 32
new bool:g_alive[MAX_PLAYERS + 1]
new g_planter
new g_defuser
new bool:g_mode_frags
new bool:g_mode_deaths
new bool:g_mode_msgs
new bool:g_mode_logs
new g_msg_death
new g_msg_text
public plugin_init() {
 register_plugin("Bomb Explosion Features", "0.1", "VEN")
 register_logevent("logevent_round_start", 2, "0=World triggered", "1=Round_Start")
 register_logevent("logevent_bomb_planted", 3, "1=triggered", "2=Planted_The_Bomb")
 register_event("ResetHUD", "event_reset_hud", "be")
 register_event("DeathMsg", "event_death", "a")
 register_event("Damage", "event_damage_death", "bd", "2>0")
 register_event("23", "event_bomb_explosion", "a", "1=17", "6=-105", "7=17")
register_event("BarTime", "bomb_defusing","be", "1=10", "1=5")
 register_event("SendAudio", "bomb_defused", "a", "2&%!MRAD_BOMBDEF");

 g_msg_death = get_user_msgid("DeathMsg")
 g_msg_text = get_user_msgid("TextMsg")
 register_cvar("amx_explosion_frags", "1")
 register_cvar("amx_explosion_deaths", "1")
 register_cvar("amx_explosion_msgs", "1")
 register_cvar("amx_explosion_logs", "1")
}
public plugin_modules() {
 require_module("cstrike")
 require_module("fun")
}
 
public event_reset_hud(id) {
 g_alive[id] = true
}
public logevent_round_start() {
 g_planter = 0
g_defuser = 0
}
public event_death() {
 g_alive[read_data(2)] = false
}
public client_disconnect(id) {
 g_alive[id] = false
}
public logevent_bomb_planted() {
 new loguser[80]
 read_logargv(0, loguser, 79)
 new name[32]
 parse_loguser(loguser, name, 31)
 g_planter = get_user_index(name)
 g_mode_frags = get_cvar_num("amx_explosion_frags") ? true : false
 g_mode_deaths = get_cvar_num("amx_explosion_deaths") ? true : false
 g_mode_msgs = get_cvar_num("amx_explosion_msgs") ? true : false
 g_mode_logs = get_cvar_num("amx_explosion_logs") ? true : false
}
public event_damage_death(id) {
 if (!g_alive[id] || !g_planter)
  return
 g_alive[id] = false
 if (g_mode_frags && is_user_connected(g_planter) && get_user_team(id) == 2)
  set_user_frags(g_planter, get_user_frags(g_planter) + 1)
 if (g_mode_deaths)
  cs_set_user_deaths(id, cs_get_user_deaths(id) + 1)
 if (g_mode_msgs)
  msg_bomb_death(id)
 if (g_mode_logs) {
  new name[32], authid[32], team[10]
  get_user_name(id, name, 31)
  get_user_authid(id, authid, 31)
  get_user_team(id, team, 9)
  log_message("^"%s<%d><%s><%s>^" killed by bomb", name, get_user_userid(id), authid, team)
 }
}
public event_bomb_explosion() {
 if (!g_planter)
  return
 if (g_mode_frags || g_mode_deaths || g_mode_msgs || g_mode_logs)
  msg_target_bombed_text()
 if (g_mode_frags && is_user_connected(g_planter))
  set_user_frags(g_planter, get_user_frags(g_planter) - 3)
}
public bomb_defusing(id) {
 g_defuser = id
}

public bomb_defused() {
 if (!g_defuser)
  return

if (g_mode_frags && is_user_connected(g_defuser))
  set_user_frags(g_defuser, get_user_frags(g_defuser) - 3)
}

 
stock msg_bomb_death(id) {
 message_begin(MSG_ALL, g_msg_death)
 write_byte(id)
 write_byte(id)
 write_byte(0)
 write_string("world")
 message_end()
}
stock msg_target_bombed_text() {
 message_begin(MSG_ALL, g_msg_text)
 write_byte((1<<2))
 write_string("#Target_Bombed")
 message_end()
}

can sy tell me if this is correct? (changes with RED)
(it seems to work, but not tested on a public server, just with bots...)

VEN 07-15-2006 04:25

Re: Bomb Explosion Features
 
Better use the method below, so g_defuser variable and bomb_defusing function not needed at all.

PHP Code:

  register_logevent("bomb_defused"3"2=Defused_The_Bomb"

PHP Code:

public bomb_defused() {
  new 
loguser[80], name[32]
  
read_logargv(0loguser79)
  
parse_loguser(logusername31)
  new 
id get_user_index(name)
  if (
g_mode_frags && is_user_connected(id))
    
set_user_frags(idget_user_frags(id) - 3)



SylverRat 07-16-2006 03:32

Re: Bomb Explosion Features
 
tnx, i'll try it now, and put it on my server.
as i said, good plugin, makes player to hunt, not just plant'n'camp... :-)

ali_zkz 12-04-2006 02:13

Re: Bomb Explosion Features
 
damen good plugin~~~~~
i love it

sadboy 05-05-2012 14:27

Re: Bomb Explosion Features
 
thank you for this plugin ^^

I 've just edited this plugin sothat it only have 1 functions :

give planter defuser a number of score ( which can be set by "hscr" cvar )

i removed all other functions

it works fine

But I still want to ask for help if this plugin can be optimized ( is there anything needed to remove and optimized for better performance)

thanks


Code:


#include <amxmodx>
#include <cstrike>
#include <fun>

#define MAX_PLAYERS 32

new bool:g_alive[MAX_PLAYERS + 1]

new g_planter, bscr

new bool:g_mode_frags

public plugin_init() {
        register_plugin("bombscore", "0.1", "VEN")
        bscr = register_cvar("hscr","1")
        register_logevent("logevent_round_start", 2, "0=World triggered", "1=Round_Start")
        register_logevent("logevent_bomb_planted", 3, "1=triggered", "2=Planted_The_Bomb")
        register_logevent("bomb_defused", 3, "2=Defused_The_Bomb")
        register_event("ResetHUD", "event_reset_hud", "be")
        register_event("23", "event_bomb_explosion", "a", "1=17", "6=-105", "7=17")
        register_cvar("amx_explosion_frags", "1")
}
public plugin_modules() {
        require_module("cstrike")
        require_module("fun")
}
public event_reset_hud(id) {
        g_alive[id] = true
}

public logevent_round_start() {
        g_planter = 0
}

public event_death() {
        g_alive[read_data(2)] = false
}

public client_disconnect(id) {
        g_alive[id] = false
}

public logevent_bomb_planted() {
        new loguser[80]
        read_logargv(0, loguser, 79)
        new name[32]
        parse_loguser(loguser, name, 31)
        g_planter = get_user_index(name)

        g_mode_frags = get_cvar_num("amx_explosion_frags") ? true : false
}

public event_bomb_explosion() {
    new pscr
    pscr = get_pcvar_num(bscr)
        if (!g_planter)
                return
        if (g_mode_frags && is_user_connected(g_planter))
                set_user_frags(g_planter, get_user_frags(g_planter) - 3 + pscr)
}

public bomb_defused() {
  new loguser[80], name[32], pscr
  pscr = get_pcvar_num(bscr)
  read_logargv(0, loguser, 79)
  parse_loguser(loguser, name, 31)
  new id = get_user_index(name)
  if (g_mode_frags && is_user_connected(id))
  set_user_frags(id, get_user_frags(id) - 3 + pscr)
}



All times are GMT -4. The time now is 09:32.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.