Somes fixes, blood on limbs\prosthetics, new textures

This commit is contained in:
Pao
2023-01-17 22:29:31 +01:00
parent 0d840baeff
commit 8656bd5696
7 changed files with 108 additions and 31 deletions

View File

@@ -100,3 +100,20 @@ function CheckIfItemIsAmputatedLimb(item)
return is_amputated_limb
end
function CheckIfItemIsProsthesis(item)
local item_full_type = item:getFullType()
local prosthesis_list = GetProsthesisList()
--return (item_full_type == "TOC.WoodenHook" or item_full_type == "TOC.MetalHook" or item_full_type == "TOC.MetalHand")
local check = prosthesis_list[item_full_type]
return check
end
function CheckIfItemIsInstalledProsthesis(item)
local item_full_type = item:getFullType()
local installable_prosthesis_list = GetInstallableProsthesisList()
local check = installable_prosthesis_list[item_full_type]
return check
end

View File

@@ -53,15 +53,16 @@ function ISUninstallProsthesis:perform()
if self.bodyPart:getType() == v then
local part_name = FindTocBodyPartNameFromBodyPartType(v)
print("Found prost in " .. part_name)
if part_name then
toc_data[part_name].is_prosthesis_equipped = false
toc_data[part_name].prosthesis_factor = 1
--local side = string.gsub(part_name, "Hand" or "Forearm", "")
local item_full_type = self.item:getFullType()
print("Searching for " .. item_full_type)
for _, prost_v in ipairs(GetProsthesisList()) do
local prosthesis_name = string.match(self.item:getName(), prost_v)
local prosthesis_name = string.match(item_full_type, prost_v)
if prosthesis_name then
self.character:getInventory():AddItem(prosthesis_name)

View File

@@ -113,6 +113,11 @@ end
-- end
-- TODO override equip action
local og_ISUnequipActionPerform = ISUnequipAction.perform
function ISUnequipAction:perform()
@@ -126,12 +131,17 @@ function ISUnequipAction:perform()
-- -- end
-- -- end
if not CheckIfItemIsAmputatedLimb(self.item) then
if CheckIfItemIsAmputatedLimb(self.item) == false and CheckIfItemIsInstalledProsthesis(self.item) == false then
og_ISUnequipActionPerform(self)
end
-- if not CheckIfItemIsAmputatedLimb(self.item) then
-- og_ISUnequipActionPerform(self)
-- end
-- if CheckIfItemIsInstalledProsthesis(self.item) then
-- og_ISUnequipActionPerform(self)
-- end
end
@@ -140,11 +150,14 @@ local og_ISDropItemActionPerform = ISDropItemAction.perform
function ISDropItemAction:perform()
if not CheckIfItemIsAmputatedLimb(self.item) then
if not CheckIfItemIsAmputatedLimb(self.item)then
og_ISDropItemActionPerform(self)
end
end
-- TODO Add "Clean Wound" to make the cicatrization faster

View File

@@ -6,6 +6,37 @@ end
function GetProsthesisList()
return {"TOC.WoodenHook", "TOC.MetalHook", "TOC.MetalHand"}
end
function GetInstallableProsthesisList()
-- To make it future proff since i'm gonna add stuff, let's cycle through already known prosthesis
local prosthesis_list = GetProsthesisList()
local sides = {"right", "left"}
local body_parts = {"Hand", "Forearm", "Arm"}
local installed_prosthesis_list = {}
for _, side in pairs(sides) do
for _, prost in pairs(prosthesis_list) do
for _, body_part in pairs(body_parts) do
local installable_prost = prost .. "_" .. side .. "_no" .. body_part
table.insert(installed_prosthesis_list, installable_prost)
end
end
end
return installed_prosthesis_list
end
function GetLimbsBodyPartTypes()

View File

@@ -149,10 +149,11 @@ imports
{
Weight = 1,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,
ClothingItem = ArmRight_WoodenHook,
BodyLocation = ArmRight_Prot,
BloodLocation = Hands,
Icon = woodenHook,
Tooltip = Tooltip_equip_prothesis_hand,
WaterResistance = 15,
@@ -162,10 +163,11 @@ imports
{
Weight = 1,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,
ClothingItem = ArmLeft_WoodenHook,
BodyLocation = ArmLeft_Prot,
BloodLocation = Hands,
Icon = woodenHook,
Tooltip = Tooltip_equip_prothesis_hand,
WaterResistance = 15,
@@ -175,10 +177,11 @@ imports
{
Weight = 0.5,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,
ClothingItem = ArmRight_MetalHook,
BodyLocation = ArmRight_Prot,
BloodLocation = Hands,
Icon = metalHook,
Tooltip = Tooltip_equip_prothesis_hand,
WaterResistance = 13,
@@ -188,10 +191,11 @@ imports
{
Weight = 0.5,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,
ClothingItem = ArmLeft_MetalHook,
BodyLocation = ArmLeft_Prot,
BloodLocation = Hands,
Icon = metalHook,
Tooltip = Tooltip_equip_prothesis_hand,
WaterResistance = 13,
@@ -201,10 +205,11 @@ imports
{
Weight = 0.3,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,
ClothingItem = ArmRight_MetalHamd,
BodyLocation = ArmRight_Prot,
BloodLocation = Hands,
Icon = metalHand,
Tooltip = Tooltip_equip_prothesis_hand,
WaterResistance = 11,
@@ -214,10 +219,11 @@ imports
{
Weight = 0.3,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,
ClothingItem = ArmLeft_MetalHand,
BodyLocation = ArmLeft_Prot,
BloodLocation = Hands,
Icon = metalHand,
Tooltip = Tooltip_equip_prothesis_hand",
WaterResistance = 11,
@@ -227,10 +233,11 @@ imports
{
Weight = 2,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,
ClothingItem = ArmRight_WoodenHook_fore,
BodyLocation = ArmRight_Prot,
BloodLocation = LowerArms;Hands,
Icon = woodenHook,
Tooltip = Tooltip_equip_prothesis_fore,
WaterResistance = 16,
@@ -240,10 +247,12 @@ imports
{
Weight = 2,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_woodenHook,
ClothingItem = ArmLeft_WoodenHook_fore,
BodyLocation = ArmLeft_Prot,
BloodLocation = LowerArms;Hands,
Icon = woodenHook,
Tooltip = Tooltip_equip_prothesis_fore,
WaterResistance = 16,
@@ -253,10 +262,11 @@ imports
{
Weight = 1.5,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,
ClothingItem = ArmRight_MetalHook_fore,
BodyLocation = ArmRight_Prot,
BloodLocation = LowerArms;Hands,
Icon = metalHook,
Tooltip = Tooltip_equip_prothesis_fore,
WaterResistance = 14,
@@ -266,10 +276,12 @@ imports
{
Weight = 1.5,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHook,
ClothingItem = ArmLeft_MetalHook_fore,
BodyLocation = ArmLeft_Prot,
BloodLocation = LowerArms;Hands,
Icon = metalHook,
Tooltip = Tooltip_equip_prothesis_fore,
WaterResistance = 14,
@@ -279,10 +291,11 @@ imports
{
Weight = 1.2,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,
ClothingItem = ArmRight_MetalHand_fore,
BodyLocation = ArmRight_Prot,
BloodLocation = LowerArms;Hands,
Icon = metalHand,
Tooltip = Tooltip_equip_prothesis_fore,
WaterResistance = 12,
@@ -292,10 +305,11 @@ imports
{
Weight = 1.2,
Type = Clothing,
/*DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,*/
DisplayCategory = Prosthesis,
DisplayName = DisplayName_metalHand,
ClothingItem = ArmLeft_MetalHand_fore,
BodyLocation = ArmLeft_Prot,
BloodLocation = LowerArms;Hands,
Icon = metalHand,
Tooltip = Tooltip_equip_prothesis_fore,
WaterResistance = 12,
@@ -303,6 +317,7 @@ imports
/************************ Prothese items ************************/
/* TODO make it clothing same as amputations */
item WoodenHook
{
Weight = 1,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 147 KiB