IL-GSC/AW/PC/animscripts/setposemovement.gsc
InfinityLoader b2389dbcb9 Full AW Dump
2024-04-22 02:38:24 -04:00

977 lines
17 KiB
Plaintext

/*******************************************************************
* Decompiled By: Bog
* Decompiled File: setposemovement.gsc
* Game: Call of Duty: Advanced Warfare
* Platform: PC
* Function Count: 55
* Decompile Time: 786 ms
* Timestamp: 4/22/2024 2:00:53 AM
*******************************************************************/
//Function Number: 1
setposemovement(param_00,param_01)
{
if(param_00 == "")
{
if(self.a.pose == "prone" && param_01 == "walk" || param_01 == "run")
{
param_00 = "crouch";
}
else
{
param_00 = self.a.pose;
}
}
if(!isdefined(param_01) || param_01 == "")
{
param_01 = self.a.movement;
}
[[ level.setposemovementfnarray[param_00][param_01] ]]();
}
//Function Number: 2
initposemovementfunctions()
{
level.setposemovementfnarray["stand"]["stop"] = ::standstop_begin;
level.setposemovementfnarray["stand"]["walk"] = ::standwalk_begin;
level.setposemovementfnarray["stand"]["run"] = ::standrun_begin;
level.setposemovementfnarray["crouch"]["stop"] = ::crouchstop_begin;
level.setposemovementfnarray["crouch"]["walk"] = ::crouchwalk_begin;
level.setposemovementfnarray["crouch"]["run"] = ::crouchrun_begin;
level.setposemovementfnarray["prone"]["stop"] = ::pronestop_begin;
level.setposemovementfnarray["prone"]["walk"] = ::pronewalk_begin;
level.setposemovementfnarray["prone"]["run"] = ::pronerun_begin;
}
//Function Number: 3
standstop_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
return 0;
case "walk":
standwalktostand();
break;
default:
standruntostand();
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtostand();
break;
case "walk":
crouchwalktostand();
break;
default:
crouchruntostand();
break;
}
break;
default:
switch(self.a.movement)
{
case "stop":
pronetostand();
break;
default:
pronetostand();
break;
}
break;
}
return 1;
}
//Function Number: 4
standwalk_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
blendintostandwalk();
break;
case "walk":
return 0;
default:
blendintostandwalk();
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtostandwalk();
break;
case "walk":
blendintostandwalk();
break;
default:
blendintostandwalk();
break;
}
break;
default:
pronetostandwalk();
break;
}
return 1;
}
//Function Number: 5
standrun_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "walk":
case "stop":
return blendintostandrun();
default:
return 0;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
return crouchtostandrun();
default:
return blendintostandrun();
}
break;
default:
pronetostandrun();
break;
}
return 1;
}
//Function Number: 6
crouchstop_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
standtocrouch();
break;
case "walk":
standwalktocrouch();
break;
case "run":
standruntocrouch();
break;
default:
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
break;
case "walk":
crouchwalktocrouch();
break;
case "run":
crouchruntocrouch();
break;
default:
break;
}
break;
case "prone":
pronetocrouch();
break;
default:
break;
}
}
//Function Number: 7
crouchwalk_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
blendintocrouchwalk();
break;
case "walk":
blendintocrouchwalk();
break;
default:
blendintocrouchwalk();
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtocrouchwalk();
break;
case "walk":
return 0;
default:
blendintocrouchwalk();
break;
}
break;
default:
pronetocrouchwalk();
break;
}
return 1;
}
//Function Number: 8
crouchrun_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
blendintocrouchrun();
break;
default:
blendintocrouchrun();
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtocrouchrun();
break;
case "walk":
blendintocrouchrun();
break;
default:
return 0;
}
break;
default:
pronetocrouchrun();
break;
}
return 1;
}
//Function Number: 9
pronestop_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
standtoprone();
break;
case "walk":
standtoprone();
break;
case "run":
crouchruntoprone();
break;
default:
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtoprone();
break;
case "walk":
crouchtoprone();
break;
case "run":
crouchruntoprone();
break;
default:
break;
}
break;
case "prone":
switch(self.a.movement)
{
case "stop":
break;
case "walk":
case "run":
pronecrawltoprone();
break;
default:
break;
}
break;
default:
break;
}
}
//Function Number: 10
pronewalk_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
standtopronewalk();
break;
default:
crouchruntopronewalk();
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtopronewalk();
break;
default:
crouchruntopronewalk();
break;
}
break;
default:
switch(self.a.movement)
{
case "stop":
pronetopronerun();
break;
default:
self.a.movement = "walk";
return 0;
}
break;
}
return 1;
}
//Function Number: 11
pronerun_begin()
{
switch(self.a.pose)
{
case "stand":
switch(self.a.movement)
{
case "stop":
standtopronerun();
break;
default:
crouchruntopronerun();
break;
}
break;
case "crouch":
switch(self.a.movement)
{
case "stop":
crouchtopronerun();
break;
default:
crouchruntopronerun();
break;
}
break;
default:
switch(self.a.movement)
{
case "stop":
pronetopronerun();
break;
default:
self.a.movement = "run";
return 0;
}
break;
}
return 1;
}
//Function Number: 12
playblendtransition(param_00,param_01,param_02,param_03)
{
var_04 = gettime() + param_01 * 1000;
if(isarray(param_00))
{
param_00 = param_00[randomint(param_00.size)];
}
self setflaggedanimknoball("blendTransition",param_00,%body,1,param_01,1);
animscripts\notetracks::donotetracksfortime(param_01 / 2,"blendTransition");
self.a.pose = param_02;
self.a.movement = param_03;
var_05 = var_04 - gettime() / 1000;
if(var_05 < 0.05)
{
var_05 = 0.05;
}
animscripts\notetracks::donotetracksfortime(var_05,"blendTransition");
}
//Function Number: 13
playtransitionstandwalk(param_00,param_01)
{
playtransitionanimation(param_00,"stand","walk",param_01);
}
//Function Number: 14
standwalktostand()
{
self.a.movement = "stop";
}
//Function Number: 15
standwalktocrouch()
{
standwalktostand();
standtocrouch();
}
//Function Number: 16
standruntostand()
{
self.a.movement = "stop";
}
//Function Number: 17
standruntocrouch()
{
self.a.movement = "stop";
self.a.pose = "crouch";
}
//Function Number: 18
playblendtransitionstandrun(param_00)
{
var_01 = 0.3;
if(self.a.movement != "stop")
{
self endon("movemode");
var_01 = 1;
}
playblendtransition(param_00,var_01,"stand","run");
}
//Function Number: 19
blendintostandrun()
{
if(!self.facemotion)
{
self.a.movement = "run";
self.a.pose = "stand";
return 0;
}
if(isdefined(self.run_overrideanim))
{
playblendtransitionstandrun(self.run_overrideanim);
return 1;
}
var_00 = 0.1;
if(self.a.movement != "stop" && self.stairsstate == "none")
{
var_00 = 0.5;
}
if(isdefined(self.sprint))
{
self setanimknoblimited(animscripts\utility::getmoveanim("sprint"),1,var_00,1);
}
else
{
self setanimknoblimited(animscripts\run::getrunanim(),1,var_00,1);
}
animscripts\run::setmovenonforwardanims(animscripts\utility::getmoveanim("move_b"),animscripts\utility::getmoveanim("move_l"),animscripts\utility::getmoveanim("move_r"),self.sidesteprate);
thread animscripts\run::setcombatstandmoveanimweights("run");
wait(0.05);
playblendtransitionstandrun(%combatrun);
return 1;
}
//Function Number: 20
blendintostandwalk()
{
if(self.a.movement != "stop")
{
self endon("movemode");
}
if(!isdefined(self.alwaysrunforward) && self.a.pose != "prone")
{
animscripts\run::setmovenonforwardanims(animscripts\utility::getmoveanim("move_b"),animscripts\utility::getmoveanim("move_l"),animscripts\utility::getmoveanim("move_r"));
}
self.a.pose = "stand";
self.a.movement = "walk";
}
//Function Number: 21
crouchtostand()
{
var_00 = 1;
if(isdefined(self.faststand))
{
var_00 = 1.8;
self.faststand = undefined;
}
if(animscripts\utility::usingsidearm())
{
playtransitionanimation(%pistol_crouchaimstraight2stand,"stand","stop",undefined,var_00);
return;
}
animscripts\utility::randomizeidleset();
playtransitionanimation(%crouch2stand,"stand","stop",undefined,var_00);
}
//Function Number: 22
crouchtocrouchwalk()
{
blendintocrouchwalk();
}
//Function Number: 23
crouchtostandwalk()
{
crouchtocrouchwalk();
blendintostandwalk();
}
//Function Number: 24
crouchwalktocrouch()
{
self.a.movement = "stop";
}
//Function Number: 25
crouchwalktostand()
{
crouchwalktocrouch();
crouchtostand();
}
//Function Number: 26
crouchruntocrouch()
{
self.a.movement = "stop";
}
//Function Number: 27
crouchruntostand()
{
crouchruntocrouch();
crouchtostand();
}
//Function Number: 28
crouchtocrouchrun()
{
blendintocrouchrun();
}
//Function Number: 29
crouchtostandrun()
{
return blendintostandrun();
}
//Function Number: 30
blendintocrouchrun()
{
if(isdefined(self.crouchrun_combatanim))
{
playblendtransition(self.crouchrun_combatanim,0.6,"crouch","run");
return;
}
self setanimknob(%crouchrun,1,0.4,self.moveplaybackrate);
if(animscripts\utility::usingsmg() && self.a.movement == "run" && !isdefined(self.custommoveanimset) && isdefined(self.custommoveanimset["run"]))
{
var_00 = "smg_crouch_run";
thread animscripts\run::updatemoveanimweights("crouchrun",animscripts\utility::lookupanim(var_00,"crouch"),animscripts\utility::lookupanim(var_00,"crouch_b"),animscripts\utility::lookupanim(var_00,"crouch_l"),animscripts\utility::lookupanim(var_00,"crouch_r"));
}
else
{
thread animscripts\run::updatemoveanimweights("crouchrun",animscripts\utility::getmoveanim("crouch"),animscripts\utility::getmoveanim("crouch_b"),animscripts\utility::getmoveanim("crouch_l"),animscripts\utility::getmoveanim("crouch_r"));
}
wait(0.05);
playblendtransition(%crouchrun,0.4,"crouch","run");
}
//Function Number: 31
pronetocrouchrun()
{
self orientmode("face current");
animscripts\utility::exitpronewrapper(1);
pronelegsstraighttree(0.2);
animscripts\cover_prone::updatepronewrapper(0.1);
playtransitionanimation(%prone_2_crouch,"crouch","run",animscripts\run::getcrouchrunanim());
}
//Function Number: 32
pronetostandrun()
{
pronetocrouchrun();
blendintostandrun();
}
//Function Number: 33
pronetocrouchwalk()
{
pronetocrouchrun();
blendintocrouchwalk();
}
//Function Number: 34
blendintocrouchwalk()
{
if(isdefined(self.crouchrun_combatanim))
{
self setanimknoball(self.crouchrun_combatanim,%body,1,0.4);
playblendtransition(self.crouchrun_combatanim,0.6,"crouch","walk");
self notify("BlendIntoCrouchWalk");
return;
}
self setanimknob(%crouchrun,1,0.4,self.moveplaybackrate);
thread animscripts\run::updatemoveanimweights("crouchrun",animscripts\utility::getmoveanim("crouch"),animscripts\utility::getmoveanim("crouch_b"),animscripts\utility::getmoveanim("crouch_l"),animscripts\utility::getmoveanim("crouch_r"));
wait(0.05);
playblendtransition(%crouchrun,0.4,"crouch","run");
}
//Function Number: 35
standtocrouch()
{
animscripts\utility::randomizeidleset();
var_00 = 1;
if(isdefined(self.fastcrouch))
{
var_00 = 1.8;
self.fastcrouch = undefined;
}
playtransitionanimation(%exposed_stand_2_crouch,"crouch","stop",undefined,var_00);
}
//Function Number: 36
pronetocrouch()
{
animscripts\utility::randomizeidleset();
self orientmode("face current");
animscripts\utility::exitpronewrapper(1);
pronelegsstraighttree(0.1);
animscripts\cover_prone::updatepronewrapper(0.1);
playtransitionanimation(%prone_2_crouch,"crouch","stop");
}
//Function Number: 37
pronetostand()
{
self orientmode("face current");
animscripts\utility::exitpronewrapper(1);
pronelegsstraighttree(0.1);
animscripts\cover_prone::updatepronewrapper(0.1);
playtransitionanimation(%prone_2_stand,"stand","stop");
}
//Function Number: 38
pronetostandwalk()
{
pronetocrouch();
crouchtocrouchwalk();
blendintostandwalk();
}
//Function Number: 39
pronetopronemove(param_00)
{
pronelegsstraighttree(0.1);
playtransitionanimation(%prone_2_prone_crawl,"prone",param_00,%prone_crawl);
animscripts\cover_prone::updatepronewrapper(0.1);
}
//Function Number: 40
pronetopronerun()
{
pronetopronemove("run");
}
//Function Number: 41
pronecrawltoprone()
{
pronelegsstraighttree(0.1);
animscripts\cover_prone::updatepronewrapper(0.1);
playtransitionanimation(%prone_crawl_2_prone,"prone","stop");
}
//Function Number: 42
crouchtoprone()
{
self setproneanimnodes(-45,45,%prone_legs_down,%exposed_aiming,%prone_legs_up);
animscripts\utility::enterpronewrapper(1);
pronelegsstraighttree(0.3);
animscripts\cover_prone::updatepronewrapper(0.1);
playtransitionanimation(%crouch_2_prone,"prone","stop");
}
//Function Number: 43
crouchtopronewalk()
{
crouchtoprone();
pronetopronerun();
}
//Function Number: 44
crouchtopronerun()
{
crouchtoprone();
pronetopronerun();
}
//Function Number: 45
standtoprone()
{
self endon("entered_poseprone");
var_00 = 0.5;
thread playtransitionanimationthread_withoutwaitsetstates(%stand_2_prone,"prone","stop",undefined,var_00);
self waittillmatch("anim_pose = \"crouch\","transAnimDone2");
waittillframeend;
self setproneanimnodes(-45,45,%prone_legs_down,%exposed_aiming,%prone_legs_up);
animscripts\utility::enterpronewrapper(var_00);
self.a.movement = "stop";
animscripts\cover_prone::updatepronewrapper(0.1);
self waittillmatch("end","transAnimDone2");
pronelegsstraighttree(0.2);
self setanim(%prone_aim_idle,1,0.1);
}
//Function Number: 46
standtopronewalk()
{
standtoprone();
pronetopronerun();
}
//Function Number: 47
standtopronerun()
{
standtoprone();
pronetopronerun();
}
//Function Number: 48
crouchruntoprone()
{
var_00 = 0.5;
self setproneanimnodes(-45,45,%prone_legs_down,%exposed_aiming,%prone_legs_up);
animscripts\utility::enterpronewrapper(var_00);
pronelegsstraighttree(0.2);
animscripts\cover_prone::updatepronewrapper(0.1);
var_01 = animscripts\utility::getquadrant(self getmotionangle());
var_02 = %crouch_2_prone;
var_03 = getmovedelta(var_02,0,1);
var_04 = self localtoworldcoords(var_03);
if(self maymovetopoint(var_04))
{
playtransitionanimation(var_02,"prone","stop",undefined,var_00);
return;
}
playtransitionanimation(%crouch_2_prone_firing,"prone","stop",undefined,var_00);
}
//Function Number: 49
crouchruntopronewalk()
{
crouchruntoprone();
pronetopronerun();
}
//Function Number: 50
crouchruntopronerun()
{
crouchruntoprone();
pronetopronerun();
}
//Function Number: 51
playtransitionanimationthread_withoutwaitsetstates(param_00,param_01,param_02,param_03,param_04)
{
self endon("killanimscript");
self endon("entered_pose" + param_01);
playtransitionanimationfunc(param_00,param_01,param_02,param_03,param_04,0);
}
//Function Number: 52
playtransitionanimation(param_00,param_01,param_02,param_03,param_04)
{
playtransitionanimationfunc(param_00,param_01,param_02,param_03,param_04,1);
}
//Function Number: 53
playtransitionanimationfunc(param_00,param_01,param_02,param_03,param_04,param_05)
{
if(!isdefined(param_04))
{
param_04 = 1;
}
if(param_05)
{
thread waitsetstates(getanimlength(param_00) / 2,"killtimerscript",param_01);
}
self setflaggedanimknoballrestart("transAnimDone2",param_00,%body,1,0.2,param_04);
if(!isdefined(self.a.pose))
{
self.pose = "undefined";
}
if(!isdefined(self.a.movement))
{
self.movement = "undefined";
}
var_06 = "";
animscripts\shared::donotetracks("transAnimDone2",undefined,var_06);
self notify("killtimerscript");
self.a.pose = param_01;
self notify("entered_pose" + param_01);
self.a.movement = param_02;
if(isdefined(param_03))
{
self setanimknoball(param_03,%body,1,0.3,param_04);
}
}
//Function Number: 54
waitsetstates(param_00,param_01,param_02)
{
self endon("killanimscript");
self endon("death");
self endon(param_01);
var_03 = self.a.pose;
wait(param_00);
if(var_03 != "prone" && param_02 == "prone")
{
animscripts\cover_prone::updatepronewrapper(0.1);
animscripts\utility::enterpronewrapper(1);
return;
}
if(var_03 == "prone" && param_02 != "prone")
{
animscripts\utility::exitpronewrapper(1);
self orientmode("face default");
}
}
//Function Number: 55
pronelegsstraighttree(param_00)
{
self setanimknoball(%prone_legsstraight,%body,1,param_00,1);
}