private void GiveResourceOnDamage(GameObject target, bool isAlive, bool wasAlive) { TechType techType = CraftData.GetTechType(target); HarvestType harvestTypeFromTech = CraftData.GetHarvestTypeFromTech(techType); if (techType == TechType.Creepvine) { GoalManager.main.OnCustomGoalEvent("Cut_Creepvine"); } if ((harvestTypeFromTech == HarvestType.DamageAlive && wasAlive) || (harvestTypeFromTech == HarvestType.DamageDead && !isAlive)) { int num = 1; if (harvestTypeFromTech == HarvestType.DamageAlive && !isAlive) { num += CraftData.GetHarvestFinalCutBonus(techType); } TechType harvestOutputData = CraftData.GetHarvestOutputData(techType); if (harvestOutputData != TechType.None) { CraftData.AddToInventory(harvestOutputData, num, false, false); } } }
//private void GiveResourceOnDamage(GameObject target, bool isAlive, bool wasAlive) public static void GiveResourceOnDamage_Postfix(GameObject target, bool isAlive, bool wasAlive) { TechType techType = CraftData.GetTechType(target); if ((int)techType == (int)purplePineConeTechType) // If it's our custom purple pinecone { #if DEBUG_KNIFE Logger.Log("DEBUG: Entering custom purple pinecone event. techType=[" + (int)techType + "][" + techType.AsString(false) + "] purplePineConeTechType=[" + (int)purplePineConeTechType + "][" + purplePineConeTechType.AsString(false) + "]"); #endif HarvestType harvestTypeFromTech = CraftData.GetHarvestTypeFromTech(techType); if ((harvestTypeFromTech == HarvestType.DamageAlive && wasAlive) || (harvestTypeFromTech == HarvestType.DamageDead && !isAlive)) { CraftData.AddToInventory(TechType.Salt, 1, false, false); // Add one salt in player's inventory } } }
//private void GiveResourceOnDamage(GameObject target, bool isAlive, bool wasAlive) public static void GiveResourceOnDamage_Postfix(GameObject target, bool isAlive, bool wasAlive) { TechType techType = CraftData.GetTechType(target); if ((int)techType == (int)purplePineConeTechType && purplePineConeTechType != TechType.None) // If it's our custom purple pinecone { #if DEBUG_KNIFE Logger.Log("DEBUG: Entering custom purple pinecone event. techType=[" + (int)techType + "][" + techType.AsString(false) + "] purplePineConeTechType=[" + (int)purplePineConeTechType + "][" + purplePineConeTechType.AsString(false) + "]"); #endif #if BELOWZERO HarvestType harvestTypeFromTech = TechData.GetHarvestType(techType); #else HarvestType harvestTypeFromTech = CraftData.GetHarvestTypeFromTech(techType); #endif if ((harvestTypeFromTech == HarvestType.DamageAlive && wasAlive) || (harvestTypeFromTech == HarvestType.DamageDead && !isAlive)) { CraftData.AddToInventory(ConfigSwitcher.PurplePineconeDroppedResource, ConfigSwitcher.PurplePineconeDroppedResourceAmount, false, false); // This will add PurplePineconeDroppedResourceAmount of PurplePineconeDroppedResource in player's inventory } } }