boiii-scripts/shared/abilities/gadgets/_gadget_clone_render.csc
2023-04-13 17:30:38 +02:00

55 lines
7.3 KiB
Plaintext

#using scripts\codescripts\struct;
#using scripts\shared\duplicaterender_mgr;
#using scripts\shared\system_shared;
// Units per network frame. 0 < speed <= 1.0
function autoexec __init__sytem__() { system::register("gadget_clone_render",&__init__,undefined,undefined); }
function __init__()
{
duplicate_render::set_dr_filter_framebuffer( "clone_ally", 90,
"clone_ally_on", "clone_damage",
0, "mc/ability_clone_ally", 0 );
duplicate_render::set_dr_filter_framebuffer( "clone_enemy", 90,
"clone_enemy_on", "clone_damage",
0, "mc/ability_clone_enemy", 0 );
duplicate_render::set_dr_filter_framebuffer( "clone_damage_ally", 90,
"clone_ally_on,clone_damage", undefined,
0, "mc/ability_clone_ally_damage", 0 );
duplicate_render::set_dr_filter_framebuffer( "clone_damage_enemy", 90,
"clone_enemy_on,clone_damage", undefined,
0, "mc/ability_clone_enemy_damage", 0 );
}
#namespace gadget_clone_render;
function transition_shader( localClientNum )
{
self endon ( "entityshutdown" );
self endon ( "clone_shader_off" );
rampInShader = 0.0;
while( rampInShader < 1.0 )
{
if( isDefined( self ) )
{
self MapShaderConstant( localClientNum, 0, "scriptVector3", 1, rampInShader, 0, 0.04 );
}
rampInShader += .04;
{wait(.016);};
}
}