‪Black Ops 3 Source Code Explorer  0.1
‪An script explorer for Black Ops 3 by ZeRoY
zombie_quad.gsc
Go to the documentation of this file.
1 #using scripts\shared\ai_shared;
2 #using scripts\shared\callbacks_shared;
3 #using scripts\shared\clientfield_shared;
4 #using scripts\shared\fx_shared;
5 #using scripts\shared\math_shared;
6 #using scripts\shared\scene_shared;
7 #using scripts\shared\spawner_shared;
8 #using scripts\shared\util_shared;
9 #using scripts\shared\array_shared;
10 
11 #using scripts\shared\ai\systems\animation_state_machine_utility;
12 #using scripts\shared\ai\systems\animation_state_machine_notetracks;
13 #using scripts\shared\ai\systems\animation_state_machine_mocomp;
14 #using scripts\shared\ai\archetype_locomotion_utility;
15 #using scripts\shared\ai\archetype_utility;
16 #using scripts\shared\ai\systems\behavior_tree_utility;
17 #using scripts\shared\ai\systems\blackboard;
18 #using scripts\shared\ai\systems\debug;
19 #using scripts\shared\ai\systems\gib;
20 #using scripts\shared\ai\zombie;
21 #using scripts\shared\ai\zombie_utility;
22 #using scripts\shared\ai\zombie_death;
23 #using scripts\shared\ai\zombie_shared;
24 #using scripts\codescripts\struct;
25 #using scripts\shared\ai\archetype_mocomps_utility;
26 
27 //INTERFACE
28 #using scripts\shared\ai\systems\ai_interface;
29 
30 #insert scripts\shared\ai\archetype_damage_effects.gsh;
31 #insert scripts\shared\archetype_shared\archetype_shared.gsh;
32 #insert scripts\shared\ai\systems\animation_state_machine.gsh;
33 #insert scripts\shared\ai\systems\behavior.gsh;
34 #insert scripts\shared\ai\systems\behavior_tree.gsh;
35 #insert scripts\shared\ai\systems\blackboard.gsh;
36 #insert scripts\shared\ai\systems\gib.gsh;
37 #insert scripts\shared\ai\utility.gsh;
38 #insert scripts\shared\ai\zombie.gsh;
39 #insert scripts\shared\shared.gsh;
40 #insert scripts\shared\version.gsh;
41 
42 #namespace ZombieQuad;
43 
44 function autoexec ‪init()
45 {
46  // INIT BEHAVIORS
48 
49  // INIT BLACKBOARD
51 
52  // INIT QUAD ON SPAWN
54 }
55 
57 {
58  // CREATE BLACKBOARD
60 
61  // USE UTILITY BLACKBOARD
63 
64  // CREATE INTERFACE
66 
67  // CREATE QUAD BLACKBOARD
69 
70  ‪BB_REGISTER_ATTRIBUTE( ‪QUAD_WALL_CRAWL, undefined, undefined );
71  ‪BB_REGISTER_ATTRIBUTE( ‪QUAD_PHASE_DIRECTION, undefined, undefined );
72  ‪BB_REGISTER_ATTRIBUTE( ‪QUAD_PHASE_DISTANCE, undefined, undefined );
73 
74  // REGISTER ANIMSCRIPTED CALLBACK
75  self.___ArchetypeOnAnimscriptedCallback = &‪ArchetypeQuadOnAnimscriptedCallback;
76 
77  // ENABLE DEBUGGING IN ODYSSEY
79 
80 }
81 
82 function private ‪ArchetypeQuadOnAnimscriptedCallback( entity )
83 {
84  // UNREGISTER THE BLACKBOARD
85  entity.__blackboard = undefined;
86 
87  // REREGISTER BLACKBOARD
89 }
90 
91 function private ‪InitZombieBehaviorsAndASM()
92 {
93  // ------- ZOMBIE MOCOMP -----------//
94  ‪ASM_REGISTER_MOCOMP( "mocomp_teleport_traversal@zombie_quad", &‪quadTeleportTraversalMocompStart, undefined, undefined );
95 }
96 
97 //*****************************************************************************
98 //*****************************************************************************
99 
101 {
102  self SetPitchOrient();
103 }
104 
105 //*****************************************************************************
106 //*****************************************************************************
107 
108 function ‪quadTeleportTraversalMocompStart( entity, mocompAnim, mocompAnimBlendOutTime, mocompAnimFlag, mocompDuration )
109 {
110  entity OrientMode( "face angle", entity.angles[1] );
111  entity AnimMode( ‪AI_ANIM_MOVE_CODE );
112 
113  if ( IsDefined( entity.traverseEndNode ) )
114  {
115  /#
116  Print3D( entity.traverseStartNode.origin, ".", ‪RED, 1, 1, 60 );
117  Print3D( entity.traverseEndNode.origin, ".", ‪GREEN, 1, 1, 60 );
118  Line( entity.traverseStartNode.origin, entity.traverseEndNode.origin, ‪GREEN, 1, false, 60 );
119  #/
120 
121  entity ForceTeleport( entity.traverseEndNode.origin, entity.traverseEndNode.angles, false );
122  }
123 }
124 
‪InitZombieBehaviorsAndASM
‪function private InitZombieBehaviorsAndASM()
Definition: zombie_quad.gsc:91
‪ArchetypeQuadBlackboardInit
‪function ArchetypeQuadBlackboardInit()
Definition: zombie_quad.gsc:56
‪LOCOMOTION_SPEED_WALK
‪#define LOCOMOTION_SPEED_WALK
Definition: blackboard.gsh:156
‪BB_REGISTER_ATTRIBUTE
‪#define BB_REGISTER_ATTRIBUTE(name, defaultValue, getter)
Definition: blackboard.gsh:1
‪QUAD_PHASE_DIRECTION
‪#define QUAD_PHASE_DIRECTION
Definition: blackboard.gsh:240
‪GREEN
‪#define GREEN
Definition: shared.gsh:176
‪RegisterUtilityBlackboardAttributes
‪function RegisterUtilityBlackboardAttributes()
Definition: archetype_utility.gsc:139
‪init
‪function autoexec init()
Definition: zombie_quad.gsc:44
‪RED
‪#define RED
Definition: shared.gsh:175
‪ENABLE_BLACKBOARD_DEBUG_TRACKING
‪#define ENABLE_BLACKBOARD_DEBUG_TRACKING(self)
Definition: blackboard.gsh:7
‪AI_ANIM_MOVE_CODE
‪#define AI_ANIM_MOVE_CODE
Definition: animation_state_machine.gsh:77
‪ASM_REGISTER_MOCOMP
‪#define ASM_REGISTER_MOCOMP(name, initFunction, updateFunction, terminateFunction)
Definition: animation_state_machine.gsh:1
‪QUAD_WALL_CRAWL
‪#define QUAD_WALL_CRAWL
Definition: blackboard.gsh:236
‪LOCOMOTION_SPEED_TYPE
‪#define LOCOMOTION_SPEED_TYPE
Definition: blackboard.gsh:155
‪QUAD_PHASE_DISTANCE
‪#define QUAD_PHASE_DISTANCE
Definition: blackboard.gsh:245
‪quadSpawnSetup
‪function quadSpawnSetup()
Definition: zombie_quad.gsc:100
‪ArchetypeQuadOnAnimscriptedCallback
‪function private ArchetypeQuadOnAnimscriptedCallback(entity)
Definition: zombie_quad.gsc:82
‪add_archetype_spawn_function
‪function add_archetype_spawn_function(archetype, spawn_func)
Definition: ai_shared.csc:23
‪CreateBlackBoardForEntity
‪function CreateBlackBoardForEntity(entity)
Definition: blackboard.gsc:77
‪BB_GetLocomotionSpeedType
‪function BB_GetLocomotionSpeedType()
Definition: skeleton.gsc:132
‪ARCHETYPE_ZOMBIE_QUAD
‪#define ARCHETYPE_ZOMBIE_QUAD
Definition: archetype_shared.gsh:21
‪quadTeleportTraversalMocompStart
‪function quadTeleportTraversalMocompStart(entity, mocompAnim, mocompAnimBlendOutTime, mocompAnimFlag, mocompDuration)
Definition: zombie_quad.gsc:108
‪CreateInterfaceForEntity
‪function CreateInterfaceForEntity(entity)
Definition: ai_interface.gsc:110