From 525b9e33eb34d52bb0fb37f088e8c406727b1e79 Mon Sep 17 00:00:00 2001 From: Marisa the Magician Date: Sat, 14 Jan 2023 19:14:39 +0100 Subject: [PATCH] Use new let syntax for multiple returns. --- language.version | 4 +-- zscript/dlc1/swwm_heavymahsheengun.zsc | 6 ++-- zscript/dlc1/swwm_mister.zsc | 15 +++------ zscript/dlc1/swwm_mister_fx.zsc | 21 +++++-------- zscript/dlc1/swwm_notashotgun.zsc | 9 ++---- zscript/dlc1/swwm_notashotgun_fx.zsc | 3 +- zscript/handler/swwm_handler_cheats.zsc | 4 +-- zscript/handler/swwm_handler_crosshair.zsc | 4 +-- zscript/handler/swwm_handler_damage.zsc | 8 ++--- zscript/handler/swwm_handler_debugrender.zsc | 6 ++-- zscript/handler/swwm_handler_iwantdie.zsc | 3 +- zscript/handler/swwm_handler_shaders.zsc | 3 +- zscript/handler/swwm_handler_worldload.zsc | 4 +-- zscript/hud/swwm_hud_weapons.zsc | 3 +- zscript/items/swwm_miscitems.zsc | 3 +- zscript/items/swwm_powerups_vip.zsc | 9 ++---- zscript/kbase/swwm_kbase_list.zsc | 3 +- zscript/kbase/swwm_kbasetab_inventory.zsc | 18 ++++------- zscript/kbase/swwm_kbasetab_store.zsc | 6 ++-- zscript/menu/swwm_menus.zsc | 8 ++--- zscript/player/swwm_player_inventory.zsc | 4 +-- zscript/player/swwm_player_move.zsc | 13 +++----- zscript/player/swwm_player_think.zsc | 8 ++--- zscript/player/swwm_player_tick.zsc | 4 +-- zscript/swwm_blod.zsc | 10 +++--- zscript/swwm_gesture.zsc | 7 ++--- zscript/swwm_gesture_fx.zsc | 4 +-- zscript/utility/swwm_utility_math.zsc | 3 +- zscript/weapons/swwm_baseweapon_melee.zsc | 4 +-- zscript/weapons/swwm_blazeit.zsc | 18 +++++------ zscript/weapons/swwm_cbt.zsc | 9 +++--- zscript/weapons/swwm_danmaku.zsc | 31 +++++++++---------- zscript/weapons/swwm_danmaku_fx.zsc | 3 +- zscript/weapons/swwm_deathlydeathcannon.zsc | 5 ++- .../weapons/swwm_deathlydeathcannon_altfx.zsc | 9 ++---- .../weapons/swwm_deathlydeathcannon_fx.zsc | 4 +-- zscript/weapons/swwm_deepdarkimpact.zsc | 9 +++--- zscript/weapons/swwm_shot.zsc | 9 ++---- zscript/weapons/swwm_sparkyboi.zsc | 9 +++--- zscript/weapons/swwm_sparkyboi_fx.zsc | 6 ++-- zscript/weapons/swwm_splode.zsc | 25 ++++++--------- zscript/weapons/swwm_splode_fx.zsc | 6 ++-- zscript/weapons/swwm_tastytreat.zsc | 20 +++++------- zscript/weapons/swwm_tastytreat_fx.zsc | 3 +- zscript/weapons/swwm_thiccboolet.zsc | 18 ++++------- zscript/weapons/swwm_thiccboolet_fx.zsc | 6 ++-- 46 files changed, 143 insertions(+), 244 deletions(-) diff --git a/language.version b/language.version index fd3f53442..924f563f6 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r732 \cu(Sat 14 Jan 18:30:22 CET 2023)\c-"; -SWWM_SHORTVER="\cw1.3pre r732 \cu(2023-01-14 18:30:22)\c-"; +SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r733 \cu(Sat 14 Jan 19:14:39 CET 2023)\c-"; +SWWM_SHORTVER="\cw1.3pre r733 \cu(2023-01-14 19:14:39)\c-"; diff --git a/zscript/dlc1/swwm_heavymahsheengun.zsc b/zscript/dlc1/swwm_heavymahsheengun.zsc index 94ff407e6..121eaf34a 100644 --- a/zscript/dlc1/swwm_heavymahsheengun.zsc +++ b/zscript/dlc1/swwm_heavymahsheengun.zsc @@ -80,8 +80,7 @@ Class HeavyMahSheenGun : SWWMWeapon action void A_DropCasing() { - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetFireOffset(self,4,8,-12); let c = Spawn("SheenCasing",origin); c.angle = angle; @@ -144,8 +143,7 @@ Class HeavyMahSheenGun : SWWMWeapon invoker.Ammo1.Amount--; invoker.fired = gametic; // dakka dakka dakka - Vector3 x2, y2, z2; - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); double a = FRandom[Sheen](0,360), s = FRandom[Sheen](.002,.02)*spreadfct; Vector3 dir = SWWMUtility.ConeSpread(x2,y2,z2,a,s); if ( !invoker.st ) invoker.st = new("PiercingTracer"); diff --git a/zscript/dlc1/swwm_mister.zsc b/zscript/dlc1/swwm_mister.zsc index 9919fc07f..fcb4c0a75 100644 --- a/zscript/dlc1/swwm_mister.zsc +++ b/zscript/dlc1/swwm_mister.zsc @@ -349,8 +349,7 @@ Class MisterRifle : SWWMWeapon A_ChangeModel("",1,"","",10,"models","",CMDL_USESURFACESKIN,-1); if ( !invoker.waschambered ) return; // brass it up (though it's not made of brass) - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetFireOffset(self,2,3,-18); let c = Spawn("MisterCasing",origin); c.angle = angle; @@ -394,8 +393,7 @@ Class MisterRifle : SWWMWeapon A_ChangeModel("",1,"","",7,"models","",CMDL_USESURFACESKIN,-1); if ( swwm_nomagdrop ) return; // drop it - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetFireOffset(self,6,3,-18); let c = Spawn("MisterMag",origin); c.angle = angle; @@ -481,8 +479,7 @@ Class MisterRifle : SWWMWeapon s.vel += vel*.5+x*FRandom[Mister](1.,4.); s.SetShade(Color(0,3,4)*Random[ExploS](48,63)); } - Vector3 x2, y2, z2; - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); double a, s; Vector3 dir; for ( int i=0; i<8; i++ ) @@ -612,8 +609,7 @@ Class MisterRifle : SWWMWeapon s.vel += vel*.5+x*FRandom[Mister](1.,2.); s.SetShade(Color(0,3,4)*Random[ExploS](48,63)); } - Vector3 x2, y2, z2; - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); static const double spd[] = {.00,.01,.03,.06,.10}; double a = FRandom[Mister](0,360), s = FRandom[Mister](spd[index],spd[index+1]); Vector3 dir = SWWMUtility.ConeSpread(x2,y2,z2,a,s); @@ -1097,8 +1093,7 @@ Class MisterRifle : SWWMWeapon A_ChangeModel("",1,"","",9,"models","",CMDL_USESURFACESKIN,-1); if ( !invoker.wasgchambered ) return; // droppage - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetFireOffset(self,8,3,-18); let c = Spawn("MisterGCasing",origin); c.angle = angle; diff --git a/zscript/dlc1/swwm_mister_fx.zsc b/zscript/dlc1/swwm_mister_fx.zsc index 692a3177b..f81147c72 100644 --- a/zscript/dlc1/swwm_mister_fx.zsc +++ b/zscript/dlc1/swwm_mister_fx.zsc @@ -197,8 +197,7 @@ Class MisterFuzzy : SWWMNonInteractiveActor return; } if ( isFrozen() ) return; - int nhit, nkill; - [nhit, nkill] = SWWMUtility.DoExplosion(self,(special2<0)?4:44,3000,80,80,DE_EXTRAZTHRUST|DE_COUNTENEMIES); + let [nhit, nkill] = SWWMUtility.DoExplosion(self,(special2<0)?4:44,3000,80,80,DE_EXTRAZTHRUST|DE_COUNTENEMIES); if ( mrc ) mrc.nkill += nkill; special1--; if ( special1 <= 0 ) @@ -326,8 +325,7 @@ Class MisterPop : SWWMNonInteractiveActor } BLPF C 2 Bright { - int nhit, nkill; - [nhit, nkill] = SWWMUtility.DoExplosion(self,4,2000,50,50,DE_EXTRAZTHRUST|DE_COUNTENEMIES); + let [nhit, nkill] = SWWMUtility.DoExplosion(self,4,2000,50,50,DE_EXTRAZTHRUST|DE_COUNTENEMIES); if ( mrc ) mrc.nkill += nkill; } TNT1 A 1 @@ -607,8 +605,7 @@ Class MisterRailEntryImpact : MisterBulletImpact override void A_BulletExplode() { A_AlertMonsters(swwm_uncapalert?0:2000,AMF_EMITFROMTARGET); - int nhit, nkill; - [nhit, nkill] = SWWMUtility.DoExplosion(self,444,200000,100,100,DE_EXTRAZTHRUST|DE_COUNTENEMIES); + let [nhit, nkill] = SWWMUtility.DoExplosion(self,444,200000,100,100,DE_EXTRAZTHRUST|DE_COUNTENEMIES); if ( mrc ) mrc.nkill += nkill; A_QuakeEx(6.,6.,6.,10,0,400,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,falloff:150,rollintensity:.8); A_StartSound("mister/hitover",CHAN_VOICE,attenuation:.35); @@ -661,8 +658,7 @@ Class MisterRailEntryImpact : MisterBulletImpact { if ( special1 && (special1 <= 10) ) { - int nhit, nkill; - [nhit, nkill] = SWWMUtility.DoExplosion(self,44,3000+special1*50,80+special1*4,80+special1*4,DE_EXTRAZTHRUST|DE_COUNTENEMIES); + let [nhit, nkill] = SWWMUtility.DoExplosion(self,44,3000+special1*50,80+special1*4,80+special1*4,DE_EXTRAZTHRUST|DE_COUNTENEMIES); if ( mrc ) mrc.nkill += nkill; int numpt = Random[ExploS](0,special1/2); for ( int i=0; i=4) ) A_StartSound("quadshot/pointblank",CHAN_WEAPON,CHANF_OVERLAP,.6+idx*.1,.4-idx*.05,1.2-idx*.05); - Vector3 x2, y2, z2; - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); double a, s; Actor p; bool bExtra = ((idx>=4)&&invoker.chambered&&!invoker.charged); @@ -300,8 +298,7 @@ Class Quadravol : SWWMWeapon action void A_DropCasing() { - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetFireOffset(self,-8,8,-16); if ( invoker.wascharged ) { diff --git a/zscript/dlc1/swwm_notashotgun_fx.zsc b/zscript/dlc1/swwm_notashotgun_fx.zsc index 51a425c2d..05e2dcc62 100644 --- a/zscript/dlc1/swwm_notashotgun_fx.zsc +++ b/zscript/dlc1/swwm_notashotgun_fx.zsc @@ -227,8 +227,7 @@ Class QuadProj : Actor void A_QuadMove() { A_QuadTrail(); - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetAxes(angle,pitch,roll); + let [x, y, z] = SWWMUtility.GetAxes(angle,pitch,roll); double a = FRandom[Quadravol](0.,360.), s = FRandom[Quadravol](0.,drift); vel += x*(accelrate/GameTicRate); vel += SWWMUtility.CircleOffset(y,z,a,s); diff --git a/zscript/handler/swwm_handler_cheats.zsc b/zscript/handler/swwm_handler_cheats.zsc index 933638a61..705636b28 100644 --- a/zscript/handler/swwm_handler_cheats.zsc +++ b/zscript/handler/swwm_handler_cheats.zsc @@ -49,9 +49,7 @@ extend Class SWWMHandler Console.Printf("\cyStay out of trouble.\c-"); S_StartSound("menu/buyinv",CHAN_ITEM,CHANF_UI); } - Vector3 safepos; - double safeangle; - [safepos, safeangle] = level.PickPlayerStart(e.Args[0]); + let [safepos, safeangle] = level.PickPlayerStart(e.Args[0]); players[e.Args[0]].mo.Teleport(safepos,safeangle,0); } else if ( e.Name ~== "swwmweaponcheat" ) diff --git a/zscript/handler/swwm_handler_crosshair.zsc b/zscript/handler/swwm_handler_crosshair.zsc index ff87e7936..a7a799dd7 100644 --- a/zscript/handler/swwm_handler_crosshair.zsc +++ b/zscript/handler/swwm_handler_crosshair.zsc @@ -52,9 +52,9 @@ extend Class SWWMHandler } let mo = players[consoleplayer].mo; if ( !ctr ) ctr = new("SWWMCrosshairTracer"); - Vector3 x, y, z, ofs, origin; + Vector3 ofs, origin; Color col; - [x, y, z] = SWWMUtility.GetAxes(e.ViewAngle,e.ViewPitch,e.ViewRoll); + let [x, y, z] = SWWMUtility.GetAxes(e.ViewAngle,e.ViewPitch,e.ViewRoll); int chp = crosshairhealth; for ( int i=0; i impactclass ) { - Vector3 x, y, z, dir; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + Vector3 dir; + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetPlayerEye(self); if ( !invoker.mt ) invoker.mt = new("MeleeTracer"); let mt = invoker.mt; // for convenience diff --git a/zscript/weapons/swwm_blazeit.zsc b/zscript/weapons/swwm_blazeit.zsc index 89e0784cc..04aa1cfbb 100644 --- a/zscript/weapons/swwm_blazeit.zsc +++ b/zscript/weapons/swwm_blazeit.zsc @@ -67,15 +67,13 @@ Class Hellblazer : SWWMWeapon invoker.clipcount = max(0,invoker.clipcount-1); invoker.magstate[invoker.magpos-invoker.preload] = true; invoker.spinskipped++; - Vector3 x, y, z, x2, y2, z2, dir, origin; - double a, s; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); SWWMUtility.DoKnockback(self,-x,bAlt?22000.:32000.); - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); - origin = SWWMUtility.GetFireOffset(self,10,3.5,-5); - a = FRandom[Hellblazer](0,360); - s = FRandom[Hellblazer](0,bAlt?.02:.005); - dir = SWWMUtility.ConeSpread(x2,y2,z2,a,s); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + Vector3 origin = SWWMUtility.GetFireOffset(self,10,3.5,-5); + double a = FRandom[Hellblazer](0,360); + double s = FRandom[Hellblazer](0,bAlt?.02:.005); + Vector3 dir = SWWMUtility.ConeSpread(x2,y2,z2,a,s); let p = Spawn(bAlt?"HellblazerMissile2":"HellblazerMissile",origin); p.target = self; int tidx = max(0,invoker.seekcnt-(invoker.preload+1)); @@ -218,8 +216,8 @@ Class Hellblazer : SWWMWeapon if ( invoker.seekcnt > invoker.preload ) return; Vector3 origin = SWWMUtility.GetPlayerEye(self); // try to catch target in cone of vision - Vector3 x, y, z, dir; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + Vector3 dir; + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Array hits; hits.Clear(); int rings = 1; diff --git a/zscript/weapons/swwm_cbt.zsc b/zscript/weapons/swwm_cbt.zsc index be5618540..3c274f64d 100644 --- a/zscript/weapons/swwm_cbt.zsc +++ b/zscript/weapons/swwm_cbt.zsc @@ -178,10 +178,10 @@ Class Wallbuster : SWWMWeapon player.SetPsprite(PSP_WEAPON,ResolveState("DryFire")); return; } - Vector3 x, y, z, origin, x2, y2, z2, dir; + Vector3 origin, dir; double a, s; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); int flashstr = 0; int alertness = 0; // second pass, play the fire effects @@ -359,8 +359,7 @@ Class Wallbuster : SWWMWeapon { if ( invoker.fired[invoker.rotation[5]*5+i] ) { - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); Vector3 origin = SWWMUtility.GetFireOffset(self,10,-3,-13); let c = Spawn("RedShellCasing",origin); c.angle = angle; diff --git a/zscript/weapons/swwm_danmaku.zsc b/zscript/weapons/swwm_danmaku.zsc index ed9de8475..1a0f02318 100644 --- a/zscript/weapons/swwm_danmaku.zsc +++ b/zscript/weapons/swwm_danmaku.zsc @@ -77,12 +77,12 @@ Class Eviscerator : SWWMWeapon A_PlayerFire(); SWWMHandler.DoFlash(self,Color(64,255,224,96),3); A_AlertMonsters(swwm_uncapalert?0:4500); - Vector3 x, y, z, x2, y2, z2, dir, origin; + Vector3 dir; double a, s; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); SWWMUtility.DoKnockback(self,-x,25000.); - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); - origin = SWWMUtility.GetFireOffset(self,10,4,-5); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + Vector3 origin = SWWMUtility.GetFireOffset(self,10,4,-5); int trail = CVar.GetCVar('swwm_funtrails',player).GetInt(); if ( trail == 8 ) trail = Random[Eviscerator](1,7); for ( int i=0; i<30; i++ ) @@ -152,14 +152,13 @@ Class Eviscerator : SWWMWeapon A_PlayerFire(); SWWMHandler.DoFlash(self,Color(16,255,224,96),3); A_AlertMonsters(swwm_uncapalert?0:4000); - Vector3 x, y, z, x2, y2, z2, dir, origin; - double a, s; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); + Vector3 dir; + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); SWWMUtility.DoKnockback(self,-x,32000.); - [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); - origin = SWWMUtility.GetFireOffset(self,10,3,-5); - a = FRandom[Eviscerator](0,360); - s = FRandom[Eviscerator](0,invoker.extended?.003:.02); + let [x2, y2, z2] = SWWMUtility.GetPlayerAxesAutoAimed(self); + Vector3 origin = SWWMUtility.GetFireOffset(self,10,3,-5); + double a = FRandom[Eviscerator](0,360); + double s = FRandom[Eviscerator](0,invoker.extended?.003:.02); dir = SWWMUtility.ConeSpread(x2,y2,z2,a,s); let p = Spawn("EvisceratorProj",origin); p.target = self; @@ -186,9 +185,8 @@ Class Eviscerator : SWWMWeapon action void A_EvisceratorEject() { - Vector3 x, y, z, origin; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); - origin = SWWMUtility.GetFireOffset(self,10,-10,-10); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); + Vector3 origin = SWWMUtility.GetFireOffset(self,10,-10,-10); let c = Spawn("EvisceratorCasing",origin); c.angle = angle; c.pitch = pitch; @@ -199,9 +197,8 @@ Class Eviscerator : SWWMWeapon action void A_EvisceratorCasingSmoke( Vector3 ofs ) { - Vector3 x, y, z, origin; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); - origin = SWWMUtility.GetFireOffset(self,ofs.x,ofs.y,ofs.z); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); + Vector3 origin = SWWMUtility.GetFireOffset(self,ofs.x,ofs.y,ofs.z); let s = Spawn("SWWMHalfSmoke",origin); s.scale *= .2; s.alpha *= .4; diff --git a/zscript/weapons/swwm_danmaku_fx.zsc b/zscript/weapons/swwm_danmaku_fx.zsc index 0c4c4b504..391a52aaf 100644 --- a/zscript/weapons/swwm_danmaku_fx.zsc +++ b/zscript/weapons/swwm_danmaku_fx.zsc @@ -429,9 +429,8 @@ Class EvisceratorProj : Actor A_AlertMonsters(swwm_uncapalert?0:3000,AMF_EMITFROMTARGET); if ( !Tracer ) Spawn("EvisceratorProjSmoke",pos); Spawn("EvisceratorProjLight",pos); - Vector3 x, y, z; double a, s; - [x, y, z] = SWWMUtility.GetAxes(angle,pitch,roll); + let [x, y, z] = SWWMUtility.GetAxes(angle,pitch,roll); EvisceratorChunk p; Vector3 spawnofs; if ( BlockingMobj ) spawnofs = (0,0,0); diff --git a/zscript/weapons/swwm_deathlydeathcannon.zsc b/zscript/weapons/swwm_deathlydeathcannon.zsc index 61ff9234e..1256412cc 100644 --- a/zscript/weapons/swwm_deathlydeathcannon.zsc +++ b/zscript/weapons/swwm_deathlydeathcannon.zsc @@ -98,9 +98,8 @@ Class Ynykron : SWWMWeapon action void A_Backblast() { - Vector3 x, y, z, origin; - [x, y, z] = SWWMUtility.GetPlayerAxes(self); - origin = SWWMUtility.GetFireOffset(self,-15,4,-1); + let [x, y, z] = SWWMUtility.GetPlayerAxes(self); + let origin = SWWMUtility.GetFireOffset(self,-15,4,-1); int numpt = Random[Ynykron](10,20); for ( int i=0; i 1) && !Random[Sparkster](0,3) ) { - Vector3 x, y, z; - [x, y, z] = SWWMUtility.GetAxes(angle,pitch,roll); + let [x, y, z] = SWWMUtility.GetAxes(angle,pitch,roll); for ( int i=0; i