idTargetableProxyHandler & idTarget_SmartAIProxy
The idTargetableProxyHandler entity defines the render model and proxy list for Meathook Nodes.
The idTarget_SmartAIProxy entity defines the grapple position for Meathook Nodes.
Requires assets from a TAG2 map (e5m1_spear, e5m2_earth, e5m3_hell, e5m4_boss).
idTargetableProxyHandler
entity {
entityDef meathook_node_handler_1 {
inherit = "target/proxy_handler";
class = "idTargetableProxyHandler";
expandInheritance = false;
poolCount = 0;
poolGranularity = 2;
networkReplicated = false;
disableAIPooling = false;
edit = {
cooldownDuration = 5000; // defines the cooldown; scrubs set this to 0
connectSound = "play_meat_hook_lock_in";
ambientLoopSound = "play_meathook_sphere_amb_loop";
oneSidedActiveModel = "art/kit/gameplay/meathook_traversal_a.lwo";
oneSidedInactiveModel = "art/kit/gameplay/meathook_traversal_b.lwo";
allSidedActiveModel = "art/kit/gameplay/meathook_traversal_c.lwo";
allSidedInactiveModel = "art/kit/gameplay/meathook_traversal_d.lwo";
oneSidedActiveFXModel = "art/kit/gameplay/meathook_traversal_a_rings.lwo";
oneSidedInactiveFXModel = "art/kit/gameplay/meathook_traversal_b_rings.lwo";
allSidedActiveFXModel = "art/kit/gameplay/meathook_traversal_c_rings.lwo";
allSidedInactiveFXModel = "art/kit/gameplay/meathook_traversal_d_rings.lwo";
renderModelInfo = {
model = "art/kit/gameplay/meatHook_traversal_placeholder.lwo";
scale = {
x = 1;
y = 1;
z = 1;
}
}
clipModelInfo = {
clipModelName = "maps/prefabs/gameplay/meathook_target/target_proxy_handler_2";
}
proxyList = {
num = 1;
item[0] = {
proxyEntity = "meathook_node_1"; // the idTarget_SmartAIProxy entity
proxyTagName = "meathook_node_handler_1"; // this entity
}
}
isOmnidirectional = true; // setting this to true makes the node appear on both sides
spawnPosition = { // be sure to change the spawn position
x = 1;
y = 1;
z = 1;
}
spawnOrientation = {
mat = {
mat[0] = {
x = 1;
y = 0;
z = 0;
}
mat[1] = {
x = 1;
y = 0;
z = 0;
}
}
}
}
}
}
idTarget_SmartAIProxy
entity {
entityDef meathook_node_1 {
inherit = "target/ai_proxy_meathook";
class = "idTarget_SmartAIProxy";
expandInheritance = false;
poolCount = 0;
poolGranularity = 2;
networkReplicated = false;
disableAIPooling = false;
edit = {
flags = {
noFlood = true;
}
targetingDecl = "target_aiproxy_meathook";
distanceOverride = 25; // how far the Meathook connection is
renderModelInfo = {
scale = {
x = 1;
y = 1;
z = 1;
}
}
spawnPosition = { // make this identical to the idTargetableProxyHandler entity
x = 1;
y = 1;
z = 1;
}
spawnOrientation = {
mat = {
mat[0] = {
x = 1;
y = 0;
z = 0;
}
mat[1] = {
x = 1;
y = 0;
z = 0;
}
}
}
}
}
}
No Comments