Update extra AMXX plugins.
This commit is contained in:
@@ -6,9 +6,15 @@
|
||||
|
||||
public plugin_init()
|
||||
{
|
||||
register_plugin( "GAME-MONSTER: Use Dispatcher", "1.0", "Giegue" );
|
||||
register_plugin( "GAME-MONSTER: Use Dispatcher", "1.1", "Giegue" );
|
||||
|
||||
register_cvar( "_glb_use", "1" );
|
||||
|
||||
// Game --> MonsterMod
|
||||
RegisterHam( Ham_Use, "func_wall", "DispatchUse" );
|
||||
|
||||
// MonsterMod --> Game
|
||||
register_srvcmd( "_trigger", "FireTargets" );
|
||||
}
|
||||
|
||||
public DispatchUse( entity, caller, activator, useType, Float:value )
|
||||
@@ -22,3 +28,30 @@ public DispatchUse( entity, caller, activator, useType, Float:value )
|
||||
|
||||
return HAM_IGNORED;
|
||||
}
|
||||
|
||||
public FireTargets()
|
||||
{
|
||||
if ( read_argc() == 6 )
|
||||
{
|
||||
new entity, caller, activator;
|
||||
new Float:value;
|
||||
new useType;
|
||||
|
||||
entity = read_argv_int( 1 );
|
||||
caller = read_argv_int( 2 );
|
||||
activator = read_argv_int( 3 );
|
||||
value = read_argv_float( 4 );
|
||||
useType = read_argv_int( 5 );
|
||||
|
||||
// caller and activator can be null, but never allow entity to be null
|
||||
if ( !is_valid_ent( entity ) )
|
||||
return;
|
||||
|
||||
if ( !is_valid_ent( caller ) )
|
||||
caller = 0;
|
||||
if ( !is_valid_ent( activator ) )
|
||||
activator = 0;
|
||||
|
||||
ExecuteHamB( Ham_Use, entity, caller, activator, useType, value );
|
||||
}
|
||||
}
|
||||
|
||||
42
extra/base/src/glb_takedamage.sma
Normal file
42
extra/base/src/glb_takedamage.sma
Normal file
@@ -0,0 +1,42 @@
|
||||
#pragma semicolon 1
|
||||
|
||||
#include <amxmodx>
|
||||
#include <engine>
|
||||
#include <hamsandwich>
|
||||
|
||||
public plugin_init()
|
||||
{
|
||||
register_plugin( "GAME-MONSTER: External TakeDamage", "1.0", "Giegue" );
|
||||
|
||||
register_cvar( "_glb_takedamage", "1" );
|
||||
|
||||
// MonsterMod --> Game
|
||||
register_srvcmd( "_takedamage", "TakeDamage" );
|
||||
}
|
||||
|
||||
public TakeDamage()
|
||||
{
|
||||
if ( read_argc() == 6 )
|
||||
{
|
||||
new victim, inflictor, attacker;
|
||||
new Float:damage;
|
||||
new damageBits;
|
||||
|
||||
victim = read_argv_int( 1 );
|
||||
inflictor = read_argv_int( 2 );
|
||||
attacker = read_argv_int( 3 );
|
||||
damage = read_argv_float( 4 );
|
||||
damageBits = read_argv_int( 5 );
|
||||
|
||||
// attacker and inflictor can be null, but never allow victim to be null
|
||||
if ( !is_valid_ent( victim ) )
|
||||
return;
|
||||
|
||||
if ( !is_valid_ent( inflictor ) )
|
||||
inflictor = 0;
|
||||
if ( !is_valid_ent( attacker ) )
|
||||
attacker = 0;
|
||||
|
||||
ExecuteHamB( Ham_TakeDamage, victim, inflictor, attacker, damage, damageBits );
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user