mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-08 17:47:50 -05:00
131 lines
3.0 KiB
Plaintext
131 lines
3.0 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: animscripts\animmode.gsc
|
|
* Game: Call of Duty: Ghosts
|
|
* Platform: PC
|
|
* Function Count: 2
|
|
* Decompile Time: 43 ms
|
|
* Timestamp: 10/27/2023 1:23:11 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_4FDD()
|
|
{
|
|
self endon("death");
|
|
self endon("stop_animmode");
|
|
self notify("killanimscript");
|
|
self._tag_entity endon(self.var_63E);
|
|
if(isdefined(self._custom_anim_thread))
|
|
{
|
|
self thread [[ self._custom_anim_thread ]]();
|
|
self._custom_anim_thread = undefined;
|
|
}
|
|
|
|
var_00 = isdefined(self._custom_anim_loop) && self._custom_anim_loop;
|
|
if(var_00)
|
|
{
|
|
self endon("stop_loop");
|
|
self._custom_anim_loop = undefined;
|
|
}
|
|
else
|
|
{
|
|
thread func_5712(self.var_63E);
|
|
}
|
|
|
|
var_01 = self.var_63E;
|
|
self.var_63E = undefined;
|
|
var_02 = 0;
|
|
if(var_00)
|
|
{
|
|
var_02 = level.scr_anim[self._animname][var_01].size;
|
|
var_03 = level.scr_anim[self._animname][var_01][randomint(var_02)];
|
|
}
|
|
else
|
|
{
|
|
var_03 = level.scr_anim[self._animname][var_02];
|
|
}
|
|
|
|
var_04 = getstartorigin(self._tag_entity.origin,self._tag_entity.angles,var_03);
|
|
var_05 = getstartangles(self._tag_entity.origin,self._tag_entity.angles,var_03);
|
|
var_06 = self getdroptofloorposition(var_04);
|
|
if(isdefined(var_06))
|
|
{
|
|
var_04 = var_06;
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
if(!isdefined(self.noteleport))
|
|
{
|
|
self teleport(var_04,var_05);
|
|
}
|
|
|
|
self.pushable = 0;
|
|
var_07 = 0.3;
|
|
var_08 = 0.2;
|
|
if(isdefined(self.anim_blend_time_override))
|
|
{
|
|
var_07 = self.anim_blend_time_override;
|
|
var_08 = self.anim_blend_time_override;
|
|
}
|
|
|
|
self animmode(self._animmode);
|
|
self clearanim(self.root_anim,var_07);
|
|
self orientmode("face angle",var_05[1]);
|
|
var_09 = "custom_animmode";
|
|
self setflaggedanimrestart(var_09,var_03,1,var_08,1);
|
|
self._tag_entity thread maps\_anim::func_7A68(self,var_09,var_01,self._animname);
|
|
self._tag_entity thread maps\_anim::animscriptdonotetracksthread(self,var_09,var_01);
|
|
var_0A = self._tag_entity;
|
|
self._tag_entity = undefined;
|
|
self._animmode = undefined;
|
|
self endon("killanimscript");
|
|
var_0B = "end";
|
|
if(!var_00)
|
|
{
|
|
if(animhasnotetrack(var_03,"finish"))
|
|
{
|
|
var_0B = "finish";
|
|
}
|
|
else if(animhasnotetrack(var_03,"stop anim"))
|
|
{
|
|
var_0B = "stop anim";
|
|
}
|
|
}
|
|
|
|
for(;;)
|
|
{
|
|
self waittillmatch(var_0B,var_09);
|
|
if(var_00)
|
|
{
|
|
var_03 = level.scr_anim[self._animname][var_01][randomint(var_02)];
|
|
self setflaggedanimknoblimitedrestart(var_09,var_03,1,0.2,1);
|
|
if(isdefined(var_0A))
|
|
{
|
|
var_0A thread maps\_anim::func_7A68(self,var_09,var_01,self._animname);
|
|
var_0A thread maps\_anim::animscriptdonotetracksthread(self,var_09,var_01);
|
|
}
|
|
|
|
continue;
|
|
}
|
|
|
|
break;
|
|
}
|
|
|
|
if(var_0B != "end")
|
|
{
|
|
self orientmode("face motion");
|
|
}
|
|
|
|
self notify("finished_custom_animmode" + var_01);
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_5712(param_00)
|
|
{
|
|
self endon("death");
|
|
self endon("finished_custom_animmode" + param_00);
|
|
self waittill("killanimscript");
|
|
self notify("finished_custom_animmode" + param_00);
|
|
} |