diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..94b43bd --- /dev/null +++ b/.gitattributes @@ -0,0 +1,29 @@ +# Auto detect text files and perform LF normalization +* filter=lfs diff=lfs merge=lfs -text +*.esm filter= diff= merge= -text +*.esp filter= diff= merge= -text +*.pex filter= diff= merge= -text +*.dlstrings filter= diff= merge= -text +*.ilstrings filter= diff= merge= -text +*.strings filter= diff= merge= -text +*.gitignore filter= diff= merge= text eol=lf +*.gitattributes filter= diff= merge= text eol=lf +*.xml filter= diff= merge= text eol=crlf +*.json filter= diff= merge= text eol=lf +*.md filter= diff= merge= text eol=crlf +*.ini filter= diff= merge= text eol=crlf +*.txt filter= diff= merge= text eol=crlf +*.psc filter= diff= merge= text eol=crlf +*.cpp filter= diff= merge= text eol=crlf +*.h filter= diff= merge= text eol=crlf +*.filters filter= diff= merge= text eol=crlf +*.def filter= diff= merge= text eol=crlf +*.user filter= diff= merge= text eol=crlf +*.vcxproj filter= diff= merge= text eol=crlf +*.vcproj filter= diff= merge= text eol=crlf +*.vssscc filter= diff= merge= text eol=crlf +*.sln filter= diff= merge= text eol=crlf +*.pas filter= diff= merge= text eol=crlf +*.props filter= diff= merge= text eol=crlf +*.gek filter= diff= merge= text eol=crlf +*.flm filter= diff= merge= text eol=crlf diff --git a/mod/Cyberware 2281.url b/mod/Cyberware 2281.url new file mode 100644 index 0000000..5fdd500 --- /dev/null +++ b/mod/Cyberware 2281.url @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4f11cf2975e1e74b5c26e7635ca32ff91ab53c6b2adbc83d905a4934ea0fd06 +size 68 diff --git a/mod/Cyberware OWB.esp b/mod/Cyberware OWB.esp new file mode 100644 index 0000000..d01292c Binary files /dev/null and b/mod/Cyberware OWB.esp differ diff --git a/mod/Cyberware.esm b/mod/Cyberware.esm new file mode 100644 index 0000000..5addf98 Binary files /dev/null and b/mod/Cyberware.esm differ diff --git a/mod/Menus/prefabs/cyberware/cw_adrenaline_booster.xml b/mod/Menus/prefabs/cyberware/cw_adrenaline_booster.xml new file mode 100644 index 0000000..8fb5b48 --- /dev/null +++ b/mod/Menus/prefabs/cyberware/cw_adrenaline_booster.xml @@ -0,0 +1,96 @@ + +<_CWxScale> + 1 + + + + + 1 + + + + + +<_CWxMeterFont> + 7 + + 3 + + + + + +<_PNxAPBonusEnabled> 0 +<_PNxAPBonusValue> 0 + + + + + + + + 0 + + + + + 2 + &left; + + + + 100 + + + + + + + +
2
+
+ +
+ + + + + + + 10 + + 11 + + + +
+ + + 2 + &right; + + + + + + + + + + + + + + 2 + &left; + + % + + + + + + + + + +
diff --git a/mod/Menus/prefabs/cyberware/cw_arscanner.xml b/mod/Menus/prefabs/cyberware/cw_arscanner.xml new file mode 100644 index 0000000..a9456bb --- /dev/null +++ b/mod/Menus/prefabs/cyberware/cw_arscanner.xml @@ -0,0 +1,789 @@ + +<_CWxScannerEnabled> 0 + +<_CWxScannerCursorLine> 0 +<_CWxScannerCursorPos> 0 +<_CWxScannerCursorIndent> 0 +<_CWxScannerCursorBlink> 0 + +<_CWxScannerText1Index> 0 +<_CWxScannerText2Index> 0 +<_CWxScannerText3Index> 0 +<_CWxScannerText4Index> 0 +<_CWxScannerText5Index> 0 +<_CWxScannerText6Index> 0 +<_CWxScannerText7Index> 0 +<_CWxScannerText8Index> 0 +<_CWxScannerText9Index> 0 +<_CWxScannerText10Index> 0 + +<_CWxScannerBoyEnabled> 0 +<_CWxScannerBoyHeadDamage> 0 +<_CWxScannerBoyTorsoDamage> 0 +<_CWxScannerBoyLeftLegDamage> 0 +<_CWxScannerBoyLeftArmDamage> 0 +<_CWxScannerBoyRightLegDamage> 0 +<_CWxScannerBoyRightArmDamage> 0 + +<_CWxScannerHealth> 1.0 +<_CWxScannerDamage> 0 + +<_CWxScannerTextHP> 0 +<_CWxScannerTextDT> 0 + + + + + + + + + + + 20 + + + + +
2
+ + +
2
+
+
+ + 384 + 512 + + + &scale; + 0 + + 180 + + + + + + + + + + + + + + 128 + + + + + + + + + + + + + <_filename_0> cyberware\hud\scan\scannerbracket1.dds + <_filename_1> cyberware\hud\scan\scannerbracket2.dds + + + + + &scale; + -1 + + &nosystemcolor; + 120 + 0 + 0 + 0 + + + + + + + + 14 + + + + + 14 + + + + + 28 + + + + + 28 + + + Interface\Shared\solid.dds + + + + &scale; + 1 + + + + + + 220 + + + + + + 20 + + + + + 90 + + + + + + + + 125 + + + + +
2
+
+ + +
2
+
+
+ + 180 + 195 + + cyberware\hud\scan\ScannerBoy_base.dds + + + + &scale; + 0 + + + + + + &nosystemcolor; + + 230 + 0 + 0 + + 230 + + + + + + + + + cyberware\hud\scan\ScannerBoy_head.dds + + + + &scale; + 0 + + + + + + &nosystemcolor; + + 230 + 0 + 0 + + 230 + + + + + + + + + cyberware\hud\scan\ScannerBoy_torso.dds + + + + &scale; + 0 + + + + + + &nosystemcolor; + + 230 + 0 + 0 + + 230 + + + + + + + + + cyberware\hud\scan\ScannerBoy_leftarm.dds + + + + &scale; + 0 + + + + + + &nosystemcolor; + + 230 + 0 + 0 + + 230 + + + + + + + + + cyberware\hud\scan\ScannerBoy_rightarm.dds + + + + &scale; + 0 + + + + + + &nosystemcolor; + + 230 + 0 + 0 + + 230 + + + + + + + + + cyberware\hud\scan\ScannerBoy_leftleg.dds + + + + &scale; + 0 + + + + + + &nosystemcolor; + + + 230 + + + 0 + 0 + + 230 + + + + + + + + + cyberware\hud\scan\ScannerBoy_rightleg.dds + + + + 100 + 0 + + + + + + 230 + + + + 8 + + + + + 7 + + 200 + + + + 196 + 64 + + cyberware\hud\scan\healthseperator.dds + + + + 80 + 1 + &true; + + + + + + 200 + + + + 47 + + + + 2 + + + + 94 + + + + + 6 + + + Interface\HUD\hud_tick_mark.dds + + + + &scale; + 3 + + + + + + + + + + + + + +
2
+
+
+ + + 25 + + + 50 + + + 50 + + + Interface\HUD\glow_xp_bar_pointer.dds + + + + 3 + 2 + + + + + + HP: + + + 18 + + + + + 35 + + + + + 3 + 2 + + + + + + + + + + + + + + + + + 3 + 2 + + + + + + DT: + + + + 1 + + + + + + + + 3 + 2 + + + + + + + + + + + 20 + + + + + + + <_text_pos_x> + + 30 + + + <_text_pos_y> + + 30 + + + <_line_height> 31 + <_indent_width> 20 + + + &scale; + 1 + + + + 0 + + + 200 + + + + + + 15 + + + + + + + + + + + + + + + 4 + + + 11 + 22 + + Interface\Shared\solid.dds + + + + + + <_line> 0 + + <_dat_1>S + <_dat_2>SC + <_dat_3>SCA + <_dat_4>SCAN + <_dat_5>SCANN + <_dat_6>SCANNI + <_dat_7>SCANNIN + <_dat_8>SCANNING + <_dat_9>SCANNING. + <_dat_10>SCANNING.. + <_dat_11>SCANNING... + + <_index> + + + + + + <_line> 2 + + <_dat_1>T + <_dat_2>TH + <_dat_3>THR + <_dat_4>THRE + <_dat_5>THREA + <_dat_6>THREAT + <_dat_7>THREAT: + + <_index> + + + + + + + <_line> 3 + <_indent> 2 + + <_dat_1>h + <_dat_2>hi + <_dat_3>hig + <_dat_4>high + + <_dat_5>m + <_dat_6>me + <_dat_7>med + <_dat_8>medi + <_dat_9>mediu + <_dat_10>medium + + <_dat_11>l + <_dat_12>lo + <_dat_13>low + + <_index> + + + + + + + + <_line> 5 + + <_dat_1>A + <_dat_2>AW + <_dat_3>AWA/ + <_dat_4>AWAR + <_dat_5>AWARE + <_dat_6>AWAREN/ + <_dat_7>AWARENE + <_dat_8>AWARENES + <_dat_9>AWARENESS + <_dat_10>AWARENESS: + + <_index> + + + + + + <_line> 6 + <_indent> 2 + + <_dat_1>h + <_dat_2>hi + <_dat_3>hig + <_dat_4>high + + <_dat_5>m + <_dat_6>me + <_dat_7>med + <_dat_8>medi + <_dat_9>mediu + <_dat_10>medium + + <_dat_11>l + <_dat_12>lo + <_dat_13>low + + <_index> + + + + + + + <_line> 8 + + <_dat_1>C + <_dat_2>CO + <_dat_3>COM + <_dat_4>COMB + <_dat_5>COMBA + <_dat_6>COMBAT + <_dat_7>COMBAT R + <_dat_8>COMBAT RA + <_dat_9>COMBAT RAN + <_dat_10>COMBAT RANG + <_dat_11>COMBAT RANGE + <_dat_12>COMBAT RANGE: + + <_index> + + + + + + <_line> 9 + <_indent> 2 + + <_dat_1>l + <_dat_2>lo + <_dat_3>lon + <_dat_4>long + + <_dat_5>m + <_dat_6>me + <_dat_7>med + <_dat_8>medi + <_dat_9>mediu + <_dat_10>medium + + <_dat_11>s + <_dat_12>sh + <_dat_13>sho + <_dat_14>shor + <_dat_15>short + + <_dat_16>m + <_dat_17>me + <_dat_18>mel + <_dat_19>mele + <_dat_20>melee + + <_index> + + + + + + <_line> 11 + + <_dat_1>D + <_dat_2>DI + <_dat_3>DIS + <_dat_4>DISP + <_dat_5>DISPO + <_dat_6>DISPOS + <_dat_7>DISPOSI + <_dat_8>DISPOSIT + <_dat_9>DISPOSITI + <_dat_10>DISPOSITIO + <_dat_11>DISPOSITION + <_dat_12>DISPOSITION: + + <_index> + + + + + + <_line> 12 + <_indent> 2 + + <_dat_1>a + <_dat_2>al + <_dat_3>all + <_dat_4>alli + <_dat_5>allie + <_dat_6>allied + + <_dat_7>n + <_dat_8>ne + <_dat_9>neu + <_dat_10>neut + <_dat_11>neutr + <_dat_12>neutra + <_dat_13>neutral + + <_dat_14>h + <_dat_15>ho + <_dat_16>hos + <_dat_17>host + <_dat_18>hosti + <_dat_19>hostil + <_dat_20>hostile + + <_index> + + + + + + <_line> 14 + + <_dat_1>D + <_dat_2>DO + <_dat_3>DON + <_dat_4>DONE + <_dat_5>DONE. + + <_index> + + +
diff --git a/mod/Menus/prefabs/cyberware/cw_bionic_eyes.xml b/mod/Menus/prefabs/cyberware/cw_bionic_eyes.xml new file mode 100644 index 0000000..ab6f875 --- /dev/null +++ b/mod/Menus/prefabs/cyberware/cw_bionic_eyes.xml @@ -0,0 +1,126 @@ + +<_PNxGrainPhase> 0 +<_PNxGrainAmount> 0 +<_PNxGrainColorRed> 1.0 +<_PNxGrainColorGreen> 1.0 +<_PNxGrainColorBlue> 1.0 + + + + + + 0 + + 0 + 0 + + + + + + + + 255 + + + + 255 + + + + 255 + + + + 255 + + + + + &scale; + -11 + &nosystemcolor; + + + + + + + + + + + + 1 + + + cyberware\hud\grain\grain1.dds + + + + &scale; + -11 + &nosystemcolor; + + + + + + + + + + + + 2 + + + cyberware\hud\grain\grain2.dds + + + + + &scale; + -11 + &nosystemcolor; + + + + + + + + + + + + 3 + + + cyberware\hud\grain\grain3.dds + + + + + &scale; + -11 + &nosystemcolor; + + + + + + + + + + + + 4 + + + cyberware\hud\grain\grain4.dds + + + + diff --git a/mod/Menus/prefabs/cyberware/cw_implants.xml b/mod/Menus/prefabs/cyberware/cw_implants.xml new file mode 100644 index 0000000..42068df --- /dev/null +++ b/mod/Menus/prefabs/cyberware/cw_implants.xml @@ -0,0 +1,1762 @@ + +<_CWxImplants> 1 +<_CWxHasDUIF3> + + +<_PNxImplantsPanelEnabled> 0 +<_PNxImplantsPanelAcceptEnabled> 0 +<_PNxImplantsPanelAcceptSelected> +<_PNxImplantsPanelCaps> 0 +<_PNxImplantsPanelPrice> 0 + +<_PNxCyberboyRegion> 0 +<_PNxCyberboyRegionReset> 0 +<_PNxCyberboyLineNum> 0 +<_PNxCyberboyShowRightSlot1> 0 +<_PNxCyberboyShowRightSlot2> 0 +<_PNxCyberboyShowLeftSlot1> 0 +<_PNxCyberboyShowLeftSlot2> 0 +<_PNxCyberboyMenuActive> 0 + +<_PNxCyberboyRightImplant1State> 0 +<_PNxCyberboyRightImplant2State> 0 +<_PNxCyberboyLeftImplant1State> 0 +<_PNxCyberboyLeftImplant2State> 0 + +<_PNxCyberboyRightImplant1Path> +<_PNxCyberboyRightImplant2Path> +<_PNxCyberboyLeftImplant1Path> +<_PNxCyberboyLeftImplant2Path> + +<_PNxCyberboyHeadSelected> +<_PNxCyberboyTorsoSelected> +<_PNxCyberboyRightArmSelected> +<_PNxCyberboyLeftArmSelected> +<_PNxCyberboyRightLegSelected> +<_PNxCyberboyLeftLegSelected> + +<_PNxCyberboyRightImplant1Selected> +<_PNxCyberboyRightImplant2Selected> +<_PNxCyberboyLeftImplant1Selected> +<_PNxCyberboyLeftImplant2Selected> + + + + + + + + + + &hudmain; + + &scale; + 0 + + 180 + + 0 + 0 + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\background.dds + + + + + + + + &nosystemcolor; + + &scale; + 11 + + + +
2
+ + +
2
+
+
+ + + +
2
+ + +
2
+
+
+ + 1024 + 576 + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\cyboy_lines.dds + + + + + + + + Interface\Shared\Background\solid_black.dds + + + + + + + + + + + +
2
+
+ + + +
2
+
+ &scale; + + 128 + + &true; + <_scale> 0.8 + + + &true; + 3 + <_buffer> 10 + + + + <_x> 48 + <_y> 96 + + + + + <_length> 50 + + + + 0 + + 2 + + + + + + + + + + + + + +
2
+
+ 5 +
+ 6 + Cybernetic Implants +
+ + + + + + + + + + <_length> + + + + + + + + <_x> + + + + + &xbox; + + + <_y> + + + + + <_bottom_to_top> &true; + <_x> + <_y> + + + + + + + + <_length> + + + + + + + + + + + cyberware\hud\cy\nevada.dds + &scale; + + + + + + + + + +
2
+
+
+ 34 + 118 + + + + + <_length> + + + + + + + + + + + + + <_bottom_to_top> &true; + <_x> + <_y> + + + + + <_bottom_to_top> &true; + <_x> + +
2
+ + <_y> + + + 40 + +
+ + + + 3 + 4 + + &hudalt; + + <_horbuf> 20 + <_verbuf> 20 + + + + + 81 + + + + + 120 + + + + + + + + + + + + &true; + &true; + UIMenuFocus + + &-sExit; + <_xbox_button> &xbuttonb; + <_PCButtonText> &-sPCMenuHintE; + + + 2 + + + &right; + + + + + + + +
2
+
+
+
+ + + +
2
+ 10 +
+
+ + + + + + + + + + + + 0 + + + + + &default_accept; + 1 + + + Interface\InterfaceShared.tai + + 75 + 75 + + + + + + 10 + + + + + + + +
2
+
+
+ + <_filename_2> general_button_b.dds + <_filename_15> glow_general_button_b.dds + + + + + + + + + + + 5 + + + + + +
+ + + 4 + + <_horbuf> 20 + <_verbuf> 20 + + <_line_alpha> + 128 + + 127 + + + + + + + + + + 81 + + + + + + 5 + + + + + + + + + + + + + + 1 + + + &true; + UIMenuFocus + + &-sAccept; + UIMenuPrevNext + <_PCButtonText> &-sPCMenuHintA; + + + 2 + + + &right; + + + + + + + + + +
2
+
+
+
+ + + +
2
+ 10 +
+
+ + + + + + <_line_alpha> + + + + + + + + + + + + 5 + + + + + + + <_Selected> + + + 0 + 1 + +
+ + + + +
2
+
+ + + + 120 + + 12 + + + + + + 4 + 2 + &right; + &-sInventoryCaps; + + + + + 20 + + + + + + 4 + &right; + + + 10 + + + + + +
+ + + + + + + + + + + 4 + 2 + Price + + + + 10 + + + + + + 4 + + + + 20 + + + + + + + + + + + + &hudmain; + + + + + + + &scale; + 15 + + + + 288 + + + + + 40 + + + 204 + 132 + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\leftslot.dds + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + + + + + 15 + + + + + +
2
+
+ 64 +
+ + + + + +
2
+
+ 64 +
+ + 128 + 128 + + <_Selected> + + + 0 + 1 + + + + + &hudmain; + + + &nosystemcolor; + + + + + + + + 0 + + + &scale; + 15 + + + + 2 + + + + + + 128 + 128 + + + + + + + + &hudmain; + + + + + + + 0 + + + + &scale; + 15 + + + + 4 + + + + 5 + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\implant_add.dds + + + + + +
+ + + + + + + + + &hudmain; + + + + + + + &scale; + 15 + + + + 88 + + + + + 54 + + + 204 + 132 + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\rightslot.dds + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + + + + + 15 + + + + + +
2
+
+ 64 +
+ + + + + +
2
+
+ 64 +
+ + 128 + 128 + + <_Selected> + + + 0 + 1 + + + + + &hudmain; + + + &nosystemcolor; + + + + + + + + 0 + + + &scale; + 15 + + + + 2 + + + + + + 128 + 128 + + + + + + + + &hudmain; + + + + + + + 0 + + + + &scale; + 15 + + + + 3 + + + + 5 + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\implant_add.dds + + + + + +
+ + + + + + + + &hudmain; + + + + + + + &scale; + 15 + + + + 546 + + + + + 29 + + + 204 + 132 + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\rightslot.dds + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + + + + + 15 + + + + + +
2
+
+ 64 +
+ + + + + +
2
+
+ 64 +
+ + 128 + 128 + + <_Selected> + + + 0 + 1 + + + + + &hudmain; + + + &nosystemcolor; + + + + + + + + 0 + + + &scale; + 15 + + + + 2 + + + + + + 128 + 128 + + + + + + + + &hudmain; + + + + + + + 0 + + + + &scale; + 15 + + + + 3 + + + + 5 + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\implant_add.dds + + + + + +
+ + + + + &hudmain; + + + + + + + &scale; + 15 + + + + 746 + + + + + 45 + + + 204 + 132 + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\leftslot.dds + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + + + + + 15 + + + + + +
2
+
+ 64 +
+ + + + + +
2
+
+ 64 +
+ + 128 + 128 + + <_Selected> + + + 0 + 1 + + + + + &hudmain; + + + &nosystemcolor; + + + + + + + + 0 + + + &scale; + 15 + + + + 2 + + + + + + 128 + 128 + + + + + + + + &hudmain; + + + + + + + 0 + + + + &scale; + 15 + + + + 4 + + + + 5 + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\implant_add.dds + + + + + +
+ + + + + + &hudmain; + + + + + 0 + + + &scale; + 14 + + + + 181 + + + + + 141 + + + 676 + 332 + + <_filename_1> cyberware\hud\cy\arrow_head.dds + <_filename_2> cyberware\hud\cy\arrow_torso.dds + <_filename_3> cyberware\hud\cy\arrow_leftarm.dds + <_filename_4> cyberware\hud\cy\arrow_rightarm.dds + <_filename_5> cyberware\hud\cy\arrow_leftleg.dds + <_filename_6> cyberware\hud\cy\arrow_rightleg.dds + <_filename_7> cyberware\hud\cy\arrow_head2.dds + <_filename_8> cyberware\hud\cy\arrow_torso2.dds + <_filename_9> cyberware\hud\cy\arrow_leftarm2.dds + <_filename_10> cyberware\hud\cy\arrow_rightarm2.dds + <_filename_11> cyberware\hud\cy\arrow_leftleg2.dds + <_filename_12> cyberware\hud\cy\arrow_rightleg2.dds + + + + + + + + + &nosystemcolor; + + + + + + &scale; + 12 + + + + 423 + + + + + 115 + + + 192 + 404 + + cyberware\hud\cy\cyboy_base.dds + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + 13 + + + + 482 + + + + 128 + + + 80 + 100 + + <_Selected> + + + + + 1 + + + + + + + 1 + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + + &hudmain; + + + + + + + 150 + + &scale; + 13 + + + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\select_head.dds + + + + + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + 13 + + + + 482 + + + + 239 + + + 72 + 102 + + <_Selected> + + + + + 2 + + + + + + + 2 + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + + &hudmain; + + + + + + + 150 + + &scale; + 13 + + + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\select_torso.dds + + + + + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + 13 + + + + 437 + + + + 256 + + + 36 + 98 + + <_Selected> + + + + + 3 + + + + + + + 3 + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + &hudmain; + + + + + + + 150 + + &scale; + 13 + + + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\select_leftarm.dds + + + + + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + 13 + + + + 573 + + + + 256 + + + 35 + 118 + + <_Selected> + + + + + 4 + + + + + + + 4 + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + + &hudmain; + + + + + + + 150 + + &scale; + 13 + + + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\select_rightarm.dds + + + + + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + 13 + + + + 463 + + + + 367 + + + 52 + 114 + + <_Selected> + + + + + 5 + + + + + + + 5 + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + &hudmain; + + + + + + + 150 + + &scale; + 13 + + + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\select_leftleg.dds + + + + + + + + + + + + &true; + UIMenuFocus + UIMenuOK + + 13 + + + + 514 + + + + 367 + + + 59 + 116 + + <_Selected> + + + + + 6 + + + + + + + 6 + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + &hudmain; + + + + + + + 150 + + &scale; + 13 + + + + + + + + + <_filename_0> Interface\Shared\solid.dds + <_filename_1> cyberware\hud\cy\select_rightleg.dds + + + + + + +
\ No newline at end of file diff --git a/mod/Menus/prefabs/cyberware/cw_stealth.xml b/mod/Menus/prefabs/cyberware/cw_stealth.xml new file mode 100644 index 0000000..c42703f --- /dev/null +++ b/mod/Menus/prefabs/cyberware/cw_stealth.xml @@ -0,0 +1,64 @@ + +<_CWxSFMeterEnabled> 0 +<_CWxSFMeterAmount> 0 + + + + + + + + + + + + 0.5 + + + + + 0.1 + + 64 + 64 + + + &scale; + 0 + + + + + +
2
+
+
+ + + + +
2
+
+
+ + + + + 210 + + + + + + <_filename_0> cyberware\hud\sf\stealthmeter0.dds + <_filename_1> cyberware\hud\sf\stealthmeter1.dds + <_filename_2> cyberware\hud\sf\stealthmeter2.dds + <_filename_3> cyberware\hud\sf\stealthmeter3.dds + <_filename_4> cyberware\hud\sf\stealthmeter4.dds + <_filename_5> cyberware\hud\sf\stealthmeter5.dds + <_filename_6> cyberware\hud\sf\stealthmeter6.dds + <_filename_7> cyberware\hud\sf\stealthmeter7.dds + <_filename_8> cyberware\hud\sf\stealthmeter8.dds + + +
diff --git a/mod/Menus/prefabs/cyberware/floating_text.xml b/mod/Menus/prefabs/cyberware/floating_text.xml new file mode 100644 index 0000000..a91bf3b --- /dev/null +++ b/mod/Menus/prefabs/cyberware/floating_text.xml @@ -0,0 +1,33 @@ + 3 + &left; + + + + 0 + + + + + + + + + + + + + + + + + + + +<_data> + + + + + + + \ No newline at end of file diff --git a/mod/Menus/prefabs/pnx/pnximplants.xml b/mod/Menus/prefabs/pnx/pnximplants.xml new file mode 100644 index 0000000..4d36074 --- /dev/null +++ b/mod/Menus/prefabs/pnx/pnximplants.xml @@ -0,0 +1 @@ +<_PNxImplants> 0 diff --git a/mod/Meshes/cyberware/Effects/fxpulseexplosion01.nif b/mod/Meshes/cyberware/Effects/fxpulseexplosion01.nif new file mode 100644 index 0000000..7efeec1 --- /dev/null +++ b/mod/Meshes/cyberware/Effects/fxpulseexplosion01.nif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db191e39e57917f034dbb15a7292e25154aa83860d07017dcee96f0d33e0fd79 +size 26139 diff --git a/mod/Meshes/cyberware/Projectiles/mezprojectile01.nif b/mod/Meshes/cyberware/Projectiles/mezprojectile01.nif new file mode 100644 index 0000000..e51f057 --- /dev/null +++ b/mod/Meshes/cyberware/Projectiles/mezprojectile01.nif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:548da6fc09ba4acf12d10c10a7e4d712490a63dda179e43a98b8a3fffa89467d +size 34551 diff --git a/mod/Meshes/cyberware/Projectiles/mezprojectile01red.nif b/mod/Meshes/cyberware/Projectiles/mezprojectile01red.nif new file mode 100644 index 0000000..49a92dd --- /dev/null +++ b/mod/Meshes/cyberware/Projectiles/mezprojectile01red.nif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6873e4dc109a7340a9f70d62b492d32fde8cac75dd6eda1eecc7e93698a10a3 +size 34634 diff --git a/mod/Meshes/cyberware/implantbox.nif b/mod/Meshes/cyberware/implantbox.nif new file mode 100644 index 0000000..e192d67 --- /dev/null +++ b/mod/Meshes/cyberware/implantbox.nif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9b3105788149fe674ae309b9c0b12561c16cd51f35e1ac67a8ed8041d7a7851 +size 42733 diff --git a/mod/Meshes/cyberware/implantboxblue.nif b/mod/Meshes/cyberware/implantboxblue.nif new file mode 100644 index 0000000..8c720ba --- /dev/null +++ b/mod/Meshes/cyberware/implantboxblue.nif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:266fb663a29fea8e829f5ff665a7e452f91b9ce1408f0a13d3f44000e692371e +size 42737 diff --git a/mod/Meshes/cyberware/surgerymanual.nif b/mod/Meshes/cyberware/surgerymanual.nif new file mode 100644 index 0000000..5b68f2d --- /dev/null +++ b/mod/Meshes/cyberware/surgerymanual.nif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0460a48477d91de1ce58a1b6abaaea4410a2601b801b01a7c4e06875384ee64c +size 8666 diff --git a/mod/Sound/voice/Cyberware.esm/MaleUniqueArcade/CWxSurgeon_CWxSurgeryTopic_0000A76E_1.lip b/mod/Sound/voice/Cyberware.esm/MaleUniqueArcade/CWxSurgeon_CWxSurgeryTopic_0000A76E_1.lip new file mode 100644 index 0000000..6a1f5ba --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/MaleUniqueArcade/CWxSurgeon_CWxSurgeryTopic_0000A76E_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e45010f841812fc6096b90be98336f7c6b4dcd08a86455824ef7db5e433ea80 +size 1551 diff --git a/mod/Sound/voice/Cyberware.esm/MaleUniqueArcade/CWxSurgeon_CWxSurgeryTopic_0000A76E_1.ogg b/mod/Sound/voice/Cyberware.esm/MaleUniqueArcade/CWxSurgeon_CWxSurgeryTopic_0000A76E_1.ogg new file mode 100644 index 0000000..361d2f6 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/MaleUniqueArcade/CWxSurgeon_CWxSurgeryTopic_0000A76E_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d4a45a31731a9e6986e50b57a5312f2252dd6bac00bc52780dd9d41b65c513f +size 11728 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult06/CWxSurgeon_CWxSurgeryTopic_00003EFC_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult06/CWxSurgeon_CWxSurgeryTopic_00003EFC_1.lip new file mode 100644 index 0000000..5508003 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult06/CWxSurgeon_CWxSurgeryTopic_00003EFC_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcfc50c61f144fcb4716a7c50174b764334d54a621b1c413a2d70028d0ce6608 +size 557 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult06/CWxSurgeon_CWxSurgeryTopic_00003EFC_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult06/CWxSurgeon_CWxSurgeryTopic_00003EFC_1.ogg new file mode 100644 index 0000000..0a6b94d --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult06/CWxSurgeon_CWxSurgeryTopic_00003EFC_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c83ce667f75e43ec8fb1a61cceff6e611c5c7b5cb7e9c4c354009696ef8dc86 +size 7722 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_00000AE0_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_00000AE0_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_00000AE0_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_00000AE0_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_00000AE0_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_00000AE0_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_000072D8_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_000072D8_1.lip new file mode 100644 index 0000000..a5696d7 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_000072D8_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98b01e5f9598fd584faa3479e090f91e78a9094e4850565111133d6fbfa40f5b +size 3089 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_000072D8_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_000072D8_1.ogg new file mode 100644 index 0000000..d90c8c6 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/CWxSurgeon_CWxSurgeryTopic_000072D8_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f223aa9ddead5f5c18c0092561ce10cabac2179206819c24e3fb13448c170f39 +size 18309 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15D_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15D_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15D_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15D_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15D_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15D_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15E_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15E_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15E_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15E_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15E_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15E_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15F_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15F_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15F_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15F_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15F_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A15F_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A160_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A160_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A160_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A160_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A160_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A160_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A161_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A161_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A161_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A161_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A161_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A161_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A162_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A162_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A162_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A162_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A162_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A162_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A163_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A163_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A163_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A163_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A163_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A163_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A164_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A164_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A164_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A164_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A164_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A164_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A165_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A165_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A165_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A165_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A165_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A165_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A166_1.lip b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A166_1.lip new file mode 100644 index 0000000..9093c47 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A166_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1922bbb11418ebb386bead72b179229a4e349f2ebf1be0c989a200673ee1017 +size 1547 diff --git a/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A166_1.ogg b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A166_1.ogg new file mode 100644 index 0000000..356d82b --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/femaleadult11/vDialogueM_vDialogueMedica_0000A166_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c9267e2356b9683a46b3ee5e85a19b2393ba7dabbfe9008bcf94a76a86384c +size 7486 diff --git a/mod/Sound/voice/Cyberware.esm/maleadult03/CWxSurgeon_CWxSurgeryTopic_00003EFE_1.lip b/mod/Sound/voice/Cyberware.esm/maleadult03/CWxSurgeon_CWxSurgeryTopic_00003EFE_1.lip new file mode 100644 index 0000000..d7496e1 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/maleadult03/CWxSurgeon_CWxSurgeryTopic_00003EFE_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5c0574868c24921aa2bb4bcecb0a260a1bd71a1e5d2d8c145b195f518cda619 +size 1452 diff --git a/mod/Sound/voice/Cyberware.esm/maleadult03/CWxSurgeon_CWxSurgeryTopic_00003EFE_1.ogg b/mod/Sound/voice/Cyberware.esm/maleadult03/CWxSurgeon_CWxSurgeryTopic_00003EFE_1.ogg new file mode 100644 index 0000000..48f18ec --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/maleadult03/CWxSurgeon_CWxSurgeryTopic_00003EFE_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdf6e4119cc7f0419bdf16b9a460157bcb99a9ea02a626e91091f0ff0ecf6fce +size 9239 diff --git a/mod/Sound/voice/Cyberware.esm/maleold02/CWxSurgeon_CWxSurgeryTopic_0000A750_1.lip b/mod/Sound/voice/Cyberware.esm/maleold02/CWxSurgeon_CWxSurgeryTopic_0000A750_1.lip new file mode 100644 index 0000000..85101da --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/maleold02/CWxSurgeon_CWxSurgeryTopic_0000A750_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d64677f233190f9763eb07da0fe433031907a9720c1a341dcd8a1812d2dd0d2 +size 1561 diff --git a/mod/Sound/voice/Cyberware.esm/maleold02/CWxSurgeon_CWxSurgeryTopic_0000A750_1.ogg b/mod/Sound/voice/Cyberware.esm/maleold02/CWxSurgeon_CWxSurgeryTopic_0000A750_1.ogg new file mode 100644 index 0000000..a23b4e2 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/maleold02/CWxSurgeon_CWxSurgeryTopic_0000A750_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52bcfe3bec42d2d3529ec36353af7f10c854a1f56ee6566e17865256772934d3 +size 8004 diff --git a/mod/Sound/voice/Cyberware.esm/maleuniquedocmitchell/CWxSurgeon_CWxSurgeryTopic_00003EF4_1.lip b/mod/Sound/voice/Cyberware.esm/maleuniquedocmitchell/CWxSurgeon_CWxSurgeryTopic_00003EF4_1.lip new file mode 100644 index 0000000..45accf5 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/maleuniquedocmitchell/CWxSurgeon_CWxSurgeryTopic_00003EF4_1.lip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cf044cea19f5e6b2f6464476c790cd92d466c586d0264605fb075e54da3843d +size 973 diff --git a/mod/Sound/voice/Cyberware.esm/maleuniquedocmitchell/CWxSurgeon_CWxSurgeryTopic_00003EF4_1.ogg b/mod/Sound/voice/Cyberware.esm/maleuniquedocmitchell/CWxSurgeon_CWxSurgeryTopic_00003EF4_1.ogg new file mode 100644 index 0000000..8dde961 --- /dev/null +++ b/mod/Sound/voice/Cyberware.esm/maleuniquedocmitchell/CWxSurgeon_CWxSurgeryTopic_00003EF4_1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67cdf2f65e380e30fc86a265faaee90d1d91272460719417c74a31375cb0e62c +size 12025 diff --git a/mod/Textures/cyberware/hud/cy/arrow_head.dds b/mod/Textures/cyberware/hud/cy/arrow_head.dds new file mode 100644 index 0000000..ff20924 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_head.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5da99c553bd3f3a27cdb1112ac5b26ed5a060c97a093839079128e4a32fb17fb +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_head2.dds b/mod/Textures/cyberware/hud/cy/arrow_head2.dds new file mode 100644 index 0000000..63341f8 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_head2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ca366dc2ec5ba4d4537691659e36aa49b0169c1aba31a1acff9bd317f6ed048 +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_leftarm.dds b/mod/Textures/cyberware/hud/cy/arrow_leftarm.dds new file mode 100644 index 0000000..795f95f --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_leftarm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5470ecb1f241dd7dc4383b3837446155f1c253e054fc15153eb627c514a30441 +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_leftarm2.dds b/mod/Textures/cyberware/hud/cy/arrow_leftarm2.dds new file mode 100644 index 0000000..a1af689 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_leftarm2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01e6a22fd61c13dbc234ec648a2006a397ab9309829ba43000d982a7ce88bcdf +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_leftleg.dds b/mod/Textures/cyberware/hud/cy/arrow_leftleg.dds new file mode 100644 index 0000000..01d720a --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_leftleg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34444594fa78cd64db2c5506b6d8ebf53f96ce05ae866a687a3777b0f441e3ef +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_leftleg2.dds b/mod/Textures/cyberware/hud/cy/arrow_leftleg2.dds new file mode 100644 index 0000000..e9f0792 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_leftleg2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ebf13a11753e9c2f05a1547a66bc982d7890da8bc07b2b72af2c78eeb82bf40 +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_rightarm.dds b/mod/Textures/cyberware/hud/cy/arrow_rightarm.dds new file mode 100644 index 0000000..4d40e91 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_rightarm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eedf567f8a964b21d94837507730cc22a6fdb471c0078043938f4d744c05e9c8 +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_rightarm2.dds b/mod/Textures/cyberware/hud/cy/arrow_rightarm2.dds new file mode 100644 index 0000000..e74912f --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_rightarm2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e41c57a5c231633f02516c94e82ec5ea2657e747fe152123bac59be4826964aa +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_rightleg.dds b/mod/Textures/cyberware/hud/cy/arrow_rightleg.dds new file mode 100644 index 0000000..b1a53a2 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_rightleg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99d8561302432ebdcb0634ea47f7ef6588ba71fe0815c4401d291564aeca1535 +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_rightleg2.dds b/mod/Textures/cyberware/hud/cy/arrow_rightleg2.dds new file mode 100644 index 0000000..f664969 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_rightleg2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b7fa9dec50ccbed80bb663cde8a56d07439c11f0af1b8a0d25bae09f24a6b2d +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_torso.dds b/mod/Textures/cyberware/hud/cy/arrow_torso.dds new file mode 100644 index 0000000..41a13a6 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_torso.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c244f6c9dc3f6a69f68a089c697ddb4ff672433d07d904604df52f8422de1c1c +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/arrow_torso2.dds b/mod/Textures/cyberware/hud/cy/arrow_torso2.dds new file mode 100644 index 0000000..ca27223 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/arrow_torso2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:368bd1d44146a70ddb373d3df99249755b315fda9f2814b5a25ae746ea18ee6e +size 224560 diff --git a/mod/Textures/cyberware/hud/cy/background.dds b/mod/Textures/cyberware/hud/cy/background.dds new file mode 100644 index 0000000..58c31bb --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/background.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2b72bbbcdc2d926b6cbfe8e1766a65c0b8918251f069186d3611b46679fafc4 +size 655488 diff --git a/mod/Textures/cyberware/hud/cy/cyboy.dds b/mod/Textures/cyberware/hud/cy/cyboy.dds new file mode 100644 index 0000000..afb1274 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/cyboy.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:002d4af05d2e64575dc5685fd91a325997fea2b8561cfefe40a0a0ca7e06f946 +size 589952 diff --git a/mod/Textures/cyberware/hud/cy/cyboy_base.dds b/mod/Textures/cyberware/hud/cy/cyboy_base.dds new file mode 100644 index 0000000..5cc4d63 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/cyboy_base.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:807d9b650381cf8265804634c185119301aaab7ca22f39876440e5c0345f0bf9 +size 77696 diff --git a/mod/Textures/cyberware/hud/cy/cyboy_lines.dds b/mod/Textures/cyberware/hud/cy/cyboy_lines.dds new file mode 100644 index 0000000..1a44511 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/cyboy_lines.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10357b66f1b85e6529684234b6878b4f022f97df283b8ccad8b96274e33a7234 +size 589952 diff --git a/mod/Textures/cyberware/hud/cy/implant_add.dds b/mod/Textures/cyberware/hud/cy/implant_add.dds new file mode 100644 index 0000000..bad85c2 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/implant_add.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c38d2807ae67cd57afff7725f8a145364d37de0377fdf6a88f4886b1b37c6c58 +size 16512 diff --git a/mod/Textures/cyberware/hud/cy/leftslot.dds b/mod/Textures/cyberware/hud/cy/leftslot.dds new file mode 100644 index 0000000..bb9a2ec --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/leftslot.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e431124a3dfd3dcf6f841399a5091fc3b3f085e11ba4fe45d43e72e058413c19 +size 27056 diff --git a/mod/Textures/cyberware/hud/cy/nevada.dds b/mod/Textures/cyberware/hud/cy/nevada.dds new file mode 100644 index 0000000..3fe8c18 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/nevada.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e49cbf37975db03514433b29968ef61e37fcbc92ab758014203f61adf76ab68 +size 16176 diff --git a/mod/Textures/cyberware/hud/cy/rightslot.dds b/mod/Textures/cyberware/hud/cy/rightslot.dds new file mode 100644 index 0000000..5ab5daa --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/rightslot.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac592e922171d35fa65216109834788f5747ff2cfee964a214f3491027d85d6d +size 27056 diff --git a/mod/Textures/cyberware/hud/cy/select_head.dds b/mod/Textures/cyberware/hud/cy/select_head.dds new file mode 100644 index 0000000..b8194a7 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/select_head.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:293ce7a4e2eac4329949b33b879bcbd54f463c54b1858453832a7b24bd7fe597 +size 77696 diff --git a/mod/Textures/cyberware/hud/cy/select_leftarm.dds b/mod/Textures/cyberware/hud/cy/select_leftarm.dds new file mode 100644 index 0000000..d0578d0 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/select_leftarm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbc832f0b65fb61eb9b155a8af6e2388715cb81d40351debebb9aea2523f1c11 +size 77696 diff --git a/mod/Textures/cyberware/hud/cy/select_leftleg.dds b/mod/Textures/cyberware/hud/cy/select_leftleg.dds new file mode 100644 index 0000000..ceffc6f --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/select_leftleg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e768420cfa3c351d5b7ee50fd5b84c71517300ca28b669883044c6a2b564384 +size 77696 diff --git a/mod/Textures/cyberware/hud/cy/select_rightarm.dds b/mod/Textures/cyberware/hud/cy/select_rightarm.dds new file mode 100644 index 0000000..b475f35 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/select_rightarm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b81a0c794d8178bb346dfbe6d2a57bde251fbf535265000196aad7d9f65371e +size 77696 diff --git a/mod/Textures/cyberware/hud/cy/select_rightleg.dds b/mod/Textures/cyberware/hud/cy/select_rightleg.dds new file mode 100644 index 0000000..c29e215 --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/select_rightleg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44663dd92d8ea7692f4b84dc5ebd537f40d3ffd82e3d8b508ea4f7462a593dfb +size 77696 diff --git a/mod/Textures/cyberware/hud/cy/select_torso.dds b/mod/Textures/cyberware/hud/cy/select_torso.dds new file mode 100644 index 0000000..190717b --- /dev/null +++ b/mod/Textures/cyberware/hud/cy/select_torso.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36b034b333f3145d43ef0160f0d5db5aa3ec15c76c90e065ec09724a91b81f32 +size 77696 diff --git a/mod/Textures/cyberware/hud/grain/grain1.dds b/mod/Textures/cyberware/hud/grain/grain1.dds new file mode 100644 index 0000000..bc649ce --- /dev/null +++ b/mod/Textures/cyberware/hud/grain/grain1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80d2caa370b564c34c4bbdf0a9177bee2af6aad325d0c14518f41add5f6ec7ea +size 1024128 diff --git a/mod/Textures/cyberware/hud/grain/grain2.dds b/mod/Textures/cyberware/hud/grain/grain2.dds new file mode 100644 index 0000000..adc10e9 --- /dev/null +++ b/mod/Textures/cyberware/hud/grain/grain2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c599214fcba8c775dc30bb683e4216b4d1cd8d889f74420fdd08bce3cb46ee9b +size 1024128 diff --git a/mod/Textures/cyberware/hud/grain/grain3.dds b/mod/Textures/cyberware/hud/grain/grain3.dds new file mode 100644 index 0000000..bfe5599 --- /dev/null +++ b/mod/Textures/cyberware/hud/grain/grain3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e170908743e9fd3ec0aff0e41917bb14e7a09727555610ce234376ffc4a407e2 +size 1024128 diff --git a/mod/Textures/cyberware/hud/grain/grain4.dds b/mod/Textures/cyberware/hud/grain/grain4.dds new file mode 100644 index 0000000..41c1310 --- /dev/null +++ b/mod/Textures/cyberware/hud/grain/grain4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bb919dcb1e35adf0c58234cfe00b21fe08fac37c1daa26342b6ad4ea6c74f01 +size 1024128 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_arm.dds b/mod/Textures/cyberware/hud/panel/implant_left_arm.dds new file mode 100644 index 0000000..10dc593 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_arm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20003601385927e8be93bad7924b330413b24719bdcd26160f49a5a8e7663a36 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_armor.dds b/mod/Textures/cyberware/hud/panel/implant_left_armor.dds new file mode 100644 index 0000000..5f7143d --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_armor.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a73138a73ab21d792f98da32afda1670245d3ba57a058419841a296fcd48c84a +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_bugs.dds b/mod/Textures/cyberware/hud/panel/implant_left_bugs.dds new file mode 100644 index 0000000..03a15a4 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_bugs.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6aded0b535869feb15061febb010ddaf3baeab78b47615a7cfd27e39ecc10845 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_crouch.dds b/mod/Textures/cyberware/hud/panel/implant_left_crouch.dds new file mode 100644 index 0000000..9a0f222 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_crouch.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:614cd133f2288e4a4d9b766ac11483e9261aec612da751698453db1a71431e2d +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_default.dds b/mod/Textures/cyberware/hud/panel/implant_left_default.dds new file mode 100644 index 0000000..d4b2174 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_default.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27c71aafb100b882317baede01e997d2371c71baf19b2e8773ad986e9ad7b81f +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_emp.dds b/mod/Textures/cyberware/hud/panel/implant_left_emp.dds new file mode 100644 index 0000000..ccd15da --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_emp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41e889709c0e039d15f9cb6a4501061b28962427a9e64c7288a21bca8eadcce8 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_eye.dds b/mod/Textures/cyberware/hud/panel/implant_left_eye.dds new file mode 100644 index 0000000..68c54ed --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_eye.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fae159e47efb42e7f765d9346f8eafed0c6b0c006a3cf2045f2adfee0e851db +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_foodhp.dds b/mod/Textures/cyberware/hud/panel/implant_left_foodhp.dds new file mode 100644 index 0000000..8dadf2b --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_foodhp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9c60be0ee06804d5c492864fa1df6fd82b97c139f0b7825de0c61fead879b1d +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_heart.dds b/mod/Textures/cyberware/hud/panel/implant_left_heart.dds new file mode 100644 index 0000000..42527c9 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_heart.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:291c515001869291bbff8abbabd8e8c8256a1cfbb855c7aaa6df7d473e8214ef +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_leg.dds b/mod/Textures/cyberware/hud/panel/implant_left_leg.dds new file mode 100644 index 0000000..dbab8e2 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_leg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0db7694d26dd6700d7836842c4ac718b44a6cc49b93d326ea0745ce18049921 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_lung.dds b/mod/Textures/cyberware/hud/panel/implant_left_lung.dds new file mode 100644 index 0000000..7ccc4f3 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_lung.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af4ceda44f7a60cb9c2b00d2f0505232f1c9c85884723555ede35f4865e4647 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_microwave.dds b/mod/Textures/cyberware/hud/panel/implant_left_microwave.dds new file mode 100644 index 0000000..912941c --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_microwave.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a86ed18ab500637e64d4f9b20d6b359580d5f69b5d4d8b1e71e3092cc1d6f1d +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_nail.dds b/mod/Textures/cyberware/hud/panel/implant_left_nail.dds new file mode 100644 index 0000000..1fb2c44 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_nail.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4974f375e15e79d7e55c0c219ad6c448f4be0bf7636e9461beeba883dc61c42 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_norads.dds b/mod/Textures/cyberware/hud/panel/implant_left_norads.dds new file mode 100644 index 0000000..da013e7 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_norads.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc06eac78257fe2f017c8afed9c1524fde1dba474574c78298d5c63ddbd06727 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_phoenix.dds b/mod/Textures/cyberware/hud/panel/implant_left_phoenix.dds new file mode 100644 index 0000000..01b2aea --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_phoenix.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b181957192cc56bb627e6165ffab56c2bd7573c6cc0b0de86ac3f95009c126cb +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_scanner.dds b/mod/Textures/cyberware/hud/panel/implant_left_scanner.dds new file mode 100644 index 0000000..bfd76cd --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_scanner.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bc568585d85fa3dd03475bf7ca0c1e10587da3302d524366904e798e1c8ea94 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_skill.dds b/mod/Textures/cyberware/hud/panel/implant_left_skill.dds new file mode 100644 index 0000000..7bb56e2 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_skill.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e65bceb1860ae31dababf7f19d5f1e16858c9e9dcea263c3477ba59f7e4f4591 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_stat.dds b/mod/Textures/cyberware/hud/panel/implant_left_stat.dds new file mode 100644 index 0000000..7b09f40 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_stat.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd50e4f8df2d703f4067382cfeae13118f11e0a560e29ce25c1c80ece42e115 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_stealth.dds b/mod/Textures/cyberware/hud/panel/implant_left_stealth.dds new file mode 100644 index 0000000..73c2961 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_stealth.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a7eacba8057d324d15eaf7ef09f4564c1259ac6cc557fac36eebe6087c9e242 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_synapses.dds b/mod/Textures/cyberware/hud/panel/implant_left_synapses.dds new file mode 100644 index 0000000..d4b2174 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_synapses.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27c71aafb100b882317baede01e997d2371c71baf19b2e8773ad986e9ad7b81f +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_turbo.dds b/mod/Textures/cyberware/hud/panel/implant_left_turbo.dds new file mode 100644 index 0000000..f4321f6 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_turbo.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2da603e73b025bbc0e759224a230378468319c3242239c2dac67a4dde72f0e6 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_weave.dds b/mod/Textures/cyberware/hud/panel/implant_left_weave.dds new file mode 100644 index 0000000..9a2bc66 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_weave.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2725e0e5a4682e808f98a6c5e0847a303edb2558142b5d7ff573b12a56ef2a65 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_left_weight.dds b/mod/Textures/cyberware/hud/panel/implant_left_weight.dds new file mode 100644 index 0000000..6a6e7a2 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_left_weight.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1f18acf1a5e5c1379ed532326f515dca36742e8603322405c4e0a85c48f6550 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_arm.dds b/mod/Textures/cyberware/hud/panel/implant_right_arm.dds new file mode 100644 index 0000000..a24bf59 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_arm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec029c14c31b7f8e05bae24fda0406a718d16d2025beb903308c3ed75033777b +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_armor.dds b/mod/Textures/cyberware/hud/panel/implant_right_armor.dds new file mode 100644 index 0000000..a0c0adb --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_armor.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b90b850f1fe39d727629a5d532a25258dd3b73e3aa52649a4ba09362579fce9 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_bugs.dds b/mod/Textures/cyberware/hud/panel/implant_right_bugs.dds new file mode 100644 index 0000000..e778c1a --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_bugs.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1911daf812e1385961f432d6205d838777c51d3b75c695825db56a38779825cd +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_crouch.dds b/mod/Textures/cyberware/hud/panel/implant_right_crouch.dds new file mode 100644 index 0000000..9ae54a4 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_crouch.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a8dfe3859864543ffa6800d60349e8e86b815318454024589d4bb4bbe4372a5 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_default.dds b/mod/Textures/cyberware/hud/panel/implant_right_default.dds new file mode 100644 index 0000000..57e0e0e --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_default.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87b26e8945fa8120d12d2f8175fe7ee28d77eabc9e772ec8f58450a35d7c2a90 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_emp.dds b/mod/Textures/cyberware/hud/panel/implant_right_emp.dds new file mode 100644 index 0000000..fc524d7 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_emp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6609d49116f40395e57eeadcd2337f2984cc9aea2c4d466efbff768d8f9c8724 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_eye.dds b/mod/Textures/cyberware/hud/panel/implant_right_eye.dds new file mode 100644 index 0000000..4ccbbdc --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_eye.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76f825f277ffdc35089b31c878372cf281e85501d2d13243c67bf6154cbe18fb +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_foodhp.dds b/mod/Textures/cyberware/hud/panel/implant_right_foodhp.dds new file mode 100644 index 0000000..131b97e --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_foodhp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53192953540f5b6b3b53d4f16d5d555490ed0f795ac191e2d23e3eed164cc282 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_heart.dds b/mod/Textures/cyberware/hud/panel/implant_right_heart.dds new file mode 100644 index 0000000..0f1195a --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_heart.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d76cb4885dc41c11320b7cbe275eb3fcf4bc522fdec2211fed185cea50f69e66 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_leg.dds b/mod/Textures/cyberware/hud/panel/implant_right_leg.dds new file mode 100644 index 0000000..a860239 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_leg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cda4f7ed68fbc38798d36cf495d68df5b2c942491e7905230d221a3b5b731843 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_lung.dds b/mod/Textures/cyberware/hud/panel/implant_right_lung.dds new file mode 100644 index 0000000..bc2fa1b --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_lung.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1809ce3a013cd4d8416583d7ea2c2bdb9e03868f363384c4d3e790da9ee170f9 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_microwave.dds b/mod/Textures/cyberware/hud/panel/implant_right_microwave.dds new file mode 100644 index 0000000..73d9f5d --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_microwave.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6396db2b01bd93ad47fdc2bc4a3a5e4001f4047e5d7a2834713b42508bcfea53 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_nail.dds b/mod/Textures/cyberware/hud/panel/implant_right_nail.dds new file mode 100644 index 0000000..0ab3bf3 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_nail.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:715fc0489ecb926367af045061f70fba1df801048b66358056aaac64b03e9db9 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_norads.dds b/mod/Textures/cyberware/hud/panel/implant_right_norads.dds new file mode 100644 index 0000000..ee77889 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_norads.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65de9959acd5c9bf9c0eb21a4798879fcf35bf8b02268317dc2c9828e3ec951c +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_phoenix.dds b/mod/Textures/cyberware/hud/panel/implant_right_phoenix.dds new file mode 100644 index 0000000..784da0d --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_phoenix.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3003b37db67db146b5632c4f6ab755e962fb9dcf4f193d40198dd5855f9f131f +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_scanner.dds b/mod/Textures/cyberware/hud/panel/implant_right_scanner.dds new file mode 100644 index 0000000..9a22815 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_scanner.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f933eb686946114a25d1650bc055b813055d1b7b757fbc0c45e22713eecf9c4c +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_skill.dds b/mod/Textures/cyberware/hud/panel/implant_right_skill.dds new file mode 100644 index 0000000..5786809 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_skill.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfbedd1a5a2c8e3fecd5b12fc6024a5deea5bf63a7b4b49160c6b8bcade3e52b +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_stat.dds b/mod/Textures/cyberware/hud/panel/implant_right_stat.dds new file mode 100644 index 0000000..93debf1 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_stat.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c885e6ff768a310d59857da55b3ee3502a73a1ea561b56a3e09c9561d08c0dd3 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_stealth.dds b/mod/Textures/cyberware/hud/panel/implant_right_stealth.dds new file mode 100644 index 0000000..6bc7e0b --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_stealth.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b1489175f45782a21c445c2d19fc17945279a2f1e1ecfe5919664fa791d6035 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_synapses.dds b/mod/Textures/cyberware/hud/panel/implant_right_synapses.dds new file mode 100644 index 0000000..57e0e0e --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_synapses.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87b26e8945fa8120d12d2f8175fe7ee28d77eabc9e772ec8f58450a35d7c2a90 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_turbo.dds b/mod/Textures/cyberware/hud/panel/implant_right_turbo.dds new file mode 100644 index 0000000..e31c006 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_turbo.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04f79ad8e846f05957aad72d777d858e9993c23309626604e60cad18e6eba1c4 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_weave.dds b/mod/Textures/cyberware/hud/panel/implant_right_weave.dds new file mode 100644 index 0000000..ce97ee8 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_weave.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b89a4aa3344e6ab8f241cdf049057149dd718a0439d21e7d2715e96b2c51eda2 +size 16512 diff --git a/mod/Textures/cyberware/hud/panel/implant_right_weight.dds b/mod/Textures/cyberware/hud/panel/implant_right_weight.dds new file mode 100644 index 0000000..92d6a33 --- /dev/null +++ b/mod/Textures/cyberware/hud/panel/implant_right_weight.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81c1bde1657c8496b6cf2fa6cd05944c96dd8adeda5d4e1a9f4300ee2e80347e +size 16512 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_base.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_base.dds new file mode 100644 index 0000000..805f222 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_base.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9332e1dbcb42be75966c4a4194a6566033abe5f102255090ae5433bf71f4617e +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_head.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_head.dds new file mode 100644 index 0000000..e790f73 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_head.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87f6b8e2db3de87b24f5e52c735fa55407999bd906a728e3bf80d36364a94b85 +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_leftarm.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_leftarm.dds new file mode 100644 index 0000000..aba5cd9 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_leftarm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:437e2011c5d6aaeb6294671fef6240fdce2d8632d7c893fa1b43793a6cc71144 +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_leftleg.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_leftleg.dds new file mode 100644 index 0000000..7eca293 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_leftleg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4afc7041c05d4ca3d88f14490612ccee78eb5c36c302a2fb5270fe252607e06f +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_rightarm.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_rightarm.dds new file mode 100644 index 0000000..1a4e9bb --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_rightarm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2654da67a21f072e3f30378ee40ef198a992d4b21a05147688501a64dc9afde +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_rightleg.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_rightleg.dds new file mode 100644 index 0000000..3c74037 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_rightleg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bdb14e3f6384e1e4931ad14f7230d82909b14367813cbb2afc951586bb838d5 +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/ScannerBoy_torso.dds b/mod/Textures/cyberware/hud/scan/ScannerBoy_torso.dds new file mode 100644 index 0000000..201ea37 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/ScannerBoy_torso.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9156b77d02ec11dc3fbda72161c8ffc1a7311e10bf86e03ce14b5ad46a28263 +size 249728 diff --git a/mod/Textures/cyberware/hud/scan/healthseperator.dds b/mod/Textures/cyberware/hud/scan/healthseperator.dds new file mode 100644 index 0000000..08163ca --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/healthseperator.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60d9baabfd3e0f9443d53ac0e780820866e8e3942d7242876f69507cf3dc4f35 +size 12672 diff --git a/mod/Textures/cyberware/hud/scan/scannerboy.dds b/mod/Textures/cyberware/hud/scan/scannerboy.dds new file mode 100644 index 0000000..daf17bc --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/scannerboy.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32991cb918048b259cc990bbb5b4a62da08390dd4ee27f605b262e68bb834327 +size 110528 diff --git a/mod/Textures/cyberware/hud/scan/scannerbracket1.dds b/mod/Textures/cyberware/hud/scan/scannerbracket1.dds new file mode 100644 index 0000000..eb21648 --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/scannerbracket1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83efa073380da3fbea3860b3f682d9523f77825cc60043b2b6e17b1796ff5980 +size 65664 diff --git a/mod/Textures/cyberware/hud/scan/scannerbracket2.dds b/mod/Textures/cyberware/hud/scan/scannerbracket2.dds new file mode 100644 index 0000000..373c70a --- /dev/null +++ b/mod/Textures/cyberware/hud/scan/scannerbracket2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:483358213fc7aa7840b6874aba151ec5f4ead6d06cac87560961f68a118c583e +size 196736 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter0.dds b/mod/Textures/cyberware/hud/sf/stealthmeter0.dds new file mode 100644 index 0000000..964c0cc --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter0.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7070a13437fcf34d01a6871251e4bab0841f601e51744caa58695349aa94c98e +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter1.dds b/mod/Textures/cyberware/hud/sf/stealthmeter1.dds new file mode 100644 index 0000000..00b95ec --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1112b0c05be6eea6ac0a6516bffda5fb45f4fdf27fda7bf3b95d9724803af9df +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter2.dds b/mod/Textures/cyberware/hud/sf/stealthmeter2.dds new file mode 100644 index 0000000..05656b6 --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1acec952102b0908801c6d4aa9ac9019d50b6cf51579c0626c10040f774e3da8 +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter3.dds b/mod/Textures/cyberware/hud/sf/stealthmeter3.dds new file mode 100644 index 0000000..497ff21 --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc438fef50913be1f43f6a1d950e911dff4df32d00808b975d2f596b78d4f61c +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter4.dds b/mod/Textures/cyberware/hud/sf/stealthmeter4.dds new file mode 100644 index 0000000..492f4dc --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9762514690f21e977db8e10fcc1aace9da77fc1c5ae2c053239ace00953ac30d +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter5.dds b/mod/Textures/cyberware/hud/sf/stealthmeter5.dds new file mode 100644 index 0000000..a852cfd --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter5.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d9335a58db924225a712f9404cfa9cd84ebe7ba946ef598f2068f0c409885fe +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter6.dds b/mod/Textures/cyberware/hud/sf/stealthmeter6.dds new file mode 100644 index 0000000..4c731af --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter6.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f24a81d6c92fe9d3b9e50bd93f0b38be4f365e2a48c4ce278ea6456e65512fcc +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter7.dds b/mod/Textures/cyberware/hud/sf/stealthmeter7.dds new file mode 100644 index 0000000..fec0359 --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter7.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34f8c224c842a7fa2c31308189b21edca6a85d9a32a5ee7b784197626dd7152b +size 16512 diff --git a/mod/Textures/cyberware/hud/sf/stealthmeter8.dds b/mod/Textures/cyberware/hud/sf/stealthmeter8.dds new file mode 100644 index 0000000..784dc1e --- /dev/null +++ b/mod/Textures/cyberware/hud/sf/stealthmeter8.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10e80c00fc47e632b009ce7af6dc7a27f8791337e17efea15dcbd8e2974c55bb +size 16512 diff --git a/mod/Textures/cyberware/icons/Pipboyimages/items/implantbook.dds b/mod/Textures/cyberware/icons/Pipboyimages/items/implantbook.dds new file mode 100644 index 0000000..a2e91a2 --- /dev/null +++ b/mod/Textures/cyberware/icons/Pipboyimages/items/implantbook.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb121aea47f2813b189bfd41fde23d3e9bd7431bff1e567accdf46c930efc581 +size 65664 diff --git a/mod/Textures/cyberware/icons/Pipboyimages/items/implantbox.dds b/mod/Textures/cyberware/icons/Pipboyimages/items/implantbox.dds new file mode 100644 index 0000000..914b093 --- /dev/null +++ b/mod/Textures/cyberware/icons/Pipboyimages/items/implantbox.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04fa19fa3f4db2b61b5b198eeaf8cf31352e8fc76a6726fb95d78397af1ea854 +size 65664 diff --git a/mod/Textures/cyberware/icons/Pipboyimages/items/implantboxblue.dds b/mod/Textures/cyberware/icons/Pipboyimages/items/implantboxblue.dds new file mode 100644 index 0000000..b62973f --- /dev/null +++ b/mod/Textures/cyberware/icons/Pipboyimages/items/implantboxblue.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23f53241e7f29d12a095249c7a58ab874d39eb70f5ef2d42dd6824c663d9c2ef +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkEMPBlast.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkEMPBlast.dds new file mode 100644 index 0000000..0c41d1c --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkEMPBlast.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58cd908e2fdd4928b6ead32d7cfb57e68e9388f53c948c80fb483eb5644fdd24 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantC13.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantC13.dds new file mode 100644 index 0000000..146969e --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantC13.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f730aff715d1c227a5c0c70cbd8a53dfdc05ffb5031ce9271fc645e4f888a68 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantGRX.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantGRX.dds new file mode 100644 index 0000000..84ad84b --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantGRX.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ecff1647cabd6b5ecff61a4a22ada79de5c053caed22a6bb3397856102a0704 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantM5.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantM5.dds new file mode 100644 index 0000000..ab50abe --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantM5.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1522bf4765d993c2c6429e20124d2efe5cf358de7324ee79ed3c542d9ff7f01 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantY2.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantY2.dds new file mode 100644 index 0000000..d25eda6 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantY2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08528b6fbd5fa50f8e9a38eff147e2546164674831622ba4b16babb8fce67287 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantY7.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantY7.dds new file mode 100644 index 0000000..c18499c --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkImplantY7.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20537c495b3a05d2c666391ca8334f107fa4e580942457d580daba33e2c91230 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_PerkMicroBlast.dds b/mod/Textures/cyberware/icons/perks/PN-CW_PerkMicroBlast.dds new file mode 100644 index 0000000..6ff6f4e --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_PerkMicroBlast.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:161f4619a010d76df00eef83f13a66522260d7c9a97824c537a813dd690025ea +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S1Brainless.dds b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S1Brainless.dds new file mode 100644 index 0000000..20f218c --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S1Brainless.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86c8ae070775cad4e50ce20c2cfa5e8e9713fec8e05375932a3c404ef1d057a2 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S2Heartless.dds b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S2Heartless.dds new file mode 100644 index 0000000..5928d58 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S2Heartless.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e4298995cf80f941e5d8b10f04363f7b563dbf6bb9408e1705da1d7841489b8 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S3Spineless.dds b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S3Spineless.dds new file mode 100644 index 0000000..13e0688 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_S3Spineless.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ebce744658e97678048bab31bb61214663398974cf6fca81b07d5fd1af32a7a +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T1BigBrained.dds b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T1BigBrained.dds new file mode 100644 index 0000000..22e0c8c --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T1BigBrained.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2c48ec625f5aa1a3f33c5111bf52607482fa7790e85a2418c91a3234415261d +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T2CardiacArrest.dds b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T2CardiacArrest.dds new file mode 100644 index 0000000..5aa713a --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T2CardiacArrest.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f03c074b9e2997591d885909bbb656bbaeb19beb4cca15388b71913e6a337e1 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T3ReinforcedSpine.dds b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T3ReinforcedSpine.dds new file mode 100644 index 0000000..e8715bf --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/PN-CW_Perk_T3ReinforcedSpine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e1d0333cf1d41a424185080f0f37a5104e306dfb3e9550fac0797960ede50d0 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/implant_perk_matrix1.dds b/mod/Textures/cyberware/icons/perks/implant_perk_matrix1.dds new file mode 100644 index 0000000..ada7db3 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/implant_perk_matrix1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37a1556edc68fedef8d31018e319a9a1238a12b735fa423fb8dacf4d9e091bb +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/implant_perk_matrix2.dds b/mod/Textures/cyberware/icons/perks/implant_perk_matrix2.dds new file mode 100644 index 0000000..f395c16 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/implant_perk_matrix2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c02fa895ea2cd2d6b97f9131afcb238434bc03fd36c8c6ad4896a0a0bd3694f +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/implant_perk_sprint.dds b/mod/Textures/cyberware/icons/perks/implant_perk_sprint.dds new file mode 100644 index 0000000..47d9920 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/implant_perk_sprint.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7aac544e276f97d17266b6754275a3715923e94df0e0fd1d57cb80aabc3f3a22 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugArm.dds b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugArm.dds new file mode 100644 index 0000000..1c480ac --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugArm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e185e9128606ab371581b621ac6d39c10aac841443113283cf44baab793737 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugChest.dds b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugChest.dds new file mode 100644 index 0000000..fd82231 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugChest.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e04da2b3a8390bb32b8f52dd8ae1e65c26f1ee113911de41d93eba2c5f00b8b4 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugHead.dds b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugHead.dds new file mode 100644 index 0000000..d104f61 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugHead.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35faaae5bc33366b7759ac53c9230e0965611650196ea60688a20ff40bb7a545 +size 65664 diff --git a/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugLeg.dds b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugLeg.dds new file mode 100644 index 0000000..f2179b0 --- /dev/null +++ b/mod/Textures/cyberware/icons/perks/pnx_cyberware_4AugLeg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d89b77df3c1f52d42546325306ff9c35e68d23a5cab05ff14f940964a991afa +size 65664 diff --git a/mod/Textures/cyberware/misc/implantbox.dds b/mod/Textures/cyberware/misc/implantbox.dds new file mode 100644 index 0000000..468cf58 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44186452dec838167a7d41fbf3f6096a684cba42a6365973e3d0fc9f4ae5355d +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox.dds b/mod/Textures/cyberware/misc/implantbox/implantbox.dds new file mode 100644 index 0000000..2358246 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce857c144c3651dc3f9944f38f67ba87f36f5867c88d356ac765116cf7e74e26 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_ab.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_ab.dds new file mode 100644 index 0000000..feababa --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_ab.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7f2b69c537158403f6fab5ebd3859cdcb095283245f6eefa187833fa4a03371 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_ars.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_ars.dds new file mode 100644 index 0000000..0d1c097 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_ars.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fa433c81dc783d50db47c6507f22f961a6b5f6b321000203ce8191e44c01d7a +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_be.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_be.dds new file mode 100644 index 0000000..2747e0f --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_be.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c1bbc4cc8e8dbac623f13a20494c8572aa196338ca32bcbbc5c771274ce1023 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_emp.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_emp.dds new file mode 100644 index 0000000..28c9b3e --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_emp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b48f7d7e7c067d93b02160632d7c911d2a6505afad6e76b9ebe2a1cfb37c94fa +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_es.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_es.dds new file mode 100644 index 0000000..13b6a81 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_es.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe4cd86eac481e393c900f0ffe58a58403fd89749af1b3285d224cdf3f161c3b +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_ha.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_ha.dds new file mode 100644 index 0000000..41c391e --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_ha.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c9fbe62a8ee096add6b731af8b9bfe5f9c19cf3d22645d0bed0ab6a61ef61a +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_hfp.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_hfp.dds new file mode 100644 index 0000000..ec4c2d5 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_hfp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f50cc674dbcf234bef2058c276596961578c95c5e4f88ab1f7f0919c18c45db +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_hs1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_hs1.dds new file mode 100644 index 0000000..8065086 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_hs1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae528278202884377e034f93a81141ea11f4a8daebfa3df166b3e7e2c405cb70 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_hs2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_hs2.dds new file mode 100644 index 0000000..eb07054 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_hs2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3868515c55c08085964ed46179d67d6475c97c97e5f4bf73d2c822dcf0c0259e +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_hs3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_hs3.dds new file mode 100644 index 0000000..7a65ccb --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_hs3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24e47f08abc62fae8424e8288ada00a4ccee8223c3e053f2fea47214346fcc31 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_hs4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_hs4.dds new file mode 100644 index 0000000..de4da8a --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_hs4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4acb92735b6301fe0851e2fd16ff9b1ca9f8ccfed79129d22f658888dd93aade +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_ka.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_ka.dds new file mode 100644 index 0000000..cacc77b --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_ka.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22391f493909cf1f2f4e108f74724274e49858cca0466032ec623a17e4036b91 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_lcp.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_lcp.dds new file mode 100644 index 0000000..a310271 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_lcp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48780094ee321aa97977392c79506ddb8f804573aa5cc86d4f3716706a9e0080 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_mb.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_mb.dds new file mode 100644 index 0000000..ea276dd --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_mb.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec63961d2d5129f590aa002098c16ff211b57d1af14eb3822091e7a3bd476a1 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_mm1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_mm1.dds new file mode 100644 index 0000000..587c580 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_mm1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d5ad524c0fa5e09ecf4db348600ec4dac03208ae1e40af39bcc4b818fd8c92b +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_mm2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_mm2.dds new file mode 100644 index 0000000..09aa9da --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_mm2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2addfea385ef44caa32b36be6a5197a5de3af4e295ec8b21c47c631127d1176 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_mm3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_mm3.dds new file mode 100644 index 0000000..188f0ea --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_mm3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5edbd6bacf2e587c968c9ef34843ebd5f3bde84c2bba8a35b062e38b7cd4f189 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_mm4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_mm4.dds new file mode 100644 index 0000000..642abf4 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_mm4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3687a8a136aff501895227e3b6004eab85cdd482a615539b86848f98e3bee025 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_nd1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_nd1.dds new file mode 100644 index 0000000..fac54ea --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_nd1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbd666a5282d97b553fde3fde24b5d74aceefef791aa7df1b0e7110cb8b20a43 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_nd2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_nd2.dds new file mode 100644 index 0000000..e020a10 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_nd2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0ed0f353edbe80039a47a3f5a31b6f2cb565cb689228e37938a6982e63b1059 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_nd3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_nd3.dds new file mode 100644 index 0000000..5d6c4d7 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_nd3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13b09e4f6be5454710b84f48f0f836bc640a85c7e5607f4c5885d3dbb1e73884 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_nd4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_nd4.dds new file mode 100644 index 0000000..b3dc1c0 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_nd4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4881815edc23d0dae573dbc8bfddadbd3252aca3df8442b09134dab217556648 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_nr.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_nr.dds new file mode 100644 index 0000000..f7469a9 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_nr.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32060cc144ce7cfeb01f8d3d9681cf5456dc5b1838007a0aa32a2f7bbc12bf8e +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_nw.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_nw.dds new file mode 100644 index 0000000..2a5684b --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_nw.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:317783598db9d6f25f46a4bf91c6f01b142e654be3bf5a32ff39fea19de3b3d7 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_oe.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_oe.dds new file mode 100644 index 0000000..7ea9e51 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_oe.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95a7cb4d85d201afc11c9882ef6e6f1c338cb36596f09b80e3f804d1cbbcdc59 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_pc.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_pc.dds new file mode 100644 index 0000000..1dcd7a0 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_pc.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:661deca9c9a8f20aa941a887761bcfcb6f03d3e8f51b0a9a1fe03299ea93d408 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_rb.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_rb.dds new file mode 100644 index 0000000..3a60f2b --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_rb.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11a2ad06520067284543ef3ed091d86a116822d0a433d74155f162fcc8ce619d +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_rn1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_rn1.dds new file mode 100644 index 0000000..72e20de --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_rn1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcc57edfaf62409e67819b18f71cb68fee921c090f36487b5d60a1c3b8afe3dd +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_rn2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_rn2.dds new file mode 100644 index 0000000..fa6b779 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_rn2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:071714f7984b810698f1cca1d66fa54fed78dbccbdbc4a84db7457be4373a5a6 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_rn3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_rn3.dds new file mode 100644 index 0000000..e75ec9e --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_rn3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f6138df84f5fa08f84bd72e4736dd88a82f48e3ee5b3aae5e1c97dd6e18fac2 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_rn4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_rn4.dds new file mode 100644 index 0000000..a56bb8d --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_rn4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44cd95eb50a21684ac03def3956937822787a92fbdb0b62801921fe035763c40 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_sda.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_sda.dds new file mode 100644 index 0000000..441aeb6 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_sda.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90f3693fb20d4f30193431afa2597bfb9ff7682f8a0a0e1a029b1a03ac6c75ce +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_sl.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_sl.dds new file mode 100644 index 0000000..cc1eea8 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_sl.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffe14422d2c1b3ff18317730586c172544ff0c51f74475224f7feb143f8f71a0 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_snb.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_snb.dds new file mode 100644 index 0000000..ddb9fee --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_snb.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e200f030fc00ea35c99c29a769db8bd2b65aac5728ec2820cf933fd813e60af +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_td1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_td1.dds new file mode 100644 index 0000000..0b6c12f --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_td1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9294dc60e677997c41fdbb9abbd12110c1aaccffc6c0ce0cf88efff5e4cec6c6 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_td2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_td2.dds new file mode 100644 index 0000000..339d6c5 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_td2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d8134a95c4eadd005e424969d5dbc53bf6b8d1011f5a397a61f0b9eecce9da8 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_td3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_td3.dds new file mode 100644 index 0000000..a1429ed --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_td3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f02ab5ff0e70c8b6fb3adf16e57a489d574b5f89f65c884a2357b80cc5dbf2e +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_td4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_td4.dds new file mode 100644 index 0000000..6763ab5 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_td4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:751cc7e87138ccc5eee4fdb9560dee5818cfe752c8c9c90773381e0bf9febc01 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_vm1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_vm1.dds new file mode 100644 index 0000000..301fb6b --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_vm1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c2a8d6395e9092c376a10c585bc009a7aafb4d96b758bb556f3e3948a45c97c +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_vm2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_vm2.dds new file mode 100644 index 0000000..8134255 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_vm2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:445f7953865bdd15bb6c3df4dd305f8bc1bd72a907c4915577a4992a199b37fe +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_vm3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_vm3.dds new file mode 100644 index 0000000..b6a0737 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_vm3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c39a6f785d9ca2bfc977fcfc0ec2d42a5dce27b23a9a28a4cf0479a5efa84ff6 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_vm4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_vm4.dds new file mode 100644 index 0000000..dd4df76 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_vm4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df7e724cc0d9ea299c275fc6df40070247ca6f43754b186a19bab0319b83e8e0 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_wa1.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_wa1.dds new file mode 100644 index 0000000..010c5a2 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_wa1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87cdf9c5a76bf82e2c9e1b35d74a3cc102a0ce1a4bd92a017074a1ab922d7731 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_wa2.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_wa2.dds new file mode 100644 index 0000000..cf8170e --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_wa2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e4b6fa196aa0a21f6648ecb4306dd26b35b32694c01b71c009ced5270a1ed24 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_wa3.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_wa3.dds new file mode 100644 index 0000000..94e1c82 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_wa3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a42edb84c5780e4361efa7c6a6ad247210e9bfe6d556099aba659f6f2832a3a6 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_wa4.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_wa4.dds new file mode 100644 index 0000000..978e431 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_wa4.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:355f54a36abd78b00c362882ded1fb5c26be399700a25d8712cc48bd4a304219 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantbox_ws.dds b/mod/Textures/cyberware/misc/implantbox/implantbox_ws.dds new file mode 100644 index 0000000..b159d95 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantbox_ws.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3459d79682b1bc36318d2af22f06562f0a7e8d80820035e6f3c90ff2f216ad9 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantboxblue_c13.dds b/mod/Textures/cyberware/misc/implantbox/implantboxblue_c13.dds new file mode 100644 index 0000000..f197474 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantboxblue_c13.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a93939bd41543641543a6ba6a16d0b045fbbe1c07354d326ce48bdb0bbc43cef +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantboxblue_grx.dds b/mod/Textures/cyberware/misc/implantbox/implantboxblue_grx.dds new file mode 100644 index 0000000..26dffb9 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantboxblue_grx.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96cbb8a0fc043d3f31b9c8da97780197aff351578516eac42276a1dff4ba7cae +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantboxblue_m5.dds b/mod/Textures/cyberware/misc/implantbox/implantboxblue_m5.dds new file mode 100644 index 0000000..35c5f67 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantboxblue_m5.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22b49f7912b850efb894ff178b6721672e13ccc8949ee2286da635838b08e19a +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantboxblue_y3.dds b/mod/Textures/cyberware/misc/implantbox/implantboxblue_y3.dds new file mode 100644 index 0000000..dbbbf21 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantboxblue_y3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f38ac2176851f8a06a0b219180422147aa2c949abfc173281482b3e077c0036 +size 349680 diff --git a/mod/Textures/cyberware/misc/implantbox/implantboxblue_y5.dds b/mod/Textures/cyberware/misc/implantbox/implantboxblue_y5.dds new file mode 100644 index 0000000..64661a0 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantbox/implantboxblue_y5.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39bb4b13548da296fb56151e96c4bdc6a6d8cf1a2da628d0bcf898947cb8339b +size 349680 diff --git a/mod/Textures/cyberware/misc/implantboxblue.dds b/mod/Textures/cyberware/misc/implantboxblue.dds new file mode 100644 index 0000000..9cf9058 --- /dev/null +++ b/mod/Textures/cyberware/misc/implantboxblue.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6189afe171ed37b262c1a81878f475fc9e5aac13f1d4f4917fd0d25652c9f4b3 +size 349680 diff --git a/mod/Textures/cyberware/misc/surgerymanual.dds b/mod/Textures/cyberware/misc/surgerymanual.dds new file mode 100644 index 0000000..9b48424 --- /dev/null +++ b/mod/Textures/cyberware/misc/surgerymanual.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac434eb644c65c6829850e3cddba4669ae4ea28ef2a958c2aca5aee78d42d746 +size 43832 diff --git a/mod/UIO/public/Cyberware - AR Scanner.txt b/mod/UIO/public/Cyberware - AR Scanner.txt new file mode 100644 index 0000000..dc6d161 --- /dev/null +++ b/mod/UIO/public/Cyberware - AR Scanner.txt @@ -0,0 +1,2 @@ +cyberware\cw_arscanner.xml::HUDMainMenu::HUDMainMenu +true \ No newline at end of file diff --git a/mod/UIO/public/Cyberware - Adrenaline Booster.txt b/mod/UIO/public/Cyberware - Adrenaline Booster.txt new file mode 100644 index 0000000..aef6986 --- /dev/null +++ b/mod/UIO/public/Cyberware - Adrenaline Booster.txt @@ -0,0 +1,2 @@ +cyberware\cw_adrenaline_booster.xml::HUDMainMenu::HUDMainMenu +true \ No newline at end of file diff --git a/mod/UIO/public/Cyberware - Bionic Eyes.txt b/mod/UIO/public/Cyberware - Bionic Eyes.txt new file mode 100644 index 0000000..1fb6005 --- /dev/null +++ b/mod/UIO/public/Cyberware - Bionic Eyes.txt @@ -0,0 +1,2 @@ +cyberware\cw_bionic_eyes.xml::HUDMainMenu::HUDMainMenu +true \ No newline at end of file diff --git a/mod/UIO/public/Cyberware - Main.txt b/mod/UIO/public/Cyberware - Main.txt new file mode 100644 index 0000000..6be836d --- /dev/null +++ b/mod/UIO/public/Cyberware - Main.txt @@ -0,0 +1,2 @@ +cyberware\cw_implants.xml::TutorialMenu::TutorialMenu +true \ No newline at end of file diff --git a/mod/UIO/public/Cyberware - Stealth Nano-Bots.txt b/mod/UIO/public/Cyberware - Stealth Nano-Bots.txt new file mode 100644 index 0000000..b53c22f --- /dev/null +++ b/mod/UIO/public/Cyberware - Stealth Nano-Bots.txt @@ -0,0 +1,2 @@ +cyberware\cw_stealth.xml::HUDMainMenu::HUDMainMenu +true \ No newline at end of file diff --git a/src/CWxAdrenalineAddBonus.gek b/src/CWxAdrenalineAddBonus.gek new file mode 100644 index 0000000..6be5b69 --- /dev/null +++ b/src/CWxAdrenalineAddBonus.gek @@ -0,0 +1,32 @@ +scn CWxAdrenalineAddBonus + +float fBonus + +begin function { fBonus } + + set CWxAdrenalineBonus to CWxAdrenalineBonus + fBonus + + if CWxAdrenalineBonus > CWxAdrenalineBonusMax + set CWxAdrenalineBonus to CWxAdrenalineBonusMax + endif + + DebugPrint "Cyberware: Setting adrenaline bonus to %.2f" CWxAdrenalineBonus + + setUIFloat "HUDMainMenu/_PNxAPBonusValue" CWxAdrenalineBonus + setUIFloat "HUDMainMenu/_PNxAPBonusEnabled" 1 + + printd "Cyberware: Updating AP restore rate" + + set fBonus to CWxDefaultAPRestoreRate * (1 + CWxAdrenalineBonus) + SetNumericGameSetting fActionPointsRestoreRate fBonus + + if GetQuestRunning CWxAdrenalineQuest == 0 + printd "Cyberware: Starting adrenaline cooldown" + StartQuest CWxAdrenalineQuest + endif + + set CWxAdrenalineCounter to 0 + + printd "Cyberware: Adrenaline counter has been reset" + +end diff --git a/src/CWxAdrenalineOnKill.gek b/src/CWxAdrenalineOnKill.gek new file mode 100644 index 0000000..6f25d5d --- /dev/null +++ b/src/CWxAdrenalineOnKill.gek @@ -0,0 +1,29 @@ +scn CWxAdrenalineOnKill + +; Instant OnDeath handler +; At this point, limb data is not available yet, so we process it a bit later in CWxAdrenalineOnSeveredLimb + +float fDamageAmount +ref rSourceRef +ref rActor + +begin function { fDamageAmount, rSourceRef } + + set rActor to this + + ; Do not pile up handlers on dead actors + SetOnHealthDamageEventHandler CWxAdrenalineOnKill 0 rActor + + ; Only count player kills + if rSourceRef != playerRef + return + endif + + ; Actors may be ragdolled due to explosion, unconsciousness, etc. + if rActor.GetDead == 0 + return + endif + + call CWxAdrenalineAddBonus 0.2 + +end diff --git a/src/CWxAdrenalineOnRagdoll.gek b/src/CWxAdrenalineOnRagdoll.gek new file mode 100644 index 0000000..a4592a7 --- /dev/null +++ b/src/CWxAdrenalineOnRagdoll.gek @@ -0,0 +1,15 @@ +scn CWxAdrenalineOnRagdoll + +ref rActor + +begin function {} + + if this == playerRef + return + endif + + set rActor to this + + SetOnHealthDamageEventHandler CWxAdrenalineOnKill 1 rActor + +end diff --git a/src/CWxAdrenalineOnSeveredLimb.gek b/src/CWxAdrenalineOnSeveredLimb.gek new file mode 100644 index 0000000..b3f4c70 --- /dev/null +++ b/src/CWxAdrenalineOnSeveredLimb.gek @@ -0,0 +1,40 @@ +scn CWxAdrenalineOnSeveredLimb + +ref rSourceRef +ref rActor +int iDeathCause +float fBonus + +begin function { rActor, rSourceRef } + + ; Only count player kills + if rSourceRef != playerRef || rActor == playerRef + return + endif + + set fBonus to 0 + + ; Not very reliable, but sometimes works + set iDeathCause to rActor.GetCauseOfDeath + + if iDeathCause == 0 || iDeathCause == 3 || iDeathCause == 4 || iDeathCause == 5 + printd "Cyberware: Cause of death - Explosion, Blunt Weapon, HandToHand, ObjectImpact" + set fBonus to fBonus + 0.10 + endif + + ; Head + if rActor.isLimbGone 1 2 + printd "Cyberware: Severed head" + set fBonus to fBonus + 0.20 + + ; Any other limbs + elseif rActor.isLimbGone 3 13 + printd "Cyberware: Severed limb" + set fBonus to fBonus + 0.10 + endif + + if fBonus > 0 + call CWxAdrenalineAddBonus fBonus + endif + +end diff --git a/src/CWxAdrenalineQuestScript.gek b/src/CWxAdrenalineQuestScript.gek new file mode 100644 index 0000000..8f48444 --- /dev/null +++ b/src/CWxAdrenalineQuestScript.gek @@ -0,0 +1,17 @@ +scn CWxAdrenalineQuestScript + +begin GameMode + + if CWxAdrenalineCounter < CWxAdrenalineBonusTimeout + + set CWxAdrenalineCounter to CWxAdrenalineCounter + 1 + DebugPrint "Cyberware: Adrenaline counter set to %.0f" CWxAdrenalineCounter + + else + + printd "Cyberware: Adrenalin cooled down, stopping the quest" + SetStage CWxAdrenalineQuest 0 ; Stop quest + + endif + +end diff --git a/src/CWxAdrenalineUpdatePerk.gek b/src/CWxAdrenalineUpdatePerk.gek new file mode 100644 index 0000000..69a94b9 --- /dev/null +++ b/src/CWxAdrenalineUpdatePerk.gek @@ -0,0 +1,21 @@ +scn CWxAdrenalineUpdatePerk + +int iMode +array_var aImplants + +begin function { iMode } + + let aImplants := ar_list CWxImplants.torsoImplant1, CWxImplants.torsoImplant2, CWxImplants.torsoImplant3, CWxImplants.torsoImplant4 + call CWxFnSyncImplant CWxImplantAdrenalineBooster CWxImplantAPRegenPerk 1 aImplants + let aImplants := ar_null + + if player.HasPerk CWxImplantAPRegenPerk == 0 + if GetQuestRunning CWxAdrenalineQuest + ; Stop the quest + SetStage CWxAdrenalineQuest 0 + endif + endif + + call CWxAdrenalineUpdateTriggers 0 + +end diff --git a/src/CWxAdrenalineUpdateTriggers.gek b/src/CWxAdrenalineUpdateTriggers.gek new file mode 100644 index 0000000..f4d412c --- /dev/null +++ b/src/CWxAdrenalineUpdateTriggers.gek @@ -0,0 +1,27 @@ +scn CWxAdrenalineUpdateTriggers + +int iMode + +begin function { iMode } + + printd "Cyberware: Updating Adrenaline Booster triggers" + + if player.HasPerk CWxImplantAPRegenPerk + + SetOnRagdollEventHandler CWxAdrenalineOnRagdoll 1 + SetEventHandler "OnDeath" CWxAdrenalineOnSeveredLimb "second"::playerRef + + ; HUD state may persist between savegame reloads, so we refresh state on every load + + if CWxAdrenalineBonus > 0 + call CWxAdrenalineAddBonus 0 ; refresh HUD + else + SetStage CWxAdrenalineQuest 0 ; stop quest + endif + + else + SetOnRagdollEventHandler CWxAdrenalineOnRagdoll 0 + RemoveEventHandler "OnDeath" CWxAdrenalineOnSeveredLimb + endif + +end diff --git a/src/CWxBionicEyesGrainQuestScript.gek b/src/CWxBionicEyesGrainQuestScript.gek new file mode 100644 index 0000000..feb285f --- /dev/null +++ b/src/CWxBionicEyesGrainQuestScript.gek @@ -0,0 +1,51 @@ +scn CWxBionicEyesGrainQuestScript + +; The script runs every 0.05 seconds + +; Input vars +float staticGrain +float dynamicGrain +float red ; 0-1 +float green ; 0-1 +float blue ; 0-1 + +short phase + +float curGrain +float nextGrain + +Begin GameMode + + if nextGrain == 0 + return + endif + + if curGrain != nextGrain + if curGrain > nextGrain + ; Slow decrease + set curGrain to curGrain - 0.1 + if curGrain < nextGrain + set curGrain to nextGrain + endif + else + ; Instant increase + set curGrain to nextGrain + endif + endif + + set phase to phase + 1 + if phase > 4 + set phase to 1 + endif + + setUIFLoat "HUDMainMenu\_PNxGrainAmount" curGrain + setUIFLoat "HUDMainMenu\_PNxGrainPhase" phase + +End + +begin MenuMode + if GetUIFLoat "HUDMainMenu\_PNXGrainPhase" != 0 + SetUIFLoat "HUDMainMenu\_PNXGrainPhase" 0 + endif +end + diff --git a/src/CWxBionicEyesOnHotkey.gek b/src/CWxBionicEyesOnHotkey.gek new file mode 100644 index 0000000..e64e034 --- /dev/null +++ b/src/CWxBionicEyesOnHotkey.gek @@ -0,0 +1,42 @@ +scn CWxBionicEyesOnHotkey + +int iKeyID + +begin function { iKeyID } + + if MenuMode + return + endif + + if iKeyID != CWxVisionModeHotkey + SetOnKeyUpEventHandler CWxBionicEyesOnHotkey 0 iKeyID + return + endif + + if CWxVisionModeLevel == 0 + + SetStage CWxBionicEyesQuest 1 + set CWxVisionModeLevel to 1 + + elseif CWxVisionModeLevel == 1 + + SetStage CWxBionicEyesQuest 2 + SetStage CWxBionicEyesQuest 3 + set CWxVisionModeLevel to 2 + + elseif CWxVisionModeLevel == 2 + + SetStage CWxBionicEyesQuest 4 + SetStage CWxBionicEyesQuest 5 + set CWxVisionModeLevel to 3 + + else + + SetStage CWxBionicEyesQuest 6 + set CWxVisionModeLevel to 0 + + SetStage CWxBionicEyesGrainQuest 0 + + endif + +end diff --git a/src/CWxBionicEyesQuestScript.gek b/src/CWxBionicEyesQuestScript.gek new file mode 100644 index 0000000..f4ab4c9 --- /dev/null +++ b/src/CWxBionicEyesQuestScript.gek @@ -0,0 +1,220 @@ +scn CWxBionicEyesQuestScript + +; CWxVisionModeLevel: +; 0 - Off +; 1 - Night vision +; 2 - Heat vision +; 3 - EM vision + +ref shader1 +ref shader2 +ref shader3 + +short heatShader1stPersonActive +short heatShader3rdPersonActive + +short EMShader1stPersonActive +short EMShader3rdPersonActive + +ref obj + +int i +int size + +ref rArmor + +begin GameMode + + if CWxVisionModeLevel == 2 + + printd "Updating heat vision" + + if IsPC1stPerson && heatShader1stPersonActive == 0 + set heatShader1stPersonActive to 1 + player.pms shader3 + elseif IsPC1stPerson == 0 && heatShader3rdPersonActive == 0 + set heatShader3rdPersonActive to 1 + player.pms shader1 + endif + + set obj to GetFirstRef 200 2 0 + + ; Phase 1 - Search for new current actors + + while obj + if obj.getIsCreatureType 6 == 0 && obj.getDead == 0 && obj.getDisabled == 0 + obj.listAddReference CWxVisionModeAList + + if listGetFormIndex CWxVisionModeBList obj == -1 + obj.pms shader1 + endif + endif + + set obj to GetNextRef + loop + + ; Phase 2 - Search for gone actors + + set i to 0 + set size to ListGetCount CWxVisionModeBList + + while i < size + set obj to listGetNthForm CWxVisionModeBList i + + if IsFormValid obj + if obj.getDead + obj.sms shader1 + obj.pms shader2 + else + if ListGetFormIndex CWxVisionModeAList obj == -1 + obj.sms shader1 + obj.sms shader2 + endif + endif + endif + + set i to i + 1 + loop + + ; Clear B + ListClear CWxVisionModeBList + + ; Move A to B + while obj := ListRemoveNthForm CWxVisionModeAList 0 + ListAddForm CWxVisionModeBList obj + loop + + elseif CWxVisionModeLevel == 3 ; EM Vision + + set rArmor to playerRef.GetEquippedObject 2 + + if rArmor + if IsPowerArmor rArmor + if IsPC1stPerson && EMShader1stPersonActive == 0 + set EMShader1stPersonActive to 1 + playerRef.pms shader2 + elseif IsPC1stPerson == 0 && EMShader3rdPersonActive == 0 + set EMShader3rdPersonActive to 1 + playerRef.pms shader2 + endif + else + playerRef.sms shader2 + endif + else + playerRef.sms shader2 + endif + + ; Phase 1 - Search for new current actors + + set obj to GetFirstRef 200 2 0 + + while obj + if obj.getDisabled == 0 + if obj.GetCreatureType == -1 + + set rArmor to obj.GetEquippedObject 2 + if rArmor + if IsPowerArmor rArmor + + obj.listAddReference CWxVisionModeAList + if listGetFormIndex CWxVisionModeBList obj == -1 + if obj.getDead == 0 + obj.pms shader1 + else + obj.pms shader2 + endif + endif + + endif + endif + + elseif obj.getIsCreatureType 6 + + obj.listAddReference CWxVisionModeAList + if listGetFormIndex CWxVisionModeBList obj == -1 + if obj.getDead == 0 + obj.pms shader1 + else + obj.pms shader2 + endif + endif + + endif + endif + + set obj to GetNextRef + loop + + ; Phase 2 - Search for gone actors + + set i to 0 + set size to ListGetCount CWxVisionModeBList + + while i < size + set obj to listGetNthForm CWxVisionModeBList i + + if IsFormValid obj + if listGetFormIndex CWxVisionModeAList obj == -1 + obj.sms shader1 + obj.sms shader2 + endif + endif + + set i to i + 1 + loop + + ; Clear B + ListClear CWxVisionModeBList + + ; Move A to B + while obj := ListRemoveNthForm CWxVisionModeAList 0 + ListAddForm CWxVisionModeBList obj + loop + + + ;Energy Weapons & deactivated mines + set obj to GetFirstRef 40 2 0 + + while obj + if obj.GetWeaponSkill == 34 || obj.GetWeaponSkill == 35 + obj.sms shader2 + obj.pms shader2 2 + endif + set obj to getNextRef + loop + + ; Projectiles (activated mines, grenades etc) + set obj to GetFirstRef 51 2 0 + while obj + obj.sms shader2 + obj.pms shader2 2 + set obj to GetNextRef + loop + + ; Traps + set obj to GetFirstRef 21 2 0 + while obj + if IsRefInList CWxTrapsList obj >= 0 + obj.SMS shader2 + obj.PMS shader2 2 + endif + + set obj to GetNextRef + loop + + ; Terminals + set obj to GetFirstRef 23 2 0 + while obj + obj.sms shader2 + obj.pms shader2 2 + set obj to GetNextRef + loop + + + else + + SetStage CWxBionicEyesQuest 0 ; stop quest + + endif + +end diff --git a/src/CWxBionicEyesUpdatePerk.gek b/src/CWxBionicEyesUpdatePerk.gek new file mode 100644 index 0000000..5c831e4 --- /dev/null +++ b/src/CWxBionicEyesUpdatePerk.gek @@ -0,0 +1,31 @@ +scn CWxBionicEyesUpdatePerk + +int iStage +array_var aImplants + +begin function { iStage } + + let aImplants := ar_list CWxImplants.headImplant1, CWxImplants.headImplant2, CWxImplants.headImplant3, CWxImplants.headImplant4 + call CWxFnSyncImplant CWxImplantBionicEyes CWxImplantVisionModePerk 1 aImplants + let aImplants := ar_null + + call CWxBionicEyesUpdateTriggers 0 + + ; Reset vision mode, if the implant has been removed + + if player.HasPerk CWxImplantVisionModePerk == 0 && CWxVisionModeLevel > 0 + + if CWxVisionModeLevel == 1 + SetStage CWxBionicEyesQuest 2 + elseif CWxVisionModeLevel == 2 + SetStage CWxBionicEyesQuest 4 + elseif CWxVisionModeLevel == 3 + SetStage CWxBionicEyesQuest 6 + endif + + SetStage CWxBionicEyesGrainQuest 0 + SetStage CWxBionicEyesQuest 0 ; stop quest + + endif + +end diff --git a/src/CWxBionicEyesUpdateTriggers.gek b/src/CWxBionicEyesUpdateTriggers.gek new file mode 100644 index 0000000..9d06456 --- /dev/null +++ b/src/CWxBionicEyesUpdateTriggers.gek @@ -0,0 +1,21 @@ +scn CWxBionicEyesUpdateTriggers + +int iMode + +begin function { iMode } + + if player.HasPerk CWxImplantVisionModePerk + + SetOnKeyUpEventHandler CWxBionicEyesOnHotkey 1 CWxVisionModeHotkey + + ; Clear list of processed actors to reapply shaders + if CWxVisionModeLevel > 0 + ListClear CWxVisionModeAList + ListClear CWxVisionModeBList + endif + + else + SetOnKeyUpEventHandler CWxBionicEyesOnHotkey 0 CWxVisionModeHotkey + endif + +end diff --git a/src/CWxFnCallFormList.gek b/src/CWxFnCallFormList.gek new file mode 100644 index 0000000..936d625 --- /dev/null +++ b/src/CWxFnCallFormList.gek @@ -0,0 +1,24 @@ +scn CWxFnCallFormList + +ref rFormList +int iArg +int i +int iSize +ref rTemp + +begin function { rFormList, iArg } + + set i to 0 + set iSize to ListGetCount rFormList + + while i < iSize + set rTemp to ListGetNthForm rFormList i + if rTemp + if GetObjectType rTemp == 17 + call rTemp iArg + endif + endif + set i to i + 1 + loop + +end diff --git a/src/CWxFnStartSurgery.gek b/src/CWxFnStartSurgery.gek new file mode 100644 index 0000000..4a0a476 --- /dev/null +++ b/src/CWxFnStartSurgery.gek @@ -0,0 +1,25 @@ +scn CWxFnStartSurgery + +ref rSurgeonRef +int bRequireManual +ref rBase + +begin function { rSurgeonRef, bRequireManual } + + ; We call this only if dialog conditions are met, so it's implemented as a soft requirement here + + if bRequireManual + if ( rSurgeonRef.IsInList CWxTrainedSurgeonsList == 0 ) && ( player.GetItemCount CWxSurgeryManual > 0 ) + + set rBase to rSurgeonRef.GetBaseForm + AddFormToFormList CWxTrainedSurgeonsList rBase + player.removeItem CWxSurgeryManual 1 1 + ShowMessage CWxSurgeryUnlockedMsg + ScriptWait 20 + + endif + endif + + SetStage CWxImplantsPanel 1 + +end diff --git a/src/CWxFnSyncImplant.gek b/src/CWxFnSyncImplant.gek new file mode 100644 index 0000000..5eae75e --- /dev/null +++ b/src/CWxFnSyncImplant.gek @@ -0,0 +1,28 @@ +scn CWxFnSyncImplant + +ref rImplant +ref rPerk +int iRank +array_var aSlots + +begin function { rImplant, rPerk, iRank, aSlots } + + if 0 <= ar_find rImplant aSlots + + if player.GetPerkRank rPerk != iRank + DebugPrint "Adding perk %n, level %.0f" rPerk iRank + player.SetPerkRank rPerk iRank + endif + + elseif player.HasPerk rPerk + + if player.GetPerkRank rPerk == iRank + DebugPrint "Removing perk %n" rPerk + player.removePerk rPerk + endif + + endif + + let aSlots := ar_null + +end diff --git a/src/CWxFnUpgrade.gek b/src/CWxFnUpgrade.gek new file mode 100644 index 0000000..caf74e1 --- /dev/null +++ b/src/CWxFnUpgrade.gek @@ -0,0 +1,82 @@ +scn CWxFnUpgrade + +int iMode + +begin function { iMode } + + if CWxVersion < 1 + + print "Cyberware: initializing" + + set CWxVersion to 1 + + if player.hasPerk ImplantAgilityPerk + AddFormToFormList CWxPreInstallPerks ImplantAgilityPerk + player.RemovePerk ImplantAgilityPerk + player.dispel ImplantAgilityBoost + player.addItem CWxImplantReflexBooster 1 + endif + + if player.hasPerk ImplantCharismaPerk + AddFormToFormList CWxPreInstallPerks ImplantCharismaPerk + player.RemovePerk ImplantCharismaPerk + player.dispel ImplantCharismaBoost + player.addItem CWxImplantEmpathySynthesizer 1 + endif + + if player.hasPerk ImplantDTPerk + AddFormToFormList CWxPreInstallPerks ImplantDTPerk + player.RemovePerk ImplantDTPerk + player.dispel ImplantDTBoost + player.addItem CWxImplantSubDermalArmor 1 + endif + + if player.hasPerk ImplantEndurancePerk + AddFormToFormList CWxPreInstallPerks ImplantEndurancePerk + player.RemovePerk ImplantEndurancePerk + player.dispel ImplantEnduranceBoost + player.addItem CWxImplantNociceptionRegulator 1 + endif + + if player.hasPerk ImplantIntelligencePerk + AddFormToFormList CWxPreInstallPerks ImplantIntelligencePerk + player.RemovePerk ImplantIntelligencePerk + player.dispel ImplantIntelligenceBoost + player.addItem CWxImplantLogicCoProcessor 1 + endif + + if player.hasPerk ImplantLuckPerk + AddFormToFormList CWxPreInstallPerks ImplantLuckPerk + player.RemovePerk ImplantLuckPerk + player.dispel ImplantLuckBoost + player.addItem CWxImplantProbabilityCalculator 1 + endif + + if player.hasPerk ImplantPerceptionPerk + AddFormToFormList CWxPreInstallPerks ImplantPerceptionPerk + player.RemovePerk ImplantPerceptionPerk + player.dispel ImplantPerceptionBoost + player.addItem CWxImplantOpticsEnhancer 1 + endif + + if player.hasPerk ImplantRegenPerk + AddFormToFormList CWxPreInstallPerks ImplantRegenPerk + player.RemovePerk ImplantRegenPerk + player.dispel ImplantRegenBoost + player.addItem CWxImplantMonocyteBreeder 1 + endif + + if player.hasPerk ImplantStrengthPerk + AddFormToFormList CWxPreInstallPerks ImplantStrengthPerk + player.RemovePerk ImplantStrengthPerk + player.dispel ImplantStrengthBoost + player.addItem CWxImplantHypertrophyAccelerator 1 + endif + + if player.GetItemCount CWxImplantsAllList + SetObjectiveDisplayed CWxImplantSurgeonQuest 10 1 + endif + + endif + +end diff --git a/src/CWxImplantDataScript.gek b/src/CWxImplantDataScript.gek new file mode 100644 index 0000000..f90a805 --- /dev/null +++ b/src/CWxImplantDataScript.gek @@ -0,0 +1,25 @@ +scn CWxImplantDataScript + +; Implants storage + +ref headImplant1 +ref headImplant2 +ref headImplant3 +ref headImplant4 + +ref torsoImplant1 +ref torsoImplant2 +ref torsoImplant3 +ref torsoImplant4 + +ref rightArmImplant1 +ref rightArmImplant2 + +ref leftArmImplant1 +ref leftArmImplant2 + +ref rightLegImplant1 +ref rightLegImplant2 + +ref leftLegImplant1 +ref leftLegImplant2 diff --git a/src/CWxLimbRegenOnCrippledLimb.gek b/src/CWxLimbRegenOnCrippledLimb.gek new file mode 100644 index 0000000..af3dab2 --- /dev/null +++ b/src/CWxLimbRegenOnCrippledLimb.gek @@ -0,0 +1,47 @@ +scn CWxLimbRegenOnCrippledLimb + +; 0 Head +; 1 Torso +; 2 Left Hand +; 3 Right Hand +; 4 Left Leg +; 5 Right Leg +; 6 Brain +int iLimb + +int bStart + +begin function { iLimb } + + set bStart to 0 + + if iLimb == 2 + if player.HasPerk CWxImplantLeftArmRegenPerk + printd "Cyberware: Left arm crippled" + set bStart to 1 + endif + elseif iLimb == 3 + if player.HasPerk CWxImplantRightArmRegenPerk + printd "Cyberware: Right arm crippled" + set bStart to 1 + endif + elseif iLimb == 4 + if player.HasPerk CWxImplantLeftLegRegenPerk + printd "Cyberware: Left leg crippled" + set bStart to 1 + endif + elseif iLimb == 5 + if player.HasPerk CWxImplantRightLegRegenPerk + printd "Cyberware: Right leg crippled" + set bStart to 1 + endif + endif + + if bStart + if GetQuestRunning CWxLimbRegenQuest == 0 + printd "Cyberware: Starting limb regeneration quest" + StartQuest CWxLimbRegenQuest + endif + endif + +end diff --git a/src/CWxLimbRegenQuestScript.gek b/src/CWxLimbRegenQuestScript.gek new file mode 100644 index 0000000..7b7ca0d --- /dev/null +++ b/src/CWxLimbRegenQuestScript.gek @@ -0,0 +1,59 @@ +scn CWxLimbRegenQuestScript + +int iStop +int iNoPerk + +begin GameMode + + set iStop to 0 + set iNoPerk to 0 + + printd "Cyberware: Checking limbs condition" + + if player.HasPerk CWxImplantLeftArmRegenPerk + player.restoreAV LeftAttackCondition 1 + set iStop to iStop + (player.getAV LeftAttackCondition >= 100) + printd "Cyberware: Left arm condition " + $(player.getAV LeftAttackCondition) + else + set iStop to iStop + 1 + set iNoPerk to iNoPerk + 1 + endif + + if player.HasPerk CWxImplantLeftLegRegenPerk + player.restoreAV LeftMobilityCondition 1 + set iStop to iStop + (player.getAV LeftMobilityCondition >= 100) + printd "Cyberware: Left leg condition " + $(player.getAV LeftMobilityCondition) + else + set iStop to iStop + 1 + set iNoPerk to iNoPerk + 1 + endif + + if player.HasPerk CWxImplantRightArmRegenPerk + player.restoreAV RightAttackCondition 1 + set iStop to iStop + (player.getAV RightAttackCondition >= 100) + printd "Cyberware: Right arm condition " + $(player.getAV RightAttackCondition) + else + set iStop to iStop + 1 + set iNoPerk to iNoPerk + 1 + endif + + if player.HasPerk CWxImplantRightLegRegenPerk + player.restoreAV RightMobilityCondition 1 + set iStop to iStop + (player.getAV RightMobilityCondition >= 100) + printd "Cyberware: Right leg condition " + $(player.getAV RightMobilityCondition) + else + set iStop to iStop + 1 + set iNoPerk to iNoPerk + 1 + endif + + if iStop == 4 + printd "Cyberware: Limbs regenerated, stopping quest" + StopQuest CWxLimbRegenQuest + endif + + if iNoPerk == 4 + call CWxLimbRegenUpdateTriggers 0 + endif + +end + diff --git a/src/CWxLimbRegenUpdatePerks.gek b/src/CWxLimbRegenUpdatePerks.gek new file mode 100644 index 0000000..0052c1d --- /dev/null +++ b/src/CWxLimbRegenUpdatePerks.gek @@ -0,0 +1,24 @@ +scn CWxLimbRegenUpdatePerks + +int iMode +array_var aImplants + +begin function { iMode } + + let aImplants := ar_list CWxImplants.rightArmImplant1, CWxImplants.rightArmImplant2 + call CWxFnSyncImplant CWxImplantNanobionicWeave CWxImplantRightArmRegenPerk 1 aImplants + + let aImplants := ar_list CWxImplants.leftArmImplant1, CWxImplants.leftArmImplant2 + call CWxFnSyncImplant CWxImplantNanobionicWeave CWxImplantLeftArmRegenPerk 1 aImplants + + let aImplants := ar_list CWxImplants.rightLegImplant1, CWxImplants.rightLegImplant2 + call CWxFnSyncImplant CWxImplantNanobionicWeave CWxImplantRightLegRegenPerk 1 aImplants + + let aImplants := ar_list CWxImplants.leftLegImplant1, CWxImplants.leftLegImplant2 + call CWxFnSyncImplant CWxImplantNanobionicWeave CWxImplantLeftLegRegenPerk 1 aImplants + + let aImplants := ar_null + + call CWxLimbRegenUpdateTriggers 0 + +end diff --git a/src/CWxLimbRegenUpdateTriggers.gek b/src/CWxLimbRegenUpdateTriggers.gek new file mode 100644 index 0000000..04f296e --- /dev/null +++ b/src/CWxLimbRegenUpdateTriggers.gek @@ -0,0 +1,14 @@ +scn CWxLimbRegenUpdateTriggers + +int iMode +int bEnabled + +begin function { iMode } + + printd "Cyberware: Updating limb regen triggers" + + set bEnabled to (player.hasPerk CWxImplantRightArmRegenPerk || player.hasPerk CWxImplantLeftArmRegenPerk || player.hasPerk CWxImplantRightLegRegenPerk || player.hasPerk CWxImplantLeftLegRegenPerk) + + SetOnCrippledLimbEventHandler CWxLimbRegenOnCrippledLimb bEnabled playerRef + +end diff --git a/src/CWxMCMQuestScript.gek b/src/CWxMCMQuestScript.gek new file mode 100644 index 0000000..2dfea47 --- /dev/null +++ b/src/CWxMCMQuestScript.gek @@ -0,0 +1,201 @@ +scn CWxMCMQuestScript + +int iOption +int iValue +int iMouseoverOption +int iFont +ref rTemp + +begin GameMode + StopQuest CWxMCMQuest ; No zombies allowed! +end + +begin MenuMode 4 + + StopQuest CWxMCMQuest + + if GetGameRestarted == 0 + return + endif + + ;SetDebugMode 1 + + if isModLoaded "The Mod Configuration Menu.esp" + + set iOption to GetModIndex "The Mod Configuration Menu.esp" + set rTemp to BuildRef iOption 2790 + ListAddForm rTemp CWxMCMItem + set rTemp to 0 + + ; Start MCM quest on pause + SetOnMenuOpenEventHandler CWxOnPause 1 1013 + + endif + + SetEventHandler "NewGame" CWxOnNewGame + SetEventHandler "PostLoadGame" CWxOnGameLoad + + SetOnMenuClickEventHandler CWxOnPressInventoryItem 1 "InventoryMenu/GLOW_BRANCH/IM_MainRect/IM_InventoryList/IM_InventoryListTemplateRect" + + ; Add implanted weapons to holdout lists + ListAddForm NVHoldoutWeapons CWxWeapEMP + ListAddForm NVHoldoutWeapons CWxWeapHFP + ListAddForm NVImprovedHoldoutWeapons CWxWeapEMP + ListAddForm NVImprovedHoldoutWeapons CWxWeapHFP + + ; Users often make bashed patches, breaking Pinkerton's barter flags + if IsModLoaded "Fallout3.esm" + set rTemp to StringToRef "Fallout3.esm:156CA" ; Pinkerton + SetServiceFlag rTemp 32 1 ; chems + SetServiceFlag rTemp 64 1 ; stimpacks + SetServiceFlag rTemp 1024 1 ; misc items + BaseAddItem CapsChange100 1 rTemp + endif + +end + +begin MenuMode 1013 + + if GetUIFloat "StartMenu/MCM/_ActiveMenu" != GetItemValue CWxMCMItem + return + endif + + set iOption to GetUIFloat "StartMenu/MCM/_ActiveOption" + set iValue to GetUIFloat "StartMenu/MCM/_Value" + + ;-------------------------------------------------- + ;1 - RESET + if GetUIFloat "StartMenu/MCM/_Reset" + + SetUIFloat "StartMenu/MCM/_Reset" 0 + + ; header font + if GetUIFloat "HUDMainMenu\_DUIF3" > 0 ; DarnifiedUI + set iFont to 3 + else + set iFont to 1 + endif + + SetUIFloat "StartMenu/MCM/*:1/_columns" 2 + + + ; Bionic Eyes + SetUIFloat "StartMenu/MCM/*:1/*:1/_enable" 1 + SetUIString "StartMenu/MCM/*:1/*:1/_title" "Bionic Eyes" + SetUIFloat "StartMenu/MCM/*:1/*:1/_altFont" iFont + SetUIFloat "StartMenu/MCM/*:1/*:1/_type" 7 + SetUIFloat "StartMenu/MCM/*:1/*:1/_highlight" 0 + + ; Hotkey + SetUIFloat "StartMenu/MCM/*:1/*:3/_enable" 1 + SetUIFloat "StartMenu/MCM/*:1/*:3/_indent" 1 + SetUIString "StartMenu/MCM/*:1/*:3/_title" "Vision Mode Hotkey" + SetUIFloat "StartMenu/MCM/*:1/*:3/_RGB" 191137050 + SetUIFloat "StartMenu/MCM/*:1/*:3/_type" 3 + SetUIStringEx "StartMenu/MCM/*:1/*:3/value/*:1/string" "%k" CWxVisionModeHotkey + + ; Grain + SetUIFloat "StartMenu/MCM/*:1/*:4/_enable" 1 + SetUIFloat "StartMenu/MCM/*:1/*:4/_indent" 1 + SetUIString "StartMenu/MCM/*:1/*:4/_title" "Dynamic Grain" + SetUIFloat "StartMenu/MCM/*:1/*:4/_RGB" 191137050 + SetUIFloat "StartMenu/MCM/*:1/*:4/_type" 5 + SetUIFloat "StartMenu/MCM/*:1/*:4/_value" CWxVisionModeEnableGrain + + ; Extra Bright + SetUIFloat "StartMenu/MCM/*:1/*:6/_enable" 1 + SetUIFloat "StartMenu/MCM/*:1/*:6/_indent" 1 + SetUIString "StartMenu/MCM/*:1/*:6/_title" "Brighter Enhanced Vision" + SetUIFloat "StartMenu/MCM/*:1/*:6/_RGB" 191137050 + SetUIFloat "StartMenu/MCM/*:1/*:6/_type" 5 + SetUIFloat "StartMenu/MCM/*:1/*:6/_value" CWxVisionModeExtraBright + + + ; Stealth Nano-Bots + SetUIFloat "StartMenu/MCM/*:1/*:9/_enable" 1 + SetUIString "StartMenu/MCM/*:1/*:9/_title" "Stealth Nano-Bots" + SetUIFloat "StartMenu/MCM/*:1/*:9/_altFont" iFont + SetUIFloat "StartMenu/MCM/*:1/*:9/_type" 7 + SetUIFloat "StartMenu/MCM/*:1/*:9/_highlight" 0 + + ; Hotkey + SetUIFloat "StartMenu/MCM/*:1/*:11/_enable" 1 + SetUIFloat "StartMenu/MCM/*:1/*:11/_indent" 1 + SetUIString "StartMenu/MCM/*:1/*:11/_title" "Stealth Field Hotkey" + SetUIFloat "StartMenu/MCM/*:1/*:11/_RGB" 191137050 + SetUIFloat "StartMenu/MCM/*:1/*:11/_type" 3 + SetUIStringEx "StartMenu/MCM/*:1/*:11/value/*:1/string" "%k" CWxStealthFieldHotkey + + + ;-------------------------------------------------- + ; DEFAULT + elseif GetUIFloat "StartMenu/MCM/_Default" + SetUIFloat "StartMenu/MCM/_Default" 0 + SetUIFloat "StartMenu/MCM/_Reset" 1 + + set CWxVisionModeHotkey to 50 + set CWxVisionModeEnableGrain to 1 + set CWxStealthFieldHotkey to 45 + set CWxVisionModeExtraBright to 0 + + ;-------------------------------------------------- + ; NEW VALUE + elseif GetUIFloat "StartMenu/MCM/_NewValue" + + SetUIFloat "StartMenu/MCM/_NewValue" 0 + SetUIFloat "StartMenu/MCM/_Reset" 1 + + ; Bionic Eyes + + if iOption == 3 + set CWxVisionModeHotkey to iValue + call CWxBionicEyesUpdateTriggers 0 + + elseif iOption == 4 + set CWxVisionModeEnableGrain to iValue + + elseif iOption == 6 + set CWxVisionModeExtraBright to iValue + + ; Stealth Nano-Bots + + elseif iOption == 11 + set CWxStealthFieldHotkey to iValue + call CWxStealthUpdateTriggers 0 + + endif + + endif + + ;-------------------------------------------------- + ; MOUSE-OVER + if iMouseoverOption != GetUIFloat "StartMenu/MCM/*:1/_optionID" + set iMouseoverOption to GetUIFloat "StartMenu/MCM/*:1/_optionID" + + if iMouseoverOption == 0 + SetUIFloat "StartMenu/MCM/MCM_Info/visible" 0 + else + + SetUIFloat "StartMenu/MCM/MCM_Info/visible" 1 + + ; Bionic Eyes + if iMouseoverOption == 3 + SetUIString "StartMenu/MCM/*:9/string" "Default: M" + elseif iMouseoverOption == 4 + SetUIString "StartMenu/MCM/*:9/string" "Use dynamic grain, when a vision mode is active." + elseif iMouseoverOption == 6 + SetUIString "StartMenu/MCM/*:9/string" "Brighter Night Vision etc. for use with mods that add Darker Nights." + + ; Stealth Nano-Bots + elseif iMouseoverOption == 11 + SetUIString "StartMenu/MCM/*:9/string" "Default: X" + + else + SetUIFloat "StartMenu/MCM/MCM_Info/visible" 0 + endif + + endif + + endif + +end diff --git a/src/CWxOnAddImplant.gek b/src/CWxOnAddImplant.gek new file mode 100644 index 0000000..85bcfa4 --- /dev/null +++ b/src/CWxOnAddImplant.gek @@ -0,0 +1,23 @@ +scn CWxOnAddImplant + +ref rAddedItem +ref rAddedTo + +begin function { rAddedItem, rAddedTo } + + if GetHasNote CWxImplantsNote == 0 + + player.addNote CWxImplantsNote + + SetObjectiveDisplayed CWxImplantSurgeonQuest 10 1 + SetObjectiveDisplayed CWxImplantSurgeonQuest 20 1 + + if CWxSurgeryManualPickedUp + SetObjectiveCompleted CWxImplantSurgeonQuest 20 1 + endif + + endif + + RemoveEventHandler "OnAdd" CWxOnAddImplant + +end diff --git a/src/CWxOnAddSurgeryManual.gek b/src/CWxOnAddSurgeryManual.gek new file mode 100644 index 0000000..873e186 --- /dev/null +++ b/src/CWxOnAddSurgeryManual.gek @@ -0,0 +1,27 @@ +scn CWxOnAddSurgeryManual + +ref rAddedItem +ref rAddedTo + +begin function { rAddedItem, rAddedTo } + + printd "Surgery manual picked up" + + if CWxSurgeryManualPickedUp == 0 + + printd "Starting surgery manual quest" + + set CWxSurgeryManualPickedUp to 1 + + ShowMessage CWxSurgeryManualMsg + + SetObjectiveCompleted CWxImplantSurgeonQuest 20 1 + + endif + + ; Hijacking unused variable to avoid circular dependency + set rAddedTo to GetCurrentScript + + RemoveEventHandler "OnAdd" rAddedTo + +end diff --git a/src/CWxOnBarter.gek b/src/CWxOnBarter.gek new file mode 100644 index 0000000..ba73974 --- /dev/null +++ b/src/CWxOnBarter.gek @@ -0,0 +1,16 @@ +scn CWxOnBarter + +int iMenuID + +begin function { iMenuID } + + if GetHasNote CWxImplantsNote + SetOnMenuCloseEventHandler CWxOnBarter 0 1053 + return + endif + + if player.GetItemCount CWxImplantsAllList > 0 + call CWxOnAddImplant playerRef playerRef + endif + +end diff --git a/src/CWxOnChargePulse.gek b/src/CWxOnChargePulse.gek new file mode 100644 index 0000000..8c36e9b --- /dev/null +++ b/src/CWxOnChargePulse.gek @@ -0,0 +1,22 @@ +scn CWxOnChargePulse + +int iAnimAction +ref rScript + +begin function { iAnimAction } + + if playerRef.GetEquipped CWxWeapEMP == 0 && playerRef.GetEquipped CWxWeapHFP == 0 + printd "Autoremoved OnCharge handler" + set rScript to GetCurrentScript + SetOnAnimActionEventHandler rScript 0 playerRef 5 + return + endif + + printd "Triggered OnCharge event" + + player.pms CWxEMPShader 1 + player.playSound3D WPNPulseGunFire3DCharge + ScriptWait 12 + player.playSound3D WPNPulseGunFire3D + +end diff --git a/src/CWxOnEquipPulseGun.gek b/src/CWxOnEquipPulseGun.gek new file mode 100644 index 0000000..8357915 --- /dev/null +++ b/src/CWxOnEquipPulseGun.gek @@ -0,0 +1,11 @@ +scn CWxOnEquipPulseGun + +ref rEquipper +ref rEquipment + +begin function { rEquipper, rEquipment } + + printd "Cyberware: Adding OnCharge handler" + SetOnAnimActionEventHandler CWxOnChargePulse 1 playerRef 5 + +end diff --git a/src/CWxOnGameLoad.gek b/src/CWxOnGameLoad.gek new file mode 100644 index 0000000..8d290f3 --- /dev/null +++ b/src/CWxOnGameLoad.gek @@ -0,0 +1,25 @@ +scn CWxOnGameLoad + +int iStatus + +begin function { iStatus } + + call CWxFnCallFormList CWxOnGameLoadList 0 + + if CWxSurgeryManualPickedUp + RemoveEventHandler "OnAdd" CWxOnAddSurgeryManual + else + printd "Cyberware: Adding surgery manual OnAdd handler" + SetEventHandler "OnAdd" CWxOnAddSurgeryManual "first"::CWxSurgeryManual "second"::playerRef + endif + + if GetHasNote CWxImplantsNote + RemoveEventHandler "OnAdd" CWxOnAddImplant + SetOnMenuCloseEventHandler CWxOnBarter 0 1053 + else + printd "Cyberware: Adding implant OnAdd handler" + SetEventHandler "OnAdd" CWxOnAddImplant "first"::CWxImplantsAllList "second"::playerRef + SetOnMenuCloseEventHandler CWxOnBarter 1 1053 + endif + +end diff --git a/src/CWxOnNewGame.gek b/src/CWxOnNewGame.gek new file mode 100644 index 0000000..a75a536 --- /dev/null +++ b/src/CWxOnNewGame.gek @@ -0,0 +1,5 @@ +scn CWxOnNewGame + +begin function {} + call CWxOnGameLoad 1 +end diff --git a/src/CWxOnPause.gek b/src/CWxOnPause.gek new file mode 100644 index 0000000..0fd389a --- /dev/null +++ b/src/CWxOnPause.gek @@ -0,0 +1,11 @@ +scn CWxOnPause + +int iMenuMode + +begin function { iMenuMode } + + SetValueAlt CWxMCMItem 17029 + + StartQuest CWxMCMQuest + +end diff --git a/src/CWxOnPressInventoryItem.gek b/src/CWxOnPressInventoryItem.gek new file mode 100644 index 0000000..20e716b --- /dev/null +++ b/src/CWxOnPressInventoryItem.gek @@ -0,0 +1,26 @@ +scn CWxOnPressInventoryItem + +int iMenuID +int iTileID +string_var sTileName +ref rSelectedItem + +begin function { iMenuID, iTileID, sTileName } + + ; String arguments are destructed correctly automatically, but let's destruct it just in case + sv_destruct sTileName + + set rSelectedItem to GetSelectedItemRef + + if rSelectedItem + + set rSelectedItem to rSelectedItem.GetBaseObject + + if ListGetFormIndex CWxImplantsAllList rSelectedItem > -1 + call CWxPanelSetMessageData CWxSurgeryDummyMsg rSelectedItem + ShowMessage CWxSurgeryDummyMsg + endif + + endif + +end diff --git a/src/CWxOnUnequipPulseGun.gek b/src/CWxOnUnequipPulseGun.gek new file mode 100644 index 0000000..8dea999 --- /dev/null +++ b/src/CWxOnUnequipPulseGun.gek @@ -0,0 +1,11 @@ +scn CWxOnUnequipPulseGun + +ref rEquipper +ref rEquipment + +begin function { rEquipper, rEquipment } + + printd "Cyberware: Removing OnCharge handler" + SetOnAnimActionEventHandler CWxOnChargePulse 0 playerRef 5 + +end diff --git a/src/CWxPanelGetImplantInfo.gek b/src/CWxPanelGetImplantInfo.gek new file mode 100644 index 0000000..05b8f9b --- /dev/null +++ b/src/CWxPanelGetImplantInfo.gek @@ -0,0 +1,24 @@ +scn CWxPanelGetImplantInfo + +ref rImplant +ref rTemp +int i + +begin function { rImplant } + + DebugPrint "Cyberware: Getting info for %n" rImplant + set i to ListGetFormIndex CWxImplantsAllList rImplant + + if i > -1 + set rTemp to ListGetNthForm CWxImplantsDescList i + if rTemp + DebugPrint "Cyberware: Found info %n" rTemp + set rImplant to rTemp + else + DebugPrint "Cyberware: Unable to find info for %n" rImplant + endif + endif + + SetFunctionValue rImplant + +end diff --git a/src/CWxPanelIsNotUnique.gek b/src/CWxPanelIsNotUnique.gek new file mode 100644 index 0000000..d910a0b --- /dev/null +++ b/src/CWxPanelIsNotUnique.gek @@ -0,0 +1,148 @@ +scn CWxPanelIsNotUnique + +ref altSlot1 +ref altSlot2 +ref altSlot3 + +; 0 - not unique +; 1 - unique, single item +; 2 - unique, list +short uniqueType +ref uniqueList + +int i +int size +ref element +int selectedRegion +ref selectedImplant +int currentSlot + +begin function { selectedRegion, selectedImplant, currentSlot } + + ; Determine if implant is unique + set uniqueType to 0 + set i to 0 + set size to (listGetCount CWxImplantsUniqueList) + + label 56 + if i < size + set element to listGetNthForm CWxImplantsUniqueList i + + ; List? + if getType element == 85 + if listGetFormIndex element selectedImplant != -1 + set uniqueType to 2 + set uniqueList to element + endif + else + if selectedImplant == element + set uniqueType to 1 + endif + endif + + if uniqueType == 0 + set i to i + 1 + goto 56 + endif + endif + + ; Check for unique head & torso implants + if uniqueType > 0 + if selectedRegion == 1 + if currentSlot == 1 + set altSlot1 to CWxImplantsPanel.newHeadImplant2 + set altSlot2 to CWxImplantsPanel.newHeadImplant3 + set altSlot3 to CWxImplantsPanel.newHeadImplant4 + elseif currentSlot == 2 + set altSlot1 to CWxImplantsPanel.newHeadImplant1 + set altSlot2 to CWxImplantsPanel.newHeadImplant3 + set altSlot3 to CWxImplantsPanel.newHeadImplant4 + elseif currentSlot == 3 + set altSlot1 to CWxImplantsPanel.newHeadImplant1 + set altSlot2 to CWxImplantsPanel.newHeadImplant2 + set altSlot3 to CWxImplantsPanel.newHeadImplant4 + else + set altSlot1 to CWxImplantsPanel.newHeadImplant1 + set altSlot2 to CWxImplantsPanel.newHeadImplant2 + set altSlot3 to CWxImplantsPanel.newHeadImplant3 + endif + + elseif selectedRegion == 2 + if currentSlot == 1 + set altSlot1 to CWxImplantsPanel.newTorsoImplant2 + set altSlot2 to CWxImplantsPanel.newTorsoImplant3 + set altSlot3 to CWxImplantsPanel.newTorsoImplant4 + elseif currentSlot == 2 + set altSlot1 to CWxImplantsPanel.newTorsoImplant1 + set altSlot2 to CWxImplantsPanel.newTorsoImplant3 + set altSlot3 to CWxImplantsPanel.newTorsoImplant4 + elseif currentSlot == 3 + set altSlot1 to CWxImplantsPanel.newTorsoImplant1 + set altSlot2 to CWxImplantsPanel.newTorsoImplant2 + set altSlot3 to CWxImplantsPanel.newTorsoImplant4 + else + set altSlot1 to CWxImplantsPanel.newTorsoImplant1 + set altSlot2 to CWxImplantsPanel.newTorsoImplant2 + set altSlot3 to CWxImplantsPanel.newTorsoImplant3 + endif + + elseif selectedRegion == 3 + if currentSlot == 1 + set altSlot1 to CWxImplantsPanel.newRightArmImplant2 + set altSlot2 to 0 + set altSlot3 to 0 + else + set altSlot1 to CWxImplantsPanel.newRightArmImplant1 + set altSlot2 to 0 + set altSlot3 to 0 + endif + + elseif selectedRegion == 4 + if currentSlot == 2 + set altSlot1 to CWxImplantsPanel.newLeftArmImplant2 + set altSlot2 to 0 + set altSlot3 to 0 + else + set altSlot1 to CWxImplantsPanel.newLeftArmImplant1 + set altSlot2 to 0 + set altSlot3 to 0 + endif + + elseif selectedRegion == 5 + if currentSlot == 1 + set altSlot1 to CWxImplantsPanel.newRightLegImplant2 + set altSlot2 to 0 + set altSlot3 to 0 + else + set altSlot1 to CWxImplantsPanel.newRightLegImplant1 + set altSlot2 to 0 + set altSlot3 to 0 + endif + + elseif selectedRegion == 6 + if currentSlot == 2 + set altSlot1 to CWxImplantsPanel.newLeftLegImplant2 + set altSlot2 to 0 + set altSlot3 to 0 + else + set altSlot1 to CWxImplantsPanel.newLeftLegImplant1 + set altSlot2 to 0 + set altSlot3 to 0 + endif + endif + + ; Other slots already contain this implant type? + if uniqueType == 1 + if altSlot1 == selectedImplant || altSlot2 == selectedImplant || altSlot3 == selectedImplant + SetFunctionValue 1 + return + endif + else + if listGetFormIndex uniqueList altSlot1 != -1 || listGetFormIndex uniqueList altSlot2 != -1 || listGetFormIndex uniqueList altSlot3 != -1 + SetFunctionValue 1 + return + endif + endif + endif + +end diff --git a/src/CWxPanelPostSurgery.gek b/src/CWxPanelPostSurgery.gek new file mode 100644 index 0000000..1b58045 --- /dev/null +++ b/src/CWxPanelPostSurgery.gek @@ -0,0 +1,46 @@ +scn CWxPanelPostSurgery + +begin function {} + + printd "Cyberware: Calling post-surgery script" + + if GetPlayerControlsDisabled + EnablePlayerControls + endif + + if CWxHelpScannerShown == 0 + if player.HasPerk CWxImplantScannerPerk + printd "Cyberware: Showing Scanner tutorial" + set CWxHelpScannerShown to 1 + ShowTutorialMenu CWxScannerHelpMsg + return + endif + endif + + if CWxHelpBionicEyesShown == 0 + if player.HasPerk CWxImplantVisionModePerk + printd "Cyberware: Showing Bionic Eyes tutorial" + set CWxHelpBionicEyesShown to 1 + ShowTutorialMenu CWxBionicEyesHelpMsg + return + endif + endif + + if CWxHelpStealthShown == 0 + if player.HasPerk CWxImplantStealthPerk + printd "Cyberware: Showing Stealth tutorial" + set CWxHelpStealthShown to 1 + ShowTutorialMenu CWxStealthFieldHelpMsg + return + endif + endif + + SetGameMainLoopCallback CWxPanelPostSurgery 0 + + if GetQuestCompleted CWxImplantSurgeonQuest == 0 + CompleteAllObjectives CWxImplantSurgeonQuest + CompleteQuest CWxImplantSurgeonQuest + StopQuest CWxImplantSurgeonQuest + endif + +end diff --git a/src/CWxPanelQuestScript.gek b/src/CWxPanelQuestScript.gek new file mode 100644 index 0000000..b851d75 --- /dev/null +++ b/src/CWxPanelQuestScript.gek @@ -0,0 +1,619 @@ +scn CWxPanelQuestScript + +; 0 - disabled +; 1 - launched, wait for menu mode +; 2 - arrived in menu mode +short initPhase + +; NOTE: Left/right w.r.t. to the cyberboy perspective, so left=right side, right = left side + +; 0 - none +; 1 - head +; 2 - torso +; 3 - right arm +; 4 - left arm +; 5 - right leg +; 6 - left leg +short selectedRegion +short lastSelectedRegion +short refreshRegion + +; 0 - none +; 1 - right 1 +; 2 - left 1 +; 3 - right 2 +; 4 - left 2 +short selectedSlot ; instantly reset, thats why theres currentSlot to save the value +short currentSlot + +ref rCurrentMessage + +; Empty ref variable for using in UDF calls +ref rEmptyRef + +short changedSlots + +short showRightSlot1 +short showRightSlot2 +short showLeftSlot1 +short showLeftSlot2 + +ref newHeadImplant1 +ref newHeadImplant2 +ref newHeadImplant3 +ref newHeadImplant4 + +ref newTorsoImplant1 +ref newTorsoImplant2 +ref newTorsoImplant3 +ref newTorsoImplant4 + +ref newRightArmImplant1 +ref newRightArmImplant2 + +ref newLeftArmImplant1 +ref newLeftArmImplant2 + +ref newRightLegImplant1 +ref newRightLegImplant2 + +ref newLeftLegImplant1 +ref newLeftLegImplant2 + +ref rightSlotImplant1 +ref rightSlotImplant2 +ref leftSlotImplant1 +ref leftSlotImplant2 + +short iButton + +ref selectedImplant + +float price + +short i +short size +ref regionList +ref element + +float fTemp +int iPage +int pageCount + +short menuSize +short t1 +short t2 + +string_var sTemp +int bPerformSurgery +ref rTemp + +int bMenuImplantsPage +int bShowImplantsBox + +;----------------------------------------------------------------------------------------------------------------------------------------------------------------------- +begin GameMode + + if initPhase == 0 + + set initPhase to 1 + + imod CWxControlPanelISFX + + ShowTutorialMenu CWxSurgeryDummyMsg + + ; Hide Tutorial Menu and show custom one instead - Try #1 + SetUIFloat "TutorialMenu\_PNxImplantsPanelEnabled" 1 + SetUIFloat "TutorialMenu\NOGLOW_BRANCH\visible" 0 + + return + + elseif initPhase == 1 + return + endif + + ; Back after close, menu was exited + + printd "Cyberware: Panel exited" + + rimod CWxControlPanelISFX + + if bPerformSurgery + + set bPerformSurgery to 0 + + DisablePlayerControls 1 1 1 1 1 1 + + ; Update perks + call CWxFnCallFormList CWxImplantsWorkerList 0 + + printd "Starting surgery sequence" + + ; We use CWxImplants for persistence, so we can safely reset this quest + ResetQuest CWxImplantsPanel + printd "Cyberware: Panel quest has been reset" + + StopQuest CWxImplantsPanel + printd "Cyberware: Panel quest stopped" + + playerRef.PlaySound3D NPCHumanDoctorHealTap + playerRef.PlaySound3D NPCRobotMrHandyAttackSaw + + imod FadeToBlack4sISFX + + SetGameMainLoopCallback CWxPanelPostSurgery 1 320 1 + + else + + printd "No accept - undo any inventory changes" + + call CWxPanelSwapImplants CWxImplants.headImplant1 newHeadImplant1 + call CWxPanelSwapImplants CWxImplants.headImplant2 newHeadImplant2 + call CWxPanelSwapImplants CWxImplants.headImplant3 newHeadImplant3 + call CWxPanelSwapImplants CWxImplants.headImplant4 newHeadImplant4 + call CWxPanelSwapImplants CWxImplants.torsoImplant1 newTorsoImplant1 + call CWxPanelSwapImplants CWxImplants.torsoImplant2 newTorsoImplant2 + call CWxPanelSwapImplants CWxImplants.torsoImplant3 newTorsoImplant3 + call CWxPanelSwapImplants CWxImplants.torsoImplant4 newTorsoImplant4 + call CWxPanelSwapImplants CWxImplants.rightArmImplant1 newRightArmImplant1 + call CWxPanelSwapImplants CWxImplants.rightArmImplant2 newRightArmImplant2 + call CWxPanelSwapImplants CWxImplants.leftArmImplant1 newLeftArmImplant1 + call CWxPanelSwapImplants CWxImplants.leftArmImplant2 newLeftArmImplant2 + call CWxPanelSwapImplants CWxImplants.rightLegImplant1 newRightLegImplant1 + call CWxPanelSwapImplants CWxImplants.rightLegImplant2 newRightLegImplant2 + call CWxPanelSwapImplants CWxImplants.leftLegImplant1 newLeftLegImplant1 + call CWxPanelSwapImplants CWxImplants.leftLegImplant2 newLeftLegImplant2 + + ResetQuest CWxImplantsPanel + StopQuest CWxImplantsPanel + + printd "Cyberware: Panel quest has been reset" + + endif + +End + +begin MenuMode 1001 + if GetUIFloat "TutorialMenu\_PNxCyberboyMenuActive" != 1 + SetUIFloat "TutorialMenu\_PNxCyberboyMenuActive" 1 + endif +end + +Begin MenuMode 1059 + + if MenuMode 1001 + return + endif + + if initPhase < 2 + + set initPhase to 2 + + printd "Panel init" + + ; Check if the Project Nevada panel has been injected by UIO + if GetUIFloat "TutorialMenu\_PNxImplants" > 0 + ResetQuest CWxImplantsPanel + StopQuest CWxImplantsPanel + rimod CWxControlPanelISFX + showMessage CWxErrorPNDetectedMsg + return + endif + + ; Check if the implants panel is even there + if GetUIFloat "TutorialMenu\_CWxImplants" < 1 + ResetQuest CWxImplantsPanel + StopQuest CWxImplantsPanel + rimod CWxControlPanelISFX + showMessage CWxErrorNoPanelMsg + return + endif + + set refreshRegion to 1 + + set newHeadImplant1 to CWxImplants.headImplant1 + set newHeadImplant2 to CWxImplants.headImplant2 + set newHeadImplant3 to CWxImplants.headImplant3 + set newHeadImplant4 to CWxImplants.headImplant4 + set newTorsoImplant1 to CWxImplants.torsoImplant1 + set newTorsoImplant2 to CWxImplants.torsoImplant2 + set newTorsoImplant3 to CWxImplants.torsoImplant3 + set newTorsoImplant4 to CWxImplants.torsoImplant4 + set newRightArmImplant1 to CWxImplants.rightArmImplant1 + set newRightArmImplant2 to CWxImplants.rightArmImplant2 + set newLeftArmImplant1 to CWxImplants.leftArmImplant1 + set newLeftArmImplant2 to CWxImplants.leftArmImplant2 + set newRightLegImplant1 to CWxImplants.rightLegImplant1 + set newRightLegImplant2 to CWxImplants.rightLegImplant2 + set newLeftLegImplant1 to CWxImplants.leftLegImplant1 + set newLeftLegImplant2 to CWxImplants.leftLegImplant2 + + ; Hide Tutorial Menu and show custom one instead - Try #2 + setUIFloat "TutorialMenu\_PNxImplantsPanelEnabled" 1 + setUIFloat "TutorialMenu\NOGLOW_BRANCH\visible" 0 + + setUIString "TutorialMenu\_PNxImplantsPanelCaps" "0" + setUIString "TutorialMenu\_PNxImplantsPanelPrice" "0" + + call CWxPanelUpdatePrice + + set selectedRegion to 0 + + if ListGetCount CWxImplantsAllList != ListGetCount CWxImplantsDescList + print "Cyberware: Number of elements in CWxImplantsAllList and CWxImplantsDescList is not equal!" + endif + + return + + + elseif rCurrentMessage == CWxSurgeryConfirmMsg + + + set iButton to GetButtonPressed + + if iButton == -1 + return + endif + + set rCurrentMessage to 0 + + if iButton == 0 + printd "Accept pressed Yes" + player.removeItem Caps001 price 1 + + ; Commit implant changes + set CWxImplants.headImplant1 to newHeadImplant1 + set CWxImplants.headImplant2 to newHeadImplant2 + set CWxImplants.headImplant3 to newHeadImplant3 + set CWxImplants.headImplant4 to newHeadImplant4 + set CWxImplants.torsoImplant1 to newTorsoImplant1 + set CWxImplants.torsoImplant2 to newTorsoImplant2 + set CWxImplants.torsoImplant3 to newTorsoImplant3 + set CWxImplants.torsoImplant4 to newTorsoImplant4 + set CWxImplants.rightArmImplant1 to newRightArmImplant1 + set CWxImplants.rightArmImplant2 to newRightArmImplant2 + set CWxImplants.leftArmImplant1 to newLeftArmImplant1 + set CWxImplants.leftArmImplant2 to newLeftArmImplant2 + set CWxImplants.rightLegImplant1 to newRightLegImplant1 + set CWxImplants.rightLegImplant2 to newRightLegImplant2 + set CWxImplants.leftLegImplant1 to newLeftLegImplant1 + set CWxImplants.leftLegImplant2 to newLeftLegImplant2 + + set bPerformSurgery to 1 + + set t1 to GameDaysPassed + if GameHour + changedSlots < 24 + set GameHour to GameHour + changedSlots + set GameDaysPassed to (t1 + (GameHour / 24)) + else + set t2 to ((GameHour + changedSlots) / 24) + set GameHour to GameHour + changedSlots + set GameDaysPassed to (t1 + t2 + ((GameHour % 24) / 24)) + endif + + ; Replaced unsafe con_closeAllMenus with emulated click on the close button + ClickMenuButton "TutorialMenu\PNxImplantsPanel\PNxImplantsPanelCloseButton" 1 + + return + endif + + ; No + printd "Accept pressed No" + return + + + elseif (GetUIFloat "TutorialMenu\_PNxImplantsPanelAcceptSelected") || (isKeyPressed 30 && GetUIFloat "TutorialMenu\_PNxImplantsPanelAcceptEnabled" && menuMode 1059) + + + printd "Accept confirmation" + set rCurrentMessage to CWxSurgeryConfirmMsg + ShowMessage CWxSurgeryConfirmMsg + return + + + elseif refreshRegion == 1 + + + printd "Refreshing regions" + + set refreshRegion to 0 + + set showRightSlot1 to (selectedRegion == 1 || selectedRegion == 2 || selectedRegion == 3 || selectedRegion == 5) + set showLeftSlot1 to (selectedRegion == 1 || selectedRegion == 2 || selectedRegion == 4 || selectedRegion == 6) + + set showRightSlot2 to ((selectedRegion == 1 && player.hasPerk CWxExtraHeadSlotsPerk) || (selectedRegion == 2 && player.hasPerk CWxExtraTorsoSlotsPerk)) + set showLeftSlot2 to showRightSlot2 + + set showRightSlot2 to showRightSlot2 || ((selectedRegion == 3 && player.hasPerk CWxExtraArmSlotsPerk) || (selectedRegion == 5 && player.hasPerk CWxExtraLegSlotsPerk)) + set showLeftSlot2 to showLeftSlot2 || ((selectedRegion == 4 && player.hasPerk CWxExtraArmSlotsPerk) || (selectedRegion == 6 && player.hasPerk CWxExtraLegSlotsPerk)) + + setUIFloat "TutorialMenu\_PNxCyberboyShowRightSlot1" showRightSlot1 + setUIFloat "TutorialMenu\_PNxCyberboyShowLeftSlot1" showLeftSlot1 + setUIFloat "TutorialMenu\_PNxCyberboyShowRightSlot2" showRightSlot2 + setUIFloat "TutorialMenu\_PNxCyberboyShowLeftSlot2" showLeftSlot2 + setUIFloat "TutorialMenu\_PNxCyberboyRegion" selectedRegion + + if selectedRegion == 1 ;head + call CWxPanelShowRegion selectedRegion newHeadImplant1 newHeadImplant2 newHeadImplant3 newHeadImplant4 showRightSlot2 + elseif selectedRegion == 2 ; torso + call CWxPanelShowRegion selectedRegion newTorsoImplant1 newTorsoImplant2 newTorsoImplant3 newTorsoImplant4 showRightSlot2 + elseif selectedRegion == 3 ; right arm + call CWxPanelShowRegion selectedRegion newRightArmImplant1 rEmptyRef newRightArmImplant2 rEmptyRef showRightSlot2 + elseif selectedRegion == 4 ; left arm + call CWxPanelShowRegion selectedRegion rEmptyRef newLeftArmImplant1 rEmptyRef newLeftArmImplant2 showLeftSlot2 + elseif selectedRegion == 5 ; right leg + call CWxPanelShowRegion selectedRegion newRightLegImplant1 rEmptyRef newRightLegImplant2 rEmptyRef showRightSlot2 + elseif selectedRegion == 6 ; left leg + call CWxPanelShowRegion selectedRegion rEmptyRef newLeftLegImplant1 rEmptyRef newLeftLegImplant2 showLeftSlot2 + endif + + + elseif bShowImplantsBox + + + set fTemp to ListGetCount CWxImplantsAvailableList + set fTemp to fTemp / CWxImplantsPerPage + + set pageCount to ceil fTemp + + printd "Implant list, page " + $iPage + ", page count " + $pageCount + + set i to iPage * CWxImplantsPerPage + set menuSize to 1 + + let sTemp := "" + while (menuSize <= CWxImplantsPerPage) && (rTemp := ListGetNthForm CWxImplantsAvailableList i) + let sTemp := $sTemp + "|" + $(GetName rTemp) + set i to i + 1 + set menuSize to menuSize + 1 + loop + + if (iPage + 1) < pageCount + let sTemp := $sTemp + "|Next page >" + set menuSize to menuSize + 1 + endif + + let sTemp := $sTemp + "|<<< Back" + + set bShowImplantsBox to 0 + set bMenuImplantsPage to 1 + + MessageBoxEx $sTemp + + sv_destruct sTemp + + return + + + elseif rCurrentMessage == CWxPanelInstallMsg + + + set iButton to GetButtonPressed + + if iButton == -1 + return + endif + + set rCurrentMessage to 0 + + if iButton == 0 + ; Install + call CWxPanelSetSlot selectedRegion currentSlot selectedImplant + + player.removeItem selectedImplant 1 1 + set refreshRegion to 1 + + call CWxPanelUpdatePrice + endif + + return + + + elseif bMenuImplantsPage + + + set iButton to GetButtonPressed + + if iButton == -1 + ;printd "Waiting for implant button" + return + endif + + set bMenuImplantsPage to 0 + printd "Pressed item in implant list" + + ; Handle "<<< Back" + if iButton == menuSize - 1 + if iPage > 0 + set iPage to iPage - 1 + set bShowImplantsBox to 1 + endif + return + endif + + ; Handle "Next page >" + if (iPage + 1) < pageCount + if iButton == menuSize - 2 + set iPage to iPage + 1 + set bShowImplantsBox to 1 + return + endif + endif + + set i to iPage * CWxImplantsPerPage + iButton + set selectedImplant to ListGetNthForm CWxImplantsAvailableList i + + if eval call CWxPanelIsNotUnique selectedRegion selectedImplant currentSlot + ShowMessage CWxErrorUniqueImplantMsg + return + endif + + call CWxPanelSetMessageData CWxPanelInstallMsg selectedImplant + + set rCurrentMessage to CWxPanelInstallMsg + + ShowMessage CWxPanelInstallMsg + + return + + + elseif rCurrentMessage == CWxPanelRemoveMsg + + + set iButton to GetButtonPressed + + if iButton == -1 + printd "Waiting for removal confirmation" + return + endif + + set rCurrentMessage to 0 + + printd "Pressed button " + $iButton + + if iButton == 0 ; Yes + + printd "Confirmed removing implant" + + call CWxPanelSetSlot selectedRegion currentSlot rEmptyRef + + player.addItem selectedImplant 1 1 + + set refreshRegion to 1 + call CWxPanelUpdatePrice + + endif + + return + + + elseif selectedSlot > 0 + + + set selectedSlot to 0 + printd "Selected slot " + $currentSlot + + if currentSlot == 1 + set selectedImplant to rightSlotImplant1 + elseif currentSlot == 2 + set selectedImplant to leftSlotImplant1 + elseif currentSlot == 3 + set selectedImplant to rightSlotImplant2 + elseif currentSlot == 4 + set selectedImplant to leftSlotImplant2 + else + return + endif + + if selectedImplant == 0 ; Empty slot + + printd "Slot is empty" + + ; Select region list + if selectedRegion == 1 + set rTemp to CWxImplantsHeadList + elseif selectedRegion == 2 + set rTemp to CWxImplantsTorsoList + elseif selectedRegion == 3 || selectedRegion == 4 + set rTemp to CWxImplantsArmsList + elseif selectedRegion == 5 || selectedRegion == 6 + set rTemp to CWxImplantsLegsList + endif + + ; Clear the list of available implants + ListClear CWxImplantsAvailableList + + set i to 0 + + while element := ListGetNthForm rTemp i + + if player.GetItemCount element > 0 && ListGetFormIndex CWxImplantsAvailableList element == -1 + ListAddForm CWxImplantsAvailableList element + endif + + set i to i + 1 + loop + + if ListGetCount CWxImplantsAvailableList <= 0 + ShowMessage CWxErrorNoImplantsMsg + return + endif + + set iPage to 0 + set bShowImplantsBox to 1 + + else ; Filled slot + + printd "Slot is not empty" + + call CWxPanelSetMessageData CWxPanelRemoveMsg selectedImplant + + set rCurrentMessage to CWxPanelRemoveMsg + + ShowMessage CWxPanelRemoveMsg + + endif + + + return + + + elseif rCurrentMessage != 0 + + + printd "Cyberware: Current message was not empty, but not processed." + set rCurrentMessage to 0 + + + else + + + ;printd "Idling" + + SetUIFloat "TutorialMenu\_PNxCyberboyMenuActive" 0 + + if getUIFloat "TutorialMenu\_PNxCyberboyHeadSelected" + set selectedRegion to 1 + elseif getUIFloat "TutorialMenu\_PNxCyberboyTorsoSelected" + set selectedRegion to 2 + elseif getUIFloat "TutorialMenu\_PNxCyberboyRightArmSelected" + set selectedRegion to 3 + elseif getUIFloat "TutorialMenu\_PNxCyberboyLeftArmSelected" + set selectedRegion to 4 + elseif getUIFloat "TutorialMenu\_PNxCyberboyRightLegSelected" + set selectedRegion to 5 + elseif getUIFloat "TutorialMenu\_PNxCyberboyLeftLegSelected" + set selectedRegion to 6 + else + set selectedRegion to 0 + endif + + if lastSelectedRegion != selectedRegion + + set lastSelectedRegion to selectedRegion + set refreshRegion to 1 + + printd "New region selected" + + endif + + if GetUIFloat "TutorialMenu\_PNxCyberboyRightImplant1Selected" + set selectedSlot to 1 + elseif GetUIFloat "TutorialMenu\_PNxCyberboyLeftImplant1Selected" + set selectedSlot to 2 + elseif GetUIFloat "TutorialMenu\_PNxCyberboyRightImplant2Selected" + set selectedSlot to 3 + elseif GetUIFloat "TutorialMenu\_PNxCyberboyLeftImplant2Selected" + set selectedSlot to 4 + else + set selectedSlot to 0 + endif + + if selectedSlot > 0 + set currentSlot to selectedSlot + endif + + + endif + +end diff --git a/src/CWxPanelSetMessageData.gek b/src/CWxPanelSetMessageData.gek new file mode 100644 index 0000000..cfa4707 --- /dev/null +++ b/src/CWxPanelSetMessageData.gek @@ -0,0 +1,23 @@ +scn CWxPanelSetMessageData + +ref rMessage +ref rImplant +ref rTemp +int i +string_var sTemp + +begin function { rMessage, rImplant } + + set rImplant to call CWxPanelGetImplantInfo rImplant + + let sTemp := GetName rImplant + printd "Cyberware: Setting name to " + $sTemp + SetName $sTemp rMessage + + let sTemp := GetFormDescription rImplant + printd "Cyberware: Setting description to " + $sTemp + SetFormDescription rMessage $sTemp + + sv_destruct sTemp + +end diff --git a/src/CWxPanelSetSlot.gek b/src/CWxPanelSetSlot.gek new file mode 100644 index 0000000..bbb2cf8 --- /dev/null +++ b/src/CWxPanelSetSlot.gek @@ -0,0 +1,56 @@ +scn CWxPanelSetSlot + +int selectedRegion +int currentSlot +ref rValue + +begin function { selectedRegion, currentSlot, rValue } + + if selectedRegion == 1 + if currentSlot == 1 + set CWxImplantsPanel.newHeadImplant1 to rValue + elseif currentSlot == 2 + set CWxImplantsPanel.newHeadImplant2 to rValue + elseif currentSlot == 3 + set CWxImplantsPanel.newHeadImplant3 to rValue + else + set CWxImplantsPanel.newHeadImplant4 to rValue + endif + elseif selectedRegion == 2 + if currentSlot == 1 + set CWxImplantsPanel.newTorsoImplant1 to rValue + elseif currentSlot == 2 + set CWxImplantsPanel.newTorsoImplant2 to rValue + elseif currentSlot == 3 + set CWxImplantsPanel.newTorsoImplant3 to rValue + else + set CWxImplantsPanel.newTorsoImplant4 to rValue + endif + elseif selectedRegion == 3 + if currentSlot == 1 + set CWxImplantsPanel.newRightArmImplant1 to rValue + else + set CWxImplantsPanel.newRightArmImplant2 to rValue + endif + elseif selectedRegion == 4 + if currentSlot == 2 + set CWxImplantsPanel.newLeftArmImplant1 to rValue + else + set CWxImplantsPanel.newLeftArmImplant2 to rValue + endif + elseif selectedRegion == 5 + if currentSlot == 1 + set CWxImplantsPanel.newRightLegImplant1 to rValue + else + set CWxImplantsPanel.newRightLegImplant2 to rValue + endif + elseif selectedRegion == 6 + if currentSlot == 2 + set CWxImplantsPanel.newLeftLegImplant1 to rValue + else + set CWxImplantsPanel.newLeftLegImplant2 to rValue + endif + endif + +end + diff --git a/src/CWxPanelShowRegion.gek b/src/CWxPanelShowRegion.gek new file mode 100644 index 0000000..962def1 --- /dev/null +++ b/src/CWxPanelShowRegion.gek @@ -0,0 +1,31 @@ +scn CWxPanelShowRegion + +int iRegion +ref rightSlotImplant1 +ref rightSlotImplant2 +ref leftSlotImplant1 +ref leftSlotImplant2 +int bExtra +int iLineNum + +begin function { iRegion, rightSlotImplant1, leftSlotImplant1, rightSlotImplant2, leftSlotImplant2, bExtra } + + set CWxImplantsPanel.rightSlotImplant1 to rightSlotImplant1 + set CWxImplantsPanel.leftSlotImplant1 to leftSlotImplant1 + set CWxImplantsPanel.rightSlotImplant2 to rightSlotImplant2 + set CWxImplantsPanel.leftSlotImplant2 to leftSlotImplant2 + + call CWxPanelShowSlot rightSlotImplant1 "TutorialMenu\_PNxCyberboyRightImplant1State" "TutorialMenu\_PNxCyberboyRightImplant1Path" 0 + call CWxPanelShowSlot rightSlotImplant2 "TutorialMenu\_PNxCyberboyRightImplant2State" "TutorialMenu\_PNxCyberboyRightImplant2Path" 1 + call CWxPanelShowSlot leftSlotImplant1 "TutorialMenu\_PNxCyberboyLeftImplant1State" "TutorialMenu\_PNxCyberboyLeftImplant1Path" 1 + call CWxPanelShowSlot leftSlotImplant2 "TutorialMenu\_PNxCyberboyLeftImplant2State" "TutorialMenu\_PNxCyberboyLeftImplant2Path" 0 + + if bExtra + set iLineNum to iRegion + 6 + else + set iLineNum to iRegion + endif + + setUIFloat "TutorialMenu\_PNxCyberboyLineNum" iLineNum + +end diff --git a/src/CWxPanelShowSlot.gek b/src/CWxPanelShowSlot.gek new file mode 100644 index 0000000..32fa2eb --- /dev/null +++ b/src/CWxPanelShowSlot.gek @@ -0,0 +1,38 @@ +scn CWxPanelShowSlot + +ref rSlotImplant +string_var sStateNode +string_var sTextureNode +string_var sIcon +int bLeft ; 0 - right, 1 - left + +begin function { rSlotImplant, sStateNode, sTextureNode, bLeft } + + if rSlotImplant + + set rSlotImplant to call CWxPanelGetImplantInfo rSlotImplant + + let sIcon := GetIconPath rSlotImplant + + if bLeft + sv_replace "_right_|_left_" sIcon + endif + + printd "Setting " + $sTextureNode + " to " + $sIcon + printd "Setting " + $sStateNode + " to 1" + + setUIString $sTextureNode $sIcon + setUIFloat $sStateNode 1 + + else + + printd "Setting " + $sStateNode + " to 0" + setUIFloat $sStateNode 0 + + endif + + sv_destruct sStateNode + sv_destruct sTextureNode + sv_destruct sIcon + +end diff --git a/src/CWxPanelSwapImplants.gek b/src/CWxPanelSwapImplants.gek new file mode 100644 index 0000000..0b341d8 --- /dev/null +++ b/src/CWxPanelSwapImplants.gek @@ -0,0 +1,23 @@ +scn CWxPanelSwapImplants + +ref rInstalledImplant +ref rRemovedImplant + +begin function { rInstalledImplant, rRemovedImplant } + + if rInstalledImplant == 0 && rRemovedImplant != 0 + + player.addItem rRemovedImplant 1 1 + + elseif rRemovedImplant != rInstalledImplant && rRemovedImplant != 0 && rInstalledImplant != 0 + + player.addItem rRemovedImplant 1 1 + player.removeItem rInstalledImplant 1 1 + + elseif rInstalledImplant != 0 && rRemovedImplant == 0 + + player.removeItem rInstalledImplant 1 1 + + endif + +end diff --git a/src/CWxPanelUpdatePrice.gek b/src/CWxPanelUpdatePrice.gek new file mode 100644 index 0000000..14b98a1 --- /dev/null +++ b/src/CWxPanelUpdatePrice.gek @@ -0,0 +1,46 @@ +scn CWxPanelUpdatePrice + +; Refresh caps, costs and accept button +short changedSlots +float price +short caps + +begin function {} + + set changedSlots to 0 + set changedSlots to changedSlots + (CWxImplantsPanel.newHeadImplant1 != CWxImplants.headImplant1) + set changedSlots to changedSlots + (CWxImplantsPanel.newHeadImplant2 != CWxImplants.headImplant2) + set changedSlots to changedSlots + (CWxImplantsPanel.newHeadImplant3 != CWxImplants.headImplant3) + set changedSlots to changedSlots + (CWxImplantsPanel.newHeadImplant4 != CWxImplants.headImplant4) + set changedSlots to changedSlots + (CWxImplantsPanel.newTorsoImplant1 != CWxImplants.torsoImplant1) + set changedSlots to changedSlots + (CWxImplantsPanel.newTorsoImplant2 != CWxImplants.torsoImplant2) + set changedSlots to changedSlots + (CWxImplantsPanel.newTorsoImplant3 != CWxImplants.torsoImplant3) + set changedSlots to changedSlots + (CWxImplantsPanel.newTorsoImplant4 != CWxImplants.torsoImplant4) + set changedSlots to changedSlots + (CWxImplantsPanel.newRightArmImplant1 != CWxImplants.rightArmImplant1) + set changedSlots to changedSlots + (CWxImplantsPanel.newRightArmImplant2 != CWxImplants.rightArmImplant2) + set changedSlots to changedSlots + (CWxImplantsPanel.newLeftArmImplant1 != CWxImplants.leftArmImplant1) + set changedSlots to changedSlots + (CWxImplantsPanel.newLeftArmImplant2 != CWxImplants.leftArmImplant2) + set changedSlots to changedSlots + (CWxImplantsPanel.newRightLegImplant1 != CWxImplants.rightLegImplant1) + set changedSlots to changedSlots + (CWxImplantsPanel.newRightLegImplant2 != CWxImplants.rightLegImplant2) + set changedSlots to changedSlots + (CWxImplantsPanel.newLeftLegImplant1 != CWxImplants.leftLegImplant1) + set changedSlots to changedSlots + (CWxImplantsPanel.newLeftLegImplant2 != CWxImplants.leftLegImplant2) + + printd "Changed " + $changedSlots + " slots" + + set price to changedSlots * (CWxSurgeryBasePrice + (CWxSurgeryBarterMult * player.getAV Barter)) + + set caps to player.getItemCount Caps001 + + setUIFloat "TutorialMenu\_PNxImplantsPanelCaps" caps + setUIFloat "TutorialMenu\_PNxImplantsPanelPrice" price + + if caps < price || changedSlots == 0 + setUIFloat "TutorialMenu\_PNxImplantsPanelAcceptEnabled" 0 + else + setUIFloat "TutorialMenu\_PNxImplantsPanelAcceptEnabled" 1 + endif + + set CWxImplantsPanel.price to price + set CWxImplantsPanel.changedSlots to changedSlots + +end diff --git a/src/CWxScannerOnAim.gek b/src/CWxScannerOnAim.gek new file mode 100644 index 0000000..1f07ea8 --- /dev/null +++ b/src/CWxScannerOnAim.gek @@ -0,0 +1,23 @@ +scn CWxScannerOnAim + +int iControlID + +begin function { iControlID } + + if MenuMode + return + endif + + if player.IsInCombat + return + endif + + printd "Triggered OnAim event" + + if GetQuestRunning CWxScannerQuest == 0 + StartQuest CWxScannerQuest + endif + + SetOnMenuOpenEventHandler CWxScannerOnMenu 1 + +end diff --git a/src/CWxScannerOnAimDown.gek b/src/CWxScannerOnAimDown.gek new file mode 100644 index 0000000..f6c8125 --- /dev/null +++ b/src/CWxScannerOnAimDown.gek @@ -0,0 +1,17 @@ +scn CWxScannerOnAimDown + +int iControlID + +begin function { iControlID } + + if MenuMode + return + endif + + printd "Cyberware: Triggered OnAimDown event" + + if GetQuestRunning CWxScannerQuest || GetQuestRunning CWxScannerTextQuest + call CWxScannerStop + endif + +end diff --git a/src/CWxScannerOnMenu.gek b/src/CWxScannerOnMenu.gek new file mode 100644 index 0000000..706c6fa --- /dev/null +++ b/src/CWxScannerOnMenu.gek @@ -0,0 +1,9 @@ +scn CWxScannerOnMenu + +int iMenuID + +begin function { iMenuID } + + call CWxScannerStop + +end diff --git a/src/CWxScannerOnScan.gek b/src/CWxScannerOnScan.gek new file mode 100644 index 0000000..818ac30 --- /dev/null +++ b/src/CWxScannerOnScan.gek @@ -0,0 +1,17 @@ +scn CWxScannerOnScan + +int iControlID + +begin function { iControlID } + + if IsControlPressed 6 == 0 ; not aiming + call CWxScannerStop + return + endif + + call CWxScannerStopText + + set CWxScannerTextQuest.curTarget to GetCrosshairRefEx + SetStage CWxScannerTextQuest 1 + +end diff --git a/src/CWxScannerQuestScript.gek b/src/CWxScannerQuestScript.gek new file mode 100644 index 0000000..f73fd77 --- /dev/null +++ b/src/CWxScannerQuestScript.gek @@ -0,0 +1,103 @@ +scn CWxScannerQuestScript + +ref rTarget +ref rNewTarget +int iControl + +begin GameMode + + if IsControlPressed 6 == 0 ; not aiming + call CWxScannerStop + return + endif + + set rNewTarget to GetCrosshairRefEx + + if rTarget == rNewTarget + + if rTarget + + ; If we approach NPC, holding zoom, the interaction prompt will change to "Talk". + ; As normal activation is temporarily disabled, we need to change it back to "Scan". + + + if GetUIFloat "HUDMainMenu\_DUIF3" > 0 ; DarnUI + + if eval GetUIString "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/string" != "Scan" + SetUIString "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/string" "Scan" + endif + + if GetUIFloat "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/visible" != 1 + SetUIFloat "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/visible" 1 + endif + + else + + if eval GetUIString "HUDMainMenu/Info/justify_center_hotrect/string" != "Scan" + SetUIString "HUDMainMenu/Info/justify_center_hotrect/string" "Scan" + endif + + if GetUIFloat "HUDMainMenu/Info/justify_center_hotrect/visible" != 1 + SetUIFloat "HUDMainMenu/Info/justify_center_hotrect/visible" 1 + endif + + endif + + endif + + return + endif + + set rTarget to rNewTarget + + if rTarget != 0 + if rTarget.GetObjectType == 42 || rTarget.GetObjectType == 43 + if rTarget.GetDead + set rTarget to 0 + endif + else + set rTarget to 0 + endif + endif + + ; When new target or none, hide report + ; SetStage CWxScannerTextQuest 0 + + if rTarget == 0 + if GetUIFloat "HUDMainMenu\_DUIF3" > 0 ; DarnUI + if eval GetUIString "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/string" == "Scan" + SetUIFloat "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/visible" 0 + endif + else + if eval GetUIString "HUDMainMenu/Info/justify_center_hotrect/string" == "Scan" + SetUIFloat "HUDMainMenu/Info/justify_center_hotrect/visible" 0 + endif + endif + + SetOnControlDownEventHandler CWxScannerOnScan 0 5 + EnableControl 5 + ;playSound OBJSwitchButtonBFail + return + endif + + set iControl to GetControl 5 + + if GetUIFloat "HUDMainMenu\_DUIF3" > 0 ; DarnUI + SetUIStringEx "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/_PCButtonText" "%k)" iControl + SetUIString "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/string" "Scan" + SetUIFloat "HUDMainMenu/InfoWrap/Info/justify_center_hotrect/visible" 1 + else + SetUIStringEx "HUDMainMenu/Info/justify_center_hotrect/_PCButtonText" "%k)" iControl + SetUIString "HUDMainMenu/Info/justify_center_hotrect/string" "Scan" + SetUIFloat "HUDMainMenu/Info/justify_center_hotrect/visible" 1 + endif + + SetOnControlDownEventHandler CWxScannerOnScan 1 5 + DisableControl 5 + +end + +begin MenuMode + call CWxScannerStop +end + diff --git a/src/CWxScannerStop.gek b/src/CWxScannerStop.gek new file mode 100644 index 0000000..31e6210 --- /dev/null +++ b/src/CWxScannerStop.gek @@ -0,0 +1,20 @@ +scn CWxScannerStop + +begin function {} + + SetOnMenuOpenEventHandler CWxScannerOnMenu 0 + SetOnControlDownEventHandler CWxScannerOnScan 0 5 + EnableControl 5 + + if GetActiveMenuMode == 0 + if eval GetUIString "HUDMainMenu/Info/justify_center_hotrect/string" == "Scan" + SetUIFloat "HUDMainMenu/Info/justify_center_hotrect/visible" 0 + endif + endif + + ResetQuest CWxScannerQuest + StopQuest CWxScannerQuest + + call CWxScannerStopText + +end diff --git a/src/CWxScannerStopText.gek b/src/CWxScannerStopText.gek new file mode 100644 index 0000000..f299c8f --- /dev/null +++ b/src/CWxScannerStopText.gek @@ -0,0 +1,26 @@ +scn CWxScannerStopText + +begin function {} + + ResetQuest CWxScannerTextQuest + StopQuest CWxScannerTextQuest + + setUIFloat "HUDMainMenu/_CWxScannerEnabled" 0 + + setUIFloat "HUDMainMenu/_CWxScannerCursorPos" 0 + setUIFloat "HUDMainMenu/_CWxScannerCursorLine" 0 + setUIFloat "HUDMainMenu/_CWxScannerCursorBlink" 0 + setUIFloat "HUDMainMenu/_CWxScannerCursorIndent" 0 + setUIFloat "HUDMainMenu/_CWxScannerText1Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText2Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText3Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText4Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText5Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText6Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText7Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText8Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText9Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerText10Index" 0 + setUIFloat "HUDMainMenu/_CWxScannerBoyEnabled" 0 + +end diff --git a/src/CWxScannerTextQuestScript.gek b/src/CWxScannerTextQuestScript.gek new file mode 100644 index 0000000..cc02640 --- /dev/null +++ b/src/CWxScannerTextQuestScript.gek @@ -0,0 +1,632 @@ +scn CWxScannerTextQuestScript + +short stop + +ref curTarget + +short enabled +short clear + +float sleepTimer +float blinkTimer +float updateTimer + +short line +short word +short pos +short offset +short index +short cursorIndent +short cursorBlink + +; 0 - off +; 1 - clear +; 2 - searching - print +; 20 - searching - done +; 3 - scanning - print +; 30 - scanning - done +short state + +; 1-high 2-medium 3-low +short threat + +; 1-long 2-medium 3-short 4-melee +short range + +; 1-high 2-medium 3-low +short awareness + +; 1-allied 2-neutral 3-hostile +short disposition + +short lastThreat +short lastRange +short lastAwareness +short lastDisposition + +short scanningInit +short threatInit +short rangeInit +short awarenessInit +short dispositionInit +short doneInit + +float curHealth +float lastHealth +float maxHealth +float damageThreshold +float tmp + +float damage + +ref weapon + +float fSneakPerceptionSkillMaxGMST +float fSneakPerceptionSkillMinGMST + +float playerScore +float targetScore + +begin MenuMode + call CWxScannerStop +end + +Begin GameMode + + if IsControlPressed 6 == 0 ; not aiming + call CWxScannerStop + return + endif + +if state == 0 || sleepTimer > 0 + + if blinkTimer > 0 + set blinkTimer to blinkTimer - getSecondsPassed + else + set blinkTimer to 0.3 + set cursorBlink to 1 - cursorBlink + setUIFloat "HUDMainMenu/_CWxScannerCursorBlink" cursorBlink + endif +else + set cursorBlink to 0 +endif + +; Data output +if state == 0 + + if sleepTimer > 0 + set sleepTimer to sleepTimer - getSecondsPassed + return + endif + + if updateTimer > 0 + set updateTimer to updateTimer - getSecondsPassed + else + set updateTimer to 1 + + ; Scanner boy + set tmp to (100 - curTarget.getAV PerceptionCondition) / 100 + setUIFloat "HUDMainMenu/_CWxScannerBoyHeadDamage" tmp + set tmp to (100 - curTarget.getAV EnduranceCondition) / 100 + setUIFloat "HUDMainMenu/_CWxScannerBoyTorsoDamage" tmp + set tmp to (100 - curTarget.getAV LeftAttackCondition) / 100 + setUIFloat "HUDMainMenu/_CWxScannerBoyLeftArmDamage" tmp + set tmp to (100 - curTarget.getAV RightAttackCondition) / 100 + setUIFloat "HUDMainMenu/_CWxScannerBoyRightArmDamage" tmp + set tmp to (100 - curTarget.getAV LeftMobilityCondition) / 100 + setUIFloat "HUDMainMenu/_CWxScannerBoyLeftLegDamage" tmp + set tmp to (100 - curTarget.getAV RightMobilityCondition) / 100 + setUIFloat "HUDMainMenu/_CWxScannerBoyRightLegDamage" tmp + + ; HP + set curHealth to curTarget.getAV Health + if curHealth == 0 + setUIString "HUDMainMenu/_CWxScannerTextHP" "0" + else + setUIFloat "HUDMainMenu/_CWxScannerTextHP" curHealth + endif + + ; DT + set damageThreshold to curTarget.getAV DamageThreshold + if damageThreshold == 0 + setUIString "HUDMainMenu/_CWxScannerTextDT" "0" + else + setUIFloat "HUDMainMenu/_CWxScannerTextDT" damageThreshold + endif + + ; Health bar + set maxHealth to curTarget.getBaseAV Health + if maxHealth != 0 + set tmp to curHealth / maxHealth + if tmp < 0 + set tmp to 0 + endif + setUIFloat "HUDMainMenu/_CWxScannerHealth" tmp + endif + + ; Damage estimate + if lastHealth < 0 + set lastHealth to curHealth + endif + set damage to lastHealth - curHealth + + if maxHealth != 0 + set tmp to (curHealth - damage) / maxHealth + if tmp < 0 + set tmp to 0 + endif + setUIFloat "HUDMainMenu/_CWxScannerDamage" tmp + endif + + set lastHealth to curHealth + + ; Threat + set targetScore to curTarget.getBaseAV Health + 10 * curTarget.getAV DamageThreshold + 10 * curTarget.getLevel + set playerScore to player.getBaseAV Health + 10 * player.getAV DamageThreshold + 10 * player.getLevel + + if targetScore > playerScore + 50 + set threat to 1 + elseif targetScore < playerScore - 50 + set threat to 3 + else + set threat to 2 + endif + + ; Range + set weapon to curTarget.getEquippedObject 5 + if weapon == 0 + set range to 4 + elseif getWeaponSkill weapon == 38 || getWeaponSkill weapon == 45 + set range to 4 + else + if getWeaponMinSpread weapon < 0.5 + set range to 1 + elseif getWeaponMinSpread weapon < 1.4 + set range to 2 + else + set range to 3 + endif + endif + + ; Awareness + set fSneakPerceptionSkillMaxGMST to getNumericGameSetting fSneakPerceptionSkillMax + set fSneakPerceptionSkillMinGMST to getNumericGameSetting fSneakPerceptionSkillMin + set tmp to 1 + (curTarget.getIsAlerted * getNumericGameSetting fSneakAlertMod) + set tmp to tmp + (curTarget.getSleeping * getNumericGameSetting fSneakSleepBonus) + set tmp to tmp + ((curTarget.getCombatTarget != player) * getNumericGameSetting fSneakCombatMod) + set tmp to tmp * (fSneakPerceptionSkillMinGMST + (fSneakPerceptionSkillMaxGMST - fSneakPerceptionSkillMinGMST) * curTarget.getAV Perception / 10) + + if tmp > 66 + set awareness to 1 + elseif tmp > 33 + set awareness to 2 + else + set awareness to 3 + endif + + ; Disposition + if curTarget.getCombatTarget == player + set disposition to 3 + elseif curTarget.getFactionRelation player == 1 + set disposition to 3 + elseif curTarget.getFactionRelation player == 0 + if curTarget.getAV Aggression >= 2 + set disposition to 3 + else + set disposition to 2 + endif + elseif curTarget.getAV Assistance >= 1 + set disposition to 1 + ; Whatever.. :) + else + set disposition to 2 + endif + endif + + if scanningInit == 0 + set scanningInit to 1 + + set line to 0 + set word to 0 + set offset to 0 + set pos to 0 + set cursorIndent to 0 + + set state to 30 + return + endif + + if threatInit == 0 + set threatInit to 1 + + set line to 2 + set word to 0 + set offset to 0 + set pos to 0 + set cursorIndent to 0 + + set state to 30 + return + else + if threat != lastThreat + ; high + if threat == 1 + set word to 0 + set offset to 0 + ; medium + elseif threat == 2 + set word to 1 + set offset to 4 + ; low + elseif threat == 3 + set word to 2 + set offset to 10 + endif + + set line to 3 + set pos to 0 + set cursorIndent to 2 + set lastThreat to threat + set state to 30 + return + endif + endif + + if awarenessInit == 0 + set awarenessInit to 1 + + set line to 5 + set word to 0 + set offset to 0 + set pos to 0 + set cursorIndent to 0 + + set state to 30 + return + else + if awareness != lastAwareness + ; high + if awareness == 1 + set word to 0 + set offset to 0 + ; medium + elseif awareness == 2 + set word to 1 + set offset to 4 + ; low + elseif awareness == 3 + set word to 2 + set offset to 10 + endif + + set line to 6 + set pos to 0 + set cursorIndent to 2 + set lastAwareness to awareness + set state to 30 + return + + endif + endif + + if rangeInit == 0 + set rangeInit to 1 + + set line to 8 + set word to 0 + set offset to 0 + set pos to 0 + set cursorIndent to 0 + + set state to 30 + return + else + if range != lastRange + ; long + if range == 1 + set word to 0 + set offset to 0 + ; medium + elseif range == 2 + set word to 1 + set offset to 4 + ; short + elseif range == 3 + set word to 2 + set offset to 10 + ; melee + elseif range == 4 + set word to 3 + set offset to 15 + endif + + set line to 9 + set pos to 0 + set cursorIndent to 2 + set lastRange to range + set state to 30 + return + + endif + + endif + + if dispositionInit == 0 + set dispositionInit to 1 + + set line to 11 + set word to 0 + set offset to 0 + set pos to 0 + set cursorIndent to 0 + + set state to 30 + return + else + if disposition != lastDisposition + ; allied + if disposition == 1 + set word to 0 + set offset to 0 + ; neutral + elseif disposition == 2 + set word to 1 + set offset to 6 + ; hostile + elseif disposition == 3 + set word to 2 + set offset to 13 + endif + + set line to 12 + set pos to 0 + set cursorIndent to 2 + set lastDisposition to disposition + set state to 30 + return + + endif + endif + + if doneInit == 0 + set doneInit to 1 + + set line to 14 + set word to 0 + set offset to 0 + set pos to 0 + set cursorIndent to 0 + + set state to 30 + return + endif + + return + +elseif state == 30 + + set pos to pos + 1 + setUIFloat "HUDMainMenu/_CWxScannerCursorPos" pos + setUIFloat "HUDMainMenu/_CWxScannerCursorLine" line + setUIFloat "HUDMainMenu/_CWxScannerCursorIndent" cursorIndent + setUIFloat "HUDMainMenu/_CWxScannerCursorBlink" cursorBlink + + set index to offset + pos + + ;===================================================================================== Status + if line == 0 + setUIFloat "HUDMainMenu/_CWxScannerText1Index" index + + ; --------------------------------------------------------------------------------------------------------------------- SCANNING...[1-11] + if word == 0 + if pos >= 11 + playSound OBJSwitchButtonBPass + set sleepTimer to 3 + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Threat label + elseif line == 2 + setUIFloat "HUDMainMenu/_CWxScannerText2Index" index + + ; --------------------------------------------------------------------------------------------------------------------- Threat:[1-7] + if word == 0 + if pos >= 7 + playSound OBJSwitchButtonB + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Threat value + elseif line == 3 + setUIFloat "HUDMainMenu/_CWxScannerText3Index" index + + ; --------------------------------------------------------------------------------------------------------------------- high[1-4] + if word == 0 + if pos >= 4 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- medium[5-10] + elseif word == 1 + if pos >= 6 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- low[11-13] + elseif word == 2 + if pos >= 3 + set sleepTimer to 0.3 + set state to 0 + return + endif + + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Awareness label + elseif line == 5 + setUIFloat "HUDMainMenu/_CWxScannerText4Index" index + + ; --------------------------------------------------------------------------------------------------------------------- AWARENESS:[1-10] + if word == 0 + if pos >= 10 + playSound OBJSwitchButtonB + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Awareness values + elseif line == 6 + setUIFloat "HUDMainMenu/_CWxScannerText5Index" index + + ; --------------------------------------------------------------------------------------------------------------------- high[1-4] + if word == 0 + if pos >= 4 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- medium[5-10] + elseif word == 1 + if pos >= 6 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- low[11-13] + elseif word == 2 + if pos >= 3 + set sleepTimer to 0.3 + set state to 0 + return + endif + + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Range Label + elseif line == 8 + setUIFloat "HUDMainMenu/_CWxScannerText6Index" index + + ; --------------------------------------------------------------------------------------------------------------------- COMBAT RANGE:[1-12] + if word == 0 + if pos >= 12 + playSound OBJSwitchButtonB + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Range value + elseif line == 9 + setUIFloat "HUDMainMenu/_CWxScannerText7Index" index + + ; --------------------------------------------------------------------------------------------------------------------- long[1-4] + if word == 0 + if pos >= 4 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- medium[5-10] + elseif word == 1 + if pos >= 6 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- short[11-15] + elseif word == 2 + if pos >= 5 + set sleepTimer to 0.3 + set state to 0 + return + endif + + ; --------------------------------------------------------------------------------------------------------------------- melee[16-20] + elseif word == 3 + if pos >= 5 + set sleepTimer to 0.3 + set state to 0 + return + endif + + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Disposition label + elseif line == 11 + setUIFloat "HUDMainMenu/_CWxScannerText8Index" index + + ; --------------------------------------------------------------------------------------------------------------------- DISPOSITION:[1-12] + if word == 0 + if pos >= 12 + playSound OBJSwitchButtonB + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== Weakness value + elseif line == 12 + setUIFloat "HUDMainMenu/_CWxScannerText9Index" index + + ; --------------------------------------------------------------------------------------------------------------------- allied[1-6] + if word == 0 + if pos >= 6 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- neutral[7-13] + elseif word == 1 + if pos >= 7 + set sleepTimer to 0.3 + set state to 0 + return + endif + ; --------------------------------------------------------------------------------------------------------------------- hostile[14-20] + elseif word == 2 + if pos >= 7 + set sleepTimer to 0.3 + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + ;===================================================================================== + elseif line == 14 + setUIFloat "HUDMainMenu/_CWxScannerText10Index" index + + ; --------------------------------------------------------------------------------------------------------------------- DONE.[1-5] + if word == 0 + if pos >= 5 + setUIFloat "HUDMainMenu/_CWxScannerBoyEnabled" 1 + playSound OBJSwitchButtonA + set state to 0 + return + endif + endif + ; --------------------------------------------------------------------------------------------------------------------- + + endif + ;===================================================================================== + + return + +endif + +End diff --git a/src/CWxScannerUpdatePerk.gek b/src/CWxScannerUpdatePerk.gek new file mode 100644 index 0000000..b2d96fa --- /dev/null +++ b/src/CWxScannerUpdatePerk.gek @@ -0,0 +1,14 @@ +scn CWxScannerUpdatePerk + +int iMode +array_var aImplants + +begin function { iMode } + + let aImplants := ar_list CWxImplants.headImplant1, CWxImplants.headImplant2, CWxImplants.headImplant3, CWxImplants.headImplant4 + call CWxFnSyncImplant CWxImplantScanner CWxImplantScannerPerk 1 aImplants + let aImplants := ar_null + + call CWxScannerUpdateTriggers iMode + +end diff --git a/src/CWxScannerUpdateTriggers.gek b/src/CWxScannerUpdateTriggers.gek new file mode 100644 index 0000000..5eee63d --- /dev/null +++ b/src/CWxScannerUpdateTriggers.gek @@ -0,0 +1,13 @@ +scn CWxScannerUpdateTriggers + +int iMode +int bEnabled + +begin function { iMode } + + set bEnabled to player.HasPerk CWxImplantScannerPerk + + SetOnControlDownEventHandler CWxScannerOnAim bEnabled 6 + SetOnControlUpEventHandler CWxScannerOnAimDown bEnabled 6 + +end diff --git a/src/CWxStealthFieldQuestScript.gek b/src/CWxStealthFieldQuestScript.gek new file mode 100644 index 0000000..8441906 --- /dev/null +++ b/src/CWxStealthFieldQuestScript.gek @@ -0,0 +1,53 @@ +scn CWxStealthFieldQuestScript + +int iFieldStability +float fTemp + +; Expected to run 1 time per second + +begin GameMode + + if iFieldStability <= 0 + + printd "Cyberware: Stealth charge depleted - hide indicator, remove field, start recharging" + + SetUIFloat "HUDMainMenu\_CWxSFMeterEnabled" 0 + + if player.IsSpellTargetAlt CWxStealthField + playSound OBJForceFieldImpact + player.dispel CWxStealthField + endif + + set iFieldStability to iFieldStability + 1 + + elseif player.IsSpellTargetAlt CWxStealthField + + printd "Cyberware: Stealth field is active - show and update indicator, reduce charge" + + set fTemp to iFieldStability / ( CWxBaseStealthFieldStability / 8 ) + + SetUIFloat "HUDMainMenu\_CWxSFMeterAmount" fTemp + SetUIFloat "HUDMainMenu\_CWxSFMeterEnabled" 1 + + set iFieldStability to iFieldStability - 1 + + elseif iFieldStability >= CWxBaseStealthFieldStability + + printd "Cyberware: Stealth recharging has finished, stopping the quest" + + ; Just in case, if CWxBaseStealthFieldStability has changed + set iFieldStability to CWxBaseStealthFieldStability + + ; Go back to stand-by mode + StopQuest CWxStealthFieldQuest + + else + + printd "Cyberware: Stealth field is off, recharging in progress" + + set iFieldStability to iFieldStability + 1 + + endif + +end + diff --git a/src/CWxStealthOnHotkey.gek b/src/CWxStealthOnHotkey.gek new file mode 100644 index 0000000..3aa4d54 --- /dev/null +++ b/src/CWxStealthOnHotkey.gek @@ -0,0 +1,27 @@ +scn CWxStealthOnHotkey + +int iKeyID +ref rScript + +begin function { iKeyID } + + if MenuMode + return + endif + + if iKeyID != CWxStealthFieldHotkey + printd "Cyberware: Autoremoved stealth hotkey" + set rScript to GetCurrentScript + SetOnKeyUpEventHandler rScript 0 iKeyID + return + endif + + if player.IsSpellTargetAlt CWxStealthField + printd "Cyberware: Swithing stealth off" + SetStage CWxStealthFieldQuest 0 + else + printd "Cyberware: Swithing stealth on" + SetStage CWxStealthFieldQuest 1 + endif + +end diff --git a/src/CWxStealthOnUseSB.gek b/src/CWxStealthOnUseSB.gek new file mode 100644 index 0000000..a178e11 --- /dev/null +++ b/src/CWxStealthOnUseSB.gek @@ -0,0 +1,13 @@ +scn CWxStealthOnUseSB + +ref rStealthBoy + +begin function { rStealthBoy } + + if this != playerRef + return + endif + + SetStage CWxStealthFieldQuest 0 + +end diff --git a/src/CWxStealthUpdatePerk.gek b/src/CWxStealthUpdatePerk.gek new file mode 100644 index 0000000..884419e --- /dev/null +++ b/src/CWxStealthUpdatePerk.gek @@ -0,0 +1,20 @@ +scn CWxStealthUpdatePerk + +int iMode +array_var aImplants + +begin function { iMode } + + let aImplants := ar_list CWxImplants.torsoImplant1, CWxImplants.torsoImplant2, CWxImplants.torsoImplant3, CWxImplants.torsoImplant4 + call CWxFnSyncImplant CWxImplantStealthNanobots CWxImplantStealthPerk 1 aImplants + let aImplants := ar_null + + call CWxStealthUpdateTriggers 0 + + if player.IsSpellTargetAlt CWxStealthField + if player.HasPerk CWxImplantStealthPerk == 0 + SetStage CWxStealthFieldQuest 0 + endif + endif + +end diff --git a/src/CWxStealthUpdateTriggers.gek b/src/CWxStealthUpdateTriggers.gek new file mode 100644 index 0000000..4196781 --- /dev/null +++ b/src/CWxStealthUpdateTriggers.gek @@ -0,0 +1,23 @@ +scn CWxStealthUpdateTriggers + +int iStatus +int bEnabled + +begin function { iStatus } + + set bEnabled to player.HasPerk CWxImplantStealthPerk + + SetOnKeyUpEventHandler CWxStealthOnHotkey bEnabled CWxStealthFieldHotkey + SetOnUseAidItemEventHandler CWxStealthOnUseSB bEnabled StealthBoy + + if GetUIFloat "HUDMainMenu\_CWxSFMeterEnabled" + if player.IsSpellTargetAlt CWxStealthField == 0 + SetStage CWxStealthFieldQuest 0 + endif + elseif player.IsSpellTargetAlt CWxStealthField + if GetQuestRunning CWxStealthFieldQuest == 0 + StartQuest CWxStealthFieldQuest + endif + endif + +end diff --git a/src/CWxUpdatePerks.gek b/src/CWxUpdatePerks.gek new file mode 100644 index 0000000..9c9cb3f --- /dev/null +++ b/src/CWxUpdatePerks.gek @@ -0,0 +1,195 @@ +scn CWxUpdatePerks + +int iStage +array_var aImplants + +begin function { iStage } + + ; Refresh implant perks + printd "Updating perks" + + ;----------------------------------------------------------------------------------------------------------------------------------------------------- + ; Head + + + let aImplants := ar_list CWxImplants.headImplant1, CWxImplants.headImplant2, CWxImplants.headImplant3, CWxImplants.headImplant4 + + call CWxFnSyncImplant CWxImplantEmpathySynthesizer ImplantCharismaPerk 1 aImplants + call CWxFnSyncImplant CWxImplantLogicCoProcessor ImplantIntelligencePerk 1 aImplants + call CWxFnSyncImplant CWxImplantOpticsEnhancer ImplantPerceptionPerk 1 aImplants + call CWxFnSyncImplant CWxImplantProbabilityCalculator ImplantLuckPerk 1 aImplants + + call CWxFnSyncImplant CWxImplantVoiceModulatorL1 CWxImplantBarter1Perk 1 aImplants + call CWxFnSyncImplant CWxImplantVoiceModulatorL2 CWxImplantBarter1Perk 2 aImplants + call CWxFnSyncImplant CWxImplantVoiceModulatorL3 CWxImplantBarter1Perk 3 aImplants + call CWxFnSyncImplant CWxImplantVoiceModulatorL4 CWxImplantBarter1Perk 4 aImplants + + + ;----------------------------------------------------------------------------------------------------------------------------------------------------- + ; Torso + + + let aImplants := ar_list CWxImplants.torsoImplant1, CWxImplants.torsoImplant2, CWxImplants.torsoImplant3, CWxImplants.torsoImplant4 + + call CWxFnSyncImplant CWxImplantSyntheticLungs CWxImplantSyntheticLungsPerk 1 aImplants + call CWxFnSyncImplant CWxImplantMonocyteBreeder ImplantRegenPerk 1 aImplants + call CWxFnSyncImplant CWxImplantHypertrophyAccelerator ImplantStrengthPerk 1 aImplants + call CWxFnSyncImplant CWxImplantNociceptionRegulator ImplantEndurancePerk 1 aImplants + call CWxFnSyncImplant CWxImplantReflexBooster ImplantAgilityPerk 1 aImplants + call CWxFnSyncImplant CWxImplantSubDermalArmor ImplantDTPerk 1 aImplants + + + ;----------------------------------------------------------------------------------------------------------------------------------------------------- + ; Arms + + + if (CWxImplants.rightArmImplant1 == CWxImplantKineticAccelerator || CWxImplants.rightArmImplant2 == CWxImplantKineticAccelerator) && (CWxImplants.leftArmImplant1 == CWxImplantKineticAccelerator || CWxImplants.leftArmImplant2 == CWxImplantKineticAccelerator) + if player.GetPerkRank CWxImplantBTShoot1Perk != 2 + player.SetPerkRank CWxImplantBTShoot1Perk 2 + endif + elseif CWxImplants.rightArmImplant1 == CWxImplantKineticAccelerator || CWxImplants.rightArmImplant2 == CWxImplantKineticAccelerator || CWxImplants.leftArmImplant1 == CWxImplantKineticAccelerator || CWxImplants.leftArmImplant2 == CWxImplantKineticAccelerator + if player.GetPerkRank CWxImplantBTShoot1Perk != 1 + player.SetPerkRank CWxImplantBTShoot1Perk 1 + endif + else + player.removePerk CWxImplantBTShoot1Perk + endif + + if (CWxImplants.rightArmImplant1 == CWxImplantEMP || CWxImplants.rightArmImplant2 == CWxImplantEMP) && (CWxImplants.leftArmImplant1 == CWxImplantEMP || CWxImplants.leftArmImplant2 == CWxImplantEMP) + if player.GetPerkRank CWxImplantPulseEMPerk != 2 + player.SetPerkRank CWxImplantPulseEMPerk 2 + endif + if player.GetItemCount CWxWeapEMP != 1 + player.RemoveItem CWxWeapEMP 99 1 + player.AddItem CWxWeapEMP 1 1 + endif + elseif CWxImplants.rightArmImplant1 == CWxImplantEMP || CWxImplants.rightArmImplant2 == CWxImplantEMP || CWxImplants.leftArmImplant1 == CWxImplantEMP || CWxImplants.leftArmImplant2 == CWxImplantEMP + if player.GetPerkRank CWxImplantPulseEMPerk != 1 + player.SetPerkRank CWxImplantPulseEMPerk 1 + endif + if player.GetItemCount CWxWeapEMP != 1 + player.RemoveItem CWxWeapEMP 99 1 + player.AddItem CWxWeapEMP 1 1 + endif + else + player.removePerk CWxImplantPulseEMPerk + player.RemoveItem CWxWeapEMP 99 1 + endif + + if (CWxImplants.rightArmImplant1 == CWxImplantHFP || CWxImplants.rightArmImplant2 == CWxImplantHFP) && (CWxImplants.leftArmImplant1 == CWxImplantHFP || CWxImplants.leftArmImplant2 == CWxImplantHFP) + if player.GetPerkRank CWxImplantPulseHFPerk != 2 + player.SetPerkRank CWxImplantPulseHFPerk 2 + endif + if player.GetItemCount CWxWeapHFP != 1 + player.RemoveItem CWxWeapHFP 99 1 + player.AddItem CWxWeapHFP 1 1 + endif + elseif CWxImplants.rightArmImplant1 == CWxImplantHFP || CWxImplants.rightArmImplant2 == CWxImplantHFP || CWxImplants.leftArmImplant1 == CWxImplantHFP || CWxImplants.leftArmImplant2 == CWxImplantHFP + if player.GetPerkRank CWxImplantPulseHFPerk != 1 + player.SetPerkRank CWxImplantPulseHFPerk 1 + endif + if player.GetItemCount CWxWeapHFP != 1 + player.RemoveItem CWxWeapHFP 99 1 + player.AddItem CWxWeapHFP 1 1 + endif + else + player.removePerk CWxImplantPulseHFPerk + player.RemoveItem CWxWeapHFP 99 1 + endif + + + let aImplants := ar_list CWxImplants.rightArmImplant1, CWxImplants.rightArmImplant2 + + call CWxFnSyncImplant CWxImplantHandStabilizerL1 CWxImplantLockpick1RPerk 1 aImplants + call CWxFnSyncImplant CWxImplantHandStabilizerL2 CWxImplantLockpick1RPerk 2 aImplants + call CWxFnSyncImplant CWxImplantHandStabilizerL3 CWxImplantLockpick1RPerk 3 aImplants + call CWxFnSyncImplant CWxImplantHandStabilizerL4 CWxImplantLockpick1RPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantMotorMemorizerL1 CWxImplantGuns1RPerk 1 aImplants + call CWxFnSyncImplant CWxImplantMotorMemorizerL2 CWxImplantGuns1RPerk 2 aImplants + call CWxFnSyncImplant CWxImplantMotorMemorizerL3 CWxImplantGuns1RPerk 3 aImplants + call CWxFnSyncImplant CWxImplantMotorMemorizerL4 CWxImplantGuns1RPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantNeuralDatatoolL1 CWxImplantScience1RPerk 1 aImplants + call CWxFnSyncImplant CWxImplantNeuralDatatoolL2 CWxImplantScience1RPerk 2 aImplants + call CWxFnSyncImplant CWxImplantNeuralDatatoolL3 CWxImplantScience1RPerk 3 aImplants + call CWxFnSyncImplant CWxImplantNeuralDatatoolL4 CWxImplantScience1RPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantRazorNailsL1 CWxImplantUnarmed1RPerk 1 aImplants + call CWxFnSyncImplant CWxImplantRazorNailsL2 CWxImplantUnarmed1RPerk 2 aImplants + call CWxFnSyncImplant CWxImplantRazorNailsL3 CWxImplantUnarmed1RPerk 3 aImplants + call CWxFnSyncImplant CWxImplantRazorNailsL4 CWxImplantUnarmed1RPerk 4 aImplants + + + let aImplants := ar_list CWxImplants.leftArmImplant1, CWxImplants.leftArmImplant2 + + call CWxFnSyncImplant CWxImplantHandStabilizerL1 CWxImplantLockpick1LPerk 1 aImplants + call CWxFnSyncImplant CWxImplantHandStabilizerL2 CWxImplantLockpick1LPerk 2 aImplants + call CWxFnSyncImplant CWxImplantHandStabilizerL3 CWxImplantLockpick1LPerk 3 aImplants + call CWxFnSyncImplant CWxImplantHandStabilizerL4 CWxImplantLockpick1LPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantMotorMemorizerL1 CWxImplantGuns1LPerk 1 aImplants + call CWxFnSyncImplant CWxImplantMotorMemorizerL2 CWxImplantGuns1LPerk 2 aImplants + call CWxFnSyncImplant CWxImplantMotorMemorizerL3 CWxImplantGuns1LPerk 3 aImplants + call CWxFnSyncImplant CWxImplantMotorMemorizerL4 CWxImplantGuns1LPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantNeuralDatatoolL1 CWxImplantScience1LPerk 1 aImplants + call CWxFnSyncImplant CWxImplantNeuralDatatoolL2 CWxImplantScience1LPerk 2 aImplants + call CWxFnSyncImplant CWxImplantNeuralDatatoolL3 CWxImplantScience1LPerk 3 aImplants + call CWxFnSyncImplant CWxImplantNeuralDatatoolL4 CWxImplantScience1LPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantRazorNailsL1 CWxImplantUnarmed1LPerk 1 aImplants + call CWxFnSyncImplant CWxImplantRazorNailsL2 CWxImplantUnarmed1LPerk 2 aImplants + call CWxFnSyncImplant CWxImplantRazorNailsL3 CWxImplantUnarmed1LPerk 3 aImplants + call CWxFnSyncImplant CWxImplantRazorNailsL4 CWxImplantUnarmed1LPerk 4 aImplants + + + ;----------------------------------------------------------------------------------------------------------------------------------------------------- + ; Legs + + + if (CWxImplants.rightLegImplant1 == CWxImplantKineticAccelerator || CWxImplants.rightLegImplant2 == CWxImplantKineticAccelerator) && (CWxImplants.leftLegImplant1 == CWxImplantKineticAccelerator || CWxImplants.leftLegImplant2 == CWxImplantKineticAccelerator) + if player.GetPerkRank CWxImplantMovementPerk != 2 + player.SetPerkRank CWxImplantMovementPerk 2 + endif + elseif CWxImplants.rightLegImplant1 == CWxImplantKineticAccelerator || CWxImplants.rightLegImplant2 == CWxImplantKineticAccelerator || CWxImplants.leftLegImplant1 == CWxImplantKineticAccelerator || CWxImplants.leftLegImplant2 == CWxImplantKineticAccelerator + if player.GetPerkRank CWxImplantMovementPerk != 1 + player.SetPerkRank CWxImplantMovementPerk 1 + endif + else + player.removePerk CWxImplantMovementPerk + endif + + + let aImplants := ar_list CWxImplants.rightLegImplant1, CWxImplants.rightLegImplant2 + + call CWxFnSyncImplant CWxImplantTreadDamperL1 CWxImplantSneak1RPerk 1 aImplants + call CWxFnSyncImplant CWxImplantTreadDamperL2 CWxImplantSneak1RPerk 2 aImplants + call CWxFnSyncImplant CWxImplantTreadDamperL3 CWxImplantSneak1RPerk 3 aImplants + call CWxFnSyncImplant CWxImplantTreadDamperL4 CWxImplantSneak1RPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantWeightAbsorberL1 CWxImplantCarryWeight1RPerk 1 aImplants + call CWxFnSyncImplant CWxImplantWeightAbsorberL2 CWxImplantCarryWeight1RPerk 2 aImplants + call CWxFnSyncImplant CWxImplantWeightAbsorberL3 CWxImplantCarryWeight1RPerk 3 aImplants + call CWxFnSyncImplant CWxImplantWeightAbsorberL4 CWxImplantCarryWeight1RPerk 4 aImplants + + + let aImplants := ar_list CWxImplants.leftLegImplant1, CWxImplants.leftLegImplant2 + + call CWxFnSyncImplant CWxImplantTreadDamperL1 CWxImplantSneak1LPerk 1 aImplants + call CWxFnSyncImplant CWxImplantTreadDamperL2 CWxImplantSneak1LPerk 2 aImplants + call CWxFnSyncImplant CWxImplantTreadDamperL3 CWxImplantSneak1LPerk 3 aImplants + call CWxFnSyncImplant CWxImplantTreadDamperL4 CWxImplantSneak1LPerk 4 aImplants + + call CWxFnSyncImplant CWxImplantWeightAbsorberL1 CWxImplantCarryWeight1LPerk 1 aImplants + call CWxFnSyncImplant CWxImplantWeightAbsorberL2 CWxImplantCarryWeight1LPerk 2 aImplants + call CWxFnSyncImplant CWxImplantWeightAbsorberL3 CWxImplantCarryWeight1LPerk 3 aImplants + call CWxFnSyncImplant CWxImplantWeightAbsorberL4 CWxImplantCarryWeight1LPerk 4 aImplants + + + let aImplants := ar_null + + + call CWxUpdateTriggers 0 + +end \ No newline at end of file diff --git a/src/CWxUpdateTriggers.gek b/src/CWxUpdateTriggers.gek new file mode 100644 index 0000000..bce88c4 --- /dev/null +++ b/src/CWxUpdateTriggers.gek @@ -0,0 +1,17 @@ +scn CWxUpdateTriggers + +int iMode + +begin function { iMode } + + if playerRef.HasPerk CWxImplantPulseEMPerk || playerRef.HasPerk CWxImplantPulseHFPerk + SetEventHandler "OnActorEquip" CWxOnEquipPulseGun "first"::playerRef "second"::CWxWeapEMP + SetEventHandler "OnActorEquip" CWxOnEquipPulseGun "first"::playerRef "second"::CWxWeapHFP + SetEventHandler "OnActorUnequip" CWxOnUnequipPulseGun "first"::playerRef "second"::CWxWeapEMP + SetEventHandler "OnActorUnequip" CWxOnUnequipPulseGun "first"::playerRef "second"::CWxWeapHFP + else + RemoveEventHandler "OnActorEquip" CWxOnEquipPulseGun + RemoveEventHandler "OnActorUnequip" CWxOnUnequipPulseGun + endif + +end