‪Black Ops 3 Source Code Explorer  0.1
‪An script explorer for Black Ops 3 by ZeRoY
_zm_ai_raps.csc
Go to the documentation of this file.
1 
2 #using scripts\codescripts\struct;
3 
4 #using scripts\shared\callbacks_shared;
5 #using scripts\shared\clientfield_shared;
6 #using scripts\shared\duplicaterender_mgr;
7 #using scripts\shared\flag_shared;
8 #using scripts\shared\system_shared;
9 #using scripts\shared\util_shared;
10 #using scripts\shared\visionset_mgr_shared;
11 #using scripts\shared\postfx_shared;
12 #using scripts\shared\vehicle_shared;
13 
14 #insert scripts\shared\shared.gsh;
15 #insert scripts\shared\version.gsh;
16 #insert scripts\zm\_zm_ai_raps.gsh;
17 
18 #using scripts\zm\_util;
19 #using scripts\zm\_zm_equipment;
20 #using scripts\zm\_zm_perks;
21 #using scripts\zm\_zm_utility;
22 
23 #namespace zm_ai_raps;
24 
25 // elemental round fx
26 #precache( "client_fx", "zombie/fx_meatball_round_tell_zod_zmb" );
27 
28 ‪REGISTER_SYSTEM( "zm_ai_raps", &‪__init__, undefined )
29 
30 function ‪__init__()
31 {
33 
35 
37 
38  // elemental round fx
39  level._effect[ "elemental_round" ] = "zombie/fx_meatball_round_tell_zod_zmb";
40 
42 }
43 
44 function ‪_setup_( localClientNum )
45 {
46  //set code field to get notifies to play impact effects
47  self.notifyOnBulletImpact = true;
48  self thread ‪wait_for_bullet_impact( localClientNum );
49  //kick off the elemental animation
50  self SetAnim( ‪ZM_ELEMENTAL_LOOPING_ANIM, 1.0 );
51 
52  if( ‪IS_TRUE(level.debug_keyline_zombies) )
53  {
54  self ‪duplicate_render::set_dr_flag( "keyline_active", 1 );
55  self ‪duplicate_render::update_dr_filters(localClientNum);
56  }
57 }
58 
59 function ‪elemental_round_fx( n_local_client, n_val_old, n_val_new, b_ent_new, b_initial_snap, str_field, b_demo_jump )
60 {
61  self endon( "disconnect" );
62 
63  if ( IsSpectating( n_local_client ) )
64  return;
65 
66  self.n_elemental_round_fx_id = PlayFXOnCamera( n_local_client, level._effect[ "elemental_round" ] );
67 
68  wait 3.5; // the time it takes to play the fx
69 
70  DeleteFX( n_local_client, self.n_elemental_round_fx_id );
71 }
72 
73 function ‪elemental_round_ring_fx( localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump )
74 {
75  self endon( "disconnect" );
76 
77  if ( IsSpectating( localClientNum ) )
78  return;
79 
80  self thread postfx::playPostFxBundle( "pstfx_ring_loop" );
83 }
84 
85 function ‪wait_for_bullet_impact( localClientNum )
86 {
87  self endon( "entityshutdown" );
88 
89  if( isdefined( self.scriptbundlesettings ) )
90  {
91  settings = ‪struct::get_script_bundle( "vehiclecustomsettings", self.scriptbundlesettings );
92  }
93  else
94  {
95  return;
96  }
97 
98  while( 1 )
99  {
100  self waittill( "damage", attacker, impactPos, effectDir, partname );
101  ‪PlayFx( localClientNum, settings.weakspotfx, impactPos, effectDir );
102  }
103 }
‪_setup_
‪function _setup_(localClientNum)
Definition: _zm_ai_raps.csc:44
‪CF_CALLBACK_ZERO_ON_NEW_ENT
‪#define CF_CALLBACK_ZERO_ON_NEW_ENT
Definition: version.gsh:103
‪VERSION_SHIP
‪#define VERSION_SHIP
Definition: version.gsh:36
‪ELEMENTAL_ROUND_RING_FX
‪#define ELEMENTAL_ROUND_RING_FX
Definition: _zm_ai_raps.gsh:9
‪update_dr_filters
‪function update_dr_filters(localClientNum)
Definition: duplicaterender_mgr.csc:329
‪IS_TRUE
‪#define IS_TRUE(__a)
Definition: shared.gsh:251
‪ZM_ELEMENTAL_RING_LOOP_DURATION
‪#define ZM_ELEMENTAL_RING_LOOP_DURATION
Definition: _zm_ai_raps.gsh:7
‪register_visionset_info
‪function register_visionset_info(name, version, lerp_step_count, visionset_from, visionset_to, visionset_type=VSMGR_VISIONSET_TYPE_NAKED)
Definition: visionset_mgr_shared.csc:50
‪elemental_round_ring_fx
‪function elemental_round_ring_fx(localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump)
Definition: _zm_ai_raps.csc:73
‪elemental_round_fx
‪function elemental_round_fx(n_local_client, n_val_old, n_val_new, b_ent_new, b_initial_snap, str_field, b_demo_jump)
Definition: _zm_ai_raps.csc:59
‪ZM_ELEMENTAL_ROUND_VISION_FILE
‪#define ZM_ELEMENTAL_ROUND_VISION_FILE
Definition: _zm_ai_raps.gsh:5
‪CF_HOST_ONLY
‪#define CF_HOST_ONLY
Definition: version.gsh:102
‪ZM_ELEMENTAL_ROUND_VISIONSET
‪#define ZM_ELEMENTAL_ROUND_VISIONSET
Definition: _zm_ai_raps.gsh:4
‪wait_for_bullet_impact
‪function wait_for_bullet_impact(localClientNum)
Definition: _zm_ai_raps.csc:85
‪REGISTER_SYSTEM
‪#define REGISTER_SYSTEM(__sys, __func_init_preload, __reqs)
Definition: shared.gsh:204
‪add_vehicletype_callback
‪function add_vehicletype_callback(vehicletype, callback)
Definition: vehicle_shared.csc:77
‪ZM_ELEMENTAL_LOOPING_ANIM
‪#define ZM_ELEMENTAL_LOOPING_ANIM
Definition: _zm_ai_raps.gsh:11
‪__init__
‪function __init__()
Definition: _zm_ai_raps.csc:30
‪exitPostfxBundle
‪function exitPostfxBundle()
Definition: postfx_shared.csc:270
‪ZM_ELEMENTAL_VISION_LERP_COUNT
‪#define ZM_ELEMENTAL_VISION_LERP_COUNT
Definition: _zm_ai_raps.gsh:2
‪register
‪function register()
Definition: _ai_tank.gsc:126
‪get_script_bundle
‪function get_script_bundle(str_type, str_name)
Definition: struct.csc:45
‪set_dr_flag
‪function set_dr_flag(toset, setto=true)
Definition: duplicaterender_mgr.csc:251
‪PlayFx
‪function PlayFx(name)
Definition: _counteruav.gsc:390