コード例 #1
0
 public static void UpdateAllPlanPieceTextures()
 {
     if (showRealTextures &&
         Player.m_localPlayer.m_placementGhost &&
         Player.m_localPlayer.m_placementGhost.name.StartsWith(Blueprint.BlueprintPrefabName))
     {
         ShaderHelper.UpdateTextures(Player.m_localPlayer.m_placementGhost, ShaderHelper.ShaderState.Skuld);
     }
     foreach (PlanPiece planPiece in Object.FindObjectsOfType <PlanPiece>())
     {
         planPiece.UpdateTextures();
     }
 }
コード例 #2
0
        private void TogglePlanBuildMode()
        {
            if (ScanHammer(lateAdd: true))
            {
                UpdateKnownRecipes();
            }
            if (Player.m_localPlayer.m_visEquipment.m_rightItem != BlueprintRunePrefab.BlueprintRuneName)
            {
                return;
            }
            ItemDrop.ItemData blueprintRune = Player.m_localPlayer.GetInventory().GetItem(BlueprintRunePrefab.BlueprintRuneItemName);
            if (blueprintRune == null)
            {
                return;
            }
            PieceTable planHammerPieceTable    = PieceManager.Instance.GetPieceTable(PlanPiecePrefab.PlanHammerPieceTableName);
            PieceTable bluePrintRunePieceTable = PieceManager.Instance.GetPieceTable(BlueprintRunePrefab.PieceTableName);

            if (blueprintRune.m_shared.m_buildPieces == planHammerPieceTable)
            {
                blueprintRune.m_shared.m_buildPieces = bluePrintRunePieceTable;
            }
            else
            {
                blueprintRune.m_shared.m_buildPieces = planHammerPieceTable;
            }
            Player.m_localPlayer.UnequipItem(blueprintRune);
            Player.m_localPlayer.EquipItem(blueprintRune);

            Color color = blueprintRune.m_shared.m_buildPieces == planHammerPieceTable ? Color.red : Color.cyan;

            ShaderHelper.SetEmissionColor(Player.m_localPlayer.m_visEquipment.m_rightItemInstance, color);
            Player.m_localPlayer.UpdateAvailablePiecesList();
            Hud.instance.UpdateBuild(Player.m_localPlayer, true);
            blueprintRune.m_shared.m_buildPieces.NextCategory();
            blueprintRune.m_shared.m_buildPieces.PrevCategory();
        }
コード例 #3
0
 public void PrefabCreated()
 {
     prefab = ItemDrop.m_itemData.m_dropPrefab;
     ShaderHelper.UpdateTextures(prefab, ShaderHelper.ShaderState.Supported);
 }
コード例 #4
0
ファイル: PlanPiece.cs プロジェクト: Adirelle/ValheimMods
 internal void UpdateTextures()
 {
     ShaderHelper.UpdateTextures(gameObject, GetShaderState());
 }