From 9819d65a0eee6518c7b5cca97d8d10bb49e7945e Mon Sep 17 00:00:00 2001
From: Arkerthan <arkerthan@mailbox.org>
Date: Wed, 22 Jun 2022 22:36:58 +0200
Subject: [PATCH] Fix prosthetic short description for new quad limbs.

Also related typing
---
 devTools/types/FC/human.d.ts               |  4 +++-
 src/js/SlaveState.js                       |  1 +
 src/npc/descriptions/descriptionWidgets.js | 20 ++++++++++++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/devTools/types/FC/human.d.ts b/devTools/types/FC/human.d.ts
index 23ef528c941..b7bf00245fc 100644
--- a/devTools/types/FC/human.d.ts
+++ b/devTools/types/FC/human.d.ts
@@ -464,6 +464,8 @@ declare global {
 		}
 		//#endregion
 
+		type LimbType = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
+
 		type ArmState = InstanceType<typeof App.Entity.ArmState>;
 		type LegState = InstanceType<typeof App.Entity.LegState>;
 
@@ -476,7 +478,7 @@ declare global {
 				left: LegState,
 				right: LegState;
 			};
-			PLimb: number;
+			PLimb: 0 | 1 | 2 | 3;
 		}
 
 		interface PregnancyData {
diff --git a/src/js/SlaveState.js b/src/js/SlaveState.js
index 75095eb87f0..497f5b99ea8 100644
--- a/src/js/SlaveState.js
+++ b/src/js/SlaveState.js
@@ -512,6 +512,7 @@ App.Entity.LimbState = class LimbState {
 		 * * 4: advanced - Beauty
 		 * * 5: advanced - Combat
 		 * * 6: cybernetic
+		 * @type {FC.LimbType}
 		 */
 		this.type = 1;
 		/**
diff --git a/src/npc/descriptions/descriptionWidgets.js b/src/npc/descriptions/descriptionWidgets.js
index d2948e0bb73..46732c9459f 100644
--- a/src/npc/descriptions/descriptionWidgets.js
+++ b/src/npc/descriptions/descriptionWidgets.js
@@ -1111,6 +1111,14 @@ App.Desc.shortLimbs = function(slave) {
 				return limb + "Combat P-Limb ";
 			case 6:
 				return limb + "Cyber P-Limb ";
+			case 7:
+				return limb + "Quad-Feline ";
+			case 8:
+				return limb + "Quad-Canine ";
+			case 9:
+				return limb + "Combat Feline ";
+			case 10:
+				return limb + "Combat Canine ";
 			default:
 				return "unknown ID: " + id;
 		}
@@ -1240,6 +1248,18 @@ App.Desc.longLimbs = function(slave) {
 				case 6:
 					r += "cyber ";
 					break;
+				case 7:
+					r +=  "quadruped feline ";
+					break;
+				case 8:
+					r +=  "quadruped canine ";
+					break;
+				case 9:
+					r +=  "feline combat ";
+					break;
+				case 10:
+					r +=  "canine combat ";
+					break;
 			}
 			if (count > 1) {
 				r += "prosthetic limbs. ";
-- 
GitLab